
網(wǎng)友總結(jié):FPGA時(shí)序約束的六種方法
發(fā)布時(shí)間:2015-01-02 來(lái)源:riple的博客 責(zé)任編輯:sherryyu
【導(dǎo)讀】對(duì)自己的設(shè)計(jì)的實(shí)現(xiàn)方式越了解,對(duì)自己的設(shè)計(jì)的時(shí)序要求越了解,對(duì)目標(biāo)器件的資源分布和結(jié)構(gòu)越了解,對(duì)EDA工具執(zhí)行約束的效果越了解,那么對(duì)設(shè)計(jì)的時(shí)序約束目標(biāo)就會(huì)越清晰,相應(yīng)地,設(shè)計(jì)的時(shí)序收斂過(guò)程就會(huì)更可控。本文總結(jié)了幾種進(jìn)行時(shí)序約束的方法。
按照從易到難的順序排列如下:

0. 核心頻率約束
這是最基本的,所以標(biāo)號(hào)為0。
1. 核心頻率約束+時(shí)序例外約束
時(shí)序例外約束包括FalsePath、MulticyclePath、MaxDelay、MinDelay。但這還不是最完整的時(shí)序約束。如果僅有這些約束的話,說(shuō)明設(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ì)工程師像對(duì)待所有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)確地對(duì)其進(jìn)行約束是保證設(shè)計(jì)穩(wěn)定可控的重要因素。許多在FPGA重新編譯后,F(xiàn)PGA對(duì)外部器件的操作出現(xiàn)不穩(wěn)定的問(wèn)題都有可能是由此引起的。
3. 核心頻率約束+時(shí)序例外約束+I/O約束+Post-fit Netlist
引入Post-fit Netlist的過(guò)程是從一次成功的時(shí)序收斂結(jié)果開(kāi)始,把特定的一組邏輯(Design Partition)在FPGA上實(shí)現(xiàn)的布局位置和布線結(jié)果(Netlist)固定下來(lái),保證這一布局布線結(jié)果可以在新的編譯中重現(xiàn),相應(yīng)地,這一組邏輯的時(shí)序收斂結(jié)果也就得到了保證。這個(gè)部分保留上一次編譯結(jié)果的過(guò)程就是Incremental Compilation,保留的網(wǎng)表類型和保留的程度都可以設(shè)置,而不僅僅局限于Post-fit Netlist,從而獲得相應(yīng)的保留力度和優(yōu)化效果。由于有了EDA工具的有力支持,雖然是精確到門級(jí)的細(xì)粒度約束,設(shè)計(jì)者只須進(jìn)行一系列設(shè)置操作即可,不需要關(guān)心布局和布線的具體信息。由于精確到門級(jí)的約束內(nèi)容過(guò)于繁多,在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ì)者對(duì)可能的時(shí)序收斂目標(biāo)作出預(yù)計(jì),考慮特定邏輯資源(引腳、存儲(chǔ)器、DSP)與LogicLock Region的位置關(guān)系對(duì)時(shí)序的影響,并可以參考上一次時(shí)序成功收斂的結(jié)果。這一權(quán)衡和規(guī)劃FPGA底層物理布局的過(guò)程就是FloorPlanning。LogicLock給了設(shè)計(jì)者對(duì)布局位置和范圍更多的控制權(quán),可以有效地向EDA工具傳遞設(shè)計(jì)者的設(shè)計(jì)意圖,避免EDA工具由于缺乏布局優(yōu)先級(jí)信息而盲目?jī)?yōu)化非關(guān)鍵路徑。由于模塊在每一次編譯中的布局位置變化被限定在了最優(yōu)的固定范圍內(nèi),時(shí)序收斂結(jié)果的可重現(xiàn)性也就更高。由于其粗粒度特性,LogicLock的約束信息并不很多,可以在qsf文件中得到保留。
需要注意的是,方法3和4經(jīng)??梢曰旌鲜褂茫瘁槍?duì)FloorPlanning指定的LogicLock Region,把它作為一個(gè)Design Partition進(jìn)行Incremental Compilation。這是造成上述兩種方法容易混淆的原因。
5. 核心頻率約束+時(shí)序例外約束+I/O約束+寄存器布局約束
寄存器布局約束是精確到寄存器或LE一級(jí)的細(xì)粒度布局約束。設(shè)計(jì)者通過(guò)對(duì)設(shè)計(jì)施加精準(zhǔn)的控制來(lái)獲得可靠的時(shí)序收斂結(jié)果。對(duì)設(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ì)者對(duì)設(shè)計(jì)的局部進(jìn)行寄存器布局約束并通過(guò)實(shí)際運(yùn)行布局布線工具來(lái)獲得時(shí)序收斂的信息,通過(guò)數(shù)次迭代逼近預(yù)期的時(shí)序目標(biāo)。
看到過(guò)一個(gè)這樣的設(shè)計(jì):一個(gè)子模塊的每一個(gè)寄存器都得到了具體的布局位置約束。該模塊的時(shí)序收斂也就相應(yīng)地在每一次重新編譯的過(guò)程中得到了保證。經(jīng)過(guò)分析,這一子模塊的設(shè)計(jì)和約束最初是在原理圖中進(jìn)行的,在達(dá)到時(shí)序收斂目標(biāo)后該設(shè)計(jì)被轉(zhuǎn)換為HDL語(yǔ)言描述,相應(yīng)的約束也保存到了配置文件中。
6. 核心頻率約束+時(shí)序例外約束+I/O約束+特定路徑延時(shí)約束
好的時(shí)序約束應(yīng)該是“引導(dǎo)型”的,而不應(yīng)該是“強(qiáng)制型”的。通過(guò)給出設(shè)計(jì)中關(guān)鍵路徑的時(shí)序延遲范圍,把具體而微的工作留給EDA工具在該約束的限定范圍內(nèi)自由實(shí)現(xiàn)。這也是一個(gè)理想目標(biāo),需要設(shè)計(jì)者對(duì)每一條時(shí)序路徑都做到心中有數(shù),需要設(shè)計(jì)者分清哪些路徑是可以通過(guò)核心頻率和簡(jiǎn)單的時(shí)序例外約束就可以收斂的,哪些路徑是必須制定MaxDelay和MinDelay的,一條也不能遺漏,并且還需要EDA工具“善解人意”的有力支持。設(shè)定路徑延時(shí)約束就是間接地設(shè)定布局布線約束,但是比上述3、4、5的方法更靈活,而且不失其準(zhǔn)確性。通過(guò)時(shí)序約束而不是顯式的布局和網(wǎng)表約束來(lái)達(dá)到時(shí)序收斂才是時(shí)序約束的真諦。
記得有人說(shuō)過(guò)“好的時(shí)序是設(shè)計(jì)出來(lái)的,不是約束出來(lái)的”,我一直把這句話作為自己進(jìn)行邏輯設(shè)計(jì)和時(shí)序約束的指導(dǎo)。好的約束必須以好的設(shè)計(jì)為前提。沒(méi)有好的設(shè)計(jì),在約束上下再大的功夫也是沒(méi)有意義的。不過(guò),通過(guò)正確的約束也可以檢查設(shè)計(jì)的優(yōu)劣,通過(guò)時(shí)序分析報(bào)告可以檢查出設(shè)計(jì)上時(shí)序考慮不周的地方,從而加以修改。通過(guò)幾次“分析—修改—分析”的迭代也可以達(dá)到完善設(shè)計(jì)的目標(biāo)。應(yīng)該說(shuō),設(shè)計(jì)是約束的根本,約束是設(shè)計(jì)的保證,二者是相輔相成的關(guān)系。
特別推薦
- 電磁干擾下的生存指南:電流與電壓的底層技術(shù)博弈
- 2025機(jī)器人+應(yīng)用與產(chǎn)業(yè)鏈新一輪加速發(fā)展藍(lán)皮書》電子版限免下載!
- 從績(jī)效亮點(diǎn)到新目標(biāo)規(guī)劃,意法半導(dǎo)體可持續(xù)發(fā)展再進(jìn)階
- 碳膜電阻技術(shù)全解析:從原理到產(chǎn)業(yè)應(yīng)用
- 七連冠!貿(mào)澤電子蟬聯(lián)Molex亞太區(qū)年度電子目錄代理商大獎(jiǎng)
- 電位器技術(shù)全解析:從基礎(chǔ)原理到產(chǎn)業(yè)應(yīng)用
- 精密電阻技術(shù)解析與產(chǎn)業(yè)應(yīng)用指南
技術(shù)文章更多>>
- 線繞電位器技術(shù)解析:原理、應(yīng)用與選型策略
- 低電流調(diào)光困局破解:雙向可控硅技術(shù)如何重塑LED兼容性標(biāo)準(zhǔn)
- 從實(shí)驗(yàn)室到市場(chǎng):碳化硅功率器件如何突破可靠性瓶頸
- 維科杯·OFweek2025年度評(píng)選:揭秘工業(yè)自動(dòng)化及數(shù)字化轉(zhuǎn)型“領(lǐng)航者”,誰(shuí)將脫穎而出?
- 尋找傳感器界的“隱形王者”!維科杯·OFweek 2025年度評(píng)選等你來(lái)戰(zhàn)
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
國(guó)防航空
過(guò)流保護(hù)器
過(guò)熱保護(hù)
過(guò)壓保護(hù)
焊接設(shè)備
焊錫焊膏
恒溫振蕩器
恒壓變壓器
恒壓穩(wěn)壓器
紅外收發(fā)器
紅外線加熱
厚膜電阻
互連技術(shù)
滑動(dòng)分壓器
滑動(dòng)開(kāi)關(guān)
輝曄
混合保護(hù)器
混合動(dòng)力汽車
混頻器
霍爾傳感器
機(jī)電元件
基創(chuàng)卓越
激光二極管
激光器
計(jì)步器
繼電器
繼電器接線
減速電機(jī)
檢波二極管
檢波器