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

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

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

先進仿真器具備什么功能?

jf_78858299 ? 來源:古月居 ? 作者:古月 ? 2023-05-25 15:17 ? 次閱讀

芯片有別于其他產(chǎn)品,一個顯著特性就是它的一次性工程費用(NRE)非常的高昂。芯片內(nèi)一個微小邏輯錯誤可能導(dǎo)致上千萬美金損失。這也意味在流片前,工程師需要花大量時間利用數(shù)字仿真器來驗證芯片,保證其功能的正確。

仿真技術(shù)是芯片驗證必不可少的一個環(huán)節(jié),它是保證芯片功能正常的關(guān)鍵手段。仿真主要是通過計算機結(jié)合測試激勵(stimuli)來模擬芯片在真實環(huán)境下的運行狀況;同時工程師可以通過各種調(diào)試手段來判斷運行結(jié)果是否符合預(yù)期。數(shù)字仿真器主要是針對數(shù)字電路的仿真,設(shè)計工程師需要應(yīng)用硬件描述語言(HDL)來設(shè)計電路,而驗證工程師也需要用抽象層的HDL來搭建測試環(huán)境;仿真工具需要解釋編譯這些HDL代碼,并計算出仿真結(jié)果,以便工程師檢查結(jié)果。

圖片

圖一 數(shù)字仿真器流程

二十年前,一百萬門的設(shè)計可以被稱作超大規(guī)模集成電路,而今數(shù)千萬門的電路已經(jīng)司空見慣。數(shù)字芯片集成度越來越高,伴隨的設(shè)計驗證語言和方法學(xué)不斷推陳出新,各種應(yīng)用平臺也層出不窮。這一系列的技術(shù)發(fā)展都給數(shù)字仿真器帶來了前所未有的挑戰(zhàn)。設(shè)計具有競爭力的片上系統(tǒng)(SoC)需要合理地利用各種高精尖的技術(shù)。對于數(shù)字仿真器來說,它面臨的挑戰(zhàn)不僅僅是芯片規(guī)模上的增長,還有伴隨而來的一系列問題,包括:算力受限、調(diào)試效率低下、平臺單一化等。芯華章在數(shù)字仿真器領(lǐng)域做了深入的研究和探索。放眼未來,我們認為一款好的數(shù)字仿真器應(yīng)該具備以下條件:

一、語義解析的合規(guī)性(conformity)

仿真器對語法正確解析決定了它能否正確理解設(shè)計意圖,同時也可以避免相同的編碼在不同的仿真器下產(chǎn)生不同仿真結(jié)果。設(shè)計仿真器最大的挑戰(zhàn)在于對HDL語法全面的解析。Verilog標(biāo)準(zhǔn)(IEEE1364)和SystemVerilog標(biāo)準(zhǔn)(IEEE1800)定義的這兩種語言的語義非常的復(fù)雜,關(guān)鍵字眾多,各種組合情況近乎無窮。如SystemVerilog中的interface,在interface中可以做assert,可以在其中使用task,function,還可在其中擴展各種modport等。要做到全面完整的測試,需要在構(gòu)建仿真器的測試用例時考慮的語法的各個方面,以及各種邊界場景。

通常人們認為,計算機語言是形式化(formal)的表達式,不存在歧義,但實際上,IEEE標(biāo)準(zhǔn)中存在很多模糊的界定,尤其在對發(fā)生競爭冒險(race condition)時的行為沒有明確的規(guī)定,處理這些問題,就需要開發(fā)者的經(jīng)驗和技巧。

二、良好的性能 (performance)

衡量仿真器的性能量化指標(biāo)之一是:運行(runtime)時的CPU處理速度和內(nèi)存消耗?,F(xiàn)今的大規(guī)模集成電路動輒上億門,如果還是依賴傳統(tǒng)的仿真技術(shù),當(dāng)設(shè)計和環(huán)境的規(guī)模一旦達到某個數(shù)值,大部分商業(yè)仿真器性能都會顯著下降,造成效率低下。這其實是因為傳統(tǒng)的工具基本都是基于單機(single host)構(gòu)架來設(shè)計的。在網(wǎng)絡(luò)互聯(lián)日益發(fā)達的今天,分布式數(shù)據(jù)庫和多核并行計算等理論越來越成熟,仿真器也必須考慮并利用這些新技術(shù)取得更多性能上的突破。

三、卓越的調(diào)試功能(debuggability)

調(diào)試的重點在于可觀測性和可控制性。在數(shù)字電路調(diào)試中可觀測性表現(xiàn)形式有多種,如波形,記錄文本(log file),電路圖(schematics),源代碼,事務(wù)級數(shù)據(jù)表圖等等。調(diào)試工具的核心功能是針對不同的場景提供能夠各種有效的數(shù)據(jù)表現(xiàn)形式,并在不同數(shù)據(jù)形式間的可以同步數(shù)據(jù)標(biāo)注(annotation)。此外,降低工具的使用門檻,讓初級用戶非??焖俚卣莆照{(diào)試技術(shù),并且提供通用語言的二次開發(fā)的接口,也是優(yōu)秀的調(diào)試工具需要著重考慮的。

四、支持跨平臺(platform-independent)

傳統(tǒng)的EDA工具大多數(shù)和單一CPU構(gòu)架耦合度高,例如某些EDA工具僅支持x86的平臺。一旦需要遷移到另一種平臺上,所需要的研發(fā)工作量是巨大的。如今,處理器生態(tài)越來越多樣化,未來的平臺不再是某個單一處理器的平臺,降低EDA工具對底層CPU構(gòu)架的耦合度,可以讓用戶更加有效地把工具部署在任何平臺上,也讓產(chǎn)品有更多應(yīng)用空間,比如:在移動端的和云端的交互仿真,在移動端和服務(wù)器端的聯(lián)合仿真,利用FPGA和GPGPU的異構(gòu)加速仿真等。

LLVM的存在為跨平臺提供了技術(shù)支撐。LLVM是Chris Lattner博士于2000年開發(fā)的一種編譯器的框架系統(tǒng),他的目的在于提供一種可以適配多平臺的編譯系統(tǒng),讓前端語言和后端目標(biāo)平臺解耦。利用LLVM框架開發(fā)的仿真軟件,理論上可以適配到任意目標(biāo)平臺,甚至可以部署在分布式操作系統(tǒng)上,產(chǎn)品應(yīng)用范圍顯著擴大。

芯華章在跨平臺方面做了研究探索,2020年11月,芯華章的仿真器利用LLVM技術(shù)已經(jīng)成功將軟件運行在國產(chǎn)CPU架構(gòu)上。這一步工程量看似不大,但是現(xiàn)實意義非凡:這是中國EDA企業(yè)率先利用LLVM技術(shù)實現(xiàn)跨平臺支持,從某種意義上,它說也推動了傳統(tǒng)保守的EDA行業(yè)朝著更開放的技術(shù)領(lǐng)域拓展。

五、特定場景應(yīng)用(scenario-based applications)

不同的應(yīng)用場景對仿真器有不同的特殊要求,先進的仿真器需要具備各種場景下所需的功能。在大規(guī)模設(shè)計中,整個設(shè)計和驗證環(huán)境的編譯時間可能高達數(shù)十小時,這種速度在調(diào)試頻繁的設(shè)計初期是無法接受。因此,如果仿真器能夠只針對修改過的設(shè)計部分進行重編譯,而保留大部分沒改變已有編譯結(jié)果(snapshot),那么重編譯一次的時間就會大大減少,效率就得以提升。這種技術(shù)通常叫做:增量式編譯(incremental elaboration),或者分區(qū)式編譯(partition compilation)。

消費電子芯片中涉及到大量的冷復(fù)位和熱復(fù)位,在這些復(fù)位情況下的不定態(tài)傳播(x-state propagation)很大幾率會造成芯片潛在的非確定性(indeterministic)功能故障。因此,檢查不定態(tài)(X-state)在復(fù)位情況下的傳播極為重要。傳統(tǒng)的仿真器通常僅能在門級仿真(Gate Level Simulation)時檢查這些功能,但是門級仿真已經(jīng)屬于設(shè)計后期,且仿真效率低下,即便檢查出問題再修改,對項目進度來說也是壓力巨大。如果仿真器能夠在設(shè)計前期對RTL就能快速檢查不定態(tài)傳播,那么就可以節(jié)省更多后仿真時間。

當(dāng)然,還有很多其他的場景應(yīng)用,如基于多進程多核加速,基于異構(gòu)系統(tǒng)的仿真等,囿于文章篇幅這里不能一一展開,我們將在今后的文章中擇機敘述。

圖片

圖二 先進仿真器

數(shù)字仿真在浩瀚的科學(xué)海洋只是某個分支,但也是一個技術(shù)密集型的多學(xué)科的領(lǐng)域,它涉及到各種技術(shù),包括:編譯原理、數(shù)據(jù)庫、運籌學(xué)、形式邏輯、拓撲學(xué)、控制理論等。

在十四五計劃指導(dǎo)下,我們深深意識到科學(xué)技術(shù),尤其是EDA技術(shù),從來沒有像今天這樣深刻影響著國家的前途命運。芯華章在EDA仿真技術(shù)領(lǐng)域不斷探索進取,同時也深感肩負使命的迫切,我們非常愿意和業(yè)界專業(yè)人士交流分享,共同成為新時代科技創(chuàng)新的排頭兵!

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

    關(guān)注

    452

    文章

    49938

    瀏覽量

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

    關(guān)注

    14

    文章

    1011

    瀏覽量

    83552
  • 芯片驗證
    +關(guān)注

    關(guān)注

    5

    文章

    34

    瀏覽量

    47164
收藏 人收藏

    評論

    相關(guān)推薦

    手機STK功能仿真器的研究與實現(xiàn)

    以AVR 單片機和C++ builder 上位機軟件為開發(fā)平臺,構(gòu)建了STK 功能仿真器。在研究STK 技術(shù)原理的基礎(chǔ)上,給出了仿真器硬件、軟件的實現(xiàn)方法和思路,為STK 應(yīng)用開發(fā)人員提供有用參
    發(fā)表于 12-14 14:30 ?23次下載

    TKSB系列專業(yè)仿真器

    TKS仿真器B系列是在PHILIPS和Keil公司支持下推出業(yè)界領(lǐng)先的仿真器,采用當(dāng)前最先進的HOOKS仿真技術(shù),設(shè)計獨到的仿真性能處于全球
    發(fā)表于 04-19 22:17 ?36次下載

    使用仿真器的熱插拔功能進行調(diào)試

    在線 仿真器 是嵌入式開發(fā)中非常有用的調(diào)試工具,越來越多的嵌入式開發(fā)人員使用這種產(chǎn)品用來解決復(fù)雜的Bug。但是,一般情況下,使用仿真器有一個前提,需要將目標(biāo)板和仿真器
    發(fā)表于 06-07 15:58 ?39次下載
    使用<b class='flag-5'>仿真器</b>的熱插拔<b class='flag-5'>功能</b>進行調(diào)試

    什么是單片機仿真器_單片機仿真器有什么用_單片機仿真器怎么用

    本文首先介紹了單片機仿真器的原理及作用,其次介紹了單片機仿真器到底有什么用及功能特性,最后闡述了單片機仿真器的使用方法。
    發(fā)表于 04-16 09:49 ?1.7w次閱讀

    仿真器是什么

    仿真器(emulator)以某一系統(tǒng)復(fù)現(xiàn)另一系統(tǒng)的功能。與計算機模擬系統(tǒng)的區(qū)別在于,仿真器致力于模仿系統(tǒng)的外在表現(xiàn)、行為,而不是模擬系統(tǒng)的抽象模型。請參閱仿真和模擬詞條。
    的頭像 發(fā)表于 11-26 16:34 ?1.5w次閱讀

    米爾科技ULINKpro D 仿真器介紹

    ULINKpro D仿真器是ULINKpro仿真器的精簡版,擁有ULINKpro同樣高性能的調(diào)試功能,只是精簡了ULINKpro的ETM跟蹤功能。ULINKpro D
    的頭像 發(fā)表于 11-15 14:43 ?2606次閱讀
    米爾科技ULINKpro D <b class='flag-5'>仿真器</b>介紹

    仿真器原理、功能、特性介紹

    仿真器晶振旁有兩組 跳線用來切換內(nèi)部晶振和用戶板晶振,當(dāng)兩個短路塊位于仿真器晶振一側(cè)時,默認使用仿真板上的晶振(11.0592MHz), 當(dāng)兩個短路塊位于電容一側(cè)時,使用用戶板的晶振。
    發(fā)表于 01-27 10:48 ?5417次閱讀

    千兆級電路仿真器NanoSpice Giga實現(xiàn)比FastSPICE仿真器更快速度

    。NanoSpice Giga采用真正的SPICE引擎確保了先進工藝節(jié)點下芯片設(shè)計中功耗/漏電/時序/噪聲等的精度要求,并通過先進的并行仿真技術(shù)在不降低仿真精度的情況下實現(xiàn)高速電路
    發(fā)表于 05-13 17:59 ?2114次閱讀

    先進仿真器需要具備什么功能

    不同的特殊要求,先進仿真器需要具備各種場景下所需的功能。在大規(guī)模設(shè)計中,整個設(shè)計和驗證環(huán)境的編譯時間可能高達數(shù)十小時,這種速度在調(diào)試頻繁的設(shè)計初期是無法接受。因此,如果
    的頭像 發(fā)表于 03-26 17:37 ?2393次閱讀

    ADI公司基于USB的仿真器和基于USB的高性能仿真器產(chǎn)品亮點

    ADI公司基于USB的仿真器和基于USB的高性能仿真器產(chǎn)品亮點
    發(fā)表于 05-26 19:24 ?11次下載
    ADI公司基于USB的<b class='flag-5'>仿真器</b>和基于USB的高性能<b class='flag-5'>仿真器</b>產(chǎn)品亮點

    STM32-DAP仿真器的使用(1)

    目錄1 仿真器簡介2 硬件連接3 仿真器配置4 下載程序1 仿真器簡介 TIPS:JTAG包含SW2 硬件連接3 仿真器配置1 選擇DAP仿真器
    發(fā)表于 11-18 09:36 ?71次下載
    STM32-DAP<b class='flag-5'>仿真器</b>的使用(1)

    GTC2022大會亮點:cuQuantum能加速多種先進QC仿真器

    GTC2022大會亮點:cuQuantum能加速多種先進QC仿真器,非常適合量子計算的開發(fā)系統(tǒng)。
    的頭像 發(fā)表于 03-24 17:13 ?1733次閱讀
    GTC2022大會亮點:cuQuantum能加速多種<b class='flag-5'>先進</b>QC<b class='flag-5'>仿真器</b>

    電池仿真器功能和應(yīng)用

    電池仿真器是一種模擬真實電池電氣特性的電子儀器。關(guān)鍵特性包括功率、電流、電壓和等效串聯(lián)電阻(ESR)。它為類似于實際電池的設(shè)備提供所需的電壓、功率和電流。通常,出于測試目的,仿真器會更換便攜式設(shè)備內(nèi)
    的頭像 發(fā)表于 03-29 16:35 ?3522次閱讀
    電池<b class='flag-5'>仿真器</b>的<b class='flag-5'>功能</b>和應(yīng)用

    具有虛擬串口功能的DAPlink仿真器(SWD)

    電子發(fā)燒友網(wǎng)站提供《具有虛擬串口功能的DAPlink仿真器(SWD).zip》資料免費下載
    發(fā)表于 08-09 14:16 ?16次下載
    具有虛擬串口<b class='flag-5'>功能</b>的DAPlink<b class='flag-5'>仿真器</b>(SWD)

    TI磁感應(yīng)仿真器功能簡介

    電子發(fā)燒友網(wǎng)站提供《TI磁感應(yīng)仿真器功能簡介.pdf》資料免費下載
    發(fā)表于 08-28 09:48 ?0次下載
    TI磁感應(yīng)<b class='flag-5'>仿真器</b><b class='flag-5'>功能</b>簡介