靜態時序分析基礎

上一篇 / 下一篇  2018-12-27 08:30:49

建立時間,保持時間
為了確保寄存器在時鐘沿穩定采集數據,那么必須要滿足寄存器的建立,保持時間要求。

建立時間要求:在寄存器有效時鐘沿之前至少Tsetup時間,數據必須到達且穩定。如下圖所示。

保持時間要求:在數據采集有效時鐘沿之后,數據必須維持最短Thold時間不變。如下圖所示。

建立時間裕量計算
同步時序電路如下圖所示。這里對后面一個寄存器進行建立時間裕量分析。

其中寄存器的輸出延時為Tcq,即時鐘有效沿之后延時Tcq時間,數據才到達寄存器Q端。第一個寄存器有效時鐘沿之后Tcq時間,數據才到達Q1端,如下圖所示。

再經過組合邏輯運算,得到數據C1,其中組合邏輯的延時為Tlogic。時序如下圖。

從這里可以看到,如果clk2和clk1之間沒有延時。那么對于后面的寄存器而言,數據提前于采樣時鐘沿之前Tcycle-(Tcq+Tlogic)時間到來,且穩定。其中Tcycle為時鐘周期。

由于寄存器要求的建立時間為Tsetup,故電路必須滿足 Tcycle -(Tcq+Tlogic)- Tsetup>0 。建立時間裕量 Tset_slack = Tcycle -(Tcq+Tlogic)- Tsetup

如果clk1與clk2之間存在skew,如下圖所示,如正skew。得建立時間裕量為

Tset_slack = Tcycle -(Tcq+Tlogic)- Tsetup + Tskew

這是對建立時間有益的。

保持時間裕量計算
在時鐘沒有skew的情況下。在后一個寄存器有效采樣時鐘沿之后,同時新的C1只有經過Tcq+Tlogic之后才會到達。故要滿足保持時間要求,只需要滿足Tcq+Tlogic>Thold。保持時間裕量Thold_slack = Tcq+Tlogic-Thold

如果clk1與clk2之間存在skew。如下圖所示(正skew)。

可以看到,C1_NEW在clk2時鐘沿后,Tlogic+Tcq-Tskew就改變了。此時保持時間裕量Thold_slack = Tcq+Tlogic-Thold - Tskew 。可以看到,正skew對保持時間是無益的。

總結
可以看到,必須滿足建立時間要求和保持時間要求,級滿足如下關系式。

Tset_slack = Tcycle -(Tcq+Tlogic)- Tsetup + Tskew>0

Thold_slack = Tcq+Tlogic-Thold - Tskew > 0

從中可以看出,建立時間與保持時間要求是一對矛盾的關系,在設計電路時,我們要折中考慮。


TAG:

 

評分:0

我來說兩句

顯示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日歷

« 2019-02-13  
     12
3456789
10111213141516
17181920212223
2425262728  

數據統計

  • 訪問量: 5597
  • 日志數: 4
  • 建立時間: 2017-08-17
  • 更新時間: 2018-12-27

RSS訂閱

Open Toolbar
传世私服 幸运飞艇官网 魔域私服 天龙八部私服 幸运飞艇官网 魔域私服 传世私服 幸运飞艇官网 传世私服 幸运飞艇