色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

從零到一如何構建一款先進的數字仿真器呢?

路科驗證 ? 來源: 芯華章科技 ? 2023-03-25 09:16 ? 次閱讀

數字仿真器(Simulator)是一種大型EDA工業軟件,是數字驗證領域的基礎工具之一,也是為數不多的簽核(sign-off)級工具。其實歷史上第一款 EDA 軟件SPICE,就是從仿真開始的。可以說,EDA軟件從誕生之日起,就帶著強烈的仿真基因。因此,如果沒有一款獨立自主的數字仿真器,國產EDA實現對國外工具壟斷的打破就無從談起。

目前,行業主流的仿真器,諸如VCS,Xcelium, Questa等,都是國外EDA大廠花了數十年的時間開發、迭代而來的。這些軟件內部設計極其復雜、代碼量巨大,單單維護的團隊人數就可達數百人甚至上千人。由此可見,數字仿真器技術開發難度之大。

合抱之木,生于毫末;九層之臺,起于累土。2021年11月,國內系統級驗證EDA解決方案提供商芯華章發布了首款數字仿真器產品穹鼎GalaxSim,并得到中科院半導體、芯來科技等用戶一線項目部署。GalaxSim在開發過程中,結合國產EDA的迫切需求,選擇了合適的技術路線、開發模式,依托研發團隊的豐富EDA經驗及高效的工作,站在更高的技術起點上,用幾年的時間正在追趕國外幾十年的路。

現在我們梳理實踐所得和淺見,希望與行業同仁進行分享交流,幫助志在推動國內EDA數字仿真器進步的有志之士,提供一些可能的啟發和參考,共同建立良好的EDA發展生態。

本篇我們將以穹鼎GalaxSim為例,展示一款商用級別的數字仿真器從0到1的開發過程,包括商用仿真器的技術指標、開發模式、技術路線等方面。

1. 數字仿真器的技術要求

數字仿真器在驗證中發揮著舉足輕重的作用。判斷一款國產仿真器是否能真的商用,甚至可以與國際主流選擇的仿真器并駕齊驅, 一般要看它是否滿足以下四點硬性要求:

1

全面的SystemVerilog語法覆蓋

SystemVerilog可以說是最復雜的語言之一,而數字仿真器又是EDA工具中對SystemVerilog支持最全面的工具。

2

高精度

仿真器相對其他驗證工具,是sign-off級別的,因此要求仿真器必須嚴格按照事件驅動型的算法進行仿真調度,符合IEEE1800等標準。

3

高性能

仿真器的性能直接決定了用戶在驗證上的成本。假如某個優化可以使仿真速度提高2x, 那可以使原本一個月完成的回歸測試縮短到二周,從而給客戶省掉很大的驗證支出。

4

高可靠性

作為大型工業軟件,仿真器的設計極其復雜。一款大型軟件,涉及到的模塊非常多,參與的開發者也非常多。如何確保軟件質量可控,在客戶的超大設計上能跑幾十小時,甚至幾周不出現故障,是考驗一個仿真器能否真正商用的重要指標之一。因此,作為用戶sign-off 的工具,仿真器的故障率必須極低。即使出現故障,也能在很短的時間內排查并修復。

2.開發模式的選擇:瀑布式開發VS敏捷開發

2af98386-caa9-11ed-bfe3-dac502259ad0.png ?

編譯型數字仿真器的原理如上圖所示,它從verilog source到最終機器碼生成,中間經歷了多個環節。它既具備了Compiler的特點,同時又是一個數字電路仿真器。它集成了多種底層技術,涉及編譯、算法、圖論等知識。

盡管從概念上,我們可以把這個過程分解成不同的階段,但是在實際實現上,我們其實很難單獨把某一塊抽出來。以parser/elaboration階段為例,這個階段需要把RTL的語法解析出來。從功能上,它和后面的階段是不同的。然而,如果把它作為一個模塊獨立開發,就會面臨無法測試的困難。因為有些elaboration的結果,需要到了runtime階段才可能測出是否正確。

軟件開發有兩種模式,一種是傳統的瀑布式模式,把一個軟件劃分成若干模塊。每個模塊都定義好spec,然后分配給各個團隊開發;到了一定節點,再進行聯調。另一種是敏捷開發,就是快速將flow打通,進行不停地迭代,就像生物界胚胎的成長一樣,逐步將軟件迭代成熟。

2b220d1a-caa9-11ed-bfe3-dac502259ad0.png ?

上圖給出了兩種不同模式的區別。由于Simulator涉及到的環節非常多,有很多任務是有依賴關系的,只能串行開展。如果按照傳統的模式,不僅完成所有任務的總時間會變得很長,它還會導致最后聯調的時間非常的不確定。因為很多模塊的耦合性很強,很多問題需要等到最后所有模塊放在一起后才能發現。

基于此,為了降低研發風險,提高開發效率,GalaxSim的開發采用了敏捷開發模式。在敏捷開發模式下,每個任務可以不用一步到位,而是可以先做一個比較初級的版本,從v1開始進行迭代,直到vN。完成每個迭代的時間,是大大短于完成整個任務的時間的。這樣,依賴于該任務的其他任務就可以提前開展了。聯調階段的不確定也會大大降低,因為很多問題都可以在前期階段暴露出來。通過敏捷開發,芯華章的GalaxSim可以更合理地調配資源,并通過大量迭代,使得產品能達到商用要求。

3. 技術路線的選擇:守正、創新

從0到1,開發一款具備國產自主知識產權的仿真器,肯定不能僅僅做一個me too的產品,需要有創新、超越。我們面臨的問題是,做一個怎樣的仿真器,能在解決國產替代的基礎上,實現最終的超越?這里面既要守正,也要創新。

何謂守正?創新的前提首先要先解決有無的問題。上文提到,不管采用什么技術,仿真器都必須滿足四個指標:SystemVerilog、精度、性能、可靠性。因此,任何研發路線與技術的選擇,都必須滿足以上4個約束條件。

與此同時,我們吸取主流數字仿真器的歷史研發教訓,針對國內使用環境進行客制化創新。比如在SystemVerilog方面,很多主流仿真器的支持其實并不是一步到位完成的,而是在一系列并購后集成進來的。GalaxSim在這方面,可以發揮后發優勢,采用全新的設計框架,更好實現SystemVerilog的豐富語法,讓整個compile flow無縫對接,避免不斷“打補丁”帶來的技術冗余與滯澀,提供更完整、一體化的驗證解決方案。

以性能為例,runtime是仿真器的一項重要技術指標。大多數國際主流仿真器在過去數十年都做了大量的工作。然而,compile time 也是性能的一部分。近5-10年,隨著設計規模越來越大,compile time 也日益成為性能瓶頸。而且,compile time 和 run time常常是矛盾的。GalaxSim使用創新底層架構,在提高runtime性能的同時,兼顧了compile time的控制。

4. “蝶變”:GalaxSim的迭代歷程

敏捷開發意味著快速的軟件迭代。

GalaxSim 的迭代歷程,比較類似于一個胚胎的成長過程。胚胎每一步的變化并不大(比如細胞分裂),然而,經過足夠的變化,最終就會由量變到質變,就像蝶變一樣。

如何確保GalaxSim的迭代是按照我們設計的方向,而不會走偏呢?這里面,軟件的迭代又非常像生物的進化,我們需要設計好一個目標(生存條件),以及一個進化環境。根據前文所述,GalaxSim從0到1的第一階段目標,是要演變成一個至少滿足4個約束條件的仿真器。

4.1

以終為始,設計迭代目標

第一階段我們會以終為始,根據上文提到的四點對仿真器的硬性要求,分別制定多維度可量化的迭代目標,通過不斷的調試達成各項指標。

4.2

進化環境的搭建

如何確保軟件向著我們設置的目標進化,而不是走偏,進化環境至關重要。芯華章的研發團隊為此專門搭建了一套內部CICD flow, 包含了回歸測試系統,這個系統包含了大量的測試用例,各種測試基準(benchmark)。GalaxSim在這些用例中的表現結果會被實時監控。尤其是性能方面,我們的系統引入了類似銀行的記賬功能。每個研發環節導致的slowdown都會被記錄備案,每一筆帳都可以追溯。這些嚴苛的環境,確保了軟件最終的性能及質量。

值得一提的是,這套系統是我們在第一天就開始著手搭建的,與GalaxSim的核心代碼是同步開發的。

4.3

Galaxsim的主要迭代節點:

2b50149e-caa9-11ed-bfe3-dac502259ad0.png ? ? ? ? ? ? ? ? ? ? ? ? ?

5. 現狀:已獲得一線項目部署

目前GalaxSim已經在中科院半導體所、芯來科技等若干客戶的一線項目中得到應用,性能符合客戶預期。

6. 總結

在未來,GalaxSim的進化還會繼續,并擁抱更多的創新,最終實現國產數字仿真器的超越。







審核編輯:劉清

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

    關注

    14

    文章

    1017

    瀏覽量

    83721
  • EDA技術
    +關注

    關注

    12

    文章

    173

    瀏覽量

    36906
  • SPICE
    +關注

    關注

    6

    文章

    182

    瀏覽量

    42563
  • VCS
    VCS
    +關注

    關注

    0

    文章

    79

    瀏覽量

    9600

原文標題:解碼國產EDA數字仿真器系列之一 | 從零到一 如何構建一款先進的數字仿真器

文章出處:【微信號:Rocker-IC,微信公眾號:路科驗證】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    :搭建屬于自己的海外IP代理池

    搭建屬于自己的海外IP代理池是個復雜但具有挑戰性的任務,它涉及多個步驟和考慮因素。
    的頭像 發表于 11-15 08:15 ?347次閱讀

    光耦仿真器簡介

    電子發燒友網站提供《光耦仿真器簡介.pdf》資料免費下載
    發表于 08-28 11:45 ?0次下載
    光耦<b class='flag-5'>仿真器</b>簡介

    TI磁感應仿真器功能簡介

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

    仿真器的使用方法有哪些

    仿真器種用于模擬和測試電子系統、軟件或硬件的工具。它可以幫助工程師在實際硬件或軟件部署之前,對設計進行驗證和調試。 仿真器的基本概念 仿真器
    的頭像 發表于 08-22 09:16 ?822次閱讀

    設計一款基于opa847的高通濾波仿真達不到效果怎么解決?

    各位好,目前打算設計一款基于opa847的高通濾波,放大倍數為40dB,截止頻率為20kHz,通過書籍資料上的公式計算出的結果進行仿真,似乎達不到效果,想請問各位該如何解決?
    發表于 08-19 07:18

    用ST-LINK仿真器IAR調試STM8板子,仿真器總是報錯如何解決?

    Thu Feb 23, 2017 13:48:17: Failed to get execution status: SWIM error [30004]: Comm timeout ,之前沒用過STM8,新買仿真器仿真器總是出現這個錯誤,如何解決
    發表于 05-08 07:46

    安森美推出一款基于PLECS的具有獨特功能的領先在線仿真工具

    Elite Power仿真工具是安森美(onsemi)推出的一款基于PLECS的具有獨特功能的領先在線仿真工具,適用于軟/硬開關應用,使工程師在開發周期的早期階段,
    的頭像 發表于 03-20 09:58 ?664次閱讀

    fpga仿真器是什么?它有哪些優勢?

    FPGA仿真器種用于模擬FPGA(現場可編程門陣列)硬件行為的軟件工具。它通過模擬FPGA內部的邏輯電路、時序和接口等,幫助工程師在FPGA設計過程中進行功能驗證和性能測試。FPGA仿真器在FPGA開發流程中扮演著至關重要的
    的頭像 發表于 03-15 15:15 ?1727次閱讀

    fpga原型驗證平臺與硬件仿真器的區別

    FPGA原型驗證平臺與硬件仿真器在芯片設計和驗證過程中各自發揮著獨特的作用,它們之間存在明顯的區別。
    的頭像 發表于 03-15 15:07 ?1106次閱讀

    fpga仿真器接口定義

    FPGA(Field-Programmable Gate Array,現場可編程門陣列)仿真器接口的定義主要依賴于仿真器的具體設計和所支持的通信協議。在FPGA的設計和仿真過程中,接口的定義對于實現與
    的頭像 發表于 03-15 14:01 ?1238次閱讀

    利用UDE仿真器調試QSPI讀寫EEPROM過程中發現仿真器中觀察的全局變量值不對,沒有讀到數據怎么解決?

    在利用UDE仿真器調試QSPI讀寫EEPROM過程中發現,單步運行能夠讀取到數據,如果全速運行,示波器中讀取數據正確,但仿真器中觀察的全局變量值不對,沒有讀到數據。請問有人遇到過嗎,如何解決?
    發表于 02-18 08:14

    光耦仿真器的優勢有哪些

    光耦仿真器與業內最常見的光耦合引腳對引腳兼容,有助于無縫集成現有設計中,同時提供相同的信號行為。
    的頭像 發表于 01-30 15:07 ?566次閱讀

    Nutiny-evb-m451開發板的仿真器是否可以出調試串口?

    仿真器的接口部分有ICETX和ICERX兩根線,端和仿真器CPU的串口相連,另端和M453相連,請問,仿真器是否可以通過USB接口虛擬串
    發表于 01-17 06:11

    openocd怎么適配個新的Flash驅動

    我用的是蜂鳥仿真器,芯片內核是芯來的risc-v內核,目前這個芯片的flash在openocd上沒有對應的驅動,我想請教下怎么樣讓openocd可以支持這個flash驅動,這樣我可以在IDE上把程序運行
    發表于 01-15 07:56

    xds100v3仿真器引腳定義

    xds100v3仿真器是德州儀器(Texas Instruments)推出的一款用于嵌入式系統開發和調試的仿真器。它具有良好的性能和穩定性,可以提供準確的調試和仿真功能,方便開發人員開
    的頭像 發表于 01-05 13:40 ?4703次閱讀
    主站蜘蛛池模板: 中文字幕久久熟女人妻AV免费| 最近2019年日本中文免费字幕| 野花视频在线观看免费| 2021精品乱码多人收藏| 打开双腿狠狠蹂躏蜜桃臀| 果冻传媒MV免费播放在线观看| 麻豆官网入口| 视频成人app永久在线观看| 怡春院国产精品视频| 陈红下面又紧又小好爽| 好色的妹妹| 日本高清无人区影院| 亚洲中文字幕一二三四区苍井空 | 忘忧草秋观看未满十八| 云南14学生真实初次破初视频 | 国产精品AV视频一二三区| 久久免费高清| 素人约啪第五季| 91交换论坛| 国产最新地址| 披黑人猛躁10次高潮| 一级做a爰片久久毛片一| 高清无码中文字幕在线观看视频| 久久综合色一综合色88| 香蕉免费高清完整| 拔擦拔擦8X永久华人免费播放器| 久久re这里精品23| 婷婷亚洲AV色香蕉蜜桃| aaa级黄影片| 久久精品亚洲| 亚洲大爷操| 大桥未久电影在线| 免费a视频在线观看| 亚洲理论在线a中文字幕| 俄罗斯mm| 欧美性FREE玩弄少妇| 在线综合 亚洲 欧美| 国产亚洲精品久久久久久国 | 亚州综合网| 动漫美女人物被黄漫在线看| 麻豆精品传媒2021网站入口|