對于基于鎖存器的設(shè)計,靜態(tài)時序分析會應(yīng)用一個稱為時間借用的概念。本篇博文解釋了時間借用的概念,若您的設(shè)計中包含鎖存器且時序報告中存在時間借用,即可適用此概念。
隨后,本文進一步解釋靜態(tài)時序分析 (STA) 工具如何應(yīng)用這個概念。
假設(shè)時鐘周期為 10 且占空比為 50%:

另假設(shè)存在如下簡單電路:

為便于理解,假設(shè)每個觸發(fā)器的建立時間和保持時間均為“0”。同時,假設(shè)時鐘偏差和時鐘延遲均為“0”。
在 0 時從 F1 發(fā)送的數(shù)據(jù)會在 10 時被 F2 采樣。因此,如果數(shù)據(jù)在 10 之后到達 F2,則 F2 將無法捕獲正確的數(shù)據(jù)。同樣,從 F2 發(fā)送的數(shù)據(jù)有 10 個時間單位到達 F3,并在下一個時鐘沿被 F3 采樣。
現(xiàn)在我們用鎖存器 L2 替換 F2,其中鎖存器的“門控”由同一時鐘線驅(qū)動:

先來理解時間借用的概念,稍后再對基于鎖存器的設(shè)計進行實際的靜態(tài)時序分析。
對于從 F1 發(fā)送的數(shù)據(jù):
如果該數(shù)據(jù)稍早于 10 時到達鎖存器輸入,則會在鎖存器的 D 管腳處等待。這與 F2 表現(xiàn)出的行為類似。
但當數(shù)據(jù)在 10 時之后到達 L2 時會發(fā)生什么? L2 在 10 到 15 的時間段內(nèi)是“透明”。因此,即使數(shù)據(jù)在 10 之后到達 L2,只要數(shù)據(jù)在 15 之前到達 L2,L2 就能夠使用它。
例如,如果數(shù)據(jù)在 12 時到達 L2,這意味著鎖存器提供了(相對于觸發(fā)器)2 個時間單位的優(yōu)勢。
在此示例中,L2 能夠提供的最大優(yōu)勢是 5 個時間單位。現(xiàn)在來看看從 L2 到 F3 的路徑。數(shù)據(jù)在 12 時從 L2 輸出,并將在 20 時被 F3 采樣。因此,從 L2 到 F3 的路徑只獲得 8 個時間單位。
在包含全部觸發(fā)器的電路中,第二條路徑有 10 個時間單位。然而在這個電路中,它少了 2 個時間單位。
本質(zhì)上:
饋入鎖存器的路徑獲得了額外的 2 個時間單位。因此,鎖存器之后的路徑不得不從其份額(10 個時間單位)中“讓出”這 2 個時間單位。換言之:饋入鎖存器的路徑從鎖存器之后的路徑“借用”了 2 個時間單位。
因此,饋入鎖存器的路徑可以從后續(xù)路徑借用額外的時間(相當于鎖存器透明的時間)。然而,實際借用的時間不一定就是可以借用的全部時間。實際借用的時間是路徑滿足時序所需的最小值(受限于鎖存器透明時間的最大限制)。
對于所述示例:
可以借用的時間量 = 5 個時間單位。
實際借用的時間量 = 2 個時間單位。
除了默認可用的時間外,還額外使用了 2 個時間單位來滿足時序。
現(xiàn)在我們理解了在鎖存器場景下的時間借用概念,接下來看看 STA 工具如何對基于鎖存器的設(shè)計進行時序分析。
對于在 0 時由 F1 觸發(fā)的數(shù)據(jù)而言:
L2 在 0 到 5 的持續(xù)時間內(nèi)是開放的。這是 L2 可以捕獲數(shù)據(jù)的窗口。因此,在 0 時從 F1 發(fā)送的數(shù)據(jù)可以在 0 到 5 期間被 L2 捕獲。
對于建立時間分析:
- 0 會被視為 L2 的捕獲沿,借用容量為 5。
STA 工具會執(zhí)行以下操作:在 0 時發(fā)送并在 0 時捕獲,附加借用容量為 5。就 L2 到 F3 的路徑而言:在 0 時發(fā)送,在 10 時于 F3 處被捕獲。因此,從 F1 到 F3 的路徑為 10,其中最多 5 個時間單位在 L2 之前可用,其余則在 L2 之后可用。
現(xiàn)在來看看保持時間分析:
對于保持時間分析,我們希望確保數(shù)據(jù)不會在前一個周期內(nèi)被捕獲。由 F1 在 0 時發(fā)送的數(shù)據(jù)可以在 0-5 期間被 L2 捕獲?;蛘哒f,L2 在 0-5 期間捕獲的數(shù)據(jù)應(yīng)該是 F1 在 0 時發(fā)送的數(shù)據(jù)。
那么 F1 將在 10 時發(fā)送的下一個數(shù)據(jù)呢?
如果這個數(shù)據(jù)在 5 之前到達 L2,那么它會干擾 F1 在 0 時發(fā)送的數(shù)據(jù)。因此,保持時間檢查應(yīng)確保 F1 在 10 時發(fā)送的數(shù)據(jù)不得在 5 時之前到達 L2,即針對 F1 在 10 時發(fā)送的數(shù)據(jù)和 L2 在 5 時捕獲的數(shù)據(jù)會進行保持時間檢查。
-
鎖存器
+關(guān)注
關(guān)注
8文章
956瀏覽量
44576 -
靜態(tài)時序分析
+關(guān)注
關(guān)注
0文章
30瀏覽量
9785
原文標題:開發(fā)者分享 | 鎖存器中的時間借用
文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
FPGA靜態(tài)時序分析模型——寄存器到寄存器
鎖存器的缺點和優(yōu)點
靜態(tài)時序分析在IC設(shè)計中的應(yīng)用
鎖存器中的時間借用概念與靜態(tài)時序分析
評論