亚洲国产精品久久久久婷蜜芽,caoporn国产精品免费视频,久久久久久久久免费看无码,国产精品一区在线观看你懂的

歡迎訪問深圳市中小企業(yè)公共服務(wù)平臺電子信息窗口

EDA如何支持RISC-V?

2025-07-29 來源:電子信息產(chǎn)業(yè)網(wǎng)
149

關(guān)鍵詞: RISC-V 驗證方法學(xué),工具鏈,EDA 開源芯片

RISC-V具有高度可定制、模塊化、場景多樣的特點,在為計算產(chǎn)業(yè)帶來高效、靈活、開放、易協(xié)作等一系列優(yōu)勢的同時,也對芯片的驗證調(diào)試帶來新的考驗。在近日舉行的第五屆RISC-V中國峰會(以下簡稱“峰會”)上,如何從IP、EDA等設(shè)計工具層面,提升RISC-V處理器的開發(fā)、驗證和調(diào)試效率,以充分發(fā)揮RISC-V指令集的優(yōu)勢,成為業(yè)界關(guān)心的焦點。

新的驗證方法學(xué):提升RISC-V處理器驗證效率和質(zhì)量

仿真驗證是芯片實現(xiàn)設(shè)計目標和功能正確的必備步驟,直接影響芯片設(shè)計的成功率。在峰會展區(qū),記者在思爾芯、芯華章等EDA企業(yè)展臺都看到了原型驗證平臺。據(jù)思爾芯工作人員介紹,基于FPGA原型驗證平臺和操作系統(tǒng),RISC-V設(shè)計企業(yè)可以將寫好的代碼通過FPGA進行硬件實現(xiàn)和模擬,繼而開展功能開發(fā)和Debug,完整這套流程后就可以進行客戶演示?!斑@樣的好處有兩個,一是給客戶信心;二是客戶可以將這套完整的、堪比流片后的環(huán)境融入自己的系統(tǒng),做進一步的開發(fā)。”

思爾芯原型驗證平臺

目前,RISC-V處理器常用的仿真框架是協(xié)同仿真驗證,其原理是將待測設(shè)計(DUT)與參考模型(REF)一起仿真。DUT每執(zhí)行一條指令,REF也執(zhí)行一條指令,并且對比二者執(zhí)行指令之后的結(jié)果是否一致。

但RISC-V的技術(shù)趨勢,正在給協(xié)同仿真驗證帶來挑戰(zhàn)。首先是RISC-V指令集的復(fù)雜度迅速膨脹。比如RVA23有33個必選擴展、830頁指令集手冊,相比2019年已經(jīng)翻倍,且不同的RISC-V擴展有不同的驗證需求,導(dǎo)致驗證難度提升。其次是處理器的電路仿真速度正在放慢。尤其是最常使用的軟件仿真,其速度隨著處理器規(guī)模擴大而大幅下降。

為了改善芯片驗證質(zhì)量與效率,產(chǎn)業(yè)界轉(zhuǎn)向基于Emulator(硬件仿真器)、FPGA的硬件仿真平臺,其特點在于將REF部署在Host環(huán)境,以軟硬件(RTL-Host)通信為核心,利用PCIE、以太網(wǎng)、InfiniBand等連接手段在軟件(Host側(cè))和硬件(RTL側(cè))之間傳遞信息,實現(xiàn)了對電路仿真的數(shù)量級加速。比如香山團隊長期維護的DiffTest框架,已經(jīng)支持硬件仿真加速。

但香山團隊發(fā)現(xiàn),RTL-Host架構(gòu)帶來的通信開銷,限制了DiffTest對香山等復(fù)雜處理器的驗證加速效果。面向這一瓶頸,香山團隊提出了SVM(可綜合驗證方法),把整個REF映射到FPGA上或者Emulator上,使REF與DUT的通信都在片上完成,從而避免通信開銷。

但SVM架構(gòu)的構(gòu)建,也面臨一些挑戰(zhàn)。對此,香山團隊進行了一系列技術(shù)和模型創(chuàng)新。

一是如何確保REF的電路代碼實現(xiàn)。REF通常為軟件指令集模擬器,如何用硬件描述和實現(xiàn),尚處于空白。香山團隊采用了語義代碼遷移技術(shù),通過構(gòu)造指令操作樹,將Spike的基本語義轉(zhuǎn)變成REF或者RTL的語義,支持指令功能、控制和狀態(tài)寄存器(CSR)、常量等語義信息自動遷移。

二是如何提升硬件REF的執(zhí)行效率。香山團隊提出了硬件參考模型(SRef)設(shè)計:當(dāng)DUT提交N條指令,SRef執(zhí)行N條指令,并對比結(jié)果。同時,通過全流水無阻塞的工作流程,消除RISC-V指令間的控制依賴。

三是如何提升SVM框架的可調(diào)試性。香山團隊提出了一種可綜合的調(diào)試技術(shù),當(dāng)CPU執(zhí)行出錯時,將REF轉(zhuǎn)換為獨立執(zhí)行的通用CPU。這意味著REF可以作為CPU去讀取片上提取器,判斷是哪個硬件化斷言出錯,從而用于調(diào)試。

隨著香山處理器迭代到第三代架構(gòu)“昆明湖”,核心數(shù)量增加至16核,并構(gòu)建了面向高性能計算場景的系統(tǒng)級SoC架構(gòu),其CPU系統(tǒng)復(fù)雜性進一步提升,亟需大規(guī)模FPGA平臺與自動化工具鏈。圍繞香山昆明湖16核CPU的大級聯(lián)FPGA系統(tǒng)驗證,香山團隊與EDA企業(yè)合見工軟進行了實踐。

昆明湖處理器驗證挑戰(zhàn)

合見工軟驗證產(chǎn)品線市場總監(jiān)曹夢俠表示,構(gòu)建大型FPGA系統(tǒng)有三個難點。首先是如何將大規(guī)模設(shè)計切割到不同的FPGA中,這是困擾產(chǎn)業(yè)界幾十年的難題;其次是切割后如何保證功能正確;再次是怎么建立精確的時序模型。

面向以上難點,合見工軟和香山團隊建立了提出了一套系統(tǒng)化的多核處理器 FPGA驗證方法論,包括設(shè)計移植與適配、編譯迭代效率與資源優(yōu)化使用的最大化平衡、漸進式啟動策略與軟硬協(xié)同調(diào)試技術(shù)。

基于這套方法論,雙方實現(xiàn)了四個成果。一是自動化的編譯流程。除了必要的Porting之外,時鐘轉(zhuǎn)換、自動分割、TDM IP綁定等關(guān)鍵工作都可以交給EDA工具,讓用戶將最寶貴的時間留給項目本身。二是達成了性能目標,在16核完整版本中將CPU主時鐘穩(wěn)定運行在10.2 MHz。三是在FPGA原型驗證平臺上,完整運行一個未經(jīng)裁剪的、可啟動OS的16核高性能昆明湖RISC-V處理器系統(tǒng)。四是相比傳統(tǒng)方法,整體驗證效率提升約40%,大幅縮短產(chǎn)品上市時間。

未來,雙方希望EDA企業(yè)協(xié)同推動RISC-V驗證方法學(xué)標準化。北京開源芯片研究院(以下簡稱“開芯院”)高級工程師李賢飛表示,希望EDA廠商能開發(fā)更多支持CPU核心之外驗證場景的特性,包括動態(tài)功耗驗證和低功耗驗證。同時,開芯院希望與EDA廠商一起構(gòu)建工具鏈,包括Emulator與UVHS(原型驗證)的混合驗證模式;在多核驗證方法學(xué)上,構(gòu)建存儲一致性協(xié)議的驗證方法學(xué),探索跨核事件的追蹤框架。此外,基于EDA廠商提供的新方案、新技術(shù)和新方法,探索溫榆河NOC的相關(guān)應(yīng)用,開發(fā)基于Emulator的CPU Tracer類的調(diào)試工具,并增加功耗—性能聯(lián)合分析能力,為SoC設(shè)計提供更全面的評估維度。

更精微的工具鏈:釋放RISC-V可定制可擴展優(yōu)勢

可定制、可擴展是RISC-V的天然優(yōu)勢,但要讓開發(fā)者便捷高效地開發(fā)出能運行在CPU上的定制化指令,依然需要工具鏈從更細顆粒度予以支持。

在演講中,晶心科技介紹了其Andes ACE框架與AndesCycle模擬平臺,助力加速RISC-V自定義指令的開發(fā)與驗證流程。據(jù)晶心軟件工程師顏敬哲介紹,開發(fā)者將ACE定義文件和精簡Verilog文件提交至ACE框架的COPILOT代碼生成器,就能獲取C語言編程輔助函數(shù)接口、匯編器、OpenOCD調(diào)試工具等所需的擴展文件。COPILOT還會自動生成控制邏輯(ACE引擎)與指令模塊的Verilog代碼,開發(fā)者可將這些代碼集成至現(xiàn)有的AndesCore處理器架構(gòu),從而得到定制化的CPU指令。接下來,開發(fā)者可基于AndesCycle模擬器,對指令進行性能分析和調(diào)試,從而加速自定義指令的開發(fā)。

基于RISC-V指令集的ASIC(專用集成電路)芯片被視為AI芯片架構(gòu)創(chuàng)新的重要契機。威爾遜研究小組研報顯示,ASIC項目平均50%的時間用于驗證,驗證耗時最少的項目通常復(fù)用經(jīng)過預(yù)驗證的IP模塊。反之,驗證耗時較長的項目往往涉及大量新開發(fā)的IP模塊。

為降低RISC-V企業(yè)的IP驗證成本,西門子EDA團隊帶來了端到端RISC-V調(diào)試和追蹤解決方案Ultra Sight-V,包括硬件IP層面的運行控制、高效追蹤、高效調(diào)試IP、經(jīng)過預(yù)驗證和量產(chǎn)驗證的IP、UVM(通用驗證方法學(xué))驗證環(huán)境、系統(tǒng)可擴展性等,USB、JTAG、AXI等接口,主機軟件套件和兼容第三方工具的用戶環(huán)境。在調(diào)試RISC-V核心的IP硬件中,西門子團隊提供了RISC-V高效追蹤(E-Trace),能夠?qū)ISC-V指令進行高度壓縮。開啟RISC-V追蹤的可擴展功能后,壓縮率——即測試基準程序的BPI(記錄一條指令所需比特數(shù))下降40%。這意味著利用E-Trace進行追蹤,在相同時間下消耗的帶寬更少,在相同的存儲空間和帶寬下可以追溯更長時間之前發(fā)生的錯誤。

隨著RISC-V生態(tài)系統(tǒng)的快速發(fā)展,SoC系統(tǒng)建模需求日益增長。當(dāng)前主流的RISC-V仿真工具主要包括QEMU、Spike和Gem5,其建模優(yōu)勢各有不同,比如QEMU運行性能較強,Spike開發(fā)較容易,Gem5模擬精度高且可兼容SystemC TLM。但也存在一些痛點。一是QEMU、Spike的精度僅為functional水平,至少需將其精度提升至Near-Cycle級別,才能支持Profiling(性能分析)等工具的擴展。二是QEMU、Spike不支持SystemC TLM-2.0——作為通過事務(wù)級通信抽象的標準化接口,SystemC TLM-2.0實現(xiàn)了不同廠商RISC-V模型在同一虛擬平臺上的即插即用兼容性,方便集成到第三方VP。三是模型軟件接口不友好,沒有為集成自定義指令提供足夠便利。

各類仿真工具建模特點

面向以上痛點,芯來科技構(gòu)建了Nuclei Model。據(jù)芯來科技建模工程師徐子泰介紹,Nuclei Model在ISS基礎(chǔ)上建立Timing Model(時序模型),使RISC-V SoC系統(tǒng)達到 Near Cycle的建模精度。構(gòu)建時序模型之后,還需進行Profiling。Nuclei Model有兩種Profiling方式,其一是將指令解碼后,將PC(程序計數(shù)器)和Cycle(周期數(shù))輸出給Profiling處理單元,再通過Gprof等性能分析工具呈現(xiàn)CPU占用率,進而分析性能瓶頸。其二是通過火焰圖,芯來團隊結(jié)合了Flame Chart和Flame Graph兩種火焰圖的優(yōu)點,實現(xiàn)了帶時間軸屬性,調(diào)用棧關(guān)系以及多線程應(yīng)用程序可視化等特點的火焰圖?;赑rofiling定位熱點函數(shù)后,再結(jié)合自定義指令,可以快速優(yōu)化算法程序。

為了進一步發(fā)揮RISC-V“任何用戶都可以不受限制地獲得RISC-V指令集”的開放性優(yōu)勢,中國科學(xué)院大學(xué)于2019年啟動“一生一芯”開源處理器芯片教學(xué)流片實踐項目計劃,以開源處理器芯片為切入點,讓學(xué)生可以帶著自己設(shè)計的處理器芯片畢業(yè)。中國科學(xué)院計算所副研究員解壁偉在峰會現(xiàn)場表示,RISC-V的價值在于人人都可以定制自己的芯片,這一目標的實現(xiàn)需要開源EDA。

“開源EDA的作用,就如GCC等開源編譯器之于開源軟件生態(tài)。”解壁偉表示。其所在的開源芯片生態(tài)團隊推出了ECOS Studio開源芯片設(shè)計解決方案,推動EDA工具及工具鏈開源,構(gòu)建基于開源EDA工具鏈的SoC和后端學(xué)習(xí)流程及講義。據(jù)悉,這套解決方案已經(jīng)在今年7月“一生一芯”暑期宣講會正式開放內(nèi)測。

責(zé)任編輯:張心怡