引言
??本文主要介紹了建立時間和保持時間。
一、建立時間(Setup Time)
??建立時間是指 D 觸發器的時鐘信號上升沿到來之前,數據保持穩定不變的時間。
??輸入信號應該提前時鐘上升沿(如上升沿有效)Tsu 時間到達芯片,這個 Tsu 就是建立時間。如果不滿足建立時間要求,這個數據就不能被這一時鐘打入觸發器,只有在下一個時鐘上升沿,數據才能被打入觸發器,或者說,該數據就會被永久 “跳過” 而未被 “采樣”。舉個例子,坐火車時需要提前到站檢票安檢,而不是一到火車站就可以乘坐,必須的提前到站的時間就是建立時間。
??如果數據信號在時鐘沿觸發前的持續時間超過了建立時間 Tsu,那么這個時間間隔就叫做建立時間裕量。
??SDC 約束命令為 set_max_delay。
二、保持時間(Hold Time)
??保持時間是指 D 觸發器的時鐘信號上升沿到來之后,數據保持穩定不變的時間。
??數據保持不變以便能夠穩定讀取,如果保持時間不滿足的話,那么數據便不能被有效讀取并轉換為輸出。
??如果數據信號在時鐘沿觸發后的持續時間超過了保持時間 Th,那么這個時間間隔就叫做保持時間裕量。
??SDC 約束命令為 set_min_delay。
總結(Summary)
??建立時間和保持時間這兩個時序參數是測試芯片對輸入信號和時鐘信號之間的時間要求,也就是它們表征了時鐘邊沿觸發前后數據需要在觸發器的輸入持續時間,是芯片本身的特性;其實,這期間其實還涉及到競爭 - 冒險的問題,也就是毛刺,建立保持時間的存在既是觸發器內部的特性又在屏蔽毛刺方面起到了一定的作用;
延伸(Extend)
- 恢復時間(Recovery Time)是指 D 觸發器的時鐘信號上升沿到來之前,低電平復位信號或者高電平清零信號保持穩定不變的時間。
- 移除時間(Removal Time)是指 D 觸發器的時鐘信號上升沿到來之后,低電平復位信號或者高電平清零信號保持穩定不變的時間。
- 傳播延時(Propagation Delay)是指一個數字信號從器件(一般是 DFF,符號表示為 Tcq)的輸入端到輸出端所需的時間。通常在 FPGA 中是指時鐘上升沿之后延時 Tcq 的時間,數據才到達寄存器 Q 端。區別于門傳播延時,表示為信號通過該門所經歷的時間,定義為輸入信號和輸出信號波形在 50% 翻轉點之間的時間;
- 組合邏輯延時(Combinational Logic Delay)是指兩級寄存器之間的輸出端 Q 到輸入端 D 之間的組合邏輯延時,符號表示為 Tlogic。
- 傳播延時是同一個寄存器的輸入到輸出的延時,組合邏輯延時是不同寄存器的輸出到輸入的延時。
??主從式上升沿觸發寄存器的案例分析(Case Analysis),如下:
- 從電路分析可知,在時鐘上升沿到來之前數據必須要被送到第一級電路的鎖存器里面,即 M 端。
- 為什么呢?因為如果時鐘上升沿到來時,數據沒有被送到 M 端,而當時鐘上升沿一來,此時 T2 右端與 M 端的信號就會不一致,M 端為舊數據,T2 右端為新數據,那么舊數據可能會將新數據沖刷替代掉(這種情況是不確定的,處于亞穩態)。
主從式上升沿觸發寄存器
- 對于建立時間 Tsu,在 clk 上升沿到來時,數據要被傳到 M 端,需經過 I1,T1,I3,I2。故在時鐘上升沿到來前 Tsu = TI1 + TT1 + TI3 + TI2 時間數據 D 就必須送到寄存器輸入端,這個時間就是三個反相器加一個傳輸門的延時;
- 對于保持時間 Th,從電路可以看到,當時鐘上升沿一來,T1 就關閉了,就算關閉具有延遲,上升沿一到,數據立即就變化了,還是要經過一個反相器 I1 才能傳到 T1,故不擔心數據會被送進去,因此保持時間可以為零,Th = 0;當然這是對于這個主從式結構的寄存器而言,其他的寄存器的保持時間不一定為零;
- 對于傳輸延時 Tcq,從電路分析,當時鐘上升沿來了之后,數據還需要經過 T3,I6 才能傳到 Q 端,故這個寄存器的傳輸延時 Tcq = TI6 + TT3。
-
IC設計
+關注
關注
38文章
1302瀏覽量
104285 -
數字信號
+關注
關注
2文章
982瀏覽量
47662 -
觸發器
+關注
關注
14文章
2003瀏覽量
61347 -
建立時間
+關注
關注
0文章
10瀏覽量
6618 -
保持時間
+關注
關注
0文章
10瀏覽量
5706
發布評論請先 登錄
相關推薦
評論