MIPS架構處理器

自從1985年以來,各種基於MIPS架構中央處理器SoCs已經被設計出來且廣泛使用。

MIPS微處理器

 
流水線式 MIPS,展示了指令獲取、指令解碼、執行、內存訪問和寫回等5個階段

1985年,第一個MIPS微處理器R2000發佈。它在某種獨立的片上單元中增加了多周期乘法和除法指令。新的指令被添加進去以將結果從該單元檢索回寄存器文件;這些檢索結果的指令是互鎖的。

R2000可以以大端序小端序引導進入系統。它具有31個32位通用寄存器,但沒有條件代碼寄存器(條件代碼寄存器是AMD 29000和Alpha處理器所共有的功能,設計人員認為這是潛在的瓶頸)。與其他寄存器不同,程序計數器是不能被直接訪問的。

R2000還支持多達四個協處理器,其中一個內置於主CPU中,並處理異常,陷阱和內存管理,而其他三個則留作其他用途。其他三個協處理器的其中之一可選為R2010 FPU,該模塊具有32個32位寄存器,可以用作16個64位寄存器以實現雙精度計算。

R3000在1988年繼承了 R2000 ,它增加了32 KB的一級指令和數據高速緩存(後來很快增加到64 KB),並以高速緩存一致性協議的形式支持共享內存多處理。儘管 R3000 的多處理器支持存在缺陷,但已成功用於多台成功的多處理器計算機案例中。 R3000 內置MMU,這是該時代CPU的常見功能。與 R2000 一樣, R3000 可以與 R3010 FPU配對。 R3000 是市場上第一個成功的MIPS微處理器案例,最終生產了超過一百萬顆處理器。 R3000A 是速度最快的 R3000 版本,運行速度高達40 MHz,可提供32個 VUP(VAX性能單位)的性能。兼容MIPS R3000AR3051以33.8688 MHz運行,儘管它沒有FPU或MMU,但卻是 Sony PlayStation 中使用的處理器。第三方設計中由 Performance Semiconductor 設計的 R3400 和由 IDT 設計的 R3500,它們都是集成 R3010 FPU 的 R3000A。東芝R3900實際上是用於運行 Windows CE 的早期手持式PC的第一個SoC。用於太空應用的抗輻照晶片 Mongoose-V 是集成R3010 FPU 的 R3000 。

1991年發佈的R4000系列將MIPS擴展到完整的64位體系結構,將FPU集成到主晶片上以創建單晶片微處理器,並且在集成時實現了100 MHz的高時鐘頻率。但是,為了達到該時鐘頻率,指令和數據高速緩存各減少到8 KB,並且需要三個時鐘周期來進行訪問。高工作頻率是通過深流水線技術(當時稱為超級流水線)實現的。改進的R4400於1993年問世。它具有更大的16 KB主緩存,基本上無錯誤的64位操作的支持以及對更大的L2緩存的支持。

MIPS科技公司,原來是 SGI 的一個部門MTI,設計了低成本的 R4200 ,這是更便宜的 R4300i 的基礎。 Nintendo 64遊戲機使用了該微處理器的衍生產品NEC VR4300[1]

 
IDT製造,由Quantum Effect Devices設計的帶有裸露矽晶片的R4700 Orion封裝的底視圖
 
R4700 Orion封裝的頂視圖

Quantum Effect Devices(QED)是由 MIPS 前員工創立的另一家公司,設計了R4600 OrionR4700 OrionR4650R5000 。在 R4000 推高時鐘頻率並犧牲了緩存容量的情況下, QED 設計強調了大型緩存設計,可以在兩個時鐘周期內就可以對其進行訪問,並有效利用了矽片面積。 R4600R4700用於 SGI Indy 工作站的低成本版本以及第一批基於 MIPS架構 微處理器 的Cisco 路由器,例如 36x0 和 7x00 系列路由器。R4650用於原始的 WebTV 機頂盒 (也就是現在的Microsoft TV)。 R5000 的 FPU 比 R4000 具有更靈活的單精度浮點調度,因此,基於 R5000 的SGI Indys 工作站比擁有相同圖形硬件、相似CPU頻率的R4400 Indys 工作站擁有更好的圖形性能。 SGI 推出基於 R5000 的SGI Indys 工作站時,為舊的圖形板重新命名,以強調其改進。 QED 隨後為網絡和激光打印機等嵌入式市場設計了 RM7000RM9000 系列設備。 QED 在2000年8月被半導體製造商 PMC-Sierra 收購,後者繼續投資MIPS架構設備。 RM7000 集成256KB L2緩存和一個用於可選L3緩存的控制器。 RM9xx0SoC 設備家族,集成了內存控制器北橋外設,其中包括外圍組件互連PCI控制器,千兆以太網控制器和快速I/O,例如HyperTransport接口。

R8000(1994年發佈)是第一個擁有超純量設計的MIPS處理器,能夠在每個周期執行兩個整數浮點數和兩個存儲指令。該設計分佈在六個模塊上:一個整數單元(具有16KB指令和16KB數據高速緩存),一個浮點單元,三個全定製二級緩存標籤RAM(兩個用於二級緩存訪問,一個用於總線偵聽)和一個高速緩存控制器ASIC。該設計有兩個全流水線雙精度乘法加法單元,可以從4MB片外二級緩存中流式傳輸數據。 R8000 在1990年代中期用於 SGI 的 POWER Challenge 伺服器,後來在 POWER Indigo2 工作站中亦有使用。儘管它的 FPU 性能非常適合科學用戶,但其有限的整數性能和高昂的成本削弱了大多數用戶的吸引力, R8000 僅在市場上銷售了一年,到現在保留下來的此工作站已經相當罕見。

R10000 (1995年發佈)是單晶片設計,運行的時鐘頻率比 R8000 更高,並具有更大的32KB指令緩存和數據緩存。它也是超純量處理器,但其主要創新是亂序執行。即使使用單個內存流水線和更簡單的 FPU , R10000 的大幅改進使其擁有更低的價格和更高的電晶體密度,也使 R10000 對於大多數客戶而言是首選之物。

MIPS科技公司後來的一些設計都基於 R10000 內核。 R12000 使用0.25微米的工藝來縮小晶片並獲得更高的時鐘頻率。修改後的 R14000允許更高的時鐘頻率,並在片外緩存中額外支持 DDR SRAM。以後的迭代分別稱為 R16000R16000A ,與前代相比,它們具有更高的時鐘頻率和更低的晶體製程精度。

MIPS系列的微處理器的其他成員包括 R6000 ,這是一種由 Bipolar Integrated Technology 設計並實現了 ECL 的處理器。R6000 實現了MIPS II 架構。它的轉換後備緩衝區(TLB)和緩存體系結構與MIPS系列的其他成員都不同。 R6000 沒有實現承諾的性能優勢,儘管它在 Control Data 機器中得到了一些應用,但很快就從主流市場中消失了。

歷史

第一代硬件

1981年,約翰·軒尼詩史丹福大學設立了 MIPS (英語:Microprocessor without Interlocked Pipeline Stages)項目以研究精簡指令集計算技術。項目的成果向他展示了這項技術潛在的經濟價值,並讓他在1984年休假期間成立了 MIPS Computer Systems 。該公司設計了一種新的體系結構,也稱為 MIPS ,並於1985年推出了第一個實現 MIPS架構微處理器,即 R2000R2000 的設計被改進後,新的設計在1988年生產並命名為 R3000 。這些32位微處理器構成了其公司在1980年代在市場上競爭的基礎,它們主要用於 SGI 系列的工作站和更高版本的 Digital Equipment Corporation DECstation 工作站和伺服器。 SGI 商業設計與斯坦福 MIPS 有所不同,它在硬件中實現了大多數指令上的互鎖,並提供了完整的乘法和除法指令(以及其他指令)。這些設計由軟件架構師 Earl Killian 指導,他設計了MIPS III 64位指令集擴展部分,並領導了 R4000 微體系結構的工作。[2][3]

1991年,MIPS Computer Systems發佈了第一個64位 微處理器,即 R4000 。 但是,MIPS Computer Systems在將其投放市場時遇到了財務困難。當時 SGI 是MIPS Computer Systems的幾個主要客戶之一, SGI 認為 R4000 對SGI 非常重要,因此 SGI 在1992年直接收購了該公司,以確保這個微處理器的設計不會丟失。之後,該公司被稱為MIPS科技公司,成為了 SGI 的一個子公司。

可授權的架構

在1990年代初期,MIPS科技公司開始將自己的微處理器設計許可給第三方供應商。事實證明,由於MIPS處理器核的簡單性,這種方式相當成功,這使 MIPS 架構的微處理器可以用於許多應用,這些應用所集成的 MIPS 架構微處理器比以前同時期使用的具有相同功能的CISC架構微處理器在設計上的花費少得多,而門數和價格卻差不多。CPU的價格通常與門的數量和外部引腳的數量密切相關。Sun Microsystems 試圖通過許可 SPARC 處理器核獲得類似的成功,但是卻沒有那麼成功。到1990年代後期,MIPS已成為嵌入式系統領域的強者。根據MIPS科技公司的統計,1997年以MIPS架構為基礎的CPU出貨量為4800萬,占 RISC CPU 總市場份額的49%。[4] MIPS 架構如此成功,以至於 SGI 在1998年把MIPS科技公司拆分出來成為一個子公司。如今,MIPS科技公司的全部收入中有一半來自其設計的許可,而其餘的大部分 MIPS 架構處理器則按照第三方的合同設計工作,然後由第三方進行生產。

1999年,MIPS科技公司用兩種MIPS架構取代了先前版本的MIPS架構,即32位 MIPS32 (基於MIPS II,具有MIPS III,MIPS IV和MIPS V的一些其他功能)和用於許可的64位 MIPS64 (基於MIPS V)。NECToshiba 和 SiByte(後來由博通收購)一經MIPS科技公司宣佈就分別獲得了 MIPS64 的許可證。此後,飛利浦LSI LogicIDT 加入了他們的行列。如今, MIPS IP核 已成為嵌入式系統手持計算機,機頂盒,機頂盒等)市場上最常用的處理器核之一。

由於MIPS架構是可授權的,因此其多年來吸引了多家設計處理器的初創公司。 Quantum Effect Devices 是設計 MIPS 處理器的首批初創公司之一(請參閱下一節)。設計 R4300i 的MIPS設計團隊成立了 SandCraft 公司,該公司為 NEC 設計了 R5432 ,後來又生產了 SR71000 ,是嵌入式市場上首批實現了亂序執行的處理器之一。最初的 DEC StrongARM 團隊最終分裂為兩個設計 MIPS 架構產品的初創企業: SiByte ,後者生產了SB-1250,這是首批高性能MIPS 架構的SoC;而 Alchemy Semiconductor (後來由AMD收購)推出了用於低功耗應用的 Au-1000 SoC。Lexra 使用 MIPS架構 設計並生產產品,並為音頻晶片市場提供了擁有 DSP 擴展的微處理器和為電信市場提供了擁有多線程支持的處理器。由於 Lexra 未被授權就使用該架構,因此兩家公司之間開始了兩項訴訟。當 Lexra 承諾不宣傳其處理器兼容 MIPS 時,第一個訴訟很快就解決了。第二個訴訟(關於處理未對齊的內存訪問的MIPS專利4814976)長期持續了下去,損害了兩家公司的業務,最終達到了MIPS科技公司的目的,後者為 Lexra 提供了免費許可和大量現金支付。

RMI 從失敗的 SandCraft 購買了產品線,後來生產出的針對電信和網絡市場的晶片擁有8個處理器核。 Cavium 最初是安全處理器供應商,為相同的市場生產具有8個處理器核,後來生產最多擁有32個處理器核的設備。兩家公司都自主設計了微架構,MIPS科技公司只對它們進行了體系結構的授權,而不是它們從MIPS科技公司購買IP核

桌面領域

使用 MIPS 架構處理器來製造工作站的製造商有 SGIMIPS Computer Systems,Whitechapel Workstations ,Olivetti ,Siemens Nixdorf Informationssysteme ,AcerDECNECDeskStation英語DeskStation

針對MIPS架構編寫或移植的作業系統有:

嵌入式領域

 
君正JZ4725 是一個基於MIPS架構的SoC樣例

在1990年代,基於 MIPS架構 的晶片廣泛應用於嵌入式市場,包括計算機網絡電信視頻街機遊戲視頻遊戲機計算機打印機、數字機頂盒數碼電視DSL電纜調製解調器個人數字助手等多種產品。

出於面向嵌入式市場的MIPS核心具有低功耗、低發熱的特質、並且MIPS架構在嵌入式領域積累了大量的開發工具及資料,使其在嵌入式領域的應用仍然非常廣泛。

面向嵌入式市場的可合成IP核

2000年至2015年,在各種MIPS架構版本中使用的大多數技術已作為嵌入式系統設計所需的IP核(構建模塊)提供給設計廠商。MIPS官方提供32位64位基本IP核,被稱為4K5K。 這些IP核可以與諸如FPUSIMD模塊,各種輸入/輸出設備等附加單元混合使用。

MIPS架構 IP核在商業上取得了成功,過去在許多消費和工業應用中使用。MIPS架構 IP核可以在以前的 CiscoLinksysMikrotik的路由器、電纜調製解調器ADSL 調製解調器、智能卡激光打印機引擎、機頂盒機械人和手持計算機中找到。 在手機和PDA中,MIPS在很大程度上無法取代現有的競爭產品ARM

使用MIPS架構IP核的處理器有:

  • IDT RC32438;
  • ATI/AMD Xilleon;
  • Alchemy Au1000, 1100, 1200;
  • Broadcom Sentry5;
  • RMI XLR7xx;
  • Cavium Octeon CN30xx, CN31xx, CN36xx, CN38xx and CN5xxx;
  • Infineon Technologies EasyPort, Amazon, Danube, ADM5120, WildPass, INCA-IP, INCA-IP2;
  • Microchip Technology PIC32;
  • NEC EMMA and EMMA2, NEC VR4181A, VR4121, VR4122, VR4181A, VR4300, VR5432, VR5500;
  • Oak Technologies Generation;
  • PMC-Sierra RM11200;
  • QuickLogic QuickMIPS ESP;
  • Toshiba Donau, Toshiba TMPR492x, TX4925, TX9956, TX7901;
  • KOMDIV-32, KOMDIV-64;
  • ELVEES Multicore

基於MIPS架構的超級計算機

MIPS架構 的應用之一是其大規模地在超級計算機中的應用。 Silicon Graphics(SGI)在1990年代初將其業務從台式機圖形工作站重新定位到高性能計算市場。該公司首次涉足伺服器系統的成功,則是基於 R4400R8000 以及後來的 R10000 的 Challenge 工作站系列。這些成功促使 SGI 創建了功能更強大的系統。R10000 的高集成性使 SGI 生產出Origin 2000,並使用其 NUMAlink 一致性高速緩存非均勻存儲訪問模型互連將最大可集成的CPU數量擴展到1024個。Origin 2000源自 Origin 3000系列,該系列最大可集成1024個CPU,但使用的CPU是頻率最高700MHz的 R14000R16000 晶片。2005年,當 SGI 做出戰略決定把研發方向轉移到英特爾IA-64 架構時,其基於MIPS的超級計算機的項目被取消。

一家名為 SiCortex 的高性能計算公司在2007年推出了基於MIPS的大規模並行的超級計算機。這些計算機基於 MIPS64 架構並且使用 Kautz graph 拓撲的高性能互連。該系統最創新的方面是其多核處理節點,一個節點集成了六個 MIPS64 處理器核。這個晶片集成了一個crossbar switch 、內存控制器、互連DMA引擎、千兆以太網PCIe控制器,但其功耗僅有10瓦,卻有6GFLOPS峰值浮點性能。使用該系統的最強大的機器是 SC5832 ,它是由972個此類晶片組成的單機櫃超級計算機,總共具有5832個 MIPS64 處理器和8.2TFLOPS的峰值浮點性能。

龍芯

龍芯英語:Loongson,舊稱Godson[7])是由中國科學院計算技術研究所龍芯中科、神州龍芯等機構、公司所設計的一系列各種晶片(包括通用中央處理器SoC微控制器晶片組等),採用MIPSLoongISA精簡指令集架構,由MIPS科技公司授權使用MIPS指令集[8]。龍芯1號系列為嵌入式領域晶片,已經被多家企業使用。龍芯2號系列速度最高為1GHz,用於瘦客戶端工控等低中端領域。龍芯3號系列於2010年推出成品,用於桌面伺服器超算工控等領域。

MIPS Aptiv 系列

MIPS Aptiv 系列在2012年發佈。[9] 其系列包含三個基於MIPS32 Release 3架構的32位CPU產品。

MIPS Warrior 系列

MIPS Warrior系列在2013年六月發佈。[10] 其系列包括多個基於MIPS Release 5和Release 6架構的32位64位晶片產品。

參考

  1. ^ NEC Offers Two High Cost Performance 64-bit RISC Microprocessors. [2019-12-13]. (原始內容存檔於2020-06-04). 
  2. ^ Earl Killian. Paravirtual. 2010-11-26 [2010-11-26]. (原始內容存檔於2012-02-13).  |url-status=|dead-url=只需其一 (幫助)
  3. ^ S-1 Supercomputer Alumni: Earl Killian. Clemson University. 2005-06-28 [2010-11-26]. (原始內容存檔於2012-05-09). Earl Killian's early work w... As MIPS's Director of Architecture, he designed the MIPS III 64-bit instruction-set extension, and led the work on the R4000 microarchitecture. He was a cofounder of QED, which created the R4600 and R5000 MIPS processors. Most recently he was chief architect at Tensilica working on configurable/extensible processors. 
  4. ^ MIPS Brochure (PDF). MIPS Technologies Inc. [2013-03-02]. (原始內容存檔 (PDF)於2016-06-04). 
  5. ^ Patrick Fitzgerald. Silicon Graphics Seeks Chapter 11 As Sales Decline . Wall Street Journal. 2006-05-06 [2019-12-13]. (原始內容存檔於2021-01-26). 
  6. ^ End of General Availability for MIPS® IRIX® Products. 2013 [2019-12-13]. (原始內容存檔於2014-02-10). 
  7. ^ 龙芯处理器英文品牌定名Loongson(组图)_业界_科技时代_新浪网. tech.sina.com.cn. [2019-12-14]. (原始內容存檔於2011-07-09). 
  8. ^ 龍芯故事 - 關於那些不明真相的群眾對龍芯的疑惑頁面存檔備份,存於互聯網檔案館),龍芯有關MIPS指令集使用說明。
  9. ^ S, Ganesh T. MIPS Technologies Updates Processor IP Lineup with Aptiv Series. www.anandtech.com. [2016-06-22]. (原始內容存檔於2020-11-12). 
  10. ^ Introducing the MIPS Series5 ‘Warrior’ CPU cores: the next revolution in processor IP from Imagination - Imagination Technologies. Imagination Technologies. 2013-06-26 [2016-06-22] (英國英語). [失效連結]

另見