DC概论四之setup time 与 hold time 之三
注明:如需轉載,請注明作者出處,謝謝~,Author:pythonlong
?以下根據資料和個人體會整理,如果錯誤,疑問歡迎請指正,討論!!
有了上篇的知識http://bb2hh.blogbus.com/logs/20756952.html,
下面開始正式分析時間余量slack。其實有了上面的知識,只要稍微說明下大家都會很明白。
在介紹slack之前,我們要先了解一下要求時間(required time)和達到時間(arrive time)的概念以及計算方法。
?
?
如果沒有特殊說明,黑色clock代表沒有影響因素的理想時鐘,紅色(粉色)clock代表收到latency影響的時鐘。藍色clock代表同時受到latency和skew(uncertainty)影響的時鐘。
?
對于建立時間(setup time)的到達時間和要求時間。
?
在分析前,記住,建立時間是分析路徑中的考慮到各種最不利因素的最大延遲,打個比方:
前面一級用盡最大程度向后推(最大的延遲),本級就近打力氣向前頂(最大不確定因素)。
然后看中間有沒有漏氣(slack為負,時序違規)。
1,??輸入端口到時序器件的數據端口。
上圖中
要求時間=T2+Tlatency-Tuncertainty_setup-Tsetup
到達時間=T1+Tlantency+Tinput_delay+Tlogic2
2,??時序器件的輸出管腳到輸出端口
上圖中:
要求時間=T2+Tlatency-Toutput_delay-Tuncertainty_setup
到達時間=T1+Tlatency+Tcell+Tlogic5
3.時序器件到時序器件
上圖:
要求時間=T2+Tlatency-Tuncertainty_setup-Tsetup
到達時間=T1+Tlatency+Tcell+Tlogic
4,輸入端口到輸出端口
如上圖:
要求時間=T2+Tlatency-Tuncertainty_setup-Toutput_delay
到達時間=T1+Tlatency+Tinput_delay+Tlogic
?
我們再來看下保持時間,保持時間的到達時間和建立時間的到達時間是一樣的。只是保持時間的要求時間不一樣而已.
保持時間類似于龜兔賽跑:
系統要求時間就是盡可能的向后,而線上信號延遲時間還要比要求時間向后,如果延遲時間追上了,就沒問題,追不上問題就有了。
說明:紅色和粉色表示受latency影響,藍色表示受uncertainty影響。
1.?輸入端口到時序器件的數據端口。
到達時間:Tarrive=T1+Tlatency+Tinput_delay+Tlogic
要求時間:Trequire=T2+Tlatency+Tuncertainty_hold+Thold
2.?時序器件的輸出管腳到輸出端口
到達時間:Ta=T1+Tlatency+Tcell+Tlogic
要求時間:Tr=T2+Tlatency+Tuncertainty_hold+Thold-Toutput_delay
3時序器件到時序器件
到達時間:Ta=T1+Tlatency+Tcell+Tlogic
要求時間:Tr=T2+Tlatency+Tuncertainty_hold+Thold
4,輸入端口到輸出端口
到達時間:Ta=T1+Tlatency+Tinput_delay+Tlogic
要求時間:Tr=T2+Tlatency+Tuncertainty_hold+Thold-Toutput_delay
?
Slack計算:
對于建立時間:
Slack=要求時間-到達時間
對于保持時間
Slack=到達時間-要求時間
轉載于:https://www.cnblogs.com/liuokay/archive/2011/04/05/2005676.html
總結
以上是生活随笔為你收集整理的DC概论四之setup time 与 hold time 之三的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Sql Server 查询语句
- 下一篇: .net 4下引用低版本.net类库发生