《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 業(yè)界動(dòng)態(tài) > RISC-V能否成為CPU領(lǐng)域的 Linux

RISC-V能否成為CPU領(lǐng)域的 Linux

2018-09-13
關(guān)鍵詞: RISC-V CPU

  經(jīng)歷了中美貿(mào)易戰(zhàn)和中興事件后,“中國(guó)芯”就好像當(dāng)年的“大躍進(jìn)”一樣,全國(guó)上下都在討論芯片的研發(fā)設(shè)計(jì)和制造。芯片指令集架構(gòu)作為溝通軟硬件運(yùn)算之間的橋梁,人們卻很少關(guān)注它。目前市面上應(yīng)用最廣的架構(gòu)是英特爾的X86和ARM架構(gòu),并且基本上所有的芯片公司都在采用ARM的架構(gòu)。但是想要獲得ARM的授權(quán)非常難,目前為止,獲得ARM授權(quán)的公司兩只手?jǐn)?shù)的過來。另一方面,ARM的授權(quán)費(fèi)又非常昂貴,對(duì)于一些中小企業(yè)來說,無法承擔(dān)這個(gè)成本。

  RISC-V指令集的出現(xiàn),可以說是芯片設(shè)計(jì)公司的希望。RISC-V指令集是基于精簡(jiǎn)指令集計(jì)算(RISC)原理建立的開放指令集架構(gòu)(ISA),RISC-V是在指令集不斷發(fā)展和成熟的基礎(chǔ)上建立的全新指令。RISC-V指令集完全開源,設(shè)計(jì)簡(jiǎn)單,易于移植Linux系統(tǒng),模塊化設(shè)計(jì),完整工具鏈,同時(shí)有大量的開源實(shí)現(xiàn)和流片案例。

  RISC-V在2015年成立了RISC-V基金會(huì),吸引了大量業(yè)內(nèi)領(lǐng)先的研究機(jī)構(gòu)、硬件廠商、軟件廠商。包括Berkeley Architecture Research、中科院計(jì)算所等科研機(jī)構(gòu);包括高通、英偉達(dá)、NXP、三星、Microsemi、美光、中興微電子、華為海思、聯(lián)發(fā)科等半導(dǎo)體廠商;包括谷歌、IBM等IT公司;包括西數(shù)、希捷這兩大硬盤廠商;還有SEGGER、Mentor Graphics、Express Logic等做開發(fā)工具的廠商。近日,特斯拉也宣布加入RISC-V基金會(huì),并考慮在芯片設(shè)計(jì)中采用免費(fèi)的RISC-V架構(gòu)。

  8f9185a3112d1356529d28b5c3f8e655.png

  設(shè)計(jì)簡(jiǎn)單,易于上手

  x86與ARM架構(gòu)的發(fā)展的過程隨著現(xiàn)代處理器架構(gòu)技術(shù)的不斷發(fā)展成熟,但作為商用的架構(gòu),為了能夠保持架構(gòu)的向后兼容性,其不得不保留許多過時(shí)的定義,導(dǎo)致其指令數(shù)目多,指令冗余嚴(yán)重,文檔數(shù)量龐大,所以要在這些架構(gòu)上開發(fā)新的操作系統(tǒng)或者直接開發(fā)應(yīng)用門檻很高。而RISC-V架構(gòu)則能完全拋棄包袱,借助計(jì)算機(jī)體系結(jié)構(gòu)經(jīng)過多年的發(fā)展已經(jīng)成為比較成熟的技術(shù)的優(yōu)勢(shì),從輕上路。RISC-V基礎(chǔ)指令集則只有40多條,加上其他的模塊化擴(kuò)展指令總共幾十條指令。目前的“RISC-V架構(gòu)文檔”分為“指令集文檔”(riscv-spec-v2.2.pdf)和“特權(quán)架構(gòu)文檔”(riscv-privileged-v1.10.pdf)。“指令集文檔”的篇幅為145頁(yè),而“特權(quán)架構(gòu)文檔”的篇幅也僅為91頁(yè)。熟悉體系結(jié)構(gòu)的工程師僅需一至兩天便可將其通讀,雖然“RISC-V的架構(gòu)文檔”還在不斷地豐富,但是相比“x86的架構(gòu)文檔”與“ARM的架構(gòu)文檔”,RISC-V的篇幅可以說是極其短小精悍。

  模塊化設(shè)計(jì)

  RISC-V架構(gòu)相比其他成熟的商業(yè)架構(gòu)的最大一個(gè)不同還在于它是一個(gè)模塊化的架構(gòu)。因此,RISC-V架構(gòu)不僅短小精悍,而且其不同的部分還能以模塊化的方式組織在一起,從而試圖通過一套統(tǒng)一的架構(gòu)滿足各種不同的應(yīng)用。

  這種模塊化是x86與ARM架構(gòu)所不具備的。以ARM的架構(gòu)為例,ARM的架構(gòu)分為A、R和M三個(gè)系列,分別針對(duì)于Application(應(yīng)用操作系統(tǒng))、Real-Time(實(shí)時(shí))和Embedded(嵌入式)三個(gè)領(lǐng)域,彼此之間并不兼容。

  但是模塊化的RISC-V架構(gòu)能夠使得用戶能夠靈活選擇不同的模塊組合,以滿足不同的應(yīng)用場(chǎng)景,可以說是“老少咸宜”。譬如針對(duì)于小面積低功耗嵌入式場(chǎng)景,用戶可以選擇RV32IC組合的指令集,僅使用Machine Mode(機(jī)器模式);而高性能應(yīng)用操作系統(tǒng)場(chǎng)景則可以選擇譬如RV32IMFDC的指令集,使用Machine Mode(機(jī)器模式)與User Mode(用戶模式)兩種模式。而他們共同的部分則可以相互兼容。

  完整的工具鏈

  對(duì)于設(shè)計(jì)CPU來說,工具鏈?zhǔn)擒浖_發(fā)人員和cpu交互的窗口,沒有工具鏈,對(duì)軟件開發(fā)人員開發(fā)軟件要求很高,甚至軟件開發(fā)者無法讓cpu工作起來。在cpu設(shè)計(jì)中,工具鏈的開發(fā)是一個(gè)需要巨大工作的。如果用RISC-V來設(shè)計(jì)芯片,芯片設(shè)計(jì)公司不再擔(dān)心工具鏈問題,只需專注于芯片設(shè)計(jì),RISC-V社區(qū)已經(jīng)提供了完整的工具鏈,并且RISC-V基金會(huì)持續(xù)維護(hù)該工具鏈。當(dāng)前RISC-V的支持已經(jīng)合并到主要的工具中,比如編譯工具鏈gcc, 仿真工具qemu等。

  c23f0d167881c7d151dec1adad20d968.png

  RISC-V是完全開放源,設(shè)計(jì)公司可以自行添加指令集。這個(gè)操作對(duì)芯片設(shè)計(jì)公司來說是極大的誘惑,但同時(shí)也有人質(zhì)疑,自行添加指令集會(huì)導(dǎo)致RISC-V碎片化,后期會(huì)出現(xiàn)處理器雖然同屬于RISC-V指令集,卻不能跑一套軟件。如此看來,RISC-V能不能成為和ARM一較高下的指令集架構(gòu),未來還有很長(zhǎng)的一段路要走。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。