亚洲第五页-亚洲第成色999久久网站-亚洲第1页-亚洲大片在线观看-国产香蕉国产精品偷在线观看-国产香蕉成人综合精品视频

你的位置:首頁 > RF/微波 > 正文

網友總結:FPGA時序約束的六種方法

發布時間:2015-01-02 來源:riple的博客 責任編輯:sherryyu

【導讀】對自己的設計的實現方式越了解,對自己的設計的時序要求越了解,對目標器件的資源分布和結構越了解,對EDA工具執行約束的效果越了解,那么對設計的時序約束目標就會越清晰,相應地,設計的時序收斂過程就會更可控。本文總結了幾種進行時序約束的方法。
 
按照從易到難的順序排列如下:
 FPGA時序約束
0. 核心頻率約束
 
這是最基本的,所以標號為0。
 
1. 核心頻率約束+時序例外約束
 
時序例外約束包括FalsePath、MulticyclePath、MaxDelay、MinDelay。但這還不是最完整的時序約束。如果僅有這些約束的話,說明設計者的思路還局限在FPGA芯片內部。
 
2. 核心頻率約束+時序例外約束+I/O約束
 
I/O約束包括引腳分配位置、空閑引腳驅動方式、外部走線延時(InputDelay、OutputDelay)、上下拉電阻、驅動電流強度等。加入I/O約束后的時序約束,才是完整的時序約束。FPGA作為PCB上的一個器件,是整個PCB系統時序收斂的一部分。FPGA作為PCB設計的一部分,是需要PCB設計工程師像對待所有COTS器件一樣,閱讀并分析其I/O Timing Diagram的。FPGA不同于COTS器件之處在于,其I/O Timing是可以在設計后期在一定范圍內調整的;雖然如此,最好還是在PCB設計前期給與充分的考慮并歸入設計文檔。
 
正因為FPGA的I/O Timing會在設計期間發生變化,所以準確地對其進行約束是保證設計穩定可控的重要因素。許多在FPGA重新編譯后,FPGA對外部器件的操作出現不穩定的問題都有可能是由此引起的。
 
3. 核心頻率約束+時序例外約束+I/O約束+Post-fit Netlist
 
引入Post-fit Netlist的過程是從一次成功的時序收斂結果開始,把特定的一組邏輯(Design Partition)在FPGA上實現的布局位置和布線結果(Netlist)固定下來,保證這一布局布線結果可以在新的編譯中重現,相應地,這一組邏輯的時序收斂結果也就得到了保證。這個部分保留上一次編譯結果的過程就是Incremental Compilation,保留的網表類型和保留的程度都可以設置,而不僅僅局限于Post-fit Netlist,從而獲得相應的保留力度和優化效果。由于有了EDA工具的有力支持,雖然是精確到門級的細粒度約束,設計者只須進行一系列設置操作即可,不需要關心布局和布線的具體信息。由于精確到門級的約束內容過于繁多,在qsf文件中保存不下,得到保留的網表可以以Partial Netlist的形式輸出到一個單獨的文件qxp中,配和qsf文件中的粗略配置信息一起完成增量編譯。
 
4. 核心頻率約束+時序例外約束+I/O約束+LogicLock
 
LogicLock是在FPGA器件底層進行的布局約束。LogicLock的約束是粗粒度的,只規定設計頂層模塊或子模塊可以調整的布局位置和大小(LogicLock Regions)。成功的LogicLock需要設計者對可能的時序收斂目標作出預計,考慮特定邏輯資源(引腳、存儲器、DSP)與LogicLock Region的位置關系對時序的影響,并可以參考上一次時序成功收斂的結果。這一權衡和規劃FPGA底層物理布局的過程就是FloorPlanning。LogicLock給了設計者對布局位置和范圍更多的控制權,可以有效地向EDA工具傳遞設計者的設計意圖,避免EDA工具由于缺乏布局優先級信息而盲目優化非關鍵路徑。由于模塊在每一次編譯中的布局位置變化被限定在了最優的固定范圍內,時序收斂結果的可重現性也就更高。由于其粗粒度特性,LogicLock的約束信息并不很多,可以在qsf文件中得到保留。
 
需要注意的是,方法3和4經常可以混合使用,即針對FloorPlanning指定的LogicLock Region,把它作為一個Design Partition進行Incremental Compilation。這是造成上述兩種方法容易混淆的原因。
 
5. 核心頻率約束+時序例外約束+I/O約束+寄存器布局約束
 
寄存器布局約束是精確到寄存器或LE一級的細粒度布局約束。設計者通過對設計施加精準的控制來獲得可靠的時序收斂結果。對設計中的每一個寄存器手工進行布局位置約束并保證時序收斂是一項浩大的工程,這標志著設計者能夠完全控制設計的物理實現。這是一個理想目標,是不可能在有限的時間內完成的。通常的做法是設計者對設計的局部進行寄存器布局約束并通過實際運行布局布線工具來獲得時序收斂的信息,通過數次迭代逼近預期的時序目標。
 
看到過一個這樣的設計:一個子模塊的每一個寄存器都得到了具體的布局位置約束。該模塊的時序收斂也就相應地在每一次重新編譯的過程中得到了保證。經過分析,這一子模塊的設計和約束最初是在原理圖中進行的,在達到時序收斂目標后該設計被轉換為HDL語言描述,相應的約束也保存到了配置文件中。
 
6. 核心頻率約束+時序例外約束+I/O約束+特定路徑延時約束
 
好的時序約束應該是“引導型”的,而不應該是“強制型”的。通過給出設計中關鍵路徑的時序延遲范圍,把具體而微的工作留給EDA工具在該約束的限定范圍內自由實現。這也是一個理想目標,需要設計者對每一條時序路徑都做到心中有數,需要設計者分清哪些路徑是可以通過核心頻率和簡單的時序例外約束就可以收斂的,哪些路徑是必須制定MaxDelay和MinDelay的,一條也不能遺漏,并且還需要EDA工具“善解人意”的有力支持。設定路徑延時約束就是間接地設定布局布線約束,但是比上述3、4、5的方法更靈活,而且不失其準確性。通過時序約束而不是顯式的布局和網表約束來達到時序收斂才是時序約束的真諦。
 
記得有人說過“好的時序是設計出來的,不是約束出來的”,我一直把這句話作為自己進行邏輯設計和時序約束的指導。好的約束必須以好的設計為前提。沒有好的設計,在約束上下再大的功夫也是沒有意義的。不過,通過正確的約束也可以檢查設計的優劣,通過時序分析報告可以檢查出設計上時序考慮不周的地方,從而加以修改。通過幾次“分析—修改—分析”的迭代也可以達到完善設計的目標。應該說,設計是約束的根本,約束是設計的保證,二者是相輔相成的關系。
要采購工具么,點這里了解一下價格!
特別推薦
技術文章更多>>
技術白皮書下載更多>>
熱門搜索
?

關閉

?

關閉

主站蜘蛛池模板: 欧美成人免费高清网站| 香蕉久久夜色精品国产尤物| 虫爱少无删减完整版动漫| 一级毛片在线完整免费观看| 一区二区三区四区五区| 奔跑吧兄弟第十一季| 成人综合网站| 国产日韩欧美亚洲综合| 欧美日韩一区二区三区在线视频| 亚洲精品午夜级久久久久| 91久久精品视频| 久热免费| 日本jizz中国| 最新亚洲一区二区三区四区| 日韩精品一区二区三区老鸭窝| 欧美日韩一区二区不卡| 国产精品99久久久久久宅男| 免费不卡中文字幕在线| 一级午夜视频| 国产精品亚洲第一区二区三区| 九九热免费视频| 欧美日韩国产码高清综合人成| 真实国产伦在线视频免费播放| 黄 色 免费网 站 成 人| 精品九九在线| 欧美另类性视频在线看| 69国产成人综合久久精| 欧美日韩综合视频| 怡红院亚洲色图| 在线观看中文| 国产高清资源网站在线观看| 亚洲视频在线观看视频| 久草tv| 青青草手机在线视频| 亚洲不卡视频在线观看| 国产精品久久久久影院| 天天干天天插| 久久亚洲精品中文字幕三区| 福利视频在线观看www.| 免费亚洲视频在线观看| 99久久国产亚洲综合精品|