最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

時鐘樹綜合

2023-09-19 10:37 作者:西安簡矽技術(shù)  | 我要投稿

在數(shù)字集成電路設計中,時鐘信號是數(shù)據(jù)傳輸?shù)幕荆鼘τ谕綌?shù)字系統(tǒng)的功能、性能和穩(wěn)定性起決定性作用,所以時鐘信號的特性及其分配網(wǎng)絡至關重要。時鐘信號通常是整個芯片中有最大扇出,最長距離,最高速度的信號,其必須保證在各種極端條件下,時序均能滿足要求,而時鐘樹綜合作為后端設計流程中的關鍵步驟,提供了對時鐘信號的平衡和分配方法。


時鐘樹綜合(clock tree synthesis)是通過建立buffer/inverter的時鐘網(wǎng)絡去平衡時鐘路徑的延遲。其本質(zhì)是通過減小各個時鐘路徑上的延遲差異,以達到時序收斂的目的。

時鐘信號

時鐘信號的物理特性有很多,時鐘周期(頻率)、時鐘遲滯(latency)時鐘的不確定性(uncertainty)是三個必不可少的參數(shù)。


周期為時鐘波形中相鄰上升沿或下降沿之間的時間。在設計中,時鐘用create_clockcreate_generated_clock命令來定義。例如,定義周期20ns的時鐘命令為create_clock -period 20 CLK。定義clk2是clk1的二分頻時鐘的命令為create_generated_clock -name clk2 -source clk1 -divide_by 2 FF1/Q。


時鐘遲滯(latency)又稱為時鐘延遲,它包括兩個部分,時鐘源延遲(clock source latency),即時鐘源到當前模塊的input port所需時間,如下圖紅線所示。時鐘網(wǎng)絡延遲(clock network latency),即時鐘從input port到寄存器CK pin所需的時間,如下圖綠線所示。時鐘網(wǎng)絡延遲也就是時鐘樹延遲。在理想時鐘的情況下,假定時鐘網(wǎng)絡延遲為零。對于上述兩種延遲的定義,可以通過不同的命令加以區(qū)分。

例如,set_clock_latency 2.0 -source [get_clocks {cpu_clk}],該命令定義了時鐘源延遲;set_clock_latency 2.0 [get_clocks {cpu_clk}],該命令定義了時鐘網(wǎng)絡延遲,兩者可通過-source區(qū)分。

圖1 時鐘遲滯

時鐘不確定性(uncertainty)又稱為時鐘抖動(jitter),如下圖所示,它取決于時鐘發(fā)生器的結(jié)構(gòu),所以時鐘抖動是先天存在的,無法通過時鐘樹綜合進行優(yōu)化,只能考慮其影響。通常將時鐘不確定性設置得較大,從而給時鐘樹偏差(skew)預留一定的范圍。在時鐘樹綜合之后,可以將該值設置得較小,一般視工藝情況而定??赏ㄟ^以下命令設置:set_clock_uncertainty 0.3 [get_clock {*}]。

圖2 時鐘抖動

時鐘信號偏差(skew)指同一時鐘到達該時鐘域內(nèi)不同寄存器CK pin之間的時間偏差。時鐘信號偏差是衡量時鐘樹性能的重要參數(shù),而時鐘樹綜合的目的就是為了減少偏差。

標準設計約束SDC文件

SDC文件是由一組命令組成的設計約束的標準,它的主要內(nèi)容為時序約束(timing constraints),因此它也被稱為時序約束文件。


簡單介紹一下SDC文件中的幾類常用約束:

1.clock相關約束

包括周期period,占空比duty cycle,時鐘遲滯latency,時鐘不確定性uncertainty等;

2.IO端口約束

包括輸入延遲input_delay,輸出延遲output_delay,輸入驅(qū)動input_transition,drive,driving_cell,輸出負載load等;

3.邏輯設計規(guī)則

包括最大轉(zhuǎn)換時間max_transition,最大扇出max_fanout,最大負載電容max_capacitance等;

4.時序特例

包括false_path,多周期路徑multicycle_path等。

時鐘樹綜合基礎和策略

做時鐘樹綜合時需要告訴ICC工具buffer和inverter長到哪里為止,所以需要定義幾類pin。1.stop pinBuffer和inverter tree長到哪里為止,ICC工具默認所有的pin為stop pin;2.float pin告訴工具該pin后還有一段delay,從而使工具在balance時會考慮到float pin后的delay;3.ignore pin工具只會在該pin上做buffer和inverter tree,但不會去做任何的balance;4.non-stop pin工具不會認為這是tree的終點,會穿過該pin繼續(xù)向前長tree。


在SoC芯片設計中,時鐘數(shù)量往往非常龐大,結(jié)構(gòu)復雜,做時鐘樹時需要一定的策略。下面介紹幾種比較常見的例子,自我交叉(self-reconvergent)相互交叉(crossover),OCVCPPR。


1、自我交叉(self-reconvergent)

如下圖所示,從PLL出來的時鐘,經(jīng)過不同的處理(分頻)然后通過一個MUX匯集到一起,在這種情況下,我們可先綜合balance右邊tree部分的skew,再balance左邊circuit1和circuit2的skew,從而balance掉整個時鐘樹的skew。

圖3 自我交叉

2、相互交叉(crossover)

如下圖,tree3是兩個不同時鐘所選擇后的公共部分,在做時鐘樹綜合時,可首先綜合tree3,balance掉tree3的skew,然后對tree1進行綜合,同時根據(jù)tree3的結(jié)果balance掉tree1的skew。最后根據(jù)tree3的結(jié)果,balance掉tree2的skew。

圖4 相互交叉

3、OCV與CPPR在時鐘樹綜合中的應用

片上誤差OCV對時序路徑的延時偏差(skew)有著更嚴格的要求。因此在做時鐘樹時需要考慮OCV的影響。如下圖所示。左側(cè)結(jié)構(gòu)時鐘的公共路徑(common path)更多,在做時序分析時,因為公共路徑的悲觀消除(CPPR),時序更加容易收斂。

圖5 CPPR的時鐘樹策略


時鐘樹綜合的評論 (共 條)

使用qq登录你需要登录后才可以评论。
曲阜市| 绩溪县| 股票| 通山县| 杭锦旗| 定南县| 金川县| 花垣县| 苍山县| 岳池县| 宁夏| 阳原县| 龙胜| 濮阳县| 遵义县| 德州市| 和平区| 土默特右旗| 杭州市| 大化| 扶绥县| 泗洪县| 正镶白旗| 宽甸| 海淀区| 波密县| 神农架林区| 岳阳县| 新野县| 家居| 松桃| 通州市| 常德市| 绥中县| 溆浦县| 阿勒泰市| 宁武县| 齐齐哈尔市| 丽水市| 绥德县| 巴东县|