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

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

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

多級(jí)調(diào)試方法的硬件仿真

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

芯片設(shè)計(jì)調(diào)試是一門困難的學(xué)科,而片上系統(tǒng) (SoC) 設(shè)計(jì)則更是如此。這就像眾所周知的大海撈針。對(duì)于 SoC 設(shè)計(jì),它是兩個(gè)大海撈針,一個(gè)用于軟件,另一個(gè)用于硬件。軟件開(kāi)發(fā)團(tuán)隊(duì)經(jīng)常將集體矛頭指向硬件團(tuán)隊(duì),聲稱這是一個(gè)硬件錯(cuò)誤,而硬件團(tuán)隊(duì)則迅速回?fù)?,聲稱這是一個(gè)軟件錯(cuò)誤。如果沒(méi)有有效的驗(yàn)證工具來(lái)查明問(wèn)題,就很難知道誰(shuí)是對(duì)的。這就是硬件仿真的用武之地。

硬件仿真對(duì)于調(diào)試硬件和測(cè)試 SoC 設(shè)計(jì)中硬件和軟件的集成非常重要,遠(yuǎn)遠(yuǎn)早于第一個(gè)芯片。當(dāng)工程組的兩個(gè)不同部分(硬件設(shè)計(jì)師和軟件開(kāi)發(fā)人員)使用仿真時(shí),他們能夠共享相同的系統(tǒng)和設(shè)計(jì)表示。SoC 設(shè)計(jì)的組合軟件和硬件視圖使它們能夠協(xié)同工作以調(diào)試硬件和軟件交互。

作為大多數(shù) SoC 驗(yàn)證流程的基礎(chǔ),硬件仿真允許工程團(tuán)隊(duì)更有策略地進(jìn)行規(guī)劃并實(shí)施基于多個(gè)抽象級(jí)別的調(diào)試方法。工程團(tuán)隊(duì)不必彼此獨(dú)立地鉆進(jìn)兩個(gè)干草堆。相反,他們可以跨嵌入式軟件和底層硬件之間的邊界跟蹤錯(cuò)誤,以確定問(wèn)題出在軟件還是硬件上。

實(shí)現(xiàn)基于多個(gè)抽象級(jí)別的調(diào)試方法從最高級(jí)別的嵌入式軟件開(kāi)始,然后在抽象級(jí)別向下移動(dòng)以跟蹤各個(gè)硬件元素的行為。事實(shí)上,從包含數(shù)十億個(gè)時(shí)鐘周期的數(shù)據(jù)庫(kù)開(kāi)始,軟件調(diào)試器可以將問(wèn)題定位到幾百萬(wàn)個(gè)時(shí)鐘周期內(nèi)。在這個(gè)級(jí)別,軟件開(kāi)發(fā)人員可以識(shí)別軟件代碼中的源代碼,或者他們的硬件設(shè)計(jì)同行可以使用軟件感知硬件調(diào)試方法來(lái)專注于較低的抽象級(jí)別。該方法要求通過(guò)硬件事務(wù)器實(shí)現(xiàn)監(jiān)視器、檢查器和斷言,以避免速度下降并幫助將問(wèn)題縮小到幾千個(gè)周期。

一旦審查了這兩個(gè)級(jí)別收集的數(shù)據(jù),硬件仿真允許工程組向下移動(dòng)到信號(hào)級(jí)別。它可以通過(guò)所識(shí)別時(shí)間段的寄存器傳輸電平(RTL)波形分析信息,并追蹤其可能的來(lái)源。要么發(fā)現(xiàn)了硬件錯(cuò)誤,要么清除了硬件故障。如果是后者,它會(huì)迫使決定回到軟件環(huán)境。

導(dǎo)航多個(gè)級(jí)別的調(diào)試抽象

在不同的抽象級(jí)別之間導(dǎo)航——從軟件到硬件再到后面——避免了長(zhǎng)時(shí)間的模擬運(yùn)行和大量的詳細(xì)數(shù)據(jù)(圖 1)。

poYBAGKukNOAJ0WjAAJYn70M568353.png

【圖1 | 硬件仿真為軟件和硬件調(diào)試提供了一個(gè)生態(tài)系統(tǒng)。]

軟件模擬器無(wú)法實(shí)現(xiàn)多級(jí)調(diào)試方法,因?yàn)樗鼈兲鵁o(wú)法有效執(zhí)行嵌入式軟件。實(shí)際上,它們將運(yùn)行數(shù)月來(lái)處理數(shù)十億個(gè)設(shè)計(jì)周期,這些設(shè)計(jì)的大小達(dá)到數(shù)億個(gè)專用集成電路ASIC) 等效門。對(duì)于消費(fèi)電子設(shè)備或任何其他電子設(shè)備的供應(yīng)商來(lái)說(shuō),這是一個(gè)不可接受的時(shí)間限制。

雖然仍然被廣泛使用,但在驗(yàn)證場(chǎng)景中推動(dòng)其成功的原始仿真風(fēng)格的在線仿真 (ICE) 模式現(xiàn)在在基于事務(wù)的驗(yàn)證中面臨著可行的替代方案。從概念上講,這個(gè)想法很簡(jiǎn)單。測(cè)試是在高級(jí)抽象上編寫的,從高級(jí)命令到位級(jí)信號(hào)的轉(zhuǎn)換從測(cè)試臺(tái)轉(zhuǎn)移到稱為事務(wù)器的專用實(shí)體中。通過(guò)將事務(wù)處理器映射到硬件仿真器上,與基于仿真的驗(yàn)證相比,可以輕松實(shí)現(xiàn) 5 或 6 個(gè)數(shù)量級(jí)的加速。

工程組使用事務(wù)處理程序來(lái)構(gòu)建虛擬測(cè)試環(huán)境,而不是 ICE 物理目標(biāo)系統(tǒng),方法是用一組等效的事務(wù)處理程序替換一組基于 I/O 協(xié)議的速度適配器(圖 2)。

pYYBAGKukNuAc0UYAAK6HACnCmE557.png

【圖2 | 一個(gè)完整的虛擬測(cè)試環(huán)境包括通過(guò)事務(wù)建模的所有 SoC 外圍接口。]

基于事務(wù)的加速簡(jiǎn)化了設(shè)計(jì)調(diào)試。通過(guò)完全控制并非由硬件測(cè)試臺(tái)提供的設(shè)計(jì)時(shí)鐘,調(diào)試變得更加容易和高效。通過(guò)控制時(shí)鐘頻率,可以停止仿真的被測(cè)設(shè)計(jì) (DUT) 模型、讀取其內(nèi)存內(nèi)容、強(qiáng)制某些寄存器或轉(zhuǎn)儲(chǔ)波形。

傳統(tǒng)上,在 ICE 環(huán)境中調(diào)試需要由來(lái)自目標(biāo)系統(tǒng)的不可控時(shí)鐘驅(qū)動(dòng)的硬件邏輯分析儀。該設(shè)置導(dǎo)致了不確定的行為并損害了調(diào)試 DUT 的能力。硬件仿真供應(yīng)商最近通過(guò)將其轉(zhuǎn)換為確定性行為的方法解決了 ICE 外圍設(shè)備的隨機(jī)行為。

多層次的協(xié)同驗(yàn)證視角

一旦軟件設(shè)計(jì)人員和硬件開(kāi)發(fā)人員使用硬件仿真體驗(yàn)了基于事務(wù)的驗(yàn)證,他們的整個(gè)驗(yàn)證視角就會(huì)發(fā)生變化。無(wú)需繁瑣的 ICE 硬件即可快速設(shè)置強(qiáng)大的測(cè)試環(huán)境的能力意味著更容易和更有效的調(diào)試。目標(biāo)可能是相同的——在更短的時(shí)間內(nèi)做出更好的設(shè)計(jì)——但現(xiàn)在的體驗(yàn)可能會(huì)變得不那么具有挑戰(zhàn)性。

工程團(tuán)隊(duì)發(fā)現(xiàn)現(xiàn)代硬件仿真器是測(cè)試硬件和在 SoC 設(shè)計(jì)中集成硬件和軟件的必要條件。它使他們能夠更有策略地進(jìn)行規(guī)劃并成功實(shí)施硬件/軟件聯(lián)合驗(yàn)證。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5271

    瀏覽量

    119655
  • soc
    soc
    +關(guān)注

    關(guān)注

    38

    文章

    4067

    瀏覽量

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

    關(guān)注

    14

    文章

    1011

    瀏覽量

    83554
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    無(wú)線網(wǎng)橋的連接與調(diào)試方法

    無(wú)線網(wǎng)橋的連接與調(diào)試方法主要涉及設(shè)備的配置、網(wǎng)絡(luò)參數(shù)的設(shè)定以及通信質(zhì)量的優(yōu)化。以下是詳細(xì)的步驟和注意事項(xiàng):
    的頭像 發(fā)表于 10-01 15:23 ?314次閱讀

    FPD link系統(tǒng)概念與診斷調(diào)試方法

    電子發(fā)燒友網(wǎng)站提供《FPD link系統(tǒng)概念與診斷調(diào)試方法.pdf》資料免費(fèi)下載
    發(fā)表于 09-27 11:11 ?0次下載
    FPD link系統(tǒng)概念與診斷<b class='flag-5'>調(diào)試</b><b class='flag-5'>方法</b>

    用OPA340仿真出來(lái)的效果和硬件調(diào)試基本相符,二倍時(shí)150K增益開(kāi)始下降,為什么?

    用OPA340仿真出來(lái)的效果和硬件調(diào)試基本相符,二倍時(shí)150K增益開(kāi)始下降,100倍時(shí)50K左右。但是項(xiàng)目要求100倍時(shí)帶寬200K,所以后來(lái)又選用了OPA350。但是350回來(lái)以后進(jìn)行硬件
    發(fā)表于 09-23 06:35

    【干貨分享】硬件在環(huán)仿真(HiL)測(cè)試

    一、HiL是什么?硬件在環(huán)仿真(Hardware-in-the-Loop,簡(jiǎn)稱HIL)是真的控制器連接假的被控對(duì)象,以一種高效低成本的方式對(duì)控制器進(jìn)行全面測(cè)試。它是一種用于復(fù)雜設(shè)備控制器的開(kāi)發(fā)與測(cè)試
    的頭像 發(fā)表于 09-19 17:15 ?418次閱讀
    【干貨分享】<b class='flag-5'>硬件</b>在環(huán)<b class='flag-5'>仿真</b>(HiL)測(cè)試

    上海 10月25日-26日《硬件電路設(shè)計(jì)、調(diào)試與工程案例分析》公開(kāi)課即將開(kāi)始!

    課程名稱:《硬件電路設(shè)計(jì)、調(diào)試與工程案例分析》講師:王老師時(shí)間地點(diǎn):上海10月25-26日(兩天)主辦單位:賽盛技術(shù)課程特色1)課程內(nèi)容圍繞電路設(shè)計(jì)和調(diào)試所涉及的主要環(huán)節(jié);2)針對(duì)設(shè)計(jì)和調(diào)試
    的頭像 發(fā)表于 09-19 08:03 ?206次閱讀
    上海 10月25日-26日《<b class='flag-5'>硬件</b>電路設(shè)計(jì)、<b class='flag-5'>調(diào)試</b>與工程案例分析》公開(kāi)課即將開(kāi)始!

    仿真器的使用方法有哪些

    仿真器是一種用于模擬和測(cè)試電子系統(tǒng)、軟件或硬件的工具。它可以幫助工程師在實(shí)際硬件或軟件部署之前,對(duì)設(shè)計(jì)進(jìn)行驗(yàn)證和調(diào)試。 仿真器的基本概念
    的頭像 發(fā)表于 08-22 09:16 ?476次閱讀

    多級(jí)放大電路耦合方式的特點(diǎn)是什么

    多級(jí)放大電路是一種由多個(gè)放大器級(jí)聯(lián)組成的電路,每個(gè)放大器都對(duì)信號(hào)進(jìn)行放大,以實(shí)現(xiàn)更高的放大倍數(shù)。耦合方式是連接各個(gè)放大器的方法,對(duì)電路的性能和穩(wěn)定性有重要影響。本文將介紹多級(jí)放大電路耦合方式的特點(diǎn)
    的頭像 發(fā)表于 08-07 09:55 ?392次閱讀

    說(shuō)說(shuō)硬件調(diào)試中發(fā)現(xiàn)的那些低級(jí)錯(cuò)誤

    硬件調(diào)試中會(huì)經(jīng)常遇到各種意想不到的問(wèn)題,有些調(diào)試花了幾個(gè)月,各種能想到的辦法都嘗試了,最后發(fā)現(xiàn)卻是一個(gè)非常低級(jí)的錯(cuò)誤,有多低級(jí)?請(qǐng)看今天的內(nèi)文介紹。
    的頭像 發(fā)表于 07-03 12:00 ?245次閱讀
    說(shuō)說(shuō)<b class='flag-5'>硬件</b><b class='flag-5'>調(diào)試</b>中發(fā)現(xiàn)的那些低級(jí)錯(cuò)誤

    TLT507-GDB程序調(diào)試方法說(shuō)明

    TLT507-GDB程序調(diào)試方法說(shuō)明
    的頭像 發(fā)表于 01-26 10:11 ?898次閱讀
    TLT507-GDB程序<b class='flag-5'>調(diào)試</b><b class='flag-5'>方法</b>說(shuō)明

    RK3568-GDB程序調(diào)試方法說(shuō)明

    RK3568-GDB程序調(diào)試方法說(shuō)明
    的頭像 發(fā)表于 01-19 16:16 ?1636次閱讀
    RK3568-GDB程序<b class='flag-5'>調(diào)試</b><b class='flag-5'>方法</b>說(shuō)明

    FPGA硬件電路的調(diào)試必備原則和技巧

    調(diào)試FPGA電路時(shí)要遵循必須的原則和技巧,才能降低調(diào)試時(shí)間,防止誤操作損壞電路。通常情況下,參考以下步驟執(zhí)行 FPGA硬件系統(tǒng)的調(diào)試。 1、在焊接
    的頭像 發(fā)表于 12-22 16:40 ?678次閱讀
    FPGA<b class='flag-5'>硬件</b>電路的<b class='flag-5'>調(diào)試</b>必備原則和技巧

    技術(shù)分享 | 驗(yàn)證入門黃金組合:數(shù)字仿真器與調(diào)試系統(tǒng)

    歷史上第一款 EDA 軟件SPICE,就是從仿真開(kāi)始的??梢哉f(shuō),EDA軟件從誕生之日起,就帶著強(qiáng)烈的仿真基因。 不論是從項(xiàng)目的角度,或是用戶的角度,數(shù)字仿真器與調(diào)試工具可以說(shuō)是兩位一體
    的頭像 發(fā)表于 12-18 13:00 ?418次閱讀

    使用SystemVerilog調(diào)試布局方法

    System Verilog調(diào)試布局由三部分組成。左上角Design Browser,可以訪問(wèn)仿真對(duì)象,右上角為Source Browser,用來(lái)展示源碼,下側(cè)窗口為Waveform window,用來(lái)顯示波形。
    的頭像 發(fā)表于 12-02 16:08 ?923次閱讀
    使用SystemVerilog<b class='flag-5'>調(diào)試</b>布局<b class='flag-5'>方法</b>

    方法|如何為開(kāi)發(fā)板調(diào)試新的觸摸屏

    方法|如何為開(kāi)發(fā)板調(diào)試新的觸摸屏
    的頭像 發(fā)表于 11-30 11:30 ?822次閱讀
    <b class='flag-5'>方法</b>|如何為開(kāi)發(fā)板<b class='flag-5'>調(diào)試</b>新的觸摸屏

    Vivado Design Suite 用戶指南:編程和調(diào)試

    《Vivado Design Suite 用戶指南:編程和調(diào)試》 文檔涵蓋了以下設(shè)計(jì)進(jìn)程: 硬件、IP 和平臺(tái)開(kāi)發(fā) : 為硬件平臺(tái)創(chuàng)建 PL IP 塊、創(chuàng)建 PL 內(nèi)核、功能仿真以及評(píng)
    的頭像 發(fā)表于 10-25 16:15 ?802次閱讀
    Vivado Design Suite 用戶指南:編程和<b class='flag-5'>調(diào)試</b>