FPGA時序約束理解記錄


最近整理了一下時序約束的內容,順便發出來分享記錄一下。

任何硬件想要工作正常,均需滿足建立和保持時間,至於這個概念不再陳述。

下面將重點介紹兩個概念:建立余量和保持余量。FPGA內部進行時序分析無非就是計算這兩個余量,為正,則時序滿足要求,否則不滿足。

FPGA在與外部器件打交道時,端口如果為輸入則與input delay約束相關,如果最為輸出則output delay,這兩種約束的值究竟是什么涵義,在下文中我也會重點刨析,但是前提是需要理解圖1和圖2建立余量和保持余量。

1、建立余量

不考慮clk_skew,數據在regA 的發射沿(即第一個上升沿)經過Tco+Tdata則會一直保持不變,等待着接受沿采集,接收沿有關建立只需滿足的建立時間即可,建立余量=T-Tco-Tdata即下圖紅色區所示。

 

2、保持余量

藍色是第一個數據,第一個上升沿是藍色數據的發射沿,第二個上升沿是藍色數據的接收沿

紫色是第二個數據,第二個上升沿是紫色數據的發射沿,第三個上升沿是紫色數據接收沿(圖中未畫)

意思是什么?第一個藍色數據經過發射沿后延遲Tco+Tdata的時間就一直保持不變,直到紫色的數據在其發射沿來后經過Tco+Tdata時間將藍色數據代替,藍色數據只需要在其接收沿后停留的時間大於等於保持時間即可被正常采集,但是藍色數據實際上能夠停留多久是由Tco+Tdata決定的,因此Tco+Tdata的值決定了其在接受沿后的壽命,即Tco+Tdata>=Th就可以滿足保持時間,保持余量=Tco+Tdata-Th,保持時間和時鍾周期T無關,因為他的壽命是由Tco+Tdata決定的。

 

 3、input delay 和output delay

對於input /output delay的保持余量和建立余量的計算方法和前面講的是一樣的,區別在於前面的例子中REGA和REGB均是在FPGA內部的,計算余量的所有參數FPGA自身是知道的,他自己可以完成整個計算分析,但是一旦涉及到input delay和output delay,即FPGA作為是接收端或者發送端與其他器件交互時,有些計算的參數FPGA自己知道,有的計算的參數是外部器件知道,為了完成余量的計算,那么就要通過約束把FPGA不知道的量告訴FPGA。

用input delay舉例說明 見下圖 

建立余量=T-Tco-Tdata-Tsu,FPGA作為接收端Tsu,Th是知道的,但是其余兩個量不知道,Tco與外部器件性能相關,可以從其數據手冊中獲取這個量,Tdata也許和你PCB的布線延遲等有關,為了完成計算,只需要把Tdata+Tco的最告訴fpga即可,max參數是與建立參數相關,min與保持余量相關,其最大值為 input delay max為Tco+Tdata的最大值,最小值為input delay min為Tco+Tdata的最小值。

output delay見下圖,圖中紅色代表FPGA自己知道的量,其余需要通過約束告知,所以約束只需補充FPGA不知道的值即可,最大值max 為Tdata+Tsu,min為Tdata-Th

--------------------------------------------------------------------------------------------------------------------------------------------------------------

下面是我做的一些其他概念的理解記錄,簡單總結供自己以后查詢

SDR和DDR的概念:S是單沿觸發,D是雙沿,雙沿又分中心對齊和邊沿對齊,見圖

 

 下圖是input delay 的DDR中心對齊,其中黑色方框框起來的是理想情況下的數據,藍色是數據整體左偏移,紅色是數據整體右偏移,來回抖動的范圍,圖示中XXXX則表示的數據不穩定的區域,對於上升沿,最小值就是到藍色框dv_are的大小,最大值就是到紅色框邊沿T/2-dv_bfe.下降沿不再贅述。

對於DDR邊沿對齊,對上升沿來講,黑色數據框是理想情況,紅色是向右偏移,藍色則是向左偏移,在第三個紅色框那里,延遲已經等於0,再進一步左移則為負,藍色所示。對上升沿來講,max為skew_are,min為 負-skew_bre。

此篇較為粗糙,時序每研究一遍都會有不同的理解,而且每個人理解的着手點不一樣,希望能夠靜下心來,好好沉淀,莫急躁。

有問題歡迎討論

未來可期

 博客原為鏈接:https://www.cnblogs.com/aslmer/p/11746947.html


免責聲明!

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



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