作者 | 貿澤電子 Mark Patrick(英國)
譯者 | 禾沐
新的處理器指令集架構(ISA)并不會經常出現,加州大學伯克利分校開發的開源RISC-V ISA 已經在嵌入式產業中產生了不小的波瀾,專案的目的是讓開發者能夠設計處理器核和生成對應的軟體編譯器,目前,該專案由RISC-V基金會運作,成員包括眾多大學、跨國科技企業(比如谷歌、IBM、微軟、英偉達和甲骨文)、芯片廠商和創業公司,
RISC-V 的目標是從其他處理器ISA的錯誤中學習,這之中的核心是穩定性,既包括指令集和核心本身,也擴展到芯片設計者、編譯器作者、作業系統構架師和開發工具供應商,穩定性讓強力的處理器核更加易于獲取,并增強其可用性,這對于鼓勵更多的工程師在整個生態圈中使用這一開源技術而言非常重要,應用開發者可以針對一個凍結的ISA 進行代碼優化,在達到最小的記憶體使用和功耗的同時保證擴展性和對未來設備的兼容性,這使得處理器核開發者可以開發各種不同的指令集實作,從簡單的多級流水線(pipeline)到亂序執行(out of order execution),它們會有不同的延遲、尺寸和功耗,但是它們相互兼容,而且與生態系統中的工具兼容,
整個生態系統的穩定性對于RISC-V 指令集而言至關重要,在設計時RISC-V 考慮了32/64/128位地址空間并保證三者之間的兼容性;其架構還支持擴展,從而提供芯片制造商所需的功能差異和對未來應用場景的支持,不過ISA的基本組成并不會發生變化,
128位的ISA 目前處在開放狀態,這是因為嵌入式系統中依然沒有多少處理如此巨大的理論記憶體容量的經驗,不過,體系結構對大地址空間的支持正是前瞻思考的證明,針對RISC-V撰寫和移植的代碼可以永久地在類似的RISC-V核上運行,讓開發者得以識訓投資成本,因為ISA 是開源的,多種硬體實作可以同時進行開發,軟體構架師對于最終的硬體實作也就有了話語權,軟體架構師對硬體設計者的反饋讓RISC-V 核變得更加以軟體為中心,市場上已經出現了許多實作RISC-V ISA的處理器核心,基于這些核心也出現了許多不同的片上系統(SoC)芯片,開發RISC-V 處理器核心的廠商包括Codasip、Syntacore、HexFive、T Head,以及已經推出了32和64位SoC的SiFive,
SiFive由Yunsup Lee創立,他是RISC-V 的創始人之一,2017年公司發布首個RISC-V 核和SoC平臺家族,以及相關支持軟體和開發板,這些芯片包括采用28納米制造技術的64位多核處理器核心,支持Linux作業系統(見圖1),以及采用180納米制造技術的多外設低成本IoT處理器核心,
圖1 SiFive U500 64位多核開源處理器
SiFive的Freedom 平臺包含完整的軟體規范、用于支持作業系統的板級支持包(BSP)、開發板和基礎芯片,允許用戶自行擴展/自定義芯片功能,Freedom U500系列多核RISC-V嵌入式應用處理器完全支持Linux,時鐘速度為1.6 GHz或者更高,針對機器學習、存盤和網路功能的需要,U500支持加速器和快取一致性,這使得處理器能夠支持PCIe 3.0、USB 3.0、千兆以太網和DDR3/DDR4等高速外設,
Freedom E300系列(如圖2所示)是針對IoT和可穿戴設備市場設計的嵌入式微處理器,基于Freedom E310的HiFive1 兼容Arduino,其上搭載高性能32 位RV32IMAC核心SiFive E31 CPU Coreplex(時鐘速度320 MHz以上),
圖2 基于RISC-V ISA的開源E300系列32位微處理器
SiFive還自稱在世界最小的嵌入式處理器核中使用了RISC-V指令集(見圖3),S2系列IP核最小可配置為只有13500個邏輯門(RV32E 32位版本),64位的S21嵌入式核心有單獨的指令和資料總線,以及兩個緊密集成的記憶體(TIM)單元,這使得SoC可以同時搭載始終開機的32位CPU 和高性能的64位CPU,當應用程式需要更高性能(比如語音活動繁忙的智能設備)時,啟動64 位CPU,在邊緣節點上,大量的實時任務使得對嵌入式智能的需求大幅增長,這樣的設計可以滿足互聯設備對機器學習和IoT的需求,
圖3 HiFive1 RISC-V開發板
開源的RISC-V幫助眾多創業公司進入到SoC設計領域中,比如嘉楠科技(Kendryte)、efabless和lowRISC,主流芯片廠商也在使用RISC-V,Microsemi(現在是Microchip的一部分)為SiFive生產了一些開發板,恩智浦有自己的RISC-V芯片,晶芯科技(Andes Technology)和Greenwaves針對RISC-V 開發了芯片和IP,Faraday Technology在下一代邊緣計算AI/IoT SoC上的ASIC平臺中使用了RISC-V ISA 架構,整合RISC-V IP核和SoC設計驗證,全功能設計套件包含了RTOS的支持,配合55納米工藝制造,適合電池驅動邊緣設備及外設應用,
即使ISA是標準的,硬體制造商也能夠在設計中相互區分,Faraday Technology 在平臺上使用了動態電壓頻率調整(DVFS)技術,支持電源模式切換和快速系統喚醒,軟體庫和驅動程式支持特殊介面、傳感和電源管理功能的正常使用,
工 具
RISC-V ISA的另一個優勢是可以配合多種工具使用,Microsemi在他們的FPGA上配合RISC-V使用多種嵌入式作業系統,比如Express Logic ThreadX、華為LiteOS 和Micrium μC/OS II,Microsemi開發板有RTG4開發套件和PolarFire評估板,套件中包括Microsemi和Olimex 的除錯器、引導程式和多個軟外設(IP),在GitHub上你可以找到驅動、韌體和工程的樣例,
UltraSoC是另一個從穩定性中受益的工具公司,他們開發可以嵌入在SoC上用于監控其活動的技術,這項技術用于幫助高效地除錯芯片和監控芯片的應用,UltraSoC在晶芯科技高性能的AndresCore IP核和EsperantoTechnologies的AI片上超級計算機上整合自己的技術,這個超級計算機上有數千個RISC-V核,Esperanto的工程團隊由RISC 先驅Dave Ditzel領銜,他參與了SPARC RISC處理器的開發,2019年9月,Esperanto使用64位RV64GC ISA完成了10段高性能核ET Maxion的RTL開發作業,樣片于2019年下半年面世,芯片計劃于2020年實作量產,Esperanto還研發了更加小巧和低功耗的ET Minion 64位核,它使用先進的7納米制造技術,采用順序執行指令,支持多執行緒,并增加了向量浮點數單元,用于支持圖形擴展和Google的Tensor AI指令,這兩種核在開發中都使用了同一個RISC-V ISA 工具鏈,其中包括測驗和驗證工具,兩種核被整合到一個超級片上計算機上,搭載16個Maxion和4 096個Minion,Maxion負責運行Linux和其他高層軟體,AI類的負載則交由Minion執行,能夠使用同一個ISA 讓這樣的設計成為可能,這正是RISC-V的優勢所在,
RISC-V面臨的挑戰
RISC-V 的開發和市場擴展已經取得了不錯的進展,但是前方還是有不少困難,普林斯頓大學的研究者已經在RISC-V的開源處理器核中發現了嚴重的缺陷,包括不同RISC-V體系結構中超過100個處理存盤和記憶體讀取時的順序錯誤,不修正它們的話,運行在RISC-V上的軟體可能會遇到問題,RISC-V基金會表示:多數RISC-V版本不受這些錯誤的影響,但是高性能系統會受到很大影響,
通用的32、64和128位(未來將會出現)地址空間,讓處理器核開發者可以將注意力轉移到特定的處理器實作上,無論是科研專案、IoT節點,還是超級片上計算機,開發者都可以使用同樣的編譯器、開發工具和除錯工具,這讓企業不需要針對多種核心維護不同版本的軟體,從而降低碎片化,幫助企業專注于提高性能指標,與此同時,開源的精神還意味著對專案的貢獻可以造福整個產業界,對擴展指令集的支持使得企業可以在同一個工具鏈生態系統中進行功能差異化和優化(特別是在安全方面),RISC-V的特性使得硬體開發者可以根據用戶對成本、功耗、安全和性能的要求進行創新,
Mark Patrick: 2014年7月加入Mouser Electronics,Mark曾在德州儀器擔任應用支持和技術銷售的職位,之后在RS Components任資深市場職務,Mark擁有英國考文垂大學頒發的首席電子工程榮譽學位,
本文授權來自本刊的合作伙伴Elektor媒體集團,如果希望免費訂閱Elektor 的英文在線內容,請訪問https://www.elektormagazine.com/,
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/227831.html
標籤:其他
