【Innovus】总结了十条消除DRC和Antenna的方法
时间:2021-11-11 14:10:41
手机看文章
扫描二维码
随时随地手机看文章
[导读]密密麻麻的线,像高架桥一样,不能交叉,还要保证留够宽度和间距。有时候APR工具并不是那么智能,需要人工干预才能达到满意的效果。下面总结了工作中遇到的Route后DRC、Antenna等问题的几个解决方法。第一步,不修antenna,降低Timing的优化强度,关掉SI,进行det...
密密麻麻的线,像高架桥一样,不能交叉,还要保证留够宽度和间距。有时候APR工具并不是那么智能,需要人工干预才能达到满意的效果。下面总结了工作中遇到的Route后DRC、Antenna等问题的几个解决方法。
第一步,不修antenna,降低Timing的优化强度,关掉SI,进行detail route。
setNanoRouteMode -drouteFixAntenna 0setNanoRouteMode -routeWithTimingDriven 1setNanoRouteMode -quiet -routeWithSiDriven falserouteDesign -globalDetail -viaOpt -wireOpt
第二步,设置OCV,打开修antenna,设置二极管类型,报出drc、geometry、connection、antenna的所有drc violation,然后删除所有violation的连线,重新连线
setAnalysisMode -analysisType onChipVariation -cppr bothsetNanoRouteMode -quiet -drouteFixAntenna 1setNanoRouteMode -quiet -routeInsertAntennaDiode 1setNanoRouteMode -quiet -routeAntennaCellName ANTENNA27TeditDeleteViolationsecoRoute
第三步,检查antenna是否与时钟树有关,设置允许时钟树自动插二极管,重新绕线。
editDeleteViolationssetnanoroutemode -routeInsertDiodeForClockNets trueecoRoute
第四步,有时候真的是连线太长,先修一下cap和tran。
setOptMode -fixCap true -fixTran true -fixFanoutLoad falseoptDesign -postRoute
第五步,如果发现drc violation总是在拐角处,并且拐角处的连线密度确实比较大了,可以试试挪cell和插buffer,让连线强制让开。
第六步,还可以增加一个局部的partial place blockage,设成20%,具体数值看情况。让cell稀疏一些,给连线让出更多的资源。
第七步,还可以设置工具的迭代次数,让工具多尝试几遍,用时间来换效果。
setNanoRouteMode -quiet -drouteEndIteration 100
第八步,如果修了很多遍还不行,可以试试从floorplan开始重新做一遍,floorplan优化一下。
第九步,考虑优化设计,删减一部分冗余或者次要逻辑,特别是大扇出的逻辑,一下子可以省很多连线。
第十步,可以考虑增加局部的高层金属,或者增加面积,来增加绕线资源。