4.设置完成后,执行下面的命令修复timing optDesign -postCTS -setup -hold -prefix POSTCTS_HOLD 至此,CTS的主要步骤已完成,下面就是Route了。
place_opt_design还会执行optDesign -PreCTS来优化timing,一般place的结果不应该有reg2reg的setup violation,顶多能接受几十ps的violation,过大的话在后续步骤也无法修复。 也可以自己运行checkPlace来检查是否有violation存在,随后打开GUI界面点击Violation Browser按钮。
optDesign -preCTS -outDir report/ECO_pre_CTS optDesign -preCTS -incr-outDir report/ECO_pre_CTS_incr deleteTrialRoute#---# Save#---saveDesign dbs/pr_pre.enc -compress 2.3.6. 第五步:PR-CTS setTOP_NAME xxx restoreDesign dbs/pr_pre.enc.dat$TOP_NAMEsetDrawView place#---# CTS#---...
第一步,不修antenna,降低Timing的优化强度,关掉SI,进行detail route。 setNanoRouteMode -drouteFixAntenna 0 setNanoRouteMode -routeWithTimingDriven 1 setNanoRouteMode -quiet -routeWithSiDriven false routeDesign -globalDetail -viaOpt -wireOpt 第二步,设置OCV,打开修antenna,设置二极管类型,报出drc、geomet...
建议将ccopt分两步来完成,这两步分别是Clock tree synthesis 和POST CTS Timing优化,即使用ccopt_design -cts和optDesign -postCTS两个命令来做CTS和CTO。很多朋友喜欢闭着眼睛跑flow,即便flow是分两步来跑的,也从来不看CTS后的结果。这种习惯非常不好(应届生倒是可以理解)。长此以往你的价值何在?你的...
前两个是硬指标,后两个是软指标,硬指标是需要fix的,而软指标则不需要,这里看似有四个指标,但关联性很强。 (3)如果有setup违例,在pr阶段一般用optDesign -incr来优化 (4)如果有max_transition,在pr阶段要具体分析为何修不掉 (5)place之前要把group path细分好...
1.import design innovus//开启innovussource dtmf.globols//读取并执行文件中的命令init_design:生成db数据库文件 2.floorplan--打开界面上floorplan,将block移进相应区域。 3.PPPR 4.placement: place_opt_design//此处timing优化是setup 5.CTS:使时钟偏移尽可能小 ...
scanReorder: 默认Innovus place_opt_design 做完placement 之后会做scan reorder, 对应变量是"setPlaceMode -place_global_reorder_scan" . 用户也可以用该命令做。 适用场景: single-clock domain, single-edge chains: 最简单的情况,没什么要特别注意的。
表示可能存在local congestion。place_opt_design还会执行optDesign -PreCTS来优化timing,一般place的结果不应该有reg2reg的setup violation,顶多能接受几十ps的violation,过大的话在后续步骤也无法修复。也可以自己运行checkPlace来检查是否有violation存在,随后打开GUI界面点击Violation Browser按钮。
5.place_opt_design 布局加优化 6.保存:saveDesign fg.enc 7.跳过了CTS把postCTS文件考到工作目录下,此处为work。 8.setAnalysisMode -analysisType onChipVariation设置属性,放在floorplan后,Route前. 9.optDesign -postCTS -hold 11.routeDesign 12.optDesign -postRoute ...