網(wǎng)友總結(jié):FPGA時(shí)序約束的六種方法
發(fā)布時(shí)間:2015-01-02 來源:riple的博客 責(zé)任編輯:sherryyu
【導(dǎo)讀】對自己的設(shè)計(jì)的實(shí)現(xiàn)方式越了解,對自己的設(shè)計(jì)的時(shí)序要求越了解,對目標(biāo)器件的資源分布和結(jié)構(gòu)越了解,對EDA工具執(zhí)行約束的效果越了解,那么對設(shè)計(jì)的時(shí)序約束目標(biāo)就會(huì)越清晰,相應(yīng)地,設(shè)計(jì)的時(shí)序收斂過程就會(huì)更可控。本文總結(jié)了幾種進(jìn)行時(shí)序約束的方法。
按照從易到難的順序排列如下:
0. 核心頻率約束
這是最基本的,所以標(biāo)號為0。
1. 核心頻率約束+時(shí)序例外約束
時(shí)序例外約束包括FalsePath、MulticyclePath、MaxDelay、MinDelay。但這還不是最完整的時(shí)序約束。如果僅有這些約束的話,說明設(shè)計(jì)者的思路還局限在FPGA芯片內(nèi)部。
2. 核心頻率約束+時(shí)序例外約束+I/O約束
I/O約束包括引腳分配位置、空閑引腳驅(qū)動(dòng)方式、外部走線延時(shí)(InputDelay、OutputDelay)、上下拉電阻、驅(qū)動(dòng)電流強(qiáng)度等。加入I/O約束后的時(shí)序約束,才是完整的時(shí)序約束。FPGA作為PCB上的一個(gè)器件,是整個(gè)PCB系統(tǒng)時(shí)序收斂的一部分。FPGA作為PCB設(shè)計(jì)的一部分,是需要PCB設(shè)計(jì)工程師像對待所有COTS器件一樣,閱讀并分析其I/O Timing Diagram的。FPGA不同于COTS器件之處在于,其I/O Timing是可以在設(shè)計(jì)后期在一定范圍內(nèi)調(diào)整的;雖然如此,最好還是在PCB設(shè)計(jì)前期給與充分的考慮并歸入設(shè)計(jì)文檔。
正因?yàn)镕PGA的I/O Timing會(huì)在設(shè)計(jì)期間發(fā)生變化,所以準(zhǔn)確地對其進(jìn)行約束是保證設(shè)計(jì)穩(wěn)定可控的重要因素。許多在FPGA重新編譯后,F(xiàn)PGA對外部器件的操作出現(xiàn)不穩(wěn)定的問題都有可能是由此引起的。
3. 核心頻率約束+時(shí)序例外約束+I/O約束+Post-fit Netlist
引入Post-fit Netlist的過程是從一次成功的時(shí)序收斂結(jié)果開始,把特定的一組邏輯(Design Partition)在FPGA上實(shí)現(xiàn)的布局位置和布線結(jié)果(Netlist)固定下來,保證這一布局布線結(jié)果可以在新的編譯中重現(xiàn),相應(yīng)地,這一組邏輯的時(shí)序收斂結(jié)果也就得到了保證。這個(gè)部分保留上一次編譯結(jié)果的過程就是Incremental Compilation,保留的網(wǎng)表類型和保留的程度都可以設(shè)置,而不僅僅局限于Post-fit Netlist,從而獲得相應(yīng)的保留力度和優(yōu)化效果。由于有了EDA工具的有力支持,雖然是精確到門級的細(xì)粒度約束,設(shè)計(jì)者只須進(jìn)行一系列設(shè)置操作即可,不需要關(guān)心布局和布線的具體信息。由于精確到門級的約束內(nèi)容過于繁多,在qsf文件中保存不下,得到保留的網(wǎng)表可以以Partial Netlist的形式輸出到一個(gè)單獨(dú)的文件qxp中,配和qsf文件中的粗略配置信息一起完成增量編譯。
4. 核心頻率約束+時(shí)序例外約束+I/O約束+LogicLock
LogicLock是在FPGA器件底層進(jìn)行的布局約束。LogicLock的約束是粗粒度的,只規(guī)定設(shè)計(jì)頂層模塊或子模塊可以調(diào)整的布局位置和大?。↙ogicLock Regions)。成功的LogicLock需要設(shè)計(jì)者對可能的時(shí)序收斂目標(biāo)作出預(yù)計(jì),考慮特定邏輯資源(引腳、存儲(chǔ)器、DSP)與LogicLock Region的位置關(guān)系對時(shí)序的影響,并可以參考上一次時(shí)序成功收斂的結(jié)果。這一權(quán)衡和規(guī)劃FPGA底層物理布局的過程就是FloorPlanning。LogicLock給了設(shè)計(jì)者對布局位置和范圍更多的控制權(quán),可以有效地向EDA工具傳遞設(shè)計(jì)者的設(shè)計(jì)意圖,避免EDA工具由于缺乏布局優(yōu)先級信息而盲目優(yōu)化非關(guān)鍵路徑。由于模塊在每一次編譯中的布局位置變化被限定在了最優(yōu)的固定范圍內(nèi),時(shí)序收斂結(jié)果的可重現(xiàn)性也就更高。由于其粗粒度特性,LogicLock的約束信息并不很多,可以在qsf文件中得到保留。
需要注意的是,方法3和4經(jīng)常可以混合使用,即針對FloorPlanning指定的LogicLock Region,把它作為一個(gè)Design Partition進(jìn)行Incremental Compilation。這是造成上述兩種方法容易混淆的原因。
5. 核心頻率約束+時(shí)序例外約束+I/O約束+寄存器布局約束
寄存器布局約束是精確到寄存器或LE一級的細(xì)粒度布局約束。設(shè)計(jì)者通過對設(shè)計(jì)施加精準(zhǔn)的控制來獲得可靠的時(shí)序收斂結(jié)果。對設(shè)計(jì)中的每一個(gè)寄存器手工進(jìn)行布局位置約束并保證時(shí)序收斂是一項(xiàng)浩大的工程,這標(biāo)志著設(shè)計(jì)者能夠完全控制設(shè)計(jì)的物理實(shí)現(xiàn)。這是一個(gè)理想目標(biāo),是不可能在有限的時(shí)間內(nèi)完成的。通常的做法是設(shè)計(jì)者對設(shè)計(jì)的局部進(jìn)行寄存器布局約束并通過實(shí)際運(yùn)行布局布線工具來獲得時(shí)序收斂的信息,通過數(shù)次迭代逼近預(yù)期的時(shí)序目標(biāo)。
看到過一個(gè)這樣的設(shè)計(jì):一個(gè)子模塊的每一個(gè)寄存器都得到了具體的布局位置約束。該模塊的時(shí)序收斂也就相應(yīng)地在每一次重新編譯的過程中得到了保證。經(jīng)過分析,這一子模塊的設(shè)計(jì)和約束最初是在原理圖中進(jìn)行的,在達(dá)到時(shí)序收斂目標(biāo)后該設(shè)計(jì)被轉(zhuǎn)換為HDL語言描述,相應(yīng)的約束也保存到了配置文件中。
6. 核心頻率約束+時(shí)序例外約束+I/O約束+特定路徑延時(shí)約束
好的時(shí)序約束應(yīng)該是“引導(dǎo)型”的,而不應(yīng)該是“強(qiáng)制型”的。通過給出設(shè)計(jì)中關(guān)鍵路徑的時(shí)序延遲范圍,把具體而微的工作留給EDA工具在該約束的限定范圍內(nèi)自由實(shí)現(xiàn)。這也是一個(gè)理想目標(biāo),需要設(shè)計(jì)者對每一條時(shí)序路徑都做到心中有數(shù),需要設(shè)計(jì)者分清哪些路徑是可以通過核心頻率和簡單的時(shí)序例外約束就可以收斂的,哪些路徑是必須制定MaxDelay和MinDelay的,一條也不能遺漏,并且還需要EDA工具“善解人意”的有力支持。設(shè)定路徑延時(shí)約束就是間接地設(shè)定布局布線約束,但是比上述3、4、5的方法更靈活,而且不失其準(zhǔn)確性。通過時(shí)序約束而不是顯式的布局和網(wǎng)表約束來達(dá)到時(shí)序收斂才是時(shí)序約束的真諦。
記得有人說過“好的時(shí)序是設(shè)計(jì)出來的,不是約束出來的”,我一直把這句話作為自己進(jìn)行邏輯設(shè)計(jì)和時(shí)序約束的指導(dǎo)。好的約束必須以好的設(shè)計(jì)為前提。沒有好的設(shè)計(jì),在約束上下再大的功夫也是沒有意義的。不過,通過正確的約束也可以檢查設(shè)計(jì)的優(yōu)劣,通過時(shí)序分析報(bào)告可以檢查出設(shè)計(jì)上時(shí)序考慮不周的地方,從而加以修改。通過幾次“分析—修改—分析”的迭代也可以達(dá)到完善設(shè)計(jì)的目標(biāo)。應(yīng)該說,設(shè)計(jì)是約束的根本,約束是設(shè)計(jì)的保證,二者是相輔相成的關(guān)系。
特別推薦
- 增強(qiáng)視覺傳感器功能:3D圖像拼接算法幫助擴(kuò)大視場
- PNP 晶體管:特性和應(yīng)用
- 使用IO-Link收發(fā)器管理數(shù)據(jù)鏈路如何簡化微控制器選擇
- 用好 DMA控制器這兩種模式 MCU效率大大提高!
- 深入分析帶耦合電感多相降壓轉(zhuǎn)換器的電壓紋波問題
- Honda(本田)與瑞薩簽署協(xié)議,共同開發(fā)用于軟件定義汽車的高性能SoC
- 第13講:超小型全SiC DIPIPM
技術(shù)文章更多>>
- 加速度傳感器的工作原理
- 智能物流推動(dòng)我們邁向更美好的未來
- 功率器件熱設(shè)計(jì)基礎(chǔ)(十二)——功率半導(dǎo)體器件的PCB設(shè)計(jì)
- TCL實(shí)業(yè)攬獲多項(xiàng)CES 2025科技大獎(jiǎng),蟬聯(lián)全球消費(fèi)電子品牌TOP10
- 利用高性能電壓監(jiān)控器提高工業(yè)功能安全合規(guī)性——第1部分
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
精密電阻
精密工具
景佑能源
聚合物電容
君耀電子
開發(fā)工具
開關(guān)
開關(guān)電源
開關(guān)電源電路
開關(guān)二極管
開關(guān)三極管
科通
可變電容
可調(diào)電感
可控硅
空心線圈
控制變壓器
控制模塊
藍(lán)牙
藍(lán)牙4.0
藍(lán)牙模塊
浪涌保護(hù)器
雷度電子
鋰電池
利爾達(dá)
連接器
流量單位
漏電保護(hù)器
濾波電感
濾波器