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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

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

星星科技指導(dǎo)員 ? 來(lái)源:嵌入式計(jì)算設(shè)計(jì) ? 作者:Lauro Rizzatti ? 2022-07-05 09:57 ? 次閱讀

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

廣告:

航空航天、機(jī)械

這兩個(gè)任務(wù)稱為設(shè)計(jì)驗(yàn)證(任務(wù) 1)和設(shè)計(jì)驗(yàn)證(任務(wù) 2)。有時(shí),錯(cuò)誤地,這兩個(gè)術(shù)語(yǔ)可以互換使用。雖然相似,但這兩項(xiàng)任務(wù)的目標(biāo)卻截然不同。

驗(yàn)證:我們構(gòu)建的系統(tǒng)正確嗎?

驗(yàn)證:我們是否在構(gòu)建正確的系統(tǒng)?

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

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

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

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

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

pYYBAGLDmryAOyoeAAEkefk1rws728.png

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

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

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

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

它們?cè)谙嗤脑O(shè)計(jì)表示上為硬件和軟件工程師提供完整的硬件和軟件調(diào)試功能。這讓硬件和軟件開(kāi)發(fā)團(tuán)隊(duì)能夠以前所未有的方式協(xié)作并修復(fù)集成問(wèn)題(圖 2)。

poYBAGLDmsOANT8nAAFHAxOgUIg491.png

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

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

審核編輯:郭婷

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

    關(guān)注

    1620

    文章

    21510

    瀏覽量

    598940
  • 嵌入式
    +關(guān)注

    關(guān)注

    5046

    文章

    18821

    瀏覽量

    298579
  • 仿真器
    +關(guān)注

    關(guān)注

    14

    文章

    1008

    瀏覽量

    83441
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    嵌入式系統(tǒng)的未來(lái)趨勢(shì)有哪些?

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

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

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

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

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

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

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

    嵌入式硬件VS軟件,到底哪個(gè)更難?

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

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

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

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

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

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

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

    實(shí)時(shí)級(jí)嵌入式系統(tǒng)半實(shí)物仿真測(cè)試平臺(tái)ETest

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

    嵌入式學(xué)習(xí)步驟

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

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

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

    基于功能安全的汽車嵌入式軟件單元驗(yàn)證技術(shù)研究

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

    嵌入式硬件軟件哪個(gè)好?

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

    仿真系統(tǒng)軟件的架構(gòu)是什么

    仿真軟件的架構(gòu)可以包括以下幾個(gè)部分: 硬件驅(qū)動(dòng)部分:負(fù)責(zé)驅(qū)動(dòng)硬件,向上一層提供底層硬件的操作接口。仿真
    的頭像 發(fā)表于 10-16 16:56 ?850次閱讀

    仿真系統(tǒng)軟件的架構(gòu)是什么呢?

    仿真系統(tǒng)軟件的架構(gòu)是什么呢? 智慧華盛恒輝仿真系統(tǒng)軟件硬件載體大部分為專用計(jì)算機(jī)設(shè)備,并且通常沒(méi)有外圍設(shè)備用于測(cè)試過(guò)程
    的頭像 發(fā)表于 10-13 17:19 ?506次閱讀