靜態時序分析是學習fpga必須學習的乙個知識點,通過一段時間的學習,先將自己所學到的一點靜態時序分析的基礎稍作總結。
這是一張再熟悉不過的圖形,以及兩個基礎公式
tperiod>tcko+tlogic+tnet+tsetup-tclk_skew (1)
tcko+tlogic+tnet>thold+tclk_skew (2)
這裡,為了得到更加簡單的理解,忽略兩項tnet和tclk_skew。原因在於tnet通常太小,而tclk_skew還牽扯到時鐘uncertain,暫時可以不考慮skew的影響。簡化後如下:
tperiod>tcko+tlogic+tsetup (3)
tcko+tlogic>thold (4)
(3)式比較好理解,意思是資料從第乙個觸發器取樣時刻傳到第二個觸發器取樣時刻,不能超過乙個時鐘週期啊!假如資料傳輸超過乙個時鐘週期,那麼就會導致第二個觸發器開始取樣的時候,想要的資料還沒有傳過來呢!對於(4)式兩邊同時加上tsetup,得到(5)。
tcko+tlogic+tsetup>thold+tsetup (5)
結合(3)式和(5)式,我們得到如下的式子:
thold+tsetup tcko+tlogic+tsetup是指資料從第一級觸發器取樣瞬間開始,傳輸到第二級觸發器並被取樣的傳輸延時。我們簡稱為資料傳輸延時。
下面講述(6)式兩端的含義。
tcko+tlogic+tsetup< tperiod
約定資料傳輸延時不能太大,如果太大(超過乙個時鐘週期),那麼第二級觸發器就會在取樣的時刻發現資料還沒有到來。
thold+tsetup約定資料傳輸延時不能太小。thold+tsetup是乙個觸發器的取樣視窗時間,d觸發器並不是絕對的瞬間取樣,它不可能那麼理想。
在d觸發器取樣的瞬間,在這瞬間之前tsetup時間之內,或者這瞬間之後thold時間之內,如果輸入埠發生變化,那麼d觸發器就會處於亞穩態。所以取樣是有視窗的,我們把thold+tsetup的時間寬度叫做觸發器的取樣視窗,在視窗期內,d觸發器是脆弱的,對毛刺沒有免疫力的。假如資料傳輸延時特別小,那麼下一級d觸發器的保持時間就難以保證。
所以,資料傳輸延時既不能太大以至於超過乙個時鐘週期,也不能太小以至於小於觸發器取樣視窗的寬度。
靜態時序分析
常用的靜態時序分析結構圖 時序圖如下 紅色虛線之間的是建立時間和保持時間,在這段時間內資料應保持穩定不變。其中clk1是前一級觸發器的時鐘,clk2是後一級觸發器的時鐘。clk2相對於clk1存在一定的偏斜tclk skew。我們在在後一級觸發器的第乙個時鐘上公升沿分析保持時間,在後一級觸發器的第二...
靜態時序分析 Timing borrow
timing borrow技術又稱為cycle stealing技術,主要是利用latch的電平敏感特性,通過有效電平獲取資料,通過無效電平保持被鎖存的資料,主要用於解決路徑時序不滿足電路要求的情況。通過timingborrow可以對電路進行加速,當路徑延遲較大時,可以通過借用latch的部分時間實...
靜態時序分析SAT
launch edge和latch edge分別是指一條路徑的起點和終點,只是乙個參考時間,本身沒有什麼意義,latch edge launch edge才有意義。1.背景 靜態時序分析的前提就是設計者先提出要求,然後時序分析工具才會根據特定的時序模型進行分析,給出正確是時序報告。進行靜態時序分析,...