ICC_lab总结——ICC_lab5:布线&&数字集成电路物理设计学习总结——布线
字丑,禁止转载!
这里将理论总结和实践放在一起了。
布线的理论总结如下所示:

下面是使用ICC进行实践的流程:
本次的布线实验主要达成的目标是:
·对具有时钟树布局后的设计进行可布线性检查
·完成布线
·完成初始布线和初始布线后的优化
·分析设计的 时序、逻辑和物理的DRC、LVS违规
·修复LVS错误
·使用颜色突出来分析设计的各个方面
具体流程为:
首先准备下面的文件:

·加载设计的设置和公共的设置
--->打开库和相应的设计,启动GUI
--->检查max库是否和min库对应:list_libs
--->加载在设计在布局和CTS阶段期间使用的公共设置,以及布线阶段也
需要的公共设置(这里需要注意,有些命令在新的版本中):
source scripts/common_optimization_settings_icc.tcl
source scripts/common_placement_settings.tcl
source scripts/common_post_cts_timing_settings.tcl
source scripts/common_route_si_settings_zrt_icc.tcl
·进行布线前的检查,确保已经准备好布线
--->查看是否有建立时间、保持时间以及逻辑上的设计规则违例:
report_constraint -all
--->没有理想的网络和没有高扇出网络:
all_ideal_nets
all_high_fanout -nets -threshold 501(扇出大于501pf的就列出)
--->首选布线方向是否符合预期,并加载TLUPlus文件:
report_preferred_routing_direction
report_tlu_plus_files
--->检查所有布局位置是否合法:check_legality
--->检查所有电源和接地引脚是否物理连接到P / G网络(也就是查看是否有悬空):verify_pg_nets
--->如果有,进行移除并且再检查:preroute_standard_cells -remove_floating_pieces
verify_pg_nets
·进行布线和优化设计
--->首先允许插入冗余通孔,使设计中的冗余通孔随布线更改保持最新:
set_route_zrt_common_options -post_detail_route_redundant_via_insertion medium
set_route_zrt_detail_options -optimize_wire_via_effort_level medium
--->检查非默认布线规则和布线设置:
report_routing_rules; # report routing rules
report_route_opt_strategy; # report route_opt_stretegy
report_route_zrt_common_options; # Reports zrt common route options
report_route_zrt_global_options; # Reports zrt global route options
report_route_zrt_track_options; # Reports zrt route track assignment options
report_route_zrt_detail_options; # Reports zrt detail route options
--->进行初始布线(初始布线包括:全局布线,路线分配和详细布线):
route_opt -initial_route_only
--->初始布线完成后,生成相应的报告:
view report_clock_tree -summary(总结)
view report_clock_timing -type skew(偏移)
view report_qor(质量)
view report_constraint -all(违例报告)
--->进行优化布线,解决违规(同时优化功耗):
route_opt -skip_initial_route -power
--->确认布线之后,电源地的逻辑连接是最新的(即重新进行电源地的逻辑连接):
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
·进行DRC和LVS的检查和修复
--->查看是否有物理上的DRC错误、以及LVS是否通过:
verify_zrt_route (DRC)
verify_lvs (LVS)
--->如果有错误,进行修复:
route_opt –incremental
不行的话,就进行:route_zrt_eco
--->查看冗余通孔插入后的版图报告:report_design_physical -route
--->保存设计
·通过layout GUI窗口查看布线后的各种图形情况,比如布线后的时钟树形状、拥塞情况、slack的分布、层次模块在版图中的各个位置等等
ICC_lab总结——ICC_lab5:布线&&数字集成电路物理设计学习总结——布线的更多相关文章
- 开关电源PCB设计中的布线技巧
开关电源PCB设计中的布线技巧关键字:布线 开关电源 走线 一.引言 开关电源是一种电压转换电路,主要的工作内容是升压和降压,广泛应用于现代电子产品.因为开关三极管总是工作在 “开” 和“关” 的状态 ...
- Mysql业务设计(物理设计)
物理设计 根据所选择的关系型数据库的特点对逻辑模型进行存储结构的设计 物理设计: 定义数据库.表及字段的命名规范 选择合适的存储引擎 为表中的字段选择合适的数据类型 建立数据库结构 定义数据库.表及字 ...
- MySQL 数据库设计 笔记与总结(3)物理设计
[物理设计的工作] ① 选择合适的数据库管理系统:Oracle,SQLServe,MySQL,PgSQL ② 定义数据库.表及字段的命名规范 ③ 根据所选的 DBMS 系统选择合适的字段类型 ④ 反范 ...
- 数据库设计理论与实践·<三>物理设计
一.物理设计核心任务与关键细节 二.物理设计经验之谈 1.数据类型的设计:建议字段数据类型定义时结合以下几点(以MYSQL为例) 1)不适用image,而使用varbinary等 2)不使用text和 ...
- IC设计学习路线
一 前言 一直以来都是这也想学那也想学,搞个两三个月又放弃了,开始搞新的,从来没有任何东西超过一年,更不要说坚持三年.现在经历的事情多了,学过各种编程语言明白了要想学会一个专业技能,至少是三年.得到软 ...
- DirectX 9 UI三种设计学习笔记:文章4章Introducing DirectInput+文章5章Wrapping Direct3D
本文从哈利_创.转载请注明出处.有问题欢迎联系本人! 邮箱:2024958085@qq.com 上一期的地址: DX 9 UI设计学习笔记之二 第4章 Introducin ...
- UI设计学习路线图
文章转载自「开发者圆桌」一个关于开发者入门.进阶.踩坑的微信公众号 这里整理的UI设计学习路线图包含初中高三个部分,你可以通过百度云盘下载观看对应的视频 链接: http://pan.baidu.co ...
- 【STM32H7教程】第12章 STM32H7的HAL库框架设计学习
完整教程下载地址:http://forum.armfly.com/forum.php?mod=viewthread&tid=86980 第12章 STM32H7的HAL库框架设计学 ...
- loadrunner 场景设计-学习笔记之性能误区
场景设计-学习笔记之性能误区 by:授客 QQ:1033553122 场景假设: 每个事务仅包含一次请求,执行10000个并发用户数 性能误区: 每秒并发用户数=每秒向服务器提交请求数 详细解答: 每 ...
随机推荐
- oracle sql model从句demo
model从句作用 sql model可以完成像EXCEL工作表的数据内容扩展.计算填充的功能 关键词解释 partition 分区关键词,白话就是分组 dimension 度量关键词,白话就是要取出 ...
- Linux上部署SVN
Linux上部署SVN author:headsen chen 2017-10-16 16:45:04 前提:通过yum来安装,必须是centos6.5的桌面版的.否则会出现某些的安装包不全而导致 ...
- python 备份压缩传输
# -*- coding:utf-8 -*-__author__ = 'colin' #!/usr/bin/env python#-*- coding:utf-8 -*-import os,comma ...
- The summary of Interview
面试汇总 运维工程师日常工作内容 自我介绍对公司的了解 系统管理员的职责 进行系统资源管理.设备管理.系统性能管理.安全管理和系统性能监测: 管理的对象 服务器.用户.服务器的进程及系统的各种资源等. ...
- .Net小白的大学四年,内含面经
大家好 我是码农阿宇,和博客园的广大兄弟一样,我们都喜欢.Net,但是你们是985/211,而我江西一所普通得不能再普通的二本大学---九江学院,大四毕业在即,英语四级未过(为什么强调这一点?见文末- ...
- 实现Canvas2D绘图 使元素绕中心居中旋转
我之前用canvas写了个头像剪切的demo,但是关于让载入的图片旋转是个问题,虽然通过其它方法实现了,但是感觉并不太好,于是查了些资料,想试着重新做一下canvas的旋转. 在开始之前,先让我们来做 ...
- RACSignal的一些常用用法
NSData + RACSupport.h @interface NSData (RACSupport) // Read the data at the URL using -[NSData init ...
- 分享:docker swarm集群搭建
[Y_H]实践原创 三台虚拟机:1台centOS , 2台ubuntu. 网上有用docker-machine创建虚拟机做的例子. 这里直接用VMware创建这三台虚拟机,然后用xshell连 ...
- java通过数据库连接池链接oracle
开发工具:Eclipse J2EE 3.6 运行环境:jdk1.6 部署环境:Tomcat7 数据库连接池用的是dbcp,网上download下来的三个jar包. 把数据库连接池包和jdbc的包放到t ...
- C语言实现Linux命令——od
C语言实现Linux命令--od 实现要求: 复习c文件处理内容 编写myod.c 用myod XXX实现Linux下od -tx -tc XXX的功能 main与其他分开,制作静态库和动态库 编写M ...