碎片化的物聯(lián)網(wǎng)需求出現(xiàn)后, CISC(復(fù)雜指令集)的劣勢被放大,在一些場景中 CISC 會出現(xiàn)指令集過于龐大且冗余的情況,比如執(zhí)行一些簡單重復(fù)的運(yùn)算。在這些運(yùn)算中,RISC(精簡指令集)更具有優(yōu)勢。
過往,人們談?wù)?RISC 的時候,更多是在談?wù)?ARM(Advanced RISC Machine)架構(gòu),然而近來 RISC-V 的呼聲開始走高,憑借著開源的模式,RISC-V 讓 ARM 感受到了壓力。
RISC-V 的發(fā)展真如輿論里這般“熱鬧”嗎?下面,我們通過知名嵌入式專家、麥克泰軟件公司創(chuàng)始人何小慶老師的分享來探尋答案。
如何選擇和使用 RISC-V?
5 月 17 日,何小慶老師在線上講堂分享題為《RISC-V 處理器嵌入式開發(fā)概述》的免費(fèi)課程,分享他個人對于 RISC-V 技術(shù)和產(chǎn)業(yè)發(fā)展的一些觀察與思考。
2010 年,RISC-V 誕生于伯克利大學(xué)并行計(jì)算實(shí)驗(yàn)室(Par Lab) ,開發(fā)者為下圖中這三位,1 位教授和 2 個研究生。
三人對于 RISC-V 的發(fā)展規(guī)劃大致分為規(guī)范和商業(yè)兩個方向。規(guī)范方面,成立 RISC-V 基金會,維護(hù)指令集架構(gòu)的完整性和非碎片化;商業(yè)方面,成立 SiFive 公司,推動 RISC-V 的商業(yè)化。
何小慶羅列了 RISC-V 基金會在做的部分事情?!癛ISC-V 基金會非?;钴S,自 2015 年成立之后,一直在制定標(biāo)準(zhǔn)和搭建產(chǎn)業(yè)生態(tài),目前已經(jīng)有 325 家付費(fèi)會員,包括高通、恩智浦、阿里巴巴和華為等。付費(fèi)會員的好處是可以使用 RISC-V 的 logo?!?他提到:“從發(fā)展趨勢來看,行業(yè)的標(biāo)準(zhǔn)化程度越高,發(fā)展的效率越高。”
對于 RISC-V 指令集本身,何小慶認(rèn)為:“RISC-V 指令集最大的特點(diǎn)就是模塊化,也是唯一強(qiáng)制要求實(shí)現(xiàn)的指令是由 I 字母表示的整數(shù)指令子集。使用該整數(shù)指令子集,便能夠?qū)崿F(xiàn)完整的軟件編譯器。由于 RISC-V 是一種開放的指令集架構(gòu)而不是一款具體的處理器,任何組織和個人均可以依據(jù) RISC-V 指令集手冊和架構(gòu)設(shè)計(jì)文檔實(shí)現(xiàn)自身的處理器設(shè)計(jì)。”
對此,他分享了開源的 RISC-V 架構(gòu)處理器核,如下圖:
商業(yè)的 RISC-V 處理器核(Core IP),如下圖:
開源 RISC-V 處理器 SoC 平臺(Platform),如下圖:
開源 RISC-V 嵌入式處理器,如下圖:
商業(yè) RISC-V 嵌入式處理器,如下圖:
他還給出了自己的選擇建議:
·芯片設(shè)計(jì)者可選擇 RISC-V 核和 RISC-V 處理器平臺來構(gòu)建自己的芯片;
·嵌入式和物聯(lián)網(wǎng)系統(tǒng)開發(fā)者可以使用 RISC-V SoC 芯片和開發(fā)板
·高??蛇x擇開源 RISC-V 核和處理器平臺在 FPGA 平臺上進(jìn)行計(jì)算體系架構(gòu)、微機(jī)原理、OS、編譯技術(shù)教學(xué)和研究工作。
然后,他總結(jié)了 RISC-V 嵌入式應(yīng)用的現(xiàn)狀和問題?!癛ISC-V 的主戰(zhàn)場是嵌入式和物聯(lián)網(wǎng),這是不言而喻的。目前,有很多 RISC-V 芯片面向嵌入式和物聯(lián)網(wǎng),我們也看到了很多 AIoT 類型的芯片,且已經(jīng)有通用型的 RISC-V MCU 出現(xiàn),這讓開發(fā)者入門變得更簡單?!?/p>
“當(dāng)然也有一些不利的因素,通用型的高端的能夠運(yùn)行 Linux 系統(tǒng)的 RISC-V 平臺還非常少。工具鏈還比較繁雜, IP 公司和商業(yè)公司都有自己一套工具鏈,開發(fā)者適應(yīng)起來非常的復(fù)雜。另外,生態(tài)建設(shè)還處于初級階段。”何小慶指出:“實(shí)際上你到互聯(lián)網(wǎng)去找基于 RISC-V 的芯片產(chǎn)品,我只找到嘉楠勘智的 kendryte k210,是唯一官方宣布的。”
RISC-V 的開發(fā)生態(tài)
在分享中,何小慶還梳理了圍繞 RISC-V 的一些工具鏈。RISC-V GCC 工具鏈與普通的 GCC 工具鏈基本相同,用戶可以遵照開源的 riscv-gnu-toolchain 項(xiàng)目中的說明自行生成全套的 GCC 工具鏈。除了 GCC,何小慶還分享了其他的 RISC-V 工具鏈,如下圖:
RISC-V 的軟件生態(tài),如下圖:
對于軟件支持,他認(rèn)為:“嵌入式操作系統(tǒng)方面,RISC-V 應(yīng)該是蠻成熟的,有不下幾十種軟件進(jìn)行支持?!钡?RISC-V 在嵌入式開發(fā)還有一些方面需要加強(qiáng)。
首先,嵌入式系統(tǒng)需要更多通用開發(fā)平臺。
第二,RISC-V 應(yīng)用起飛更需要商業(yè)級開源軟件。
第三,要有 RISC-V Linux 需要進(jìn)入 Linux 內(nèi)核的主線。
最后,RISC-V 要有遠(yuǎn)大抱負(fù),發(fā)展不僅是“芯片數(shù)量級”增長,而且需要有數(shù)量多、門類全的 RISC-V Inside “產(chǎn)品”,順帶著開發(fā)者也就多了起來。
?