工藝技術的發展極大地提高了FPGA器件的密度。多個賽靈思Virtex系列中都包含了超過1百萬系統門的器件。這種器件密度的提高和300mm晶圓片的使用,為FPGA批量生產創造了條件。 曾經只能使用ASIC來實現的設計現在可以在可編程器件中實現了。最新的90nm Virtex-4器件提供了超過200,000個邏輯單元、6MB的塊RAM和接近100個DSP塊。創建能夠有效利用這些器件中的可用資源并滿足性能要求的設計是極具挑戰性的工作。幸運的是,今天的EDA軟件工具已經發展到能夠應對這些挑戰了。 邏輯優化、邏輯布局和最小化互連延遲都是實現最大性能的重要工作。時序驅動綜合技術對設計性能提供了重大改進。影響時序驅動綜合的限制因素是估計布線延遲的精度。 物理綜合——基于物理布局和布線信息進行綜合——是有效解決這些問題的最前沿技術。物理綜合與優化把綜合引入到網表生成后的實現決策中,從而進一步擴展了這一技術。這將允許在實現時根據實際的布局布線信息對綜合映射與打包決策進行動態復查。 物理綜合與優化的優點 邏輯層次之間的互連延遲受邏輯單元布局的接近性、布線擁塞和網絡之間對快速布線資源的局部競爭的影響。解決這一問題的方法是在映射、布局和布線期間重新審查綜合決策。在映射階段,可以根據每個時序路徑的緊急程度對網表進行重新優化、打包和布局。這一方法減少了達到時序收斂所需的實現次數。 物理綜合與優化流程 賽靈思ISE軟件提供了多個實現物理綜合與優化的軟件選項。您可以根據您的設計的具體需求單獨或合并使用這些選項。 ——定義時序要求 進行有效物理綜合的最重要一步是建立準確全面的時序約束。有了這些約束,實現工具就基于可靠信息做出決策,從而改善總體效果。對那些具有嚴格要求的時鐘和I/O引腳進行約束,以減輕剩余設計部分的工作。 定義這些時序約束的最輕松途徑是使用ConstraintsEditor。這一圖形工具允許您輸入時鐘頻率、多周期與虛假路徑(falsepath)約束、I/O時序要求,以及大量其他澄清性要求。約束被寫入一個用戶約束文件(UCF)中,可在任何文本編輯器中進行編輯。 如果未提供用戶定義的時序約束,ISE.8.1i軟件提供了一個新功能,將自動為每個內部時鐘生成時序約束。在“性能評估模式(PEM)”中,您可以在不必提供時序目標的情況下獲得高性能的物理綜合與優化效果。 ——運行全局優化 對于包含IP核或其他網表的設計,實現的轉換(NGDBuild)階段后生成的NGD文件表示整個設計第一次被完整編譯。全局優化是在7.1.01i版本Map中增加的一項新功能,將進行完整設計的組裝,并嘗試通過重新優化組合與寄存器邏輯來提高設計性能。全局優化(命令行鍵入map–global_opt)顯示可提高設計時鐘頻率平均7%。 還有兩個選項可以讓您在此階段進一步控制優化的完成:時序調整(retiming)(map-retiming)將前后移動寄存器以平衡組合邏輯延遲,和等效寄存器刪除(map-equivalent_register_removal)將通過冗余功能性刪除寄存器。 ——允許時序驅動打包與布局 時序驅動打包與布局是物理綜合實現流程的核心。當您采用這個選項(map-timing),布局布線的布局階段將在Map中完成,允許在初始結果未達最優時對打包決策進行重新審查。時序驅動打包迭代流程替換了無關邏輯打包(unrelatedlogicpacking)。 賽靈思物理綜合與優化中包含不同級別的優化。第一級優化是在ISE6.1i軟件中引入的,從進行邏輯變換開始,其中包括扇出控制、邏輯復制、擁塞控制,以及改進的延遲估計。這些例程使設計實現了更高效的打包和布局,達到了更快的時鐘頻率和更高密度的邏輯利用率。 下一級增加了邏輯與寄存器優化;Map可重新安排單元以改進關鍵路徑延遲。這些變換為滿足設計時序要求提供了極大的靈活性。使用了大量不同技術(包括內部引腳交換、基本單元切換,以及邏輯重組)將物理單元轉換成邏輯上等效的不同結構,以滿足設計要求。 ISE8.1i軟件引入了另外一級物理綜合:組合邏輯優化。該-logic_opt開關將開啟一個流程,對設計中的所有組合邏輯進行檢查。給定布局和時序信息,您可以對優化LUT結構做出更可靠的決策,以改進總體設計。 物理綜合與優化示例 ·邏輯復制:如果一個LUT或觸發器驅動多個負載,而這些負載中有一個或多個負載的放置位置離驅動源的距離太遠因而無法滿足時序要求時,可以復制該LUT或觸發器并放置在靠近該組負載的地方,從而減小布線延遲(圖1)。 ·邏輯重組:如果關鍵路徑跨越多個切片中的多個LUT,可利用較少的切片對該邏輯進行重新組織,采用時序上更高效的LUT與多路轉換器組合來降低該路徑所需的布線資源(圖2)。 ·基本單元切換:如果一個功能使用LUT和多路轉換器構成,物理綜合與優化可對該功能進行重新安排,將最快的路徑(一般通過多路轉換器選擇引腳)分配給最關鍵的信號(圖3)。 ·引腳交換:LUT的每個輸入引腳可能有不同的延遲,所有Map擁有交換引腳(以及關聯的LUT等式)的能力,以便將最關鍵的信號放置在最快的引腳上(圖4)。 結論 賽靈思工具集中的物理綜合與優化功能將進一步走向成熟并隨著每個軟件版本的發布進行擴展。伴隨效果質量的改進,您可以期待著對優化類型的更多控制。其他計劃中的強化措施還包括在再優化階段考慮更多設計單元(例如允許將寄存器移入和移出I/O塊或塊RAM和DSP塊等專門功能),以及將布線階段包含進物理綜合迭代過程,以及優化系統。 賽靈思ISE軟件中的物理綜合與優化工具是為在實現的打包和布局階段對您的FPGA設計的結構進行重新檢查而創建的。給定時序約束和物理版圖信息,在映射和布局布線階段優化綜合決策可極大地改進結果。 |