您好:
我認為是我的問題不清楚,導致於您的誤會,我重述問題,
希望您或是其他大神願意告訴我可能解決的原因或是方向,感激不盡....
底下是我使用的有 (A),(B),(C) 3個優化指令,分別對應於 Placement/ccopt/Routing 3大過程的優化.
相同的 netlist 與 sdc file 之下,我發現 ICC 執行完 Routing 之後,在 Timing 有過的情形下,Density 是 65%,
但是Innovus 的 Density 是 80%,可以看出 Innovus 塞了一大堆無效益的 Buffer,而且就是在執行完
(A) 指令後暴增 (53% --> 71%),若是故意不執行 (A) 指令(放棄執行),直接做 ccopt,等到 (B) 指令執行
完,一樣是 Density 暴增,一點幫助也沒有.
但是,若是同時放棄執行 (A),(B) 指令,只保留(C) 指令,則可以得到 68% 的 Density,也就是除開 ccopt 所
增加的 cell,任何多餘的 cell 都不加,直接以 Routing 階段的優化 (C)指令解決 Setup/Hold Time 問題.
我的問題是,為何我的優化指令塞了這麼多無用的cell,難道 Innovus 都不 sizing down/delete cell 嗎??
或者我少了什麼指令,導致會出現如此不理想的結果??
Timing 有過是沒錯,但是Innovus 大量浪費面積阿......
謝謝您的回答 ...
// < Innovus 介面按鈕~~ Placemant >
optDesign -setup -drv -preCTS ---(A)
set_ccopt_property buffer_cells [list CLKBUFX3 CLKBUFX4 CLKBUFX5 CLKBUFX6 CLKBUFX8 \
CLKBUFX10 CLKBUFX12 CLKBUFX16 CLKBUFX20]
set_ccopt_property inverter_cells [list CLKINVX3 CLKINVX4 CLKINVX5 CLKINVX6 CLKINVX8 \
CLKINVX10 CLKINVX12 CLKINVX16 CLKINVX20]
create_ccopt_clock_tree_spec -file ccopt.spec
source ccopt.spec
ccopt_design -cts
optDesign -setup -hold -drv -postCTS ---(B)
// < Innovus 介面按鈕~~ Route >
optDesign -setup -hold -drv -postRoute ---(C)
|