成功解決FPGA設(shè)計(jì)時(shí)序問題的三大要點(diǎn)
2.提供可視化的捕捉寄存器本文引用地址:http://m.butianyuan.cn/article/192059.htm
從導(dǎo)入時(shí)序報(bào)告文件開始, TimingDesigner軟件為關(guān)鍵信號(hào)延時(shí)創(chuàng)建變量,并在電子數(shù)據(jù)表中規(guī)劃和分配這些信號(hào)端口。變量過去是用來在時(shí)序圖中更新時(shí)鐘與數(shù)據(jù)關(guān)系。現(xiàn)在,可確定在FPGA器件內(nèi)捕捉寄存器中的邊緣關(guān)系。
內(nèi)部寄存器建立和保持是從時(shí)序報(bào)告和相關(guān)的約束中提取所需的時(shí)序。下一步,在時(shí)序圖表中添加另外兩個(gè)信號(hào)和偏移時(shí)序報(bào)告中的布線延時(shí);在捕捉寄存器中添加數(shù)據(jù)和時(shí)鐘,然后建立和保持FPGA器件適用的約束。用時(shí)鐘邊緣和有效數(shù)據(jù)窗口邊緣的補(bǔ)償確定必要的相位偏移,來平衡設(shè)計(jì)中有效的數(shù)據(jù)窗口。
3.平衡有效數(shù)據(jù)窗口
我們可以使用下列公式來確定PLL時(shí)鐘信號(hào)產(chǎn)生的相位偏移:
1、從設(shè)計(jì)的實(shí)際有效數(shù)據(jù)窗口減少FPGA裝置I/O部分的最小有效數(shù)據(jù)窗口,然后結(jié)果除于2,實(shí)際結(jié)果為這2個(gè)有效數(shù)據(jù)窗口的差額(DlyDVW)。(參考圖3)
DlyDVW = (DVWdata - DVWdev) / 2
2、I/O寄存器數(shù)據(jù)建立時(shí)間加上DlyDVW值,就確定了相對(duì)時(shí)鐘邊緣的有效數(shù)據(jù)窗口(DlyRelSU)。
DlyRelSU = DlyDVW + IOEsu
3、最后,從相對(duì)建立時(shí)間(上面第2步得到的數(shù)值),減去時(shí)鐘信號(hào)與捕捉寄存器的有效數(shù)據(jù)窗口(從時(shí)序圖測(cè)量)之間的補(bǔ)償。
Clk_offset = DlyRelSU - EdgeOffset
利用上述公式,我們可以確定FPGA開發(fā)系統(tǒng)中PLL的相位偏移量,并執(zhí)行到下一步的布局和布線。
4.驗(yàn)證結(jié)果
再次導(dǎo)入做過以上修改的布線后時(shí)序文件,TimingDesigner軟件會(huì)自動(dòng)更新需要的數(shù)值,并更正及重新定位I/O單元的時(shí)鐘信號(hào)CQ_intPLL。如圖6所示。依靠改變PLL,確切的平衡建立和保持空余將是不可能的。對(duì)于這些情況下,應(yīng)該在FPGA裝置的PLL中獲取平衡增量以解決這個(gè)問題。
圖6:在改變時(shí)鐘和平衡建立及保持空余后,獲取數(shù)據(jù)分析的時(shí)序圖表。
本文小結(jié)
高速設(shè)計(jì)往往有嚴(yán)格的規(guī)范和嚴(yán)謹(jǐn)?shù)陌l(fā)布時(shí)間表,所以需要一個(gè)交互式的時(shí)序規(guī)劃和分析工具,來獲得快速和完整的時(shí)序空余,以分析并解決可能影響到最終設(shè)計(jì)成功的因素。本文說明了如何利用TimingDesigner軟件對(duì)FPGA設(shè)計(jì)流程進(jìn)行準(zhǔn)確地捕捉和交換時(shí)序信息,以幫助在整個(gè)設(shè)計(jì)過程中管理時(shí)序空余,并提供可視化的界面驗(yàn)證設(shè)計(jì),并預(yù)測(cè)設(shè)計(jì)性能。今天的FPGA器件產(chǎn)品都帶有多功能的時(shí)鐘配置和豐富的I/O資源,并且?guī)в懈邤?shù)據(jù)傳輸能力,TimingDesigner軟件為高速存儲(chǔ)器如DDR QDR SRAM提供精確的關(guān)鍵路徑時(shí)序分析功能。
評(píng)論