隨著越來越多的公司對基于 RISC-V ISA 的設備感興趣,以及越來越多的核心、加速器和基礎設施組件以商業或開源形式提供,最終用戶面臨著越來越困難的挑戰:如何確保他們做出最佳選擇。
每個用戶可能會有一組需求和擔憂,這些需求和擔憂幾乎等同于 RISC-V 產品的靈活性,遠遠超出傳統的 PPA 指標,擴展到安全和保障問題或質量考慮因素。這可能包括驗證附屬物的適應性,它使架構擴展和必要的驗證能夠與之相伴。
傳統上,已經部署了三個級別的原型設計——虛擬原型、仿真和 FPGA 原型,包括它們之間的混合。然后每個平臺用于各種目的,包括軟件驗證、架構驗證、硬件功能驗證、性能分析等。
RISC-V 的設計和軟件生態系統正在建立,但配置和驗證生態系統正在落后,行業需要建立新技術。RISC-V的靈活性給驗證帶來了巨大的挑戰,超出了固定處理器驗證所需的任何挑戰。RISC-V不僅讓硬件軟件共同開發成為可能更成為了必要的。
硬件軟件共同開發
過去,先選擇硬件,然后開發運行在其上的軟件。使用 RISC-V,硬件通常由軟件驅動。“你必須選擇的第一件事是你想要的標準 RISC-V 選項,” Imperas Software的創始人兼首席執行官 Simon Davidmann 說。“RISC-V 功能集目前有 200 或 300 個選項。如何知道算法是否會受益于浮點單元或 SIMD、硬件乘法器,甚至矢量引擎?必須針對希望該處理器完成的應用程序類型或工作計算出將需要并且能夠負擔得起的硬件功能。這本身就成了一個挑戰。”
需要原型來進行這些類型的權衡。“如果設計師的目標是評估性能和適合目的,那么虛擬原型設計是唯一可行的選擇,”Quadric 首席營銷官 Steve Roddy說。“構建硬件原型比創建子系統或整個 SoC 的 SystemC 模型耗時多 10 到 50 倍。SystemC 虛擬原型的運行速度通常足以回答性能問題,例如在可接受的精度范圍內,可以通過該處理器內核獲得每秒多少幀的吞吐量,或者功能 X 的峰值和平均帶寬要求是多少。”
獲得正確的準確性可能很困難。“一切都與準確性和快速構建模型的能力有關,” Arteris IP解決方案和業務開發副總裁 Frank Schirrmeister 說。“正確的準確性取決于問題要求,而生成這些要求并非易事。如果是 ASIP 提供商,將能夠從擁有的任何模板生成這些內容。根據可能需要流水線準確性的問題,可能需要內存準確性,它不需要完全準確,但是當涉及 CAD 部門時,他們太害怕回答錯誤的問題。”
但準確性是與速度的權衡。“雖然一些虛擬原型是周期準確的,但它們通常運行速度太慢,無法獲得必要的軟件吞吐量,”Imperas 的 Davidmann 說。“最高性能的虛擬原型不是性能引擎,因為它們不對處理器流水線建模。他們從軟件的角度來看它,您可以在其中編譯它并在硬件上運行它,您可以通過查看指令數或近似時序估計來了解近似性能。這應該足以做出這種架構決策。”
它通常需要幾個原型。“我們通常出于兩個原因制作原型,”Microchip Technology 的 FPGA 業務部軟件和系統工程高級總監 Venki Narayanan 說。“一個是架構驗證,以確保我們滿足所有性能指標和要求以及功能驗證。另一個原因是嵌入式軟件和固件開發。驗證需要使用不同級別的原型制作技術,最常見的是使用我們自己的 FPGA 開發用于架構和功能驗證的仿真平臺。我們還使用 QEMU 等架構模型來構建用于性能驗證和嵌入式軟件開發的虛擬平臺。”
可能性的數量正在增加。“如今,公司可以通過多種方式使用 RISC-V 進行原型設計,”RISC-V International 的首席技術官 Mark Himelstein 說。“這些范圍從制造商級別的單板計算機到支持企業 LINUX 的主板。仿真環境(如 QEMU)允許開發人員在硬件完成之前開發軟件,并且從嵌入式 SoC(來自 Espressif 和 Telink 等公司)到 FPGA(來自 Microsemi 等公司),到處都有現成的部件,到英特爾和 SiFive 即將推出的 Horse Creek 開發板。”
回到性能/準確性權衡。“物理原型需要更多的設計工作,因為連接和綜合了真正的 RTL,但它們提供了更高的準確性和吞吐量,”Quadric 的 Roddy 說。“FPGA 系統中的物理原型,無論是本土開發的還是來自大型 EDA 公司的,都需要付出努力才能實現。但它的運行速度比 SystemC 模型快一個數量級,比全門級仿真快幾個數量級。設計團隊通常會在 IP 選擇過程中從基于 C 的模型轉向物理模型,以驗證 IP 選擇后的實際設計,并作為系統軟件開發平臺。”
一旦知道想要硬件中的哪些功能集,就可以看看是否有人已經創建了滿足大部分需求的解決方案。Davidmann 說:“很有可能,所有的供應商都在那里,將會有一個商業解決方案,它具有用戶正在尋找的東西類型。”“但是使用 RISC-V,不必按原樣接受該解決方案。RISC-V 價值的一個重要部分是可以自由更改、修改和添加想要的不同內容。”
選擇實施方案
有許多方法可以實現一組功能,例如流水線階段數或推測執行功能。每一種都將在功率、性能和面積之間進行不同的權衡。“ISA 風格,無論是 RISC-V、Arm、Cadence 的 Xtensa、Synopsys 的 ARC,都不會真正影響建模和原型設計目標以及權衡,”Roddy 說。“無論處理器品牌如何,系統架構師都需要回答有關 SoC 設計目標的問題。在技術層面上,相對于建模和性能分析工具支持,RISC-V 潮流確實在市場上處于穩定地位。有許多相互競爭的核心供應商,每個供應商都有不同的實現和處理器特性。作為主系統 CPU,它沒有 Arm 的壽命長,因此在 EDA 領域得到廣泛驗證的生態系統參與者較少,對來自各種 RISC-V 供應商的現成 RISC-V 內核的即用型建模支持。作為可配置、可修改的核心,RISC-V 世界落后于 Tensilica 花費 25 年構建的指令集自動化水平。因此,RISC-V 作為現成構建塊的建模支持較少,用作指令集實驗平臺的自動化程度較低。”
這只是需要評估的實施的一個方面。它的質量如何?如果想修改它,如何重新驗證它?
性能是其中最容易評估的。“這與選擇任何傳統處理器供應商沒有什么不同,”戴維曼說。“他們會告訴你這個內核每瓦特能提供多少 Dhrystones,他們會提供典型的處理器分析數據,這表明這就是這個微架構的運行速度。他們擁有所有這些數據,任何獲得處理器核心許可的人都會熟悉這些數據,并會與他們交談并獲取這些信息。數據表中可能會有許多可選選項,可以在供應商網站上的數據表上查看它。
在此級別,您可能需要循環精度。Schirrmeister 說:“大多數人將其輸入仿真器并通過它運行足夠的數據以做出合理的決定。我認為短期內不會升級到虛擬原型。一些公司正在談論 FPGA 原型,可以在其中擁有自己的單板解決方案。根據需要回答的問題,可以決定對其進行配置、生成,然后將其泵入 FPGA 以通過它運行更多數據,并在其之上使用適當的軟件例程。該行業擁有足夠快的進入仿真器和原型設計的途徑,使這成為可能。基本問題是根據盡可能準確的數據做出這個決定,但是當想做出那個決定時可能沒有那么準確的數據。”
其中許多原型必須包含的不僅僅是處理器。“虛擬平臺提供了與其他外部物理硬件功能集成的能力,例如在真實環境中運行的內存和傳感器,”Microchip 的 Narayanan 說。“混合系統可以將虛擬平臺與其他外部功能的物理原型結合在一起。FPGA 仿真和原型設計有助于發現與時序相關的錯誤,例如競爭條件,因為這更加準確,并且外部功能正在高速運行。”
驗證
由于處理器設計長期以來一直在內部進行,因此沒有用于構建處理器的公共驗證生態系統,并且 RISC-V 的功能需要比以往任何時候都更加靈活的驗證解決方案。這種創造才剛剛開始。
“有像 Dhrystones 或 CoreMark 這樣的行業指標,因此人們可以比較性能,”Davidmann 說。“但是你怎么能比較驗證質量呢?需要有一個公平的競爭環境,需要一些質量指標來進行驗證。”
這是開源運動可以提供幫助的地方。“如果你看看 RISC-V 生態系統,就會發現大量非常有經驗的處理器開發人員,”Schirrmeister 說。“有兩個極端。一個是我從供應商那里得到了一個核心,如果它不起作用,那是他們有問題。另一方面,我有完全的自由,什么都自己做。平衡正在這兩個極端之間的某個地方發展。你得到的東西是你的供應商提供的一定數量的驗證,然后擴展是你自己的責任。”
這就是衡量標準的用武之地。“ISA 兼容性只是充滿復雜性的階梯中的第一級,只有少數公司攀登過,”Breker Verification Systems 首席執行官 Dave Kelf 說。“原型設計可能是完全確保處理器可靠運行的唯一方法,但利用真實的工作負載來驅動這些原型只是觸及了真實處理器覆蓋范圍的表面。這與推動加速開發和上市時間問題的開放式 ISA 的競爭努力不一致。”
這些指標是什么?“在OpenHW質量組中,我們正在努力找出這些指標應該是什么,”Davidmann說。“這包括功能覆蓋之類的東西,因為它不僅僅是簡單的說明。對于高質量的處理器,需要的遠不止這些。需要有一種驗證方法,可以確信您與參考系數的比較涵蓋了所有內容。功能覆蓋率只是表明你已經有了測試,但這必須與某種形式的已知參考進行比較的方法相結合。我們將添加故障注入技術,以便能夠確定您的測試臺是否真的檢測到問題。”
這需要一套工具。“隨著 RISC-V 生態系統的成熟,商業實施開始支持明確的細分市場,”Axiomise 創始人兼首席執行官 Ashish Darbari 說。“我們看到了對需要功能安全合規性的市場的支持,例如汽車。我們看到對物聯網的支持,需要安全性。RISC-V 供應商正在投資于高級驗證技術,包括用于架構建模和性能的虛擬原型設計。現在有工具可用于盡早采用形式化方法,以便在設計過程的早期消除錯誤并避免錯誤插入,因為設計人員很難通過處理器與內存接口上的仿真來捕捉極端情況錯誤。”
必要的工具之一是能夠根據特性列表或功能集生成測試用例。“自動生成測試內容以驅動原型并及時考慮驗證復雜性是關鍵,”Breker 的 Kelf 說。“這些生成機制現在開始出現在市場上。”
結論
一個生態系統的好壞取決于它最薄弱的部分,對于 RISC-V 來說,就是 EDA 工具鏈。這樣做的原因有兩個。首先,直到最近,處理器驗證工具還沒有商業市場。雖然它們在過去存在,但它們要么消失,要么被解散到傳統的處理器公司中。其次,RISC-V ISA的靈活性創造了一種新的系統級優化方法,需要一套新的工具。理解這個機會需要時間,并且需要時間才能出現適當解決它的商業工具。
-
硬件
+關注
關注
11文章
3464瀏覽量
67240 -
軟件
+關注
關注
69文章
5124瀏覽量
88973 -
RISC-V
+關注
關注
46文章
2505瀏覽量
48338
原文標題:選擇正確的 RISC-V 內核
文章出處:【微信號:ICViews,微信公眾號:半導體產業縱橫】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
關于RISC-V芯片的應用學習總結
RISC-V MCU技術
Imagination放棄RISC-V處理器內核開發
關于RISC-V學習路線圖推薦
《RISC-V能否復制Linux 的成功?》
RISC-V發展及FPGA廠商為什么選擇RISC-V

英偉達2024年預計出貨10億個RISC-V內核
RISC-V內核是如何與FPGA內核進行資源共享的?
加入全球 RISC-V Advocate 行列,共筑 RISC-V 的未來 !

RISC-V Summit China 2024 青稞RISC-V+接口PHY,賦能RISC-V高效落地

RISC-V Summit China 2024 | 青稞RISC-V+接口PHY,賦能RISC-V高效落地
2024 RISC-V 中國峰會:華秋電子助力RISC-V生態!

評論