Vivado 時序收斂技巧
掃描二維碼
隨時隨地手機看文章
有多種類型的時序違例可歸類為脈沖寬度違例。
- 最大偏差違例
- 最小周期違例(本文詳解之重點)。
- 最大周期違例
- 低脈沖寬度違例
- 高脈沖寬度違例
如需了解脈沖寬度違例的詳情,請參閱“報告時序匯總”(Report Timing Summary) 的“TPWS”部分。
最嚴重的脈沖寬度違例在報告中顯示為 WPWS。
如需了解脈沖寬度違例的詳情,請在 Vivado GUI 中打開脈沖寬度違例報告(單擊“Reports” - > “Timing” - > “Report Pulse Width”)或使用以下 Tcl 命令打開此報告:
report_pulse_width
最小周期違例
本文僅介紹“最小周期違例”相關內容。
報告描述:
在脈沖寬度報告中,將檢查所有時鐘的最小脈沖寬度要求。
最小周期違例示例:
舉例來說,GUI 中打開的報告描述如下所示:
以上示例顯示了特定時鐘的最小周期 (Min Period) 和最大周期 (Max Period) 要求。
可以看到,針對“Min Period”,裕量 (Slack) 為負值。
此違例現(xiàn)象必須解決,才能避免出現(xiàn)脈沖寬度違例。
在此示例中,顯示的預期值 (Required) 為 2.155ns,實際值 (Actual) 為 1.250ns,這兩個值均為對應于檢查類型 (Min Period) 的值。“Slack”列顯示的值即為這兩者的差值(Slack = Actual 值 - Required 值)。
解決辦法:
在此示例中,負 Slack 值 -0.905ns 位于 BUFG 的輸入引腳 (Lib Pin: BUFG/I) 上。
要解決此違例,必須檢查此特定器件系列的 AC 和 DC 特性,其中將顯示 BUFG 允許的最大頻率。