基於quartus的高級時序分析


基於quartus的高級時序分析

一、派生時鍾和異步存儲器

派生時鍾就是和獨立時鍾存在頻率或者相位關系的時鍾,異步存儲器就是具有存儲讀寫異步功能的存儲器。在時序分析中,這兩個部分的靜態時序分析是需要設置個別約束的。派生時鍾會產生時鍾偏斜或者不同頻率時序問題,異步存儲器則類似latch,存在建立時間和保持時間的要求。

二、多時鍾域約束

分別對獨立時鍾和衍生時鍾做時序約束,保證其能夠進行STA分析

三、多周期約束

(1)多周期約束定義

一般的時鍾約束都是基於一個時鍾周期的,以一個周期的邊沿為數據變化條件。對於某些特殊的路徑,可以以多個周期為觸發條件,以便達到提高建立時間和調節保持時間的目的。具體到RTL層次上就是用一個技術信號控制時鍾邊沿是否讀取數據。

(2)多周期約束方法

多周期約束需要設置的參數有兩個:multicycle和multicycle hold;第一個是多少個時鍾周期觸發一次,直接對應建立時間,第二個是多少個周期保持不變。具體的方法還是在實際設計中操作。

(3)時鍾使能

對於時鍾使能信號,可以通過多周期約束模擬信號的觸發間隔,可以提高靜態時序的精確性。

(4)多周期約束的條件

多周期約束應當保證數據延時在保持時間和建立時間之間,這樣才能滿足時序約束。

(5)具體問題處理

1️⃣同頻偏置信號

2️⃣高頻信號到低頻信號(存在倍頻關系)

3️⃣低頻信號到高頻信號(存在倍頻關系)

四、偽路徑的剪除

1️⃣cut off foodback from I/O pins

去除雙向IO的偽路徑(從輸入寄存器到輸出寄存器)

2️⃣cut clear and preset paths

切除異步復位和置位端路徑

3️⃣cut off read during write signals paths

不分析ESB(嵌入式系統塊)路徑

4️⃣cut paths between unrelated clocks

非相關時鍾會被減除,需要和系統時鍾建立關系約束

5️⃣cut timing path

手動去除路徑分析

五、保持時間的修正

(1)使用多周期約束(2)減小偏斜skew(3)增加數據延時

時序約束的目標就是在預設時鍾周期下,完成所有路徑的建立時間和保持時間的成立等式。

六、異步時鍾域中的分析

在靜態時序分析時需要減除異步時鍾域,使用偽路徑實現兩個時鍾域的各自靜態時序分析。一般的跨時鍾域的通行采用握手信號的形式,具體的內容可以參考另外一篇筆記FPGA中的時鍾域問題

七、quartus中的最小化時序分析

quartsu中的時序分析報告默認在最差的情況下的時序分析,高溫、低工藝、低壓的狀態下。也可以通過設置完成最小化時序分析(也就是最佳狀況下的分析),注意會刷新原來的一般時序報告。約束方法就是在timing setting中設置好最小化的tsu、th和tpd,然后在tcl中輸入 quartus_tan --min <project name>就可以實現最小化時序分析。

八、quartus中的TCL工具

quartus中支持TCL腳本語言,可以實現所有時序約束的操作。

九、TimeQuest簡介

TimeQuest是quartus中的時序分析工具,能夠分析不斷發展的器件,相較於原先的tan,可以更好地完成靜態時序分析。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM