作者:貿澤電子Mark Patrick
摘要:全新的指令集體系架構(ISA)在半導體處理器行業(yè)并不經常出現(xiàn)。業(yè)界最后一次重大變化是Arm開發(fā)了內核,并將其作為IP許可證出售,從而迅速改變了那個時代領先供應商設計處理器的方式。目前,在貿易戰(zhàn)和新冠大流行時期,市場提供的開放源代碼、免版稅、可擴展ISA被證明是一種變革和顛覆性力量。
簡介:指令集體系架構在過去40年中變化不大,但是開源,免版稅,可擴展的RISC-V正在撼動整個行業(yè)。
SEO關鍵詞:x86,MIPS,ISA,指令集體系架構,RISC,CISC,RISC-V,Microchip,AVR,Atmel,Atmel AVR,Arm,Intel,SoC,FPGA,SparkFun,SEEED
40年以來幾乎未變的處理器ISA
幾十年來,英特爾和Arm一直主導著處理器架構。英特爾及其x86架構一直在統(tǒng)治著計算機工作站、臺式機和服務器市場。同時,Arm在物聯(lián)網設備、消費電子產品和工業(yè)自動化系統(tǒng)等領域拓展了更廣闊的市場空間。市場中也有其他嵌入式處理器和微控制器架構,例如Atmel的AVR和Microchip的PIC / MIPS,它們都有自己的利基市場,但并未達到主導地位。在嵌入式系統(tǒng)環(huán)境中,大多數MCU和MPU供應商已廣泛采用Arm的IP授權模式。但是,顛覆性,變革性變化正在迅速獲得強大發(fā)展勢頭,并開始挑戰(zhàn)處理器市場現(xiàn)有體系。隨著客戶越來越多地接受開源技術帶來的商業(yè)和技術利益,領先供應商正在迅速轉向開源RISC-V指令集體系架構。在本文中,我們將介紹RISC-V的誕生,并重點討論使其具有更大吸引力的一些因素。我們也將提供一些產品示例,重點關注評估板、開發(fā)資源以及不斷發(fā)展的軟件工具鏈生態(tài)系統(tǒng)。
ISA:處理器硬件和軟件之間的真正連結
指令集體系架構能夠提供軟件世界和處理器硬件之間的界面,它定義了一個程序如何與可用硬件之間交互的各個層面,包括算術邏輯單元(ALU)、寄存器、存儲器和控制邏輯。它還能夠確定字長、支持的數據類型以及寄存器和存儲器的尋址方式。簡而言之,ISA是處理器的抽象。
ISA有許多不同類型,但是出于大多數實用目的,兩個最重要類型是復雜指令集計算機(CISC)和精簡指令集計算機(RISC)。顧名思義,CISC包含許多針對各種應用的復雜且專門的指令,其中一些功能可能很少出現(xiàn)。 CISC處理器可以具有許多不同的尋址方式,并使用可變長度指令。基于CISC的處理器設計成本高昂,需要更復雜的軟件和編程工具,并且設計時間也更長。 CISC ISA的一個示例是Intel x86。
相比之下,基于RISC的處理器要簡單得多,并且具有一組有限的常用指令,幾種不同的尋址方式以及一個固定的指令大小。使用指令流水線技術能夠支持更快的執(zhí)行吞吐量。與CISC處理器將操作數(數據值)移出內存來執(zhí)行計算不同,RISC處理器使用內部寄存器?;赗ISC的ISA應用示例包括Arm、AVR、PIC和MIPS。
?
圖1:Microchip AVR微控制器RISC架構示例。
ISA – 成功的關鍵要素是什么?
在本文余下部分,我們將只討論基于RISC的處理器。在提到處理器時,本文上下文中是指任何處理設備,例如微控制器和微處理器。市場中流行的RISC ISA具有8位、16位和32位字長,還有64位和128位ISA通常用于要求更高的專業(yè)應用。字長對硬件設計、處理器可運行的速度以及可用的內存大小有重要影響。從最基本層面考慮,ISA至少需要包括算術邏輯單元、存儲器和控制邏輯。算術邏輯單元執(zhí)行基本的算術計算功能,例如使用寄存器或自身內部的“立即”方式進行加法、比較和減法等運算。內存尋址可以是絕對或索引方式。控制邏輯則執(zhí)行有條件和無條件分支以及其他尋址任務。
ISA指令集由操作碼(機器碼)組成,這些操作碼通常在一個操作數上指定要執(zhí)行的任務。例如,在Atmel / Microchip AVR ISA中,模數轉換器(ADC)定義將兩個寄存器中保存的操作數與進位標志加在一起,并將結果存入目標寄存器中。 ISA文檔將確定每條指令執(zhí)行多少個時鐘周期或程序計數器迭代。在RISC處理器中,大多數指令將是單周期。
對于微控制器(MCU)和微處理器(MPU)供應商,開發(fā)ISA是設計其產品的核心組成部分。通過這種方式,ISA已成為用于一系列特定設備的專有技術,例如Atmel / Microchip的AVR(8、16、32位)、Microchip的PIC(8、16、32位)和MIPS(32和64位)。
Arm在1990年代初從Acorn剝離出來時就打破了傳統(tǒng)MCU/MPU商業(yè)模式。Arm方式采用了IP許可路線,從特許權使用費中創(chuàng)造了收入來源,而不是依靠制造和銷售器件。 Arm商業(yè)模式得以迅速取得成功,使半導體供應商擺脫了開發(fā)和移植ISA的任務。如今,大多數半導體供應商都提供基于Arm ISA的處理器,有些還提供基于其自身ISA的設備。出售的每個設備都要向Arm支付版稅。Arm實際上在控制著ISA的生命周期和持續(xù)發(fā)展。
盡管各個ISA都有其優(yōu)缺點,但是任何特定處理器體系架構的成功不僅取決于其技術優(yōu)勢,還取決于市場中其軟件開發(fā)工具生態(tài)系統(tǒng)的完善。工具鏈、集成開發(fā)環(huán)境、編譯器、調試器和專用中間件(application-specific middleware)在促進處理器及其ISA的普及程度方面起著至關重要作用。
開源指令集架構
由于Arm可提供標準ISA,對于半導體供應商而言,他們可以在標準ISA基礎上來適應和增強設備的外圍接口選項,以滿足特定應用需求。與使用Arm IP的其他競爭半導體廠商相比,這種方法還可以在一定程度上促進產品的差異化。對于AVR、PIC等已有ISA,Arm的廣泛采用已降低了它們在市場中的總體份額。
但是,對于處理器客戶來說,由于存在多個處理器供應商,因此在架構上做出決定來采用Arm ISA時非常明智,由此可以方便地選擇購買選項和再次采購相似部件。采用特定工具鏈進行標準化開發(fā)也具有很大的商業(yè)意義。
在一個包含許多開放源代碼概念的行業(yè)中,處理器指令集體系架構領域看起來專有性很強,直到RISC-V ISA于2010年問世,一直是這種情況。RISC-V ISA最初是在加利福尼亞大學伯克利分校開發(fā),是出于學術目的而開發(fā)的ISA,其發(fā)展理念使ISA開源迅速立足生根。之所以將其開源是因為ISA設計在過去40年中變化不大。使其開源將鼓勵更多的相互交流和軟件重用,并由此希望得到工具鏈供應商的長期支持。作為一種開源ISA,廠商無需支付任何特許權使用費,并且可以做出新的指令集和擴展指令。
基本RISC-V ISA及其相關擴展指令是由于學術研究團體和行業(yè)之間的共同努力而開發(fā)和管理。RISC-V ISA支持32位,64位和128位字長。
2015年,在半導體公司合作建立RISC-V基金會(RISC-V Foundation)后,RISC-V的發(fā)展邁出了重要一步。不支付特許權使用費和可擴展性的優(yōu)勢吸引了廣大廠商注意。Arm授權許可用戶雖不能調整指令集以適合如低功耗等特定應用要求,但RISC-V被授權方則完全可以。RISC-V基金會現(xiàn)有750多個行業(yè)成員。
隨著許多主要的處理器供應商開始對RISC-V表現(xiàn)出興趣,軟件工具社區(qū)也不甘心落后,開始在集成開發(fā)環(huán)境和工具鏈中擴展對RISC-V的支持。
用RISC-V啟動設計
SiFive 的Freedom E31 SoC是最早可用的基于RISC-V的32位處理器之一。SiFive由RISC-V ISA創(chuàng)始人創(chuàng)立,之后迅速尋求將其專業(yè)技術推向市場。為了鼓勵原型開發(fā),SiFive眾籌了一個低成本Arduino尺寸開發(fā)板HiFive1。SiFive的 HiFive1 B包含有Wi-Fi連接和32Mb閃存。
圖2:SiFive 的HiFive1 B開發(fā)板。。
SEEED也可以提供一個Feather/MKR格式開發(fā)板Sipeed Longan Nano,它配備有0.96英寸LCD,采用GigaDevice 32位RISC-V內核。
SparkFun同樣提供類似于HiFive1 B的開發(fā)板。SparkFun的RED-V RedBoard還使用Arduino UNO-R3尺寸規(guī)格和SiFive E310 RISC-V SoC。
針對專業(yè)工程師的更全面RISC-V平臺是Microchip的PolarFire SoC FPGA Icicle開發(fā)板。
PolarFire SoC旨在為具有Linux功能的五核RISC-V RV64內核提供評估平臺,還配備有256k邏輯單元和784單元的數學模塊。 Icicle套件包括HDMI、PCIe、USB、CAN、SPI和I2C等在內的全面外圍接口連接,是從物聯(lián)網傳感器到機器學習等應用所需實時、低功耗設計原型的理想選擇,其外部擴展接口選項包括一個mikroBUS插槽和一個Raspberry Pi 40引腳連接器。
?
圖3:Microchip RISC-V PolarFire SoC評估套件功能框圖。
RISC-V未來前景
在相對較短的時間內,RISC-V指令集架構就已經獲得了巨大產業(yè)動力。RISC-V基金會在2020年7月慶祝了RISC-V最初開發(fā)的十周年紀念。根據基金會網站的數據,現(xiàn)在已經有12款基于RISC-V的SoC開始商用,并且有86個內核。
與其它ISA相比,RISC-V憑借具有競爭力的可擴展且免版稅替代方案,已迅速在市場中確立自己的強有力地位。
評論
查看更多