一、建立時間的檢查
建立時間的檢查是指檢查電路里每一個觸發器的數據和時鐘的關係是否滿足建立時間的要求。
我們以上圖爲例進行建立時間檢查。由圖可知,我們主要針對第二個觸發器UFF1進行檢查。我們可以梳理時序關係如下:
通過這個圖,我們可以得到滿足建立時間需要達成以下目標
即我們之前說到的Setup slack = Data Required Time(setup) - Data Arrival Time > 0
在考慮skew和jitter的偏差的情況下,上述的式子可以修改爲:
二、保持時間的檢查
保持時間的檢查與建立時間的檢查具有以下的區別:
1、保持時間的檢查是在同一個時鐘邊沿進行的,即數據的發射路徑和數據的捕獲路徑是同一時鐘邊沿
2、保持時間與時鐘週期是沒有任何關係的
我們依舊以上面的時序路徑圖進行分析,其時序關係如下:
通過這個圖,我們可以得到滿足保持時間需要達成以下目標:
即我們之前說到的Hold slack = Data Arrival Time - Data Required Time (hold)> 0
考慮skew和jitter的偏差的情況下,上述的式子可以修改爲:
一般來說,setup可以通過時鐘頻率來調整,而hold time是不行的,是一定要滿足的。