早期的好決策有助于定義設計參數并消除不正確的設計路徑。十年前,Synopsys等公司的商業邏輯綜合工具專注于門級的數字芯片分析和設計規劃。門級的分析足以使設計復雜度達到50,000到100,000個門。不幸的是,片上系統(SOC)復雜性進入數千萬門,使得門級設計規劃不足。
在合成之前,在RTL進行設計決策是可取的。但是,如果沒有作為門級設計描述的一部分的結構信息,則很難估計設計參數,例如片上時序延遲,功耗和芯片尺寸。盡管存在這種困難,但您確實可以使用一些EDA工具來幫助您進行合成設計決策。
在RTL和門級設計是非常不同的。 RTL設計描述包括基于時鐘周期的邏輯運算以及隱含的設計架構。邏輯綜合工具采用RTL描述并將設計轉換為門級描述。綜合保留了體系結構,并嘗試在門級描述中滿足用戶定義的約束,例如區域和時序。 RTL設計與技術無關;它不包含過程信息或有關您將用于實現設計的設計庫的信息。邏輯綜合使用單元庫信息創建門級描述。邏輯綜合使用目標庫及其隱式目標過程信息來確定哪些庫元素可用于設計并合成滿足設計約束的電路。盡管邏輯綜合工具使設計生產率達到了數量級的改進 - 直接導致SOC設計可行性 - 當今典型的基于邏輯綜合的芯片設計存在固有問題,這是由于在不同設計階段使用的時序模型
圖2顯示了典型的基于綜合的設計流程。當您調用綜合工具時,它沒有設計的物理實現的概念。然而,為了滿足時序約束,綜合工具使用統計線負載模型用于目標細胞庫。該模型使用寄生互連和負載相關延遲的估計值,這些延遲是基于使用該技術的先前設計的平均值。雖然統計線負載模型可能已經足夠大多數設計大于0.5微米,深亞微米工藝在0.35微米和更小,這些模型是不準確的。在使用布局布線工具物理實現設計之后,生成的邏輯可能具有非常不同的時序特性,從而導致浪費硅或無法滿足時序要求的設計。前一個問題浪費金錢;后者肯定意味著重新設計,再合成和另一個地方和路線運行。合成和布局布線迭代在花費的時間和財務成本方面都是昂貴的,無論是真錢還是“失去機會時間”。
在合成之前或之后使用的布局規劃工具可以創建更好的線材合成工具的加載模型。這些“自定義線纜負載模型”基于布局規劃師創建的布局數據。由于它們是特定于設計的,因此定制線負載模型比統計模型更精確,但仍然不如從實際放置和布線芯片獲得的反標注寄生數據那么準確。 RTL執行估計工具需要具有某種類型的布局規劃能力,以便能夠以任何合理的精度預測電氣性能。
在RTL,您有設計行為的描述。只有在邏輯綜合之后才能得到結構信息。真正的拓撲數據僅在物理實現后出現。設計的約束包括速度,功耗,信號完整性效應和可靠性,取決于過程,單元庫的數量以及設計布局和布線。這些參數的RTL估計是一項艱巨的任務。如果您可以在RTL上規劃您的設計,那么您可以完成許多工作。您可以進行“假設”分析,以確定哪種設計架構最符合芯片的電氣規格。此外,RTL估計可幫助您確定要用于設計的單元庫。您可以向邏輯綜合工具提供信息,這有助于實現時序收斂并最小化綜合和布局布線迭代。最后,您可以估算特定工藝技術的芯片尺寸,以及速度和功耗估算,幫助您確定使用哪種芯片封裝并指示芯片成本。許多芯片設計公司的目標是擁有合適的方法和設計工具,以允許這些公司在RTL“簽署”設計。 RTL簽核將表明設計人員不必進行后續RTL更改以滿足芯片規格的合理信心。
RTL設計規劃
您可以使用一些EDA工具在RTL上進行某種程度的設計規劃。通常,這些工具分為兩類 - 使用“快速合成”步驟估算物理布局的工具和不使用的工具。這些工具的一些示例顯示了每個工具如何進行RTL電參數和尺寸估計。
使用快速邏輯綜合階段的工具包括Synopsys的Chip Architect和Avant!的Planet-RTL以及最近介紹了木星。您可以在設計期間的許多地方使用Chip Architect,然后再生成RTL代碼,RTL和門級。黑盒規劃使用硬核,物理定義的塊以及RTL塊區域和時序的設計者估計。該工具使用硬核和軟核信息以及一些粗略的全局布線來幫助您對最終芯片進行布局規劃并估算芯片性能。在RTL,Chip Architect處理您尚未進行功能驗證的RTL代碼。該工具執行快速合成以生成門級表示。根據Synopsys的說法,這種綜合速度是該公司設計編譯器邏輯綜合工具完成的合成速度的5到10倍,其結果與Design Compiler的20%相關。在快速合成步驟之后,Chip Architect改進了您在黑盒計劃期間所做的平面布局,并更新了對芯片尺寸,時序和功耗的估計。使用該工具的門級規劃使用已經通過定制線負載模型進行完整邏輯綜合的塊,該模型在每個RTL塊中生成最終單元放置。 Chip Architect將完成的門級塊與硬核一起獲取,合成時鐘樹,并輸出最終的布局圖。
與Chip Architect類似,Planet-RTL允許您進行架構探索,RTL設計分區和性能評估。 Planet-RTL與Chip Architect一樣,也可以使用完整和不完整的邏輯塊,并具有內置的快速綜合功能,可提供初步的芯片布局規劃。從平面布局圖中,該工具提供定制的線負載模型和綜合腳本,用于后續的完整邏輯綜合。取代Planet-RTL,Avant!最新的RTL設計規劃工具Jupiter結合了Planet-RTL和用于RTL質量評估的Avant!工具Nova-ExploreRTL的功能。 使用Jupiter,您首先要檢查代碼的語言一致性,綜合兼容性以及是否符合正確的設計實踐。然后,該工具進行快速合成,再次比正常合成快10倍,以獲得各種芯片模塊的初步平面布局圖,物理芯片引腳分配,全局布線和時序預算。 Chip Architect和Jupiter的快速綜合和初步布局圖功能可幫助您估算芯片的物理,時序和功耗特性,而無需花費全芯片邏輯綜合運行所需的時間。
In RTL設計規劃師的非合成陣營是Tera Systems的TeraForm。該工具查看RTL塊并以TeraGates的形式推斷塊的結構,這是葉子單元的超集,它們是復雜邏輯功能的構建塊。每個TeraGate代表了實現特定邏輯功能的優化方式。使用互連的TeraGates代替快速合成步驟,TeraForm完成許多與Chip Architect和Jupiter-floorplanning相同的設計任務,區域和時序預算和估算,用于綜合的定制線負載模型,全局布線和引腳級優化。
您還可以使用IC Wizard,Aristo的“平面布局合成”工具來估算RTL處的芯片電氣參數。該工具優化了物理芯片平面規劃。與Chip Architect一樣,您可以在各種設計階段使用IC向導 - 架構,RTL,門級和物理 - 用于塊級物理規劃。在每個階段,該工具都會生成多個布局規劃備選方案,其中包含用戶定義的時序,面積和功率限制。在每種替代方案中,該工具都可以優化物理參數,例如塊大小,形狀,位置和引腳分配。在繼續設計時,布局為區域和性能評估提供了越來越準確的信息。在RTL階段,IC向導可幫助確定滿足設計約束的最佳塊級布局。該布局還為邏輯綜合工具提供了塊邊界時序信息,與僅使用統計線負載模型的綜合相比,它提供了更好的結果。
一種類型的RTL設計規劃工具已經看到了一些成功是功率估算工具。雖然一些芯片供應商擁有專有的RTL功耗估算工具,但Sente和最近的TransEDA兩家公司已經推出了商業RTL功耗估算和優化工具,不包括邏輯綜合步驟。
Sente的Watt Watcher,于1996年中期首次發布,而Peak Watcher則在RTL和門級工作。 Watt Watcher估計整個芯片和單個芯片模塊的靜態和動態功率。該工具通過推斷結構來進行估算 - 換句話說,假設您需要實現特定邏輯功能所需的門級邏輯。根據Sente的說法,使用推斷的結構和目標庫信息,Watt Watcher的功率估計值在硅測量功率的20%以內。雖然您可以在概率模式或模擬中使用該工具,但大多數Sente客戶在更精確的模擬模式下使用Watt Watcher。 Peak Watcher將功率估算和分析擴展到逐個周期的峰值功率使用。 Sente表示,Peak Watcher的精確度在硅的30%到35%之間。最新的Sente RTL工具Watt Smith可讓您優化芯片以獲得最低功耗。使用名為“WattBots”的子程序,Watt Smith識別出可以降低功耗的電路部分,計算這些部分可以節省多少功率,并建議您可以進行設計更改以獲得功率降低。
今年早些時候,功能驗證工具供應商TransEDA宣布了自己的RTL功耗估算工具PowerSure。利用RTL仿真期間的實際電路活動作為輸入,該工具根據節點電容,時鐘頻率,電源電壓和電路開關數據估算功率。您還可以在同一電路的多次仿真中使用PowerSure,并根據功耗對仿真結果進行排序。當前版本的PowerSure依賴于用戶定義的功率模型,以使功率估計與您在實際芯片中看到的相當接近。如果沒有這些模型,您可以通過獲得塊的不同實現之間的相對功耗來充分利用該工具。 PowerSure的下一個版本將在今年晚些時候推出,它將包括某種形式的塊結構推理,以更好地模擬功耗。
-
電路板設計
+關注
關注
1文章
127瀏覽量
16561 -
PCB打樣
+關注
關注
17文章
2968瀏覽量
21833 -
華強PCB
+關注
關注
8文章
1831瀏覽量
27938 -
華強pcb線路板打樣
+關注
關注
5文章
14629瀏覽量
43177
發布評論請先 登錄
相關推薦
優秀電源工程師需要哪些必備技能?
哪里可以買到盡可能高頻率的無線能量發射接收模塊
硬件工程師經典筆試題集總結
影響制造過程中的PCB設計步驟
嵌入式Linux開發工程師的成長過程
電子工程師“英年早禿”?離高階茂密工程師你只差這個工具!(文末資料)
UPS蓄電池的設計為什么要讓電池保持盡可能的溫度
嵌入式軟件工程師在日常開發過程中的關鍵組件
![嵌入式軟件<b class='flag-5'>工程師</b><b class='flag-5'>在</b>日常開發<b class='flag-5'>過程中</b>的關鍵組件](https://file.elecfans.com/web2/M00/15/CA/pYYBAGFNPo6AKtfiAAAaP8rq95Y009.png)
12芯航空插頭的電阻應盡可能低嗎
![12芯航空插頭的電阻應<b class='flag-5'>盡可能</b>低嗎](https://file1.elecfans.com/web2/M00/C7/F4/wKgZomYXl0KAAFL_AADOko-X4qc742.png)
評論