技術需求背景
電子設計自動化(EDA)技術經過了四十幾年的發展,針對電子設計流程中某一專門領 域的設計與驗證工具,例如 FPGA 設計、原理圖與 PCB 設計、DSP 算法仿真等已經發展 得相當成熟,自動化程度越來越高,使用也變得越來越簡便快捷。但與此形成對比,對于移動計算、物聯網、多媒體處理、數據挖掘、機器學習、虛擬現實等領域的復雜電子系統以及支持系統運行軟硬件的設計,由于可選擇的IP或芯片以及相關的軟件、硬件實現方案越來越多樣、同時設計約束條件(例如實時性、功耗、成本與物理尺寸等)越來越苛刻,項目研發團隊普遍面對關鍵性能指標無法滿足應用要求、設計周期過長錯失市場時間窗口、研發費用過高超出預算成本的問題或風險,需要智能化的電子系統設計工具幫助項目研發團隊準確、快速的完成電子系統的整體架構設計。
隨著單個硬件與軟件部件設計能力和可靠性的提高,導致上述問題或風險的主要原因不再是單個部件的設計缺陷,而是硬件/軟件或各子系統之間的協同不當等系統級問題所引起。為了解決這個問題,一方面,在設計方法上,要求在項目的前期階段進行系統級別上的規劃、分析與優化,確保后續詳細設計持續保持滿足應用需要;另一方面,在設計工具的選取上,需要選擇一款具備智能技術的電子系統級設計仿真能力的設計自動化工具,通過構建高抽象層次的事務級模型(Transaction Level Model, TLM)搭配周期精確模型(Cycle Accurate Model, CAM)完成電子系統的建模,并完成系統架構設計、硬件平臺選擇、軟件與數據流規劃、硬件/軟件任務協調與劃分方案等內容,從而在系統設計前期,充分地暴露出潛在問題并提前進行修正,滿足系統應用要求、降低成本、搶占市場先機。
VisualSim?功能概述
VisualSim?是專門用于電子系統規約設計、系統性能分析與規約驗證的系統工程學智能化解決方案。VisualSim?使用圖形化環境來構建諸如分布式/網絡化處理或控制系統,并行處理系統、或基于SoC/SoPC的高性能嵌入式電子產品的系統實現方案模型。借助VisualSim? 獨有的快速系統原型模型開發技術,設計團隊在項目開發的早期階段即可對一個電子系統的不同硬件、軟件實現方案進行性能、成本、功耗等的關鍵因素的研究分析與評估,驗證和優化系統設計規約,得到能夠滿足全部約束條件的最優系統實現方案。
作為一款完整的電子系統級建模、架構設計與性能分析工具,VisualSim?通過其獨有的參數化組件庫建模技術以及多抽象層次模型混合仿真技術,在統一的圖形化環境中快速實現對系統硬件資源及嵌入式軟件的行為和性能建模,并據此進行事務級(TL)或時鐘精度級(CA)仿真。VisualSim?的仿真報告依照系統工程師的定制要求給出,依據這些報告,系統工程師可以確定所設計的系統是否按照設想的流程或方式工作,性能是否達到預計的要求,并可以通過仿真參數掃描來定位設計方案的瓶頸所在,以便進一步進行系統規約的 優化。
VisualSim?提供完整的用于TL或CA建模的建模組件庫。建模組件庫中的模型組件是專門針對事務級系統建模而抽象定義出來的,所有組件均已經預先編譯好,并經過面向仿真器的全面優化以提高仿真性能。VisualSim?組件庫中提供預定義的參數化模型組件,包括事務激勵發生器(Traffic Generator)庫、事務流程定義與處理庫、通道與隊列資源庫、時鐘精度級硬件模型模板庫、數學運算庫、腳本與接口庫、結果輸出與統計分析庫、應用算法庫等。
VisualSim?不僅支持直接使用建模組件庫中各種組件進行快速系統架構建模,同時允許用戶自己開發定制組件或者導入已有的 C/C++、SystemC、Java 以及 Verilog 模型。在VisualSim?環境中允許創建和仿真所有層次的事務級模型。
VisualSim?環境中創建的模型直接在經過優化的VisualSim?仿真器中進行事務級或時鐘精度級仿真。VisualSim?模型的執行結果完全依照模型設計者的需要定制給出,包括能夠反映各類系統層面的性能指標的仿真報告、以及系統任務的運行工況圖。借助于上述模型仿真結果,系統工程師或架構師可以評估設想方案的功能和性能特性。對于仿真結果不滿足要求的設計方案,通過在圖形化環境中調整系統模型的(全局)參數、改變 輸入激勵方案、更改模型組件的拓撲結構等,可以快速實現“劇烈”的軟硬件架構變化,以What-if 分析方式進行系統性能、功能、功耗等設計要求之間的優化平衡。
確認滿足設計要求的 VisualSim?模型即是 VisualSim?的輸出結果,這是一個可視化、可執行的系統規約。VisualSim?將既往模糊的系統設計經驗轉變為可視化的動態模型來表達,這個可執行規約能夠確認設計需求、設計約束的合理性,驗證設計方案的正確性,并為后續系統方案的擴展升級或新方案設計提供科學的、可重用的參考依據。此外,VisualSim? 模型還能夠生成用于實現階段的驗證用測試向量集與斷言。
VisualSim?模型執行結果
與Matlab/Simulink、SPW等用于算法仿真分析的設計工具不同,VisualSim?系統仿真模型的關注焦點在于對系統任務的控制流程、處理流程,數據流通路等硬件-軟件協同實現方案的設計和優化上。
VisualSim?的系統模型能夠為設計團隊提供如下的兩大類模型執行結果。
1.系統整體工況
VisualSim?系統模型給出的第一類執行結果是系統各部分的運行工況圖。例如,系統軟件任務在不同硬件處理資源中的活動運行圖、數據流在硬件傳輸資源中的活動運行圖、流水線結構處理工況圖等。
系統運行工況圖可以直觀地、動態地反映系統工作時的整體時序信息。借助系統運行工況圖,項目的硬件設計團隊和軟件開發團隊可以非常方便地進行溝通,了解彼此的設計思路,討論并推演不同設計方案的可行性,發現潛在的系統設計問題并及時進行調整。例如:運行于想定的硬件平臺上的軟件部署方案是否按照預想的時序運行?系統的各硬件資源或軟件任務之間是否存在競爭或沖突情況?這些沖突對系統整體性能的影響是什么?
VisualSim?使這種有效的溝通在項目研發的早期就開始了,而且是在系統整體的層面 上進行的,而不是拘泥于底層的實現細節。
2.系統性能指標
VisualSim?系統模型給出的第二類仿真結果是系統層面的性能指標。例如:實時系統的全系統處理耗時、實時控制系統的端到端響應延時、多任務調度機制形成的任務執行延時(Latency)、總線或網絡的端到端傳輸延時、總線控制器或網絡交換結構的仲裁機制所帶來的傳輸延時、(多)處理器利用率、總線或網絡的傳輸利用率、緩沖利用率、系統或單元模塊的功耗等。
系統的性能指標給出的主要是量化的仿真結果。與傳統的代碼級仿真驗證工具不同,事務級系統仿真工具給出的量化結果不是專注于某個具體信號的具體波形數值,而是對所建模的系統模型本身的特性的客觀反映。鑒于系統級設計可以有多種層次和多種形式,因此系統層面的指標體系也是多種多樣的,系統建模者應根據其關注點進行合理選擇。
借助VisualSim?系統模型給出的上述處理、傳輸或資源特性,系統工程師可以掌握系統的實際動態工作負荷情況,并據此合理選擇核心處理器件的類型、并行處理所需的器件數量、網絡/總線資源的類型和所需數量等。
通過比較和分析不同實現方案的模型執行結果,可以針對系統的成本、體積或重量等特 定約束條件進行優化設計。
VisualSim?核心價值
作為一款高性能智能化電子系統設計工具,VisualSim?中集成了大量的標準模型庫和覆蓋計算機系統、高速通信網絡、系統芯片等廣泛應用領域的建模案例。這些模型和案例是業界設計的知識集合。借助VisualSim?中提供的高效仿真引擎,按照事務級仿真和事務級/周期級混合仿真的有效方法,項目團隊可以容易的把目標應用和VisualSim?中提供的豐富知識結合起來,完成對目標應用系統及軟硬件實現的理解和分析,實現在巨大的設計搜索空間中,智能而迅速的找到一個“正確且適用”的產品架構,避免由于前期系統設計階段錯誤而導致的產品實現失敗,避免性能不達標設計(Under-design)或者盲目的超裕量設計(Over-design)。相比基于SystemC等編程語言的傳統系統級設計方法,VisualSim?能夠幫助設計人員將精力集中到建模本身和理解、分析目標應用上,最大限度的釋放設計人員的智慧,將模型開發周期從數月縮短至數天,既保證了傳統保證了產品從需求分析到設計實現的連貫性,又保證電子產品的樣機首次設計成功率。
國內外計算機、半導體、網絡和國防技術等廣泛應用領域的大量用戶選擇VisualSim?作為系統級設計工具。VisualSim?解決方案為客戶提供的核心價值:通過將既往模糊的系統設計經驗表述為可視化的可執行系統規約;在系統總體架構層面上進行快速的產品成本、性能和功耗的綜合評估;為優化和差異化產品設計創新提供便利,幫助用戶在系統設計早期智能化的進行最佳決策。
VisualSim?方法學
1. 從實踐中學習(Learning by Doing)
復雜的系統架構設計必然是一個從模糊到具體的過程,即從初步的方案設想演進為可信的系統規約,這個過程需要花費時間。在VisualSim?中,系統模型設計(建模)的過程本身實際上就是對設想架構的研究、思考和細化的過程,這是一個交互的過程:在 VisualSim? 中用建模的方式描述你的架構方案設想;VisualSim?模型仿真結果回答你所關注的問題;分析這些結果,了解系統特性及其影響因素;評估是否需要對模型進一步改進、優化或細化,再次執行仿真。
在使用 VisualSim?進行系統的硬件與軟件協同設計的,模型設計者與模型之間的互動作用是非常顯著的:在建模之初,建模者引導模型的構建,隨著建模工作的不斷深入,建模過程會引導建模者不斷進行新的思考:當前的模型執行結果說明了什么?是否需要進一步修改、細化模型?如何進一步細化模型?這種模型設計者與模型之間的交互會一直持續,直至系統模型完成,即系統設計方案形成。
在 VisualSim?中,系統建模的過程本身就是對系統架構進行定義、設計和研究的過程,也是模型設計者整理自己設計思路的過程,而建模者與模型的交互則不斷地幫助建模者厘清設計思路,發現系統層面的設計問題。系統設計師正是借助這種演進式的建模與仿真方法來得到明確可信的系統規約。
2. 集中精力調試而非編碼(Spending Time Designing Rather than Coding)
與經典的使用 C/SystemC 編程進行事務級建模的方法不同,VisualSim?通過預定義的參數化組件庫來加速建模過程:VisualSim?提供通用組件庫和模型生成模板,建模工程師在圖形化的環境中選擇需要的模型組件,通過組裝與配置這些組件來快速構建系統模型。VisualSim?組件庫中很多模型的復雜程度與數萬行的 C/SystemC 編碼相當,并且這些模型都已經過充分的驗證。
VisualSim?讓用戶將更多的時間用于設計、研究和嘗試各種可能的系統實現方案,而不是把這些時間花費在編寫、調試和驗證 C/SystemC 模型代碼的工作上。
3.根據需要細化模型(Go Complex Only if Needed)
VisualSim?定義了不同的建模層次,在設計的最初階段,系統模型可以被抽象成為僅由特定時間分布的事務激勵以及處理這些事務所需的延遲功能或資源來描述。之后這些延遲功能或資源可以被周期精確級模型所替換,實現更細節層次的建模。上述替換是根據設計師的意愿而有選擇地進行的。VisualSim?強調建模的目的是回答真正關注的系統架構問題(Model Questions),根據 Model Questions 來合理選擇建模層次,VisualSim?允許用戶將不同層次的模型混合使用,只在需要時再進行模型細化。
VisualSim?建議用戶以解決真正關注的問題為重心,從簡單的模型層次開始,只細化關注的部分,節省系統建模時間。
Copyright ?i-innovating北京國鼎源創智能科技有限公司.
京ICP備2021018369號 Powered by CmsEasy 留言 Rss