微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC后端设计交流 > ICC ECO问题

ICC ECO问题

时间:10-02 整理:3721RD 点击:
要做metal change,只改m1-m3层,
set_route_zrt_common_option -freeze_layer ...
route_zrt_eco ...
不加-nets选项,会优化到个别距离很远,完全无关的net,还造成ant,min area等问题。
加-nets,想只改相关联的net,总出内部错误,直接退出icc。
谁知道怎么回事?

freeze_route_eco ,
不动base layer,

我用的是09.06版本,查不到这条命令啊 freeze_route_eco 。
楼上,我可能没说清楚,这样的:
我能控制改动的金属层,控制不了的是net!
我不想让工具优化所有net,那些不相关的net,有可能又冒出其他的timing或drc新问题。所以我想使用route_zrt_eco-nets 选项,尽量只改连接,及附近让开走线资源的nets。修改用到了spare cell,改的线数量很少,只有10多条。
问题是route_zrt_eco这条命令只要加了-nets,icc自动退出,怎么回事?
route_zrt_eco-nets {ne1 net2}icc自动退出
route_zrt_eco-nets{net1 net2} -reroute modified_nets_first_then_othersicc自动退出

1. use route_zrt_group instead
route_zrt_group -nets XXX
2. freeze(skip route) for all nets except the eco net ,
set_net_routing_rule -reroute freeze [get_flat_nets ]
set_net_routing_rule -reroute normal [get_netseco_netXXX ]
delete_net_by_type -net eco_netXXX -detail_route
route_zrt_eco -net eco_netXXX

upgrade to other versions ,
route_zrt_eco-nets {ne1 net2} is correct syntax , should run correctly ,

多谢帮忙~
试验了多次,初步结论:
1.route_zrt_group -nets XXX和route_zrt_eco 不加net选项的优化结果一样的,会优化所有net,还产生了个别drc,ant问题
2.set_net_routing_rule -reroute freeze [get_flat_nets ]
set_net_routing_rule -reroute normal [get_netseco_netXXX ]
route_zrt_group -nets [get_netseco_netXXX ]
这样除了eco net全部freeze了,当然不会产生新的问题,
但net 只能找空隙绕线,绕的很长很长。
3.route_zrt_eco-nets {} 我们使用的版本,这个选项是bug,确实都用不了。

if still too long wire , please route this route manually ,
create_net_shape ,create_custom_wire ,
draw these shapes manually ,

if still too long wire , please route this route manually ,
create_net_shape ,create_custom_wire ,
draw these shapes manually ,

metal changem1-m3



附图,手机拍的,大概看下问题。
右上角是eco的net,因为优化了所有net,
导致了不相关的net(标尺处)出现了drc,ant问题.。



放大看,
原始netm3 - m4 -m3;
优化后net,m3直接连起来,下面的via34违反了最小面积,产生了drc violation.

目前只能几种方法权衡来做,谢谢指点

有可能的,因为你就改3层metal,在资源不够的情况下出现drc是难免的,
高层好换点, m1~m3 离标准单元区域比较近

lz,这么长的一条net,只用m1~m3做eco资源够吗?
你换个ICC版本看看是否能跑通

我也设了set_route_zrt_common_option -freeze_layer_by_layer_name {{M1 true}} ,然后route_zrt_eco,但我发现两个问题:
(1)M1并没有被绝对冻结,发现还是有改动到
(2)加了这个freeze_layer的设置后新的connect正确地做了,但要做disconnect的地方没有断开
请高手支招。谢谢!

出现DRC,你可以使用另外一条命令修复
route_zrt_detail -incremental true -max_number_iterations 500
这条命令可以修复一些DRC,基本的DRC都能解决
像ANT,Transition等Error会尽量修复.

学习了

学习了

学习了~

thanks

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top