PlanAhead 軟件提供了一種解決方案 越來越多的客戶在賽靈思® PlanAhead™ 設計分析工具提供的層次化設計方法學中找到解決方案。PlanAhead 軟件為 FPGA 設計流程增加了可視性和控制。通過解決物理方面(介于邏輯綜合和實現工藝之間)的問題,您可在您的設計結果中實現性能的提高。 雖然先進的 FPGA 綜合產品為幾百萬門設計提供極高的自動優化水平,許多設計者仍需要具有更多啟發性的技術,以達到最佳性能目標。通過提供早期分析和布局規劃 (floorplanning)功能,PlanAhead 設計工具可以施加物理約束,以幫助控制設計的初始實現。實現后,PlanAhead 軟件可以分析布局和時序結果,以改進用于完成設計的布局規劃。您可以使用來自導入結果的物理約束,在后續實現嘗試期間鎖定布局。這些約束可用于創建可重用 IP,連同鎖定布局,一同用于其它設計。 PlanAhead 設計方法提供了性能、生產力以及結果的可重復性。憑借其層次化設計流程,PlanAhead 軟件可讓您減少運行 PAR 然后返回 RTL 與綜合的反復次數。相反,您可以分析設計并在實現之前解決物理方面的問題。 更少的時間,更快的結果 PlanAhead 用戶通常可以實現 10-15% 的性能提升,有些用戶甚至可以實現更高。此外,設計者還發現他們可以在一個緊湊的器件中額外加入 10% 的邏輯。更快的性能與更高的利用率的結合意味著可以使用更小更便宜的器件,或者以更低的速度等級實現設計目標。 PlanAhead 設計工具可在縮短總設計時間的同時,還在結果中增加一定的一致性水平。通過利用以前的布局規劃或增量設計技術,您可以以更少的時間執行設計反復,實現可重復的結果。您還可以利用成功結果,將它們鎖定下來或在其它設計中重用。 解決真正棘手的性能問題所需要的絕不僅僅是增加新的菜單項或腳本能力。PlanAhead 軟件通過使用各種視圖(見圖 1)展示設計數據,提供了一個完整的環境,使該層次化方法實現交互并易于使用。這些獨立的視圖可以相互結合使用,從而允許您快速識別和瀏覽關鍵設計對象和信息。 圖 1:PlanAhead 軟件提供了設計的不同視圖,以顯示物理層次、屬性、網表與約束、器件封閉引腳、原理圖及更多。 可視化確定性能瓶頸 PlanAhead 環境通過顯示 I/O 互連和物理塊(或 “Pblock”)網束 (net bundle),提供了洞察設計數據流的能力。您可以根據信號數量控制網束的顏色和線厚。這使您能容易地在貫穿設計的整個數據流中確定具有大量連接的 Pblock。然后您可以采取校正措施,避開布線擁塞故障點,并將具有大量連接的 Pblock 相近放置或將它們合并。 您還可顯示時鐘區,并在布局規劃時使用它來優化各個時鐘或最大程度地降低器件中的功耗。通過將時鐘隔離到專門的時鐘區,它們可以運行得更快,并消除了為其它時鐘區供電的需要。 您可以在設計過程中的各個階段使用 PlanAhead 設計工具的分析和探測環境。最初,您可以在實現之前分析設計。PlanAhead 軟件提供了一個靜態時序引擎 TimeAhead,用于研究設計在時序方面的可行性。您還可以通過調整純邏輯延遲,在不進行互連的情況下,使用估計的布線延遲執行分析。這可以讓您看清楚設計中存在多大的時序容差。 然后您可以在 PlanAhead 環境中編輯和精調時序約束。這些相同的分析結果可以幫助確定哪些邏輯應組合在一起并進行布局規劃。針對布局規劃,您可對路徑進行邏輯排序、組合和選擇,還可以使用同一 TimeAhead 環境處理從 TRCE 導入的時序結果,TRCE 是賽靈思 ISE™ 軟件中的時序評估工具。 您可以查看和修改為設計指定的時序約束。您可以在編輯器中將所有 ISE 時序約束定義為新約束。這可以使約束指定變得更容易,因為您不必再記住專門的約束格式了。您可以在運行任何 ISE 實現工具之前,將其與 TimeAhead 一起使用以驗證和優化約束集。 PlanAhead 設計工具提供了可視輔助,以幫助您理解物理實現結果。設計規則檢查 (DRC) 功能可幫助您及早捕獲錯誤。它還會對未正確利用某些器件資源(如 Virtex™-4 FPGA 中的 XtremeDSP™ 切片或 RAM)的設計進行標記。 通過將問題區域可視化,您可以在 RTL 側或物理實現側快速解決問題,而不必繼續重復進行 RTL 與綜合。您可以對各個邏輯模塊進行選擇性地高亮顯示,以更好地了解它們放置的位置,以及創建在邏輯最集中區域的Pblock。您可以高亮顯示故障時序路徑,以可視化和了解您的設計中發生了什么物理問題。 PlanAhead 軟件包含了量度圖 (metric map),以快速確定設計的故障區域(圖 2)。這些可能與時序或利用率有關。這對您在試圖確定設計中要關注的區域以實現邏輯壓縮或時序連接性時會很有用。 圖 2:量度圖提供了設計中各種潛在問題區域的熱量度顯示。當前量度包括 Pblock 和布局后設計級的利用率和時序檢查。 PlanAhead 設計工具允許您研究設計中的連接性。您在設計中選擇一個特定的網絡、Pblock 或實例后,可以通過單擊鼠標高亮顯示所有連接到選定元素的網絡。 在選擇一個實例或 Pblock 后,所有連接到該元素的網絡都將被高亮顯示。這一過程可以繼續,以選擇和擴展邏輯錐形。運行“顯示連接性”將高亮顯示連接到選定實例的下一級網絡。這是一種選擇從某個特定實例或 I/O 端口開始的邏輯錐區的簡易方法,從而可真正實現對設計層次優勢的利用。 ... 然后解決性能問題 整個想法是要提供一個綜合環境,以分析時序問題并輕松約束該邏輯以避免或糾正該問題。您可以使用來自 TimeAhead 或 TRCE 的時序結 果進行布局規劃,通過幫助確定哪些邏輯應組合在一起并進行布局規劃來進行更好的性能設計。 關鍵路徑通常穿越邏輯層次。PlanAhead 軟件支持獨立于邏輯層次的物理層次,從而使您可將設計中任意位置的邏輯組合在一起并有效地進行布局規劃。 PlanAhead 軟件還提供了資源利用估算功能,以幫助確定 Pblock 的尺寸和形狀。同樣這些統計資料還可報告時鐘信息、供應鏈和 PRM 適應尺寸以及各種其它有用信息。 PlanAhead 設計工具提供了自動布局能力,如基于邏輯層次的自動分區和自動 Pblock 尺寸確定與放置。由于使用單個 Pblock 矩形來包含所需的器件資源通常很困難,因此可以使用多個矩形創建非矩形-線性形狀。PlanAhead 軟件還允許您在 Pblock 內創建 Pblock,或創建“子”Pblock,以幫助更好地維護設計層次。 器件容量可通過壓縮 Pblock 的邏輯進行提高。您可以使用以下兩種方法中的一種來實現。一種方法是使用稱為 COMPRESSION 的賽靈思 AREA_GROUP 屬性。AREA_GROUP 是一種設計實現約束,支持將設計分成用于映射、打包、布局和布線的物理區域。使用 COMPRESSION 屬性將導致 ISE Mapper 將無關的邏輯打包成未使用的 CLB 站。使用它時請小心,因為它會對時序產生副作用。 改善性能的最佳策略是壓縮非時序關鍵型邏輯,從而在器件中騰出更多空間用于時序關鍵型邏輯。第二種選項是使用 PlanAhead 功能對在 Pblock 上獨立運行 PAR。 您可以持續縮減 Pblock 尺寸,直到 PAR 失敗。這將盡可能緊地壓縮和打包塊內邏輯,以騰出器件空間。 一個 Virtex-4 布局規劃示例 PlanAhead 設計工具可允許您輕松地導入布局和時序結果。通過該信息,您可以查看和排序時序報告中的關鍵路徑,并使用原理圖或器件視圖對路徑進行可視化顯示。一旦確定故障路徑,您可以高亮顯示布局規劃中的所有路徑實例,以確定原理圖視圖中的所有路徑實例。 圖 3 顯示了一個針對 Virtex-4 FX140 器件的設計的布局規劃。在顯示中,我們高亮顯示了一條特定路徑上未能滿足時序要求的觸發器。由于它們在器件中分布太廣,設計實現產生了無法接受的長延遲。由于在 Virtex-4 FPGA 中存在大量的時序域,因此這是一種普遍情況。 圖 3:初始 Virtex-4 FPGA 布局規劃,高亮顯示開始未滿足時序的路徑 通過選擇這些觸發器中的每個觸發器,并將它們限制到單個 Pblock 中,您可以調節和優化該 Pblock的尺寸和位置,從而縮短關鍵路徑的延遲,如圖 4 所示。必要時,您甚至可以創建嵌套 Pblock,從而創建一種子/主層次來進一步約束子模塊,以獲得額外的性能提升。根據捕獲邏輯的資源需求,您可以將關鍵邏輯鎖定位置,以實現對必要資源的最佳訪問。 圖 4:在對與該路徑相關的所有基元進行約束后,您可以對 Pblock 進行優化,以使該路徑達到所需的時序要求。 結論 您可訪問 www.xilinx.com/planahead來下載 PlanAhead 軟件的免費評估版本。該 30 天評估版使您可完全獲得所有 PlanAhead 特性和功能性。該站點還允許您查看產品演示,下載白皮書,或只是了解更多信息。賽靈思還提供 PlanAhead QuickStart!,可在項目的最關鍵階段提供特別的服務支持。通過該服務,賽靈思將派遣一名 QuickStart! 工程師到您的現場進行為期一周的輔助,他將培訓和幫助您的團隊按時完成項目和如何充分利用您所選擇的賽靈思器件。 這一高度個性化服務使您能制定最能滿足您的設計團隊需要的培訓計劃。通過確保團隊擁有所需的技能,它將有助于避免項目拖延。它還有助于您保持一個更有效率且熱情高漲的團隊。 |