XDC IO --- Output Delay Constraints(Vivado)
文章目錄
- 一、XDC約束格式
- 二、系統(tǒng)同步接口(System Synchronous)
- 1、Single Data Rate(SDR),Rising Edge
- 2、Double Data Rate(DDR)
- 三、源同步接口(Source Synchronous)
- 1、Setup/Hold Based
- 2、Skew Based
- 1>、Single Data Rate(SDR),Rising Edge
- 2>、Double Data Rate(DDR)
本文參考
1、【Vivado使用誤區(qū)與進(jìn)階】XDC約束技巧
2、《綜合與時(shí)序分析的設(shè)計(jì)約束—Synopsys設(shè)計(jì)約束(SDC)實(shí)用指南》
3、 Vivado 中的Language Template
一、XDC約束格式
set_output_delay -clock <clock_name>-max <maxdelay>-min <mindelay>[get_ports <input_ports>] -add_delay //用于DDR-clock_fall; //用于DDR二、系統(tǒng)同步接口(System Synchronous)
1、Single Data Rate(SDR),Rising Edge
芯片間只傳遞數(shù)據(jù),時(shí)鐘信號(hào)的同步完全依靠板級(jí)設(shè)計(jì)對(duì)齊。僅需要考慮下游芯片的建立時(shí)間和保持時(shí)間以及板級(jí)延遲。XDC約束技巧中的例子特別好,不過這里還是以Language Template中的例子說明,注意下邊時(shí)序圖中的箭頭,這里的參考方向變成了采樣沿之前的時(shí)間。
2、Double Data Rate(DDR)
DDR需要上升沿和下降沿都要約束,分析角度同上。
三、源同步接口(Source Synchronous)
在源同步接口中,定義接口約束之前,需要用set_generated_clock先定義送出的隨路時(shí)鐘
1、Setup/Hold Based
采用建立保持時(shí)間的角度,那么約束與系統(tǒng)同步約束相同。
2、Skew Based
1>、Single Data Rate(SDR),Rising Edge
把同步數(shù)據(jù)相對(duì)與時(shí)鐘的skew限定在一定范圍內(nèi),可以基于Skew的大小來設(shè)置同步輸出的約束。此時(shí)可以不考慮下游采樣器件的建立時(shí)間和保持時(shí)間。先來看看Language Template中的例子:
每次看到這的時(shí)候都一臉××,但是還是要試著去理解,再畫一張圖。
這里可能不對(duì),請(qǐng)自行取舍。在分析的時(shí)候一定要記得之前說的-max是setup分析;-min是hold分析。所以在set_output_delay的時(shí)候,數(shù)據(jù)有效窗口的大小是指的采樣沿之前。
2>、Double Data Rate(DDR)
手疼,不寫了。language template如下:
# Output Delay Constraints set_output_delay -clock $fwclk -max [expr $fwclk_period/2 - $afe_skew] [get_ports $output_ports]; set_output_delay -clock $fwclk -min $bre_skew [get_ports $output_ports]; set_output_delay -clock $fwclk -max [expr $fwclk_period/2 - $are_skew] [get_ports $output_ports] -clock_fall -add_delay; set_output_delay -clock $fwclk -min $bfe_skew [get_ports $output_ports] -clock_fall -add_delay;再畫出時(shí)序圖:
注意:
1、set_input_delay把啟動(dòng)時(shí)鐘(源時(shí)鐘)作為參考時(shí)鐘。
2、set_output_delay把采樣時(shí)鐘(目的時(shí)鐘)作為參考時(shí)鐘。
總結(jié)
以上是生活随笔為你收集整理的XDC IO --- Output Delay Constraints(Vivado)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 下载 axios.js 文件到本地
- 下一篇: 【STM32H7教程】第87章 STM3