【導讀】人工智能、自動駕駛汽車等技術正迅速發展,市場對定制可擴展處理器的需求也隨之不斷攀升。RISC-V開放標準指令集架構(ISA)以其模塊化設計和協作社區,引領了處理器設計新潮流,助力實現技術愿景。相應的,機器組件、URL、HTML和HTTP互聯網協議等基礎構件的標準也正隨著技術創新而加速發展。標準RISC-V ISA使開發者能夠創建高效的處理器,同時節省軟件開發時間,從而加快上市步伐。
引言
人工智能、自動駕駛汽車等技術正迅速發展,市場對定制可擴展處理器的需求也隨之不斷攀升。RISC-V開放標準指令集架構(ISA)以其模塊化設計和協作社區,引領了處理器設計新潮流,助力實現技術愿景。相應的,機器組件、URL、HTML和HTTP互聯網協議等基礎構件的標準也正隨著技術創新而加速發展。標準RISC-V ISA使開發者能夠創建高效的處理器,同時節省軟件開發時間,從而加快上市步伐。
標準架構通過通用規范實現定制設計,但對于特定應用,可能還需要在標準之外進行額外的定制。RISC-V社區認識到這一需求,并評估了許多此類定制任務,以便重新納入標準。結合RISC-V定義的矢量擴展(RVV)與定制DSP指令來開發處理器IP,有望為需要信號處理功能的低功耗嵌入式應用帶來顯著優勢。對于特別注重權衡功耗、性能和面積的微控制器(MCU)來說更是如此。
微控制器的演變
在過去幾十年里,MCU已經從簡單的嵌入式系統發展成為復雜的互聯設備。上世紀90年代末,模數轉換器(ADC)、計時器和UART逐漸集成到單個芯片上,MCU的性能和能效得到了顯著提升。在2010年代,MCU將Wi-Fi、藍牙和Zigbee等無線連接技術以及安全模塊集成到硬件中,推動了物聯網熱潮。供應商現在提供通用CPU的DSP增強版本,可在現場進行編程。圖1為矢量處理的融合進程。矢量處理漸漸從用于超級計算機演變為集成到MCU中,能夠高效執行控制導向型任務。
圖1:結合通用功能與SIMD/DSP功能的微控制器的演變過程
矢量處理器設計用于處理一維數組,其中包括單指令、多數據(SIMD)。應用處理器中常見的SIMD擴展包括英特爾的MMX、SSE和AVX、Arm的Neon和摩托羅拉-飛思卡爾的Altivec for PowerPC。這種通用+SIMD/DSP混合架構也擴展到MCU領域。
相比于同時執行不同計算的并發工作負載,SIMD針對不同的數據同時執行完全一樣的指令。常見的例子包括調整數字圖像的對比度或數字音頻的音量。基本架構包括一個單獨的標量寄存器文件(整數和/或浮點數)和一個矢量寄存器文件。通常,矢量內的SIMD最小元素寬度為8位。因此,64位矢量寄存器可以提供各種可編程選項:1x64位、2x32位、8x8位和4x16位。這種靈活性使開發者能夠根據應用情況,以最小的字寬選擇所需的精度水平。
最近,MCU集成或應用了越來越多的先進數據技術,例如SIMD指令和AI/ML矢量化操作,為神經網絡提供支持。在這些情況下,單個MCU負責傳感器數據的前端數字信號處理,例如過濾和傳感器融合,同時其后端可以運行AI/ML模型來支持語音觸發、對象檢測和其他低功耗AIoT應用。例如,新思科技ARC? EMxD處理器結合了高效的DSP和AI/ML處理,可降低功耗、簡化設計、復用軟件并節省系統成本。
MCU是第一類采用RISC-V的處理器,對RISC-V在汽車和消費市場中的增長起到了關鍵的推動作用。MCU大大受益于RISC-V的模塊化和簡單設計,可以在成本敏感、低功耗且多樣化的嵌入式應用中實現更高的效率和靈活性。
RISC-V和開放標準模型的興起
RISC-V開放指令集架構(ISA)為全球圍繞開源軟硬件開發而展開的密切合作指明了加速技術進步的方向。與可免費獲取實際代碼的“開源”軟件不同,RISC-V是一個開放的規范,社區可以參與討論并為規范的更新做出貢獻。
RISC-V處理器的核心優勢包括一系列設計屬性,有助于實現處理器設計可配置性、可擴展性和軟件兼容性,形成了一個豐富的生態系統。
RISC-V生態系統目前有4300多名成員,涉及物理硬件、IP、片上系統(SoC)、開發板、從工具鏈到操作系統的完整軟件堆棧、工具供應商、調試供應商、仿真器和模擬器、驗證服務和教育材料等領域。目前市場上的RISC-V內核數量超過100億,全球有數萬到數十萬的開發者正在從事RISC-V相關工作。
RISC-V矢量規范為微控制器帶來的矢量處理優勢
RISC-V矢量規范版本1.0(RVV 1.0)是經批準對RISC-V ISA進行的矢量處理擴展。矢量處理通過并行處理來提高性能。常見的處理類型包括圖像和音頻信號處理、渲染圖形、動畫和游戲物理、數據壓縮和加密(如加密操作)以及用于推理、特征提取和數據預處理等任務的邊緣機器學習。
RVV 1.0將高效的控制面與高性能的數據平面相結合,在設計時充分考慮了軟件開發的需求。其可調矢量長度范圍從32位到2048位不等,開發者可根據具體性能要求動態配置其設計。此外,開發者可以利用RVV的內置效率和性能增強功能(如矢量鏈式操作)來進一步改進設計。應用軟件開發者可以編寫與矢量長度無關的代碼,而不用管硬件的實際矢量長度,從而充分實現軟件復用。RVV的簡化設計側重于優化代碼大小,而非內存利用率。例如,每個矢量都使用由矢量長度定義的相同數量的元素,無論這些元素是否全部被使用。這種方法可以減少執行代碼時所需的指令,從而也提高了電源效率。此外,受益于豐富的軟件開發環境,RVV還使其他開源工具鏈(如LLVM和GCC)能夠支持自動矢量化,進一步簡化了矢量處理應用的開發。
使用定制DSP指令增強RVV,實現高效信號處理
越來越多的SoC開發者傾向于選擇針對特定應用的可選定制擴展。盡管RVV已經可以支持一些定點運算,但增加針對信號處理應用(如FFT、FIR和矩陣乘法)和多媒體處理應用(包括音頻、視頻和圖像處理)的DSP指令還能進一步優化處理器的功耗、性能和面積(PPA)。
新思科技ARC-V? RMX-100D系列處理器(圖2)將RVV1.0標準與定制DSP指令相結合,為低功耗嵌入式應用創建高度優化且經濟實惠的解決方案,實現高效的信號處理。通過集成DSP和RVV功能,可以顯著改善周期數性能和能效。
圖2:新思科技ARC-V RMX-100D處理器IP框圖
圖3中的數據表明,信號處理中常用算法的周期數、性能和效率得到顯著改善,具體包括:矢量加法、矢量點積、矩陣乘法、快速傅里葉變換(FFT)和有限脈沖響應(FIR)。與僅限RVV的標準實現相比,結合RVV與DSP指令的新思科技ARC-V RMX-100D處理器可以實現更多增強功能。
圖3:使用RMX-100D處理器增加定制DSP指令時,速度與RVV相比有所提升
結論
RISC-V指令集架構(ISA)支持模塊化和可擴展的設計實現,為低功耗嵌入式應用提供了理想的基礎。通過使用DSP功能擴展RVV,基線RISC-V實現可顯著提高周期數性能和能效,同時保持向后兼容性并充分實現軟件復用,以滿足各種信號處理工作負載的需求。新思科技的ARC-V RMX-100D和RMX-500D系列處理器結合了RVV1.0與定制DSP指令,為需要高級信號處理的低功耗嵌入式應用提供高度優化且經濟實惠的解決方案。
(By Revi Ofir, Product Manager, ARC Processor IP, Synopsys)
免責聲明:本文為轉載文章,轉載此文目的在于傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問題,請聯系小編進行處理。
推薦閱讀:
第十三屆中國電子信息博覽會觀眾登記全面開啟,精彩盛宴,等您來赴!