靜態時序分析:通過窮舉分析每一條路徑的延時,用以確定最高工作頻率,檢查時序約束是否滿足,分析時鍾質量。
動態時序分析:通過給定輸入信號,模擬設計在器件實際工作的功能和延時情況。
1.什么是建立時間、保持時間?
建立時間指在觸發器的時鍾采樣沿到來之前,數據保持穩定不變的時間。
保持時間指在觸發器的時鍾采樣沿到來之后,數據保持穩定不變的時間。
因為時鍾偏斜,到達DFF2為CLK2
建立時間分析:取各組塊最大延時計算
考慮時鍾到達DFF2的時鍾偏斜Tskew,則建立時間余量為Tset_slack=Tclk-Tcq-Tco-Tsetup+Tskew,使DFF2建立時間不違例,需保證Tset_slack>0。
其中Tcq為DFF1的時鍾端到輸出延遲,為器件固定屬性;Tco是組合邏輯電路的延時,可以通過優化邏輯設計改變其值,使其滿足建立保持時間不違例;Tsetup為觸發器固有屬性,定值。Thold為觸發器固有屬性,定值。
若不考慮DFF2的時鍾偏斜,則建立時間裕量為Tset_slack=Tclk-Tcq-Tco-Tsetup。
保持時間分析:取各組塊最小延時計算
考慮時鍾到達DFF2的時鍾偏斜Tskew,則保持時間余量:Tskew+Thold+Thold_slack=Tcq+Tco,因此可推出Thold_slack=Tcq+Tco-Tskew-Thold,使保持時間不違例,則需Thold_slack>0。若不考慮時鍾偏斜,則Thold_slack=Tcq+Tco-Thold。
擴展:
時鍾抖動:兩個時鍾周期之間存在的差值,這種誤差發生在時鍾發生器內部,和晶振和PLL內部有關,布線對其沒有影響。主要表現在時鍾頻率上的不一定。
時鍾偏斜:同樣的時鍾產生的多個子時鍾信號之間的延時差異。主要表現在時鍾相位上的不確定。
影響時鍾偏斜的原因:布線長度及負載,時鍾偏斜無法避免。
典型題:
(橢圓表示組合邏輯,DFF1,2表達觸發器)
則有四條時序路徑:
(1)從輸入端到DFF1的D端,則需滿足的時序要求是:Tclk1-Tin_delay-Tcom1-Tsetup>0(Tin_delay為輸入延遲)
(2)從寄存器DFF1到寄存器DFF2,滿足的時序要求是:Tclk-Tcq-Tcom2-Tsetup>0(clk1=clk2,且不考慮時鍾偏斜)
(3)從寄存器DFF2到輸出端口,滿足的時序要求:Tclk-Tcq-Tcom3-Tsetup-Tto_delay>0(Tsetup為下一級寄存器的建立保持時間,Tto_delay為輸出端延時)
(4)從輸入端到輸出端,滿足的時序要求:Tclk-Tin_delay-Tcom4-Tto_delay-Tsetup>0(從輸入到輸出則前后各有寄存器接入)