學習目标
- 了解CTS 目标
- 在CTS之前應用 CTS constraints(例如,執行CTS之前,有些flip-flop想做長一些或短一些,有些不想當clock tree,把stop pin、through pin等pin在CTS之前拎出來設定)
學習内容
- CTS Goals
- CTS Design Rule Constraints
- CTS Optimization Constraints
CTS Goals
Meet the clock tree Design Rule Constraints (DRC):
- Maximum transition delay
- Maximum load capacitance
- Maximum fanout
- Max length
DRC分類:
- soft rule
- hard rule(必須要修的)
Meet the clock tree Optimization Constraints:
- Maximum skew
- Min/Max insertion delay
Minimizing power dissipation(功耗)
Priorit優先級:
DRC constraints > insertion delay > power > skew
一般,隻要timing meet了,skew一般不太care。一般通過修skew,修IR drop
inserting delay越小,power也就越小,但是不是所有地方越短越好,有些特殊的地方,需要長一些
Clock Tree
根據SDC,工具會自動抽取時鐘網絡結構,隻要SDC定義正确 ,clock tree一般不會有太大的錯誤
但是做clock tree不一定要SDC。沒有SDC,比如前端給了clock圖,知道哪些cell是做tree的,可以人為指定某些點做tree。但是做tree的同時要優化timing(例如CCD、CCOPT),這時必須要有SDC。
Clock Tree 的起點和終點
Clock tree 起點: SDC-defined clock source
create_clock
Clock tree 終點: “sinks”點
- Stop pins
- ignore pins
- Exclude pins (aka ignore pins)
(ICC exclude pin,指的是innovus裡的ignore pin)
sink點,例如,register的ck端。
CTS Design Rule Constraints
Max Transition(slew):
max transition(slew):10% to 90% transition time at a ck pin
Generally setting: 1/6 of clock cycle
data transition:一般1/3 of clock cycle
To get better clock tree performance:
- rise transition = fall transition (balance cts cell)
- smaller transition time
Max capcitance(Cmax):
CL < Cmax (CL = Cdrain + Cinterconnet + Cinput)
Cdrain,CMOS的漏極和源極、栅極之間的電容,這部分電容相當小, 可以忽略。
CL = Cinterconnet + Cinput
- 将節點電容(node capacitance)限制在.lib models中給出的值以下,以獲得準确的時序計算。
- 電容過大可能會引起電磁(EM)問題。(電容太大,會導緻電流太大,電荷會打金屬,金屬會越來越薄,最終打穿,影響timing)
Max capacitance violations通常由以下原因引起:
- net太長
- fanout 太多
Max fanout:
Fanout:
ouput 可以安全連接配接到的 gate inputs 的數量。即, gate ouput可以驅動的load。
output的maximum fanout 可以衡量它的load-driving capability。
fanout越多, slew 和 capacitance越差。
這不是hard constraints,但過多的 fanout可能會導緻:
- max_transition violation
- max_capcitance violation
Max length
限制 net length 目的:(soft rule)
- 減少實際net load
- 阻止 slew degradation
- 阻止crosstalk(兩根net并行越長,出現crosstalk幾率越大)
- 阻止 ocv的effects
CTS Design Rule Constraints 總結
設計規則間接地互相限制
Max transition 和max capacitance 設計規則可以通過三種方式指定:
- Library(例如,max cap隻要不超過lib裡面的就行。lib裡面設定2ns,保證庫在最差情況下2ns是準确的,如果max transition超過2ns就失真了。)
- SDC
- CTS options(隻有線的長度通過CTS option來限制)
(三個限制,工具取這三個中最小的)
工具使用最小的tree
如果設定太tight,可能無法修複violations
set_ccopt_property target_skew/cts_max_fanout/max_source_to_sink_net_length