徐易難:SVM——基於硬件的高效RISC-V處理器驗證方法
guancha
第五屆RISC-V中國峯會於2025年7月16至19日在上海張江科學會堂隆重舉辦,本屆峯會設置1場主論壇、9場垂直領域分論壇、5場研習會、11項同期活動,以及4,500平方米未來科技展覽區,匯聚數百家企業、研究機構及開源技術社區參會。
在7月18日的EDA分論壇上,中國科學院計算技術研究所特別研究助理,北京開源芯片9研究院特別研究助理徐易難帶來了主題為“SVM:可用綜合方法實現RISC-V處理器的高效驗證”的演講。

隨着芯片設計日益複雜,處理器驗證成為了芯片開發中的瓶頸問題。徐易難詳細闡述了處理器驗證的現狀、挑戰和創新方法,提出SVM作為一種高效的硬件驗證方法,能夠大幅提升RISC-V處理器驗證的效率。
處理器驗證是芯片開發過程中至關重要但卻充滿挑戰的環節。根據現有統計數據,自2007年以來,驗證工程師與設計工程師的比例不斷增加,且超過86%的芯片項目在首次流片時未成功,75%的項目超出了預定的時間表。儘管投入了大量資源,驗證的質量和效率始終未能達到預期。因此,尋找更高效的驗證方法變得尤為迫切。
目前,處理器驗證多采用協同仿真方法,通過將待驗證的設計(DUT)與指令集模擬器等參考模型進行聯合仿真。然而,隨着RISC-V指令集的快速擴展,指令集的複雜性急劇上升,這使得驗證工作量大大增加,驗證過程也變得更加困難。
此外,隨着處理器規模的擴大,仿真速度大幅下降。尤其在使用軟件仿真時,處理器設計的規模越大,仿真速度越慢,導致驗證工作遠遠落後於設計進度。例如,當仿真從單核處理器擴展到多核處理器時,仿真速度會下降92%,這是當前驗證方法面臨的一個重大瓶頸。
為了提高驗證效率,徐易難介紹了一種基於硬件仿真平台的驗證加速方法。通過利用硬件仿真平台(如FPGA或仿真器),可以顯著加速處理器電路的仿真過程,同時優化DUT與參考模型之間的整體驗證速度。硬件加速驗證平台的一個顯著特點是,它能夠以更高的速度完成DUT與參考模型的協同仿真,尤其是在面對大規模處理器設計時,能夠有效提升仿真效率。
然而,儘管硬件仿真加速在一定程度上解決了速度問題,驗證數據的通信開銷依然是一個難以忽視的瓶頸。即使在採用高性能硬件平台(如Cadence Palladium或Xilinx FPGA)時,通信開銷依然存在,未能達到理想的驗證速度。
為了解決上述挑戰,徐博士提出了一種全新的驗證方法——可綜合驗證方法(SVM)。與傳統的硬件-軟件協同仿真方法不同,SVM完全將驗證邏輯實現為硬件,這樣一來,原本需要進行高開銷數據傳輸的驗證過程可以通過片上邏輯來實現,從而消除了通信帶來的性能開銷。
SVM的實施面臨三大主要挑戰:
REF電路代碼實現:現有的參考模型(REF)通常以軟件模擬器的形式存在,設計簡單且可靠,但缺乏高效的硬件實現方式。如何將現有的軟件REF高效地遷移到硬件中,是SVM面臨的首要問題。
硬件REF執行效率:由於DUT設計複雜且微結構豐富,而REF則需要設計得簡單以保證功能可靠,因此如何提升硬件REF的執行效率,成為SVM的一大挑戰。
調試和可追溯性問題:硬件環境缺乏對傳統軟件調試工具的支持(如斷言、錯誤日誌等),因此如何在硬件環境中實現高效的調試和錯誤追蹤,是SVM成功應用的關鍵。
為了克服這些挑戰,SVM採用了以下幾種技術:
語義代碼遷移技術:該技術能夠自動化地將軟件中的指令集語義信息遷移到硬件中,確保指令的功能在硬件上得到準確實現。
硬件參考模型設計(SRef):通過簡化的硬件參考模型,SVM能夠在短時間內完成指令的執行,並與DUT的執行結果進行對比,從而提升驗證效率。
硬件化調試機制:為了彌補硬件驗證中的調試不足,SVM通過硬件化斷言、計數器和錯誤日誌等機制,提供了一套完整的硬件調試工具,提升了系統的可調試性。
SVM方法已在不同配置的香山、果殼等RISC-V處理器上進行了實驗驗證。結果顯示,SVM在FPGA平台上實現了60MHz的驗證速度,比DiffTest快了約10倍。通過在Cadence Palladium平台上測試,SVM的驗證速度達到了1.9MHz,接近理想的驗證速度,表現出顯著的性能優勢。
徐易難的報告深入探討了SVM在處理器驗證中的應用,提出了一種全新的硬件驗證方法,解決了傳統方法在驗證速度和通信開銷方面的瓶頸。隨着RISC-指令集的不斷擴展,SVM將為高效驗證提供一種有效的解決方案,推動處理器驗證技術向更高效、更精確的方向發展。
這項研究不僅為RISC-V處理器的驗證提供了新的思路,也為其他領域的硬件驗證提供了寶貴的經驗,預示着未來處理器驗證技術的廣闊前景。