chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

3天內不再提示

利用硬件輔助工具加速芯片前端設計的功能性驗證階段

ruikundianzi ? 來源:無錫亞科鴻禹電子有限公 ? 作者:白建東 ? 2022-10-10 16:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

近年來,芯片規(guī)模,功能復雜度以及集成度的不斷增加,驗證工作面臨著非常大的挑戰(zhàn)。軟件仿真(Simulation),FPGA原型驗證(FPGA Based Prototyping)和硬件仿真加速(Emulation)這三種有效的功能驗證的方法,在驗證流程中發(fā)揮著非常重要的作用。

軟件仿真有著出色的信號可見性,FPGA原型驗證有著極強的實時性和系統(tǒng)開發(fā)性,硬件仿真加速則兼具了信號可見性,可調試性,以及仿真加速的能力,這幾種驗證方法在芯片前端設計的功能性驗證階段發(fā)揮著重要的作用。FPGA原型驗證和硬件仿真加速作為硬件輔助驗證的兩種手段,在芯片設計的過程中相輔相成,互為補充,為芯片成功流片保駕護航。

硬件仿真加速階段,一般用于代碼還不很成熟的開發(fā)的中后期階段,需要能夠提供更大的系統(tǒng)容量,更方便的調試手段和方法,主要用來驗證設計的RTL代碼,兼顧軟硬件協同驗證和軟件開發(fā)。而FPGA原型驗證階段一般應用于代碼比較成熟的的偏后階段,主要是做軟件開發(fā)和軟硬件協同驗證。

ffdc370e-485b-11ed-a3b6-dac502259ad0.png

圖一 硬件輔助驗證在流程中的位置

00097c78-485c-11ed-a3b6-dac502259ad0.png

幾種不同的仿真驗證手段的效果對比

(一)基于硬件輔助驗證工具的仿真加速方法

一般意義上,我們將FPGA原型驗證和硬件仿真加速都歸為硬件輔助驗證手段,比較有效和最為常見的仿真加速方式分為:軟件仿真(Software Simulation),周期精確級的仿真加速(Cycle Based Simulation ),事務級的仿真加速(Transaction Based Simulation),和完全可綜合的仿真加速(Synthesizable Simulation)這幾種方法。通過不同的仿真加速方法,對驗證速度能夠有接近千倍的提升。

第一種,軟件仿真(Software Simulation),最常見的仿真方法,將Testbench和DUT都在仿真軟件中運行。最主流的仿真軟件的算法機制大部分都是“基于事件的算法”這種算法更適合處理離散的時間,狀態(tài)和變量。仿真器首先在編譯數據結構的時候會建立一個事件隊列,仿真從時間0開始,在時間0的所有事件隊列處理完畢以后,才可以進入下一個時間周期。而在同一個時間周期內的事件在“硬件”上都是并行的。

00254660-485c-11ed-a3b6-dac502259ad0.png

圖二 Simulator仿真的結構

0034fb00-485c-11ed-a3b6-dac502259ad0.png

圖三 基于事件的Simulator算法

第二種:周期精確級的仿真加速(Cycle Based Simulation Acceleration )

我們在針對軟硬件聯合仿真的方式做說明之前,需要對SCE-MI/MII(標準協同仿真建模接口)做一下說明,該接口是為了標準化軟件模型和硬件平臺之間的通訊而定義的,屬于Accellera標準,目的是使用者將DUT和Testbench做連接,通過事務器模型(Transactor)能夠輕松的實現互聯。下圖是該協議的基本結構說明。

00497f12-485c-11ed-a3b6-dac502259ad0.png

圖四 SCE-MII基本結構

周期精確級的仿真加速,是通過專用的硬件來運行用戶設計,通過仿真軟件運行Testbench,根據專用的軟硬件協同工作的協議來進行軟件硬件側的數據轉換和交付,從而實現軟件仿真加速的一種方法。

該方法在軟硬件兩側交互的周期中,嚴格按照時間單位推進每一步的協議轉換,并且采用雙握手的方式進行通訊確認,這將產生大量的軟硬件之間的交互開銷,所以在加速的效果上不是十分的理想。這種方式的優(yōu)點是針對一些非標協議的轉換和時鐘同步結構的設計有很大的靈活性。

007a036c-485c-11ed-a3b6-dac502259ad0.png

圖五:周期精確級的仿真加速結構

008e3364-485c-11ed-a3b6-dac502259ad0.png


圖六:雙握手協議示意

第三種:事務級的仿真加速(Transaction Based Acceleration)

事務級的仿真加速是將DUT和部分Testbench運行在硬件輔助驗證工具之中,通過事務器與仿真器中運行的Testbench進行通訊,可以實現將無時序激勵變?yōu)橛袝r序功能的交互。這是因為軟件側的一個操作所花費的時間在一般情況下會遠大于硬件側的時鐘周期。

當發(fā)送一個帶時序的激勵時,軟件側需要花更多的時間進行時序的構建,會在一定程度上影響軟硬件協同仿真平臺的性能。所以在軟硬件驗證過程中,事務級仿真加速能夠很好的解決這類型的問題。

比如對于一個擁有AXI或者AHB接口的DUT,軟件側需要按照AXI或者AHB的時序規(guī)則構建激勵,而擴展了無時序激勵變有時序功能時,僅需要將AXI或者AHB的總線數據按順序發(fā)送至硬件側,硬件側可以自動完成時序的構建,這樣的功能結構能夠大幅度提高仿真的效率。

00a9412c-485c-11ed-a3b6-dac502259ad0.png

圖七:事務級的仿真加速結構

第四種:完全可綜合的仿真加速(Synthesizable Testbench Simulation )

00cea00c-485c-11ed-a3b6-dac502259ad0.png

圖八:完全可綜合的仿真加速結構

這種仿真加速方式相較于Transaction的仿真加速,是需要將用戶的DUT和測試激勵完全綜合進仿真加速器,這樣可以大大的減少因為軟硬件的交互而產生的通訊開銷,從而可以極大地提高仿真速度。

不同的軟硬件結合的仿真加速方式能夠帶來不同的加速比,周期精確級的仿真加速因為通訊開銷帶來的影響,相較于軟件仿真基本上可以做到5-100倍的仿真加速;基于事務級的仿真加速則能夠為用戶帶來20-1000倍的加速體驗,尤其適用于各種專用的算法實現,比如:視頻編解碼的處理,交互數據量巨大的通訊芯片驗證等。而完全可綜合的仿真加速則可以針對全流程的設計驗證提供最有效的仿真加速手段。

00e84f5c-485c-11ed-a3b6-dac502259ad0.png

圖九:幾種不同的仿真加速的加速比

(二)利用硬件輔助驗證工具實現混合仿真

基于硬件輔助驗證的混合仿真是指利用硬件仿真加速器和虛擬原型同時運行SoC的不同設計模塊,在SoC整體架構硬件實現之前提供嵌入式軟件和硬件的協同仿真,從而加速SoC的研發(fā)進程。

可以實現硅前硬件和嵌入式軟件協同混合驗證,為系統(tǒng)架構的優(yōu)化、嵌入式軟件以及RTL的早期開發(fā)提供準確,即時的仿真驗證環(huán)境,有力推動產品開發(fā)左移。

一般的混合仿真系統(tǒng)由Qemu宿主機和硬件仿真加速系統(tǒng)兩部分構成,其中,宿主機的操作系統(tǒng)中會運行基于開源環(huán)境的目標嵌入式處理器和基于Qemu Virtual Linux Platform的內核驅動程序以及用戶態(tài)的驅動程序。

通過專有協議實現軟件和用戶設計的通訊,將運行硬件仿真加速工具的宿主機和硬件平臺,通過TLM(Transaction Level Model)的傳輸模型,將用戶設計的IP和實現硬件結構的功能子卡進行聯合,從而實現一個完整的混合仿真系統(tǒng)。

01105f56-485c-11ed-a3b6-dac502259ad0.png

圖十:混合驗證工作流程

(三)集成高效的并行邏輯綜合工具提升硬件輔助驗證效率

設計驗證過程綜合時間長,迭代頻率高,需要設計工程師和驗證工程師花費大量的工作時間和精力。近年來,隨著多種圖像處理器,人工智能加速算法,大數據采集,多處理器應用等應用方向的芯片設計增加,各種GPU,TPU,XPU等大邏輯量的IP被集成至單顆芯片內,造成設計、仿真和驗證的數據量出現了指數級的增長,所以綜合和仿真等過程都展現出“過長的編譯綜合時間”、“編譯迭代耗時過長”等情況,工程師大量的時間浪費在了等待綜合編譯上。

流程節(jié)點不同,存在不同的綜合策略需求。硬件仿真加速階段,一般用于代碼還不很成熟的開發(fā)的中后期階段,需要能夠提供更大的系統(tǒng)容量,更方便的調試手段和方法,主要用來驗證設計的RTL代碼,兼顧軟硬件協同驗證和軟件開發(fā)。而原型驗證階段一般應用于代碼比較成熟的的偏后階段,主要是做軟件開發(fā)和軟硬件協同驗證。

在以上兩個流程階段,綜合加速的需求各有側重點。硬件仿真加速階段代碼的成熟度不高,迭代頻繁,需要更高速的編譯速度來提高迭代效率,以及對RTL代碼的忠實的一致反映以便于調試;而原型驗證階段代碼相對成熟,需要產生出更高效的功能等效系統(tǒng)來提高運行速度。

高效并行綜合是將用戶的RTL代碼按照不同模組分類,分別調用綜合工具,同時進行綜合,從而實現快速綜合的目的,按照不同的階段,可以設置不同的綜合流程,可以實現“Top-down”和“Bottom-up”兩種方式;支持多種的邏輯綜合器,比如:Xilinx Vivado, Synposys Synplify和其他的一些開源的邏輯綜合器,支持GUI和Batch模式,用戶可以靈活選擇功能展現模式;可以支持模組并行化處理,既支持本地多線程并行處理,也可以有效的支持多種作業(yè)調度系統(tǒng);可以設置不同的參數來制定不同的綜合策略,從而實現綜合效率的最大化,比如:面積優(yōu)先,速度優(yōu)先,最大化、小化優(yōu)先等策略。

通過并行邏輯綜合方案可以提供出色的自動化流程,大大縮短編譯所需時間,提高整體的效率和利用率,極大的提高生產率。

012c74a2-485c-11ed-a3b6-dac502259ad0.png

圖十一:并行綜合處理界面

(四)高效的在線邏輯分析工具提升硬件輔助驗證效率

FPGA產品自帶的在線邏輯分析儀工具(ILA 或 SignalTap)可以為FPGA提供觀測信號的便捷性,但因為其本身的屬性問題,存在了諸多的短板,例如:數據波形存儲在片上的RAM中,需要均衡用戶設計占用的存儲資源和用于調試的存儲資源;受限于FPGA片上RAM的容量,對待抓取的信號的位寬和深度都有限制;待抓取波形需要從FPGA的RAM資源中通過JTAG導出到工作站中,由于傳輸速度過慢,當數據量巨大時,傳輸時間占用更加的明顯;芯片邏輯容量增加,原廠的邏輯分析儀無法滿足調試需求。

硬件輔助驗證工具中的專用邏輯分析儀有效的解決了以上的幾個問題。

1)波形數據存儲在FPGA外部存儲,幾乎不占用FPGA的片上ram資源;FPGA器件因為其工藝特殊性,一般會集成一些RAM資源在FPGA種,但是該種資源的深度和位寬都非常的小,無法滿足超大容量的存儲需求,亞科鴻禹新研發(fā)的hsTrace,在系統(tǒng)內部集成有專用的外置存儲空間,可以完全不占用FPGA的RAM資源。

2)外接存儲容量最高可支持16GB的存儲空間,極大地提高了波形數據的采樣大?。挥布o助驗證工具外置專用的存儲空間,可以使數據存儲和讀取的資源加大,也就意味著可以提供更深的存儲空間和更寬的存儲位寬,為解決當下驗證功能的需求提供了基礎。

3)波形數據的傳輸通過網口(或PCIE)實現,傳輸速率也得到了極大的提升。FPGA原廠提供在線邏輯分析儀的調試通道是通過JTAG接口完成的,JTAG的最大傳輸速度只能到12Mhz,我們選用的PCIE的傳輸帶寬能夠到5Gbps,這為大數據量吞吐提供了硬件通道。

4)支持多顆FPGA的硬件輔助驗證工具,實現多FPGA的系統(tǒng)級debug。

5)每顆FPGA可以設置4K*10組的采樣信號量;通過專用的傳輸接口和存儲器,可以針對單顆FPGA的采樣信號進行增加,這意味著可以有更多和更深的信號被采樣到,也就是可以完成更多數量的觀測,適應當前的復雜協議的應用。

(五)硬件輔助驗證的發(fā)展趨勢

硬件輔助驗證工具可以有效加速軟件仿真速度,用于驗證設計的RTL代碼、軟硬件協同驗證和軟件開發(fā)。近些年,硬件輔助驗證出現了一些明顯的發(fā)展趨勢:

1)企業(yè)級和桌面化的硬件仿真加速需求快速增長。當前,以GPU,5G,存算一體為代表的超大型的集成電路設計層出不窮,對系統(tǒng)仿真速度和代碼快速簽核提出了大量的需求。由于數據計算量大,用戶測試場景復雜所以需要能夠在超大型的硬件仿真加速工具下進行用戶設計和驗證環(huán)境的部署。

企業(yè)級的硬件仿真加速器可以為用戶提供指數級的邏輯驗證容量,高效的糾錯能力,信號可見和功耗分析的特征。桌面化的硬件仿真加速器可以為用戶提供混合驗證環(huán)境,能夠為各類型的CPU用戶,提供更早期的環(huán)境驗證。企業(yè)級硬件仿真加速器側重在多用戶,多區(qū)域訪問的特性,桌面化能夠提供更加便利的調試手段,所以兩種不同的應用方向各自發(fā)展。

2)硬件仿真加速器的專用化越來越明顯。加密算法,WIFI應用等各種測試數據量巨大,而算法相對單一的用戶,對仿真需求增大。而傳統(tǒng)的仿真加速器并不能非常有效的解決這類用戶的問題。所以,針對各類型應用而專用的仿真加速器產品非常適合這種類型的應用。集中固定的硬件擴展卡或者專用的降速橋都可以為某些類型的應用提供完整的加速環(huán)境。

3)全流程驗證需要在硬件仿真加速工具中完成。早期的硬件仿真加速器出現在代碼設計的后端,用于確認代碼功能的正確性?,F在隨著設計的時間需求進坡度增加,越來越多的流程會被集成至硬件仿真加速工具中來實現。早期的功耗分析,系統(tǒng)環(huán)境搭建,邏輯調試等功能都逐漸的被集成至硬件仿真加速工具中。

4)仿真和驗證環(huán)境有統(tǒng)一性的趨勢。仿真代碼和用戶芯片設計代碼是分開處理的,涉及到一些無法綜合的代碼可以分別在仿真和驗證場景中實現,但是用戶期望的是設計代碼和測試代碼保持一致。所以硬件仿真加速工具會增加大量的功能屬性用于統(tǒng)一仿真代碼和設計代碼,從而減少因為設計不一致而造成的功能風險。

5)需要支持多種的軟件仿真工具。因為硬件仿真加速器的歷史原因,各家的工具分別只能支持自己家的軟件仿真工具,而對于不同的用戶來說,有一些訴求是能夠支持不同家的仿真工具的。

6)待驗設計的運行頻率逐漸升高。硬件仿真加速器的運行頻率,因為軟硬件交互的原因,會產生大量的通訊開銷,會對待驗設計的運行速率有很大的影響,絕大多數情況下只能運行在幾百K-幾兆Hz,隨著各種專用算法的出現,驗證的實時性也相當的重要。所以對于硬件仿真加速器來說,能夠提供比較實時的運行頻率,是非常關鍵的。




審核編輯:劉清

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

    關注

    9

    文章

    431

    瀏覽量

    28142
  • RTL
    RTL
    +關注

    關注

    1

    文章

    394

    瀏覽量

    62658
  • AHB總線
    +關注

    關注

    0

    文章

    18

    瀏覽量

    10086
  • DUT
    DUT
    +關注

    關注

    0

    文章

    194

    瀏覽量

    13453

原文標題:利用硬件輔助驗證工具加速功能仿真

文章出處:【微信號:IP與SoC設計,微信公眾號:IP與SoC設計】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    中興通訊聯合成立開放代理式人工智能基金會

    當AI從輔助工具加速進化為行動主體的轉折時刻,智能體技術發(fā)展迎來重要里程碑。
    的頭像 發(fā)表于 02-03 16:52 ?1277次閱讀

    嵌入式軟件測試與專業(yè)測試工具的必要深度解析

    MSO?:提供電源完整測試、時序分析、數字信號驗證硬件調試功能,以及中斷處理分析、代碼執(zhí)行流程跟蹤等軟件調試能力。 測試工具選型建議選擇
    發(fā)表于 09-28 17:42

    如何驗證硬件冗余設計的有效?

    硬件冗余設計的核心目標是應對單點故障、保障系統(tǒng)連續(xù)運行,其有效驗證需圍繞 “故障發(fā)生時的切換能力、數據完整、業(yè)務連續(xù)” 三大核心指標展
    的頭像 發(fā)表于 09-18 16:36 ?1242次閱讀
    如何<b class='flag-5'>驗證</b><b class='flag-5'>硬件</b>冗余設計的有效<b class='flag-5'>性</b>?

    如何秒級實現接口間“冪等”補償:一款輕量級仿冪等數據校正處理輔助工具

    導語 本文分析了在網絡超時場景下,RPC服務調用數據一致的問題,對于接口無冪等、接口冪等失效情況下,對異常數據快速處理做了分析思考和嘗試,開發(fā)了一款輕量級仿冪等數據校正處理輔助工具。該工具可以
    的頭像 發(fā)表于 09-15 16:55 ?893次閱讀
    如何秒級實現接口間“冪等”補償:一款輕量級仿冪等數據校正處理<b class='flag-5'>輔助工具</b>

    有哪些工具可以輔助進行電能質量在線監(jiān)測裝置的數據驗證?

    輔助電能質量在線監(jiān)測裝置數據驗證工具可分為標準源設備、現場校驗儀器、數據分析軟件、自動化測試平臺四大類,覆蓋從信號模擬、實時監(jiān)測到數據驗證的全流程。以下結合行業(yè)實踐與搜索資源,詳細說
    的頭像 發(fā)表于 09-04 12:07 ?548次閱讀
    有哪些<b class='flag-5'>工具</b>可以<b class='flag-5'>輔助</b>進行電能質量在線監(jiān)測裝置的數據<b class='flag-5'>驗證</b>?

    如何驗證硬件加速是否真正提升了通信協議的安全?

    驗證硬件加速是否真正提升通信協議的安全,需從 安全功能正確、抗攻擊能力增強、安全性能適配、合規(guī)一致
    的頭像 發(fā)表于 08-27 10:16 ?1142次閱讀
    如何<b class='flag-5'>驗證</b><b class='flag-5'>硬件加速</b>是否真正提升了通信協議的安全<b class='flag-5'>性</b>?

    有哪些方法可以確保硬件加速與通信協議的兼容?

    ? 確保硬件加速與通信協議的兼容,核心是從 硬件選型、協議標準匹配、軟硬件接口適配、全場景測試驗證 四個維度建立閉環(huán),避免因
    的頭像 發(fā)表于 08-27 10:07 ?1088次閱讀

    如何利用硬件加速提升通信協議的安全?

    產品實拍圖 利用硬件加速提升通信協議安全,核心是通過 專用硬件模塊或可編程硬件 ,承接軟件層面難以高效處理的安全關鍵操作(如加密解密、認證
    的頭像 發(fā)表于 08-27 09:59 ?979次閱讀
    如何<b class='flag-5'>利用</b><b class='flag-5'>硬件加速</b>提升通信協議的安全<b class='flag-5'>性</b>?

    基于fNIRS評估驗證功能性電刺激FES的神經效應

    中風、步態(tài)障礙與功能性電刺激FES1.正常步態(tài)周期相位說明(圖1)支撐相(60%周期):腳跟觸地(Heelstrike)→承重反應(Loadingresponse)→支撐中期(Mid-stance
    的頭像 發(fā)表于 08-04 19:58 ?4745次閱讀
    基于fNIRS評估<b class='flag-5'>驗證</b><b class='flag-5'>功能性</b>電刺激FES的神經效應

    功能性電刺激(FES)—神經假肢

    患者行走,1962年正式命名為“功能性電刺激”。經過六十余年發(fā)展,其應用已從簡單步態(tài)輔助拓展至復雜上肢功能重建、呼吸調控等多領域,成為現代神經康復的核心技術之一。功
    的頭像 發(fā)表于 06-26 20:29 ?9116次閱讀
    <b class='flag-5'>功能性</b>電刺激(FES)—神經假肢

    推動硬件輔助驗證平臺增長的關鍵因素

    硬件加速和基于FPGA的原型設計誕生于1980年代中期,開發(fā)者將當時初露頭角的現場可編程門陣列(FPGA)率先應用于硅前設計的原型驗證,由此催生了一種全新的驗證工具,打破了軟件仿真的主
    的頭像 發(fā)表于 06-11 14:42 ?978次閱讀
    推動<b class='flag-5'>硬件</b><b class='flag-5'>輔助</b><b class='flag-5'>驗證</b>平臺增長的關鍵因素

    芯片前端設計中常用的軟件和工具

    前端設計是數字芯片開發(fā)的初步階段,其核心目標是從功能規(guī)格出發(fā),最終獲得門級網表(Netlist)。這個過程主要包括:規(guī)格制定、架構設計、HDL編程、仿真
    的頭像 發(fā)表于 05-15 16:48 ?1611次閱讀

    硬件輔助驗證(HAV) 對軟件驗證的價值

    硬件輔助驗證 (HAV) 有著悠久的歷史,如今作為軟件驅動驗證的必備技術,再度受到關注。 RISC-V 可能是說明這一點的最好例子。HAV 能夠執(zhí)行多個周期的軟件驅動
    的頭像 發(fā)表于 05-13 18:21 ?2007次閱讀

    DevEco Studio AI輔助開發(fā)工具兩大升級功能 鴻蒙應用開發(fā)效率再提升

    HarmonyOS應用的AI智能輔助開發(fā)助手——CodeGenie,該AI助手深度集成在DevEco Studio中,提供鴻蒙知識智能問答、鴻蒙ArkTS代碼補全/生成和萬能卡片生成等功能,提升了開發(fā)效率,深受廣大
    發(fā)表于 04-18 14:43

    求助,關于iMX DDR3寄存器編程輔助問題求解

    我們目前正在使用 iMX6UL DDR 寄存器編程輔助工具為 U-Boot 生成 DCD 表。我們的設備使用的是 MT41K128M16JT-107,即 DDR3-1866,這意味著它的時鐘周期頻率
    發(fā)表于 03-27 07:16