APR Recipe
1, pt fix 后生成的 icctcl,回到 icc source 后,如果需要eco_route,建议先关掉 timing_driven,因为 icc 与 pt 看到的 timing 情况一般都有 mismatch,所以如果开了 timing_driven,可能在 icc eco_route 后,在 pt 中看到新的 violation。关闭 timing_driven 方法:
set_route_zrt_detail_options -timing_driven false
route_zrt_eco -reroute modified_nets_first_then_others -max_detail_route_iterations 5
2, 绕线完成后首先要检查是否有short,有较多short 就说明没有绕通,没必要往下做了,先回头找原因。CalibreDRC 不会去检查short,DRC主要检查绕线spacing 、 min area、density; LVS 如果出问题,一般主要是power 或者short,先确认ICC error browser 中是否有short存在。
3. 从 designer 那边拿到的sdc,需要先修改掉一些内容,主要包括: set_wire_load,set_voltage,set_clock_uncertainty,set_operating_condition 等等,因为这些设定只是针对一个scenario条件的,而后端一般会用到多个scenario,在 set_mcmm 步骤会针对不同 scenario 做不同的设定,所以需要在 sdc 中删去这些设定。
4. 完成place 阶段后,需要检查几个指标:timing,utilization, cell density, route congestion。其中 cell density 可直接查看 density map,而 congestion 可用 report_congestion 报出横纵两个方向的routing overflow。查看这些参数的目的就是提前预估当前的 floorplan,chip size 是否合理,能否做的出来。
5. 在做 PNS 时,如果发现执行命令却没有任何结果,首先考虑是不是没有 pg nets, nets 属性是不是 power/ground(方法: get_nets DVDD 如果可以抓到,就是 signal,如果不能抓到,再用 get_nets -all DVDD ,如果可以抓到,就是pg net了),然后检查有没有 derive_pg_connection ( 方法:直接看 std cell 的pg pin 的owner net,如果没有net,就是没有做 derive_pg ) ,总之就是一定要确保有pg nets,并且与 std cell pg pin 在逻辑上有连接,这样才能接着去做物理连接。
6. 修timing 时,如果data已经没什么可修了,那就要考虑改 tree,改 tree 需要注意先看看launch clock 和 capture clock 的 last common pin,只能改 last common pin 之后的那一段tree,因为前面的 tree 都是 common path ,改了会同时影响 launch 和 capture,等于没修。查看 last common pin 可以用 PT report_timing,ICC 好像没法报出来。
6. to be continued……
|--------------------------------------------|
最新文章
- 从零开始学 Java - CentOS 下安装 Nginx
- BZOJ2435——[Noi2011]道路修建
- 移动互联网实战--资源类APP的数据存储处理和优化
- Careercup | Chapter 7
- EDM营销算法:python自动批量发邮件
- C语言 将产生的随机数存入数组,数据不能相同
- 【HDU 5381】 The sum of gcd (子区间的xx和,离线)
- jQuery对象转换为DOM对象
- js第一天 innerHTML和value 的区别
- 免费的Lucene 原理与代码分析完整版下载
- docker基本使用
- Project 的ProjectTypeGuids和Solution的Project节点说明
- linux系统如何发送邮件
- Ubuntu下启动 Redis时, 提示 "Can't open the log file: Permission denied failed"
- PAT乙级 1031. 查验身份证(15)
- poj2186tarjan算法缩点求出度
- vue组件之间通信传值
- 日志挖掘(logminer)
- vue-resource使用笔记
- MonkeyScript使用教程