0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

硬件仿真在嵌入式軟件和系統(tǒng)驗證中的應用

星星科技指導員 ? 來源:嵌入式計算設計 ? 作者:Lauro Rizzatti ? 2022-07-05 09:57 ? 次閱讀

任何學科的設計——電子、機械、航空航天等——都始于一個規(guī)范,該規(guī)范捕捉最終產品應該做什么,并從根本上推動整個開發(fā)周期。在開發(fā)的早期階段,第一個任務使用規(guī)范來驗證正在開發(fā)的設計是否正常工作并且沒有錯誤。然后,當設計的所有部分都組裝成一個完整的系統(tǒng)時,第二個任務使用規(guī)范來確定系統(tǒng)是否也按照預期的方式運行。

廣告:

航空航天、機械

這兩個任務稱為設計驗證(任務 1)和設計驗證(任務 2)。有時,錯誤地,這兩個術語可以互換使用。雖然相似,但這兩項任務的目標卻截然不同。

驗證:我們構建的系統(tǒng)正確嗎?

驗證:我們是否在構建正確的系統(tǒng)?

在片上系統(tǒng) (SoC) 設計過程中,使用基于軟件的硬件描述語言 (HDL) 仿真方法進行設計驗證。相反,設計驗證是在實際使用環(huán)境中測試的整個系統(tǒng)的原型上進行的。

不幸的是,HDL 仿真執(zhí)行速度并沒有跟上設備的復雜性,盡管它具有所有優(yōu)點:易用性、靈活性和快速的設計迭代時間。當今的許多設計,例如具有 1,024 個端口的互聯(lián)網(wǎng)路由器或高清視頻處理器,都需要大量的驗證序列,即使在最快的 PC 上模擬也需要很多年。這些序列源于運行長的、連續(xù)的串行協(xié)議流或處理復雜的嵌入式軟件以全面驗證 SoC 或系統(tǒng)設計的需要。

此外,近年來,在硅可用之前開始軟件驗證已變得很重要。為了實現(xiàn)這一目標,引入了一種稱為虛擬原型的新型方法。雖然其中一些工具已經(jīng)實現(xiàn)了啟動軟件開發(fā)的目標,但它們只處理不需要準確表示底層硬件的應用程序。在測試嵌入式軟件(例如固件、設備驅動程序、操作系統(tǒng)和診斷程序)的交互時,它們會出現(xiàn)不足。對于此測試,嵌入式軟件開發(fā)人員依靠準確的硬件模型來驗證他們的代碼。

相比之下,硬件設計人員需要一套相當完整的軟件來在系統(tǒng)驗證期間全面測試他們的 SoC。古老的基于 FPGA 電路板的系統(tǒng)原型設計方法提供了設計的準確表示,但不太適合硬件調試。因此,只要設計適合少數(shù) FPGA,F(xiàn)PGA 原型對軟件開發(fā)團隊的吸引力就更大。

最終,軟件和硬件組需要在一個通用模型上走到一起,以驗證完整的硬件和嵌入式軟件。對于大多數(shù)使用傳統(tǒng)開發(fā)周期的人來說,第一個完整的模型是實際的硅片(圖 1)。

pYYBAGLDmryAOyoeAAEkefk1rws728.png

【圖1 | 在傳統(tǒng)的開發(fā)周期中,第一個完整的模型是硅。]

等待實際硅片的問題在于它在設計周期中為時已晚。由于嵌入式軟件無法在完整、準確的系統(tǒng)模型的上下文中得到充分驗證,直到硅片,所以在硅片中發(fā)現(xiàn)問題的可能性增加。它們可以在軟件或軟件和硬件中找到,通常會迫使額外的芯片重新設計和代碼修訂。重新設計和代碼修訂都具有成本和上市時間的影響。避免這些影響所需要的是一種提供統(tǒng)一解決方案的方法,以在第一塊芯片之前實現(xiàn)硬件/軟件驗證和確認。

最新一代的硬件仿真器實現(xiàn)了這一點。它們提供幾乎無限的容量,多達數(shù)十億個門,并以 1 兆赫或更多兆赫的速度驗證被測設計 (DUT),提供比 FPGA 原型系統(tǒng)更好的硬件調試。它們易于使用,可以更快地編譯 DUT,并允許從世界任何地方進行 24/7 遠程訪問。在仿真器上運行的新軟件應用程序使其能夠支持多種類型的驗證,從低功耗分析和驗證到測試設計 (DFT) 邏輯驗證。仿真器還為從網(wǎng)絡到處理器/圖形、存儲等各種細分市場帶來了獨特的技術。

在設計周期的早期,仿真器用于與仿真器和 SystemVerilog 進行協(xié)同仿真,以在組裝完整的 SoC 設計之前驗證知識產權 (IP) 模塊和子系統(tǒng)。在設計周期的后期,仿真器用于驗證整個系統(tǒng)并執(zhí)行嵌入式軟件驗證。

它們在相同的設計表示上為硬件和軟件工程師提供完整的硬件和軟件調試功能。這讓硬件和軟件開發(fā)團隊能夠以前所未有的方式協(xié)作并修復集成問題(圖 2)。

poYBAGLDmsOANT8nAAFHAxOgUIg491.png

【圖2 | 最新一代的硬件仿真器顯著加快了開發(fā)周期。]

硬件仿真以前僅限于驗證超大型設計,如今已成為所有設計驗證和確認流程的基礎。這種新發(fā)現(xiàn)的流行是日益增長的硅復雜性和嵌入式軟件的廣泛使用的結果。在設計中心,硬件仿真被使用,并且在未來它將在從硬件驗證、硬件/軟件集成到嵌入式軟件和系統(tǒng)驗證的整個開發(fā)周期中使用得更多。

審核編輯:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1624

    文章

    21539

    瀏覽量

    600517
  • 嵌入式
    +關注

    關注

    5052

    文章

    18912

    瀏覽量

    300801
  • 仿真器
    +關注

    關注

    14

    文章

    1011

    瀏覽量

    83554
收藏 人收藏

    評論

    相關推薦

    什么是嵌入式?一文讀懂嵌入式主板

    現(xiàn)代科技浪潮,嵌入式技術已成為支撐各種智能設備和系統(tǒng)運行的核心力量。那么,究竟什么是嵌入式?嵌入式
    的頭像 發(fā)表于 10-16 10:14 ?195次閱讀

    嵌入式系統(tǒng)的未來趨勢有哪些?

    會更加模塊化和集成化,允許更容易的硬件軟件的切換和升級。這會提高系統(tǒng)的可維護性和可擴展性,會使得系統(tǒng)能夠適應不斷變化的應用需求。 5.
    發(fā)表于 09-12 15:42

    嵌入式機電一體化系統(tǒng)設計與實現(xiàn)》讀后感

    刻的認識。從硬件上將外圍器件整合到CPU內部,到軟件操作系統(tǒng)內核嵌入應用程序,再到將
    發(fā)表于 08-21 08:45

    嵌入式系統(tǒng)的實時操作系統(tǒng)

    嵌入式RTOS是嵌入式應用程序運行、相互交互和與外界通信的底層軟件機制。本節(jié),您將了解嵌入式
    的頭像 發(fā)表于 08-20 11:28 ?364次閱讀

    嵌入式系統(tǒng)怎么學?

    系統(tǒng)設計與調試:需要掌握嵌入式系統(tǒng)的設計方法和調試技術,包括硬件設計、軟件設計、電路調試等,以確保系統(tǒng)
    發(fā)表于 07-02 10:10

    嵌入式硬件VS軟件,到底哪個更難?

    嵌入式系統(tǒng)開發(fā)硬件軟件是密不可分的兩個方面。但是,究竟是
    的頭像 發(fā)表于 06-13 08:10 ?986次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>硬件</b>VS<b class='flag-5'>軟件</b>,到底哪個更難?

    從事嵌入式方向,一定要軟硬件通吃?

    嵌入式系統(tǒng)開發(fā)領域,軟件硬件的界限常常模糊不清。一個常見的問題是,嵌入式
    的頭像 發(fā)表于 06-05 08:10 ?928次閱讀
    從事<b class='flag-5'>嵌入式</b>方向,一定要軟<b class='flag-5'>硬件</b>通吃?

    嵌入式軟件工程師和硬件工程師的區(qū)別?

    嵌入式軟件工程師和硬件工程師的區(qū)別? 嵌入式軟件工程師 嵌入式
    發(fā)表于 05-16 11:00

    嵌入式系統(tǒng)硬件基礎知識大全

    基礎知識的探討,我們希望讀者能夠掌握嵌入式系統(tǒng)的基本概念,理解其工作原理,為從事嵌入式系統(tǒng)設計和開發(fā)工作奠定基礎。 嵌入式
    發(fā)表于 05-09 14:12

    實時級嵌入式系統(tǒng)半實物仿真測試平臺ETest

    產品簡介** ETest_RT是一款具有高實時性的嵌入式系統(tǒng)半實物仿真測試平臺(Embedded System Real Time Test Studio RT,簡稱:ETest_RT
    發(fā)表于 04-25 17:01

    嵌入式軟件開發(fā)應該掌握哪些知識?

    嵌入式軟件開發(fā)應該掌握哪些知識? 一、 什么是嵌入式軟件? 嵌入式軟件通常是指
    發(fā)表于 02-19 11:23

    嵌入式學習步驟

    硬件組件。 (4).開發(fā)固件:編寫嵌入式系統(tǒng)的固件,這是嵌入式系統(tǒng)軟件部分。固件負責控制
    發(fā)表于 02-02 15:24

    嵌入式軟件開發(fā)和軟件開發(fā)的區(qū)別

    嵌入式軟件開發(fā)和軟件開發(fā)是兩個不同的概念,它們一些關鍵方面有著明顯的區(qū)別。嵌入式軟件開發(fā)是指開
    的頭像 發(fā)表于 01-22 15:27 ?2026次閱讀

    基于功能安全的汽車嵌入式軟件單元驗證技術研究

    ,對滿足功能安全ASIL等級的汽車嵌入式軟件單元驗證技術進行詳細介紹,從而提高軟件質量,減少軟件安全隱患,對汽車
    的頭像 發(fā)表于 01-07 11:27 ?945次閱讀
    基于功能安全的汽車<b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>單元<b class='flag-5'>驗證</b>技術研究

    嵌入式硬件軟件哪個好?

    嵌入式硬件軟件哪個好? 嵌入式硬件工程師哪個更有前途呢?一起來看看。 嵌入式是分為軟
    發(fā)表于 12-05 15:17