ICC_workshop的最后一个实验了。在这次的实验中,由于我使用ICC的版本与workshop的lab不是同一个版本,因此在后面的实验过程不是很顺利,主要是在LVS的过程中,最后的LVS没有通过。但是还是在这里说一下流程吧,在这个实验中,主要完成下面的事情:

  ·DRC和LVS检查

  ·进行连线扩展加宽连线来减少关键面积

  ·使用二极管修复天线违规

  ·使用填充单元填充核心中未填满的位置

  ·进行冗余通孔插入(冗余通孔的插入是可选的)

  ·填充金属以满足金属密度要求

  ·生成GDSII数据

首先需要准备下面的数据:

然后就可以开始试验了:

  ·加载和分析设计

--->记载库和设计

--->验证是否有DRC和LVS违规:

  verify_zrt_route

  verify_lvs

--->有,则进行修复(具体怎么修复这里不进行介绍,我也不知道具体的细节,但是是有这个流程的)

--->查看是否有违规:

--->有,则进行修复:psynopt  -xxx

  ·减少关键面积

--->通过GUI查看关键面积(short critical area)

--->查看、保存修改前短路的关键面积的报告:

  report_critical_area -fault_type short

  sh mv output_heatmap cca.short.before.rpt

--->进行连线扩展,减少短路的关键面积:

  spread_zrt_wires

--->查看、保存连线扩展后的关键面积报告:

  report_critical_area -fault_type short

  sh mv output_heatmap cca.short.after.rpt

--->查看、保存修改前开路的关键面积的报告:

  report_critical_area -fault_type open

  sh mv output_heatmap cca.open.before.rpt

--->进行加宽导线,来减少开路的关键面积:

  widen_zrt_wires

--->查看、保存加宽导线后的关键面积报告:

  report_critical_area -fault_type open

  sh mv output_heatmap cca.open.after.rpt

--->查看是否有DRC、LVS以及时序等违规:

  verify_zrt_route

  verify_lvs

  rc

--->如果有,则进行修复(具体怎么修复这里不进行介绍,我也不知道具体的细节,但是是有这个流程的),修复后保存设计:save_mw_cel -as chip_finish_ca

  ·使用二极管修复天线违规

--->安装一组天线规则:

  source -echo scripts/cb13_6m_antenna.tcl

  天线规则设置确定如何处理金属层的模式

--->检查已定义的当前天线比率规则,并检查您的设计中是否存在任何接触违规:

  report_antenna_rules

  verify_zrt_route

--->进行天线违规修复:

  set_route_zrt_detail_options -insert_diodes_during_routing true

  route_zrt_detail -incremental true

--->检查lvs违规:

  verify_lvs

--->如果有lvs错误,则重新定义P/G环,看是否由插入二极管引起:

  derive_pg_connection -power_net VDD -power_pin VDD -ground_net VSS -ground_pin VSS

  derive_pg_connection -power_net VDD -ground_net VSS -tie

--->再检查各种违规:

  verify_zrt_route

  verify_lvs

  rc

  如果有违规,这时候的违规就不是天线违规引起的了,通过其他手段进行修复

--->保存设计:save_mw_cel -as chip_finish_antenna

  ·插入标准填充单元

--->插入标准单元:

  insert_stdcell_filler -cell_with_metal "feedth9 feedth3" -connect_to_power VDD -connect_to_ground VSS -between_std_cells_only

--->插入非金属填充单元:

  insert_stdcell_filler -cell_without_metal "feedth" -connect_to_power VDD -connect_to_ground VSS -between_std_cells_only

--->查看是否有违规(一般没有):

  verify_zrt_route

  verify_lvs

  rc

  ·插入冗余过孔

--->成物理设计报告以确定现有的双重过孔率:

  report_design_physical -route

--->生成  将在冗余过孔插入期间  自动使用的   过孔映射表:

  insert_zrt_redundant_vias -list_only

--->使用默认的中等强度进行插入冗余过孔:

  insert_zrt_redundant_vias -effort medium

--->检查是否有违例:

  verify_zrt_route

  verify_lvs

  rc

--->插入金属,以满足金属密度要求:

  insert_metal_filler -routing_space 2 -timing_driven

--->确保在本阶段添加的单元和所有电源地的pin都连接到电源的网络:

  derive_pg_connection -power_net VDD -power_pin VDD -ground_net VSS -ground_pin VSS

  derive_pg_connection -power_net VDD -ground_net VSS -tie

--->检查是否违规:

  verify_zrt_route

  verify_lvs

  rc

---->保存设计,写出GDSII文件:

  save_mw_cel -as chip_finish_final
  close_mw_cel
  write_stream -cells chip_finish_final orca.gdsii
  close_mw_lib

ICC_lab总结——ICC_lab6:版图完成的更多相关文章

  1. 你好,C++(2)1.3 C++世界版图1.4 如何学好C++

    1.3  C++世界版图 C++语言的发展过程,不仅是一个特性不断增加.内容不断丰富的过程,更是一个在应用领域中不断攻城略地的过程.在其30余年的发展过程中,C++在多个应用领域都得到了广泛的应用和发 ...

  2. 专访OPPO李紫贵:ColorOS用户过千万 软硬融合生态版图初现

    专访OPPO李紫贵:ColorOS用户过千万 软硬融合生态版图初现 专访OPPO李紫贵:ColorOS用户过千万 软硬融合生态版图初现

  3. ICC_lab总结——ICC_lab1:数据设置和基本流程

    ICC_lab总结 最近在学习后端的流程,做lab是最好不过了.但是有时候做过了lab,过了一段时间之后就会忘记,因此需要自己总结一下,加强印象. ICC_lab1:数据设置和基本流程 数据设置: 一 ...

  4. ICC_lab总结——ICC_lab5:布线&&数字集成电路物理设计学习总结——布线

    字丑,禁止转载! 这里将理论总结和实践放在一起了. 布线的理论总结如下所示: 下面是使用ICC进行实践的流程: 本次的布线实验主要达成的目标是: ·对具有时钟树布局后的设计进行可布线性检查 ·完成布线 ...

  5. python实现dict版图遍历

    python实现dict版图遍历的示例. 代码: #_*_coding:utf_8_import sysimport osclass Graph(): def __init__(self, V, E) ...

  6. ICC中用Tcl脚本给版图中的Port/Terminal加Label的方法

    本文转自:自己的微信公众号<数字集成电路设计及EDA教程> 里面主要讲解数字IC前端.后端.DFT.低功耗设计以及验证等相关知识,并且讲解了其中用到的各种EDA工具的教程. 考虑到微信公众 ...

  7. 未来,Baccarat将如何拓展生态版图?

    Baccarat最近几度冲上DeFi版面的热搜,一是因为BGV价格不断的上涨,二是因为生态建设者的不断涌入.可以说,当下的Baccarat,实在是太火爆了.那么在未来,Baccarat还将会持续火爆吗 ...

  8. 基于CameraLink的逻辑综合和版图设计

    前期接口设计用的是Vivado18.3+Modelsim10.6,逻辑综合及版图生成的环境是Ubuntu16,逻辑综合用的工具Design Compiler,生成版图用的工具是Encounter. 下 ...

  9. 乌版图 read-only file system

    今天在启动虚拟机的时候,运行命令svn up的时候,提示lock,并且read-only file system,这个....我是小白啊,怎么办?前辈在专心写代码,不好打扰,果断找度娘啊 于是乎,折腾 ...

随机推荐

  1. 无线网络中,使用MDK3把指定的用户或者热点踢到掉线

    准备 1:系统环境为ubuntu16.04, 2:需要mdk3, mdk3这个软件需要通过apt安装, 需要kali系统的源 3:需要安装aircrack-ng套件 今天这套东西,可以在未连接上靶机网 ...

  2. QML Object Attributes QML对象属性

    QML Object Attributes Every QML object type has a defined set of attributes. Each instance of an obj ...

  3. TCP/IP 协议族的简介

    TCP/IP重要的特性就是分层.TCP/IP 按照层次分为四层:应用层.传输层.网络层.数据链路层.分层的好处就是当某些地方需要改变的时候,只需要将改变的层替换掉即可,而不用去把整体做替换.各层之间的 ...

  4. 代码神器Atom,最常用的几大插件,你值得拥有。

    作者:魔洁 atom常用插件 atom插件安装File>Settings>intall搜索框输入插件名,点击Packages搜索,搜索出来后点击intall安装,建议你先安装(simpli ...

  5. UltraEdit的配置

    这两天看同学门写的博客,很多人都是些的配置文件如何配置,看完以后感觉获益很大啊,从dos中不在需要输入javac.exe文件的地址就可以访问到javac的文件,为我们的java的编译提供了很大的帮助. ...

  6. 张高兴的 UWP 开发笔记:用 Thumb 控件仿制一个可拖动 Button

    在 WPF 上可用的控件拖动方法在 UWP 上大多没用,那干脆用 Thumb 仿制一个吧. 关于 Thumb 控件的教程也不多,毕竟在 WPF 控件拖动有很多种方法, Thumb 就显得很鸡肋了.下面 ...

  7. (@WhiteTaken)设计模式学习——原型模式

    有这样一个需求,两个对象,只是名称以及其他几个属性不一样,而其他的大部分的属性都是相同的. 这时候我们可以用到原型模式,也就是克隆模式. 原型模式:原型模式是一个对象创建型模式,通过克隆原对象,可以使 ...

  8. iOS详解MMDrawerController抽屉效果(一)

      提前说好,本文绝对不是教你如何使用MMDrawerController这个第三方库,因为那太多人写了 ,也太简单了.这篇文章主要带你分析MMDrawerController是怎么实现抽屉效果,明白 ...

  9. Spring应用上下文中Bean的生命周期

    Bean装载到Spring应用上下文的生命周期,如图: Bean在Spring容器中从创建到销毁经历了若干个阶段,每一阶段都可以对Spring如何管理Bean进行个性化定制,以下我们通过代码去验证生命 ...

  10. ubuntu的常用命令

    1. locate------根据名字找文件,例如: locate php.ini 2.find----------以目录结构的形式搜索文件, 例如:find / -type d -iname jvm ...