傳統的嵌入式軟體開發工具與方法,已不足以應對當今複雜的嵌入式系統——尤其是多核心晶片與系統單晶片(SoC)——以及其緊迫的開發時程。
虛擬原型是一種可在主機系統上執行的軟體模型。它以足以滿足軟體開發需求的程度,模擬硬體(包括 CPU 指令集、記憶體映射、寄存器及中斷),並可針對軟體開發進行客製化調整。 從軟體角度來看,它與被模擬的硬體二進位相容,讓使用者能夠執行未經修改的二進位映像檔,涵蓋整個軟體堆疊——從低階裝置與韌體、作業系統、中介軟體,直至正在開發的應用程式。它完整地呈現了目標系統的功能,供開發者據此進行軟體開發。
虛擬原型會將與軟體開發人員無關的硬體細節進行抽象化處理。透過指令集模擬器,虛擬原型能在標準個人電腦上執行嵌入式目標程式碼。系統周邊設備在交易層級上被建模,其細節程度僅足以執行未經修改的軟體映像;例如,寄存器的行為是準確的,但時序則不然。
模擬速度極高,可實現大型軟體堆疊的互動式執行,例如在 AUTOSAR 或 Android 作業系統上運行的應用程式。虛擬原型透過虛擬與實體 I/O,連接至 USB、PCIe、乙太網路及序列裝置等實體介面。
由於能提早取得、具備二進位相容性且效能卓越,虛擬原型得以在實際硬體尚未問世之前——甚至在許多情況下,在晶片設計尚未完成之前——便用於開發、除錯、整合及驗證系統軟體。
虛擬原型最好盡早在開發週期中導入,例如在以下階段:
| 開發階段 | 好處在於虛擬原型設計 |
| 早期軟體開發 | 可在硬體尚未就緒前,即展開早期程式設計與測試 |
| 硬體/軟體整合 | 在FPGA 正式推出前,便能進行整合測試 |
| 除錯與測試 | 進階除錯工具與可視性 |
| 迴歸分析的設定 | 易於自動化且可重複的測試環境 |
| 硬體原型製作 | 用於加速迭代的補充或替代方案 |
新思科技 提供完整的虛擬原型設計 解決方案系列,包括用於早期架構分析的Platform Architect™、用於建立軟體開發虛擬原型的Virtualizer™(配備業界最龐大的交易層級模型(TLM)產品組合)、適用於多種汽車平台的即用型Virtualizer 開發套件(VDK),以及確保專案成功的交鑰匙與量產啟動服務。