如何控制數字IC后端CTS的生成方向?我們可以引入anchor driver來實現引導。
景芯12nm車規APR實戰中,我們可以看到,絕大部分的sink都受控于xxxx_tessent_occ_clk_cpu_inst/tessent_persistent_cell_clock_out_mux/C10_ctmi_1這個mux,這是景芯12nm車規后端項目DFT設計結果:
xxxx_tessent_occ_clk_cpu_inst/tessent_persistent_cell_clock_out_mux/C10_ctmi_1這個mux位置如下:
這里我們重新打開place的數據
Anchor,也就是錨。Anchor Driver 就是用來進行錨定的驅動器。
Clock Tree基于某些特殊的需求,我們可能需要人為地控制CTS的生成方向。于是,我們可以引入anchor driver來實現引導。
假設對于這個mux,我們想讓CTS工具在生成Clock Tree的時候,先走到芯片的中央,再進行CTS。正如我們上面所說,我們需要在芯片的中央埋下一個anchor driver。
【思考】注意,景芯12nm車規后端項目給DFT cell劃定了一個region如下,我們的occ模塊在place階段被設置的guide,導致anchor無法被place到指定的loc處。思考怎么處理?
我們在mux后插入一對inv:
添加完成后:
添加好的效果如下:
然后看下時鐘樹的整體效果:
這樣一來,你就通過人為方式干預了 CTS 的生長方向。