什么是RISC-V架構(gòu),?
RISC的英文全稱為:ReducedInstructionSetComputing,,中文即“精簡指令集”,,它的指令系統(tǒng)相對簡單,,它只要求硬件執(zhí)行很有限且最常用的那部分指令,,大部分復(fù)雜的操作則使用成熟的編譯技術(shù),,由簡單指令合成,。指令集也可以理解為軟件和硬件之間溝通的橋梁,不同的廠家可能會用不同的方法來實(shí)現(xiàn)相同的指令集,,從而讓遵循相同指令集的軟件可以無需修改即可運(yùn)行,。比如我們熟知的Intel和AMD都實(shí)現(xiàn)了x86指令集,這基本上統(tǒng)治了PC的市場,。
RISC RISC-V處理器是架構(gòu)發(fā)明者 Krste Asanovic 教授帶領(lǐng)團(tuán)隊(duì)開發(fā)的一個(gè)完全開放的,、標(biāo)準(zhǔn)的、能夠支持各種應(yīng)用的新指令集,,他也得到了RISC的發(fā)明者之一,,Dave Patterson教授的大力支持。從2010年夏天開始,,大約花了四年的時(shí)間,,這個(gè)團(tuán)隊(duì)設(shè)計(jì)和開發(fā)了一套完整的新的指令集,同時(shí)也包含了移植好的編譯器,、工具鏈,、仿真器,并經(jīng)過數(shù)次流片驗(yàn)證,。為了能夠加快開發(fā)的效率,,以便能夠快速的評估和修改設(shè)計(jì)以及提高可復(fù)用性,Chisel作為一種新的硬件構(gòu)建語言也被開發(fā)了出來,。簡言之,,你可以用scala這種函數(shù)式編程語言去設(shè)計(jì)硬件,并最終能夠生成傳統(tǒng)的Verilog HDL用于ASIC/FPGA,,或者生成C++用于仿真,。
這個(gè)新的指令集叫做RISC-V,“V”包含兩層意思,,一是這是Berkeley從RISC I開始設(shè)計(jì)的第五代指令集架構(gòu),,二是它代表了變化(variation)和向量(vectors)。
0
如何看待RISC-V ?
在摩爾定律終結(jié)、計(jì)算微體系結(jié)構(gòu)已經(jīng)非常成熟,、開源軟件飛速發(fā)展的時(shí)代,,RISC-V充分利用社區(qū)的力量,提供了一個(gè)相比其他商業(yè)指令集來說并不差的選擇,,非常有希望借由在開源硬件商業(yè)模式上的創(chuàng)新在未來的CPU市場上占有一席之地,。
RISC-V引起業(yè)界新一輪的關(guān)注,應(yīng)該是2016年三星半導(dǎo)體在其Exynos 8890處理器中(Galaxy S7用的這款處理器),,首次采用的自主CPU內(nèi)核M1,,被指是基于開源的RISC-V指令集架構(gòu)(而不是其旗艦機(jī)長期所用的ARMv6-M/ARMv8-M)。
國內(nèi)也有不少從業(yè)者對此比較關(guān)注,,主要是想將RISC-V應(yīng)用在物聯(lián)網(wǎng),、大數(shù)據(jù)等領(lǐng)域。
下圖是與ARM的比較,,數(shù)據(jù)是最真實(shí)的,,功耗、面積,、性能都是杠杠的,。
基本指令集包括40條RISC整數(shù)指令和10條用于同步、系統(tǒng)調(diào)用和計(jì)數(shù)器操作的其他指令,。
使用的RISC_V都需要實(shí)現(xiàn)這些基本指令,,并稱之為RV32I。對應(yīng)的RV64I ,、RV128I也是一樣擴(kuò)展對應(yīng)的位寬即可,,參考下圖。
另外包括擴(kuò)展指令,,主要包括壓縮字節(jié)指令,、乘除、單/雙/四精度浮點(diǎn)運(yùn)算指令,、原子指令,。
從上面可以看到,功耗,、面積,、性能都不亞于ARM,甚至優(yōu)于ARM(當(dāng)然上表只是對比A5),,并且指令豐富,,可擴(kuò)展性強(qiáng),并且開放,,有免費(fèi)開源的編譯,、仿真環(huán)境,,令人遐想無限。
結(jié)論:生態(tài)已經(jīng)構(gòu)建好了,,如果有相應(yīng)的產(chǎn)品出來,,以及大量的人力物力投入,我覺得前景還是很不錯(cuò),。筆者挺看好這個(gè)項(xiàng)目,,特別是像中國近幾年大力發(fā)展CPU的情況下,機(jī)遇很好,,能不能抓住就是另外一個(gè)問題了,。