關於Mips--基本認識

【轉自】 http://www.eccn.com/design_2011040714261440.htm


破解市場迷思:MIPS-最適用於設計MCU的處理器

Time:2011-04-07 14:26:14 Author: Source:MIPS科技公司

關鍵字:MIPS科技公司,破解市場迷思,MIPS,設計MCU的處理器

1 引言

MIPS科技公司以開發與授權高性能處理器內核,以及32位和64位架構享譽業內。MIPS作爲數字家庭與網絡領域的市場領導廠商,其業界標準MIPS32®架構能滿足32位微控制器(MCU)產品開發的要求,提供比其它基於ARM®架構的競爭產品性能更高的、功能更豐富的、功耗更低的解決方案。

MCU廣泛用於多個市場應用領域,比如工業、辦公自動化、汽車、消費電子設備以及無線通信等先進技術。MCU在這類應用中的運用使得對嵌入式處理器內核的需求日益增加,以期提供更高水平的性能效率、更好的實時響應性能、更低的功耗和廣大範圍的生態系統支持。這些需求源於一系列新興挑戰的出現,包括運行更復雜的RTOS控制軟件的要求、更高速度通信接口及更先進的確定性接口的集成。

32位MCU在不斷髮展,以爲下一代應用提供解決方案。據Semico Research公司預測,未來數年間,32位MCU產品的付運量將以18%的年均複合增長率(CAGR)增長,到2014年,將達25.73億。

對MCU產品而言,要實現性能、成本和上市時間目標,關鍵在於選擇正確的處理器架構。本文將概述採用具有業界領先性能的MIPS®處理器內核實現的一些設計特性。 此外,我們還將對基於MIPS和ARM架構的MCU設計解決方案進行比較,這兩種架構是目前最流行的兩大嵌入式處理器IP架構。我們的分析顯示,MIPS的解決方案性能更高、功耗更低且具有更先進的特性,另外,MIPS還可提供出色的開發支持服務。

2 MIPS®架構

MIPS®架構是1980年代初期由斯坦福大學基於一種載入/存儲RISC(精簡指令集計算)技術研發出來的。相比前代的CISC(複雜指令集計算)架構,RISC技術執行的是一個簡單卻完善的指令集,並採用深度指令流水線,故執行速度更快,性能更高。相反,ARM架構則是基於RISC/CISC混合架構,其設計複雜,且很難獲得高水平性能。

自從1985年首個MIPS處理器(R2000)推出之後,MIPS架構與時俱進。該指令集架構(ISA)不斷擴展,已發表好幾個版本,性能逐一提升。目前的版本包括32和64位架構實現方案:MIPS32® 和 MIPS64®。除了開發基於MIPS32的一系列32位處理器內核之外,MIPS還面向業界授權MIPS32 和 MIPS64架構。獲授權的廠商,包括Broadcom、Cavium Networks、LSI Logic、NetLogic Microsystems、瑞薩電子、索尼、東芝以及中科院計算技術研究所,目前都在積極面向數字家庭、網絡、微控制器及其它應用付運MIPS-Based™ 產品。而且,MIPS的授權廠商每年的付運量在6億片以上,迄今MIPS-Based SoC的付運量超過20億片。

圖1  MIPS 架構與ASE

圖1所示爲目前MIPS架構系列的產品。標準MIPS32/ 64架構可通過MIPS16e®、SmartMIPS®、DSP、3D及多線程等可選專用擴展(ASE)來進行擴展。這些ASE專爲增強專門應用的性能而設計。例如,DSP ASE可提供硬件和軟件增強,以加速MIPS處理器內核設計中的信號處理功能。類似地,MIPS16e指令集包含了解碼到對應的16位形式的“最常用的”MIPS32指令。MIPS16e可壓縮應用代碼,所需存儲容量比 MIPS32的更小,同時通過減小存儲器帶寬,縮短執行時間,仍能保持高水平的性能。圖1所示的每一種ASE都有利於提高目標處理器內核的專用性能。

MIPS最近推出了一種完整的指令集架構(ISA),同時包含16位和32位指令,旨在軟件代碼密度與執行吞吐量最大化。 microMIPS可減少30%的代碼量,並以與MIPS32幾乎相同水平的性能執行。microMIPS被整合在專爲集成在MCU和嵌入式控制器SoC設計中而開發的MIPS32 M14K™ 與 M14Kc™ 處理器內核中。

MIPS ISA標準軟件平臺結合了採用MIPS32/64架構實現的先進設計技巧與整合在其處理器內核中的先進設計特性,優於競爭對手解決方案,並提供有額外的靈活性與持續提升的空間。

2.1 MIPS架構性能

所有的MIPS處理器內核,從高端多核解決方案到緊湊型、流水線更短的內核,都是基於性能相同的MIPS32基礎架構而設計的。

MIPS內核的性能提高主要得益於內核執行單元的增強,其通過執行更長流水線、超標量和多線程微型架構來提高處理器的最大工作時鐘頻率。此外,由於整合了高速存儲器接口、高效緩存控制器、存儲器管理單元等設計特性,並支持大量標準架構中的浮點寄存器和加速器,還可獲得額外的性能提升。

MIPS32架構帶有32個標準通用寄存器(GPR),其中每個寄存器均爲32位。在設計時可以選擇創建另外32組寄存器,用作額外的數據存儲或“影子寄存器”,可指定給專用向量中斷控制器邏輯,相比傳統的硬件/軟件方法,這種方案能大幅度減少中斷延遲,縮短上下文切換時間(context switching)。

通過硬件乘除法單元(MDU),以及大量符號/無符號乘法、除法和乘法-累加指令的軟件支持,可提高MIPS32架構的信號處理性能。對MDU,MIPS架構採用了一條單獨的流水線,其與整數流水線並行工作。

2.2  MIPS與ARM性能特性之比較

以RISC技術爲基礎,再加上MIPS架構中的可擴展硬軟件設計,使得MIPS的解決方案比ARM的同類解決方案性能更高、功耗更低且面積更小。MIPS科技原來主要瞄準高性能工作站與服務器,而ARM最初針對低端移動系統開發基本內核。MIPS充分利用它在高性能設計方面的經驗,向主流嵌入式系統市場轉型。ARM則繼續沿用其原有性能有限的架構,相比MIPS,它處於不利地位。

MIPS32 4K®處理器內核系列包括MIPS32 M4K®內核,其應用程序執行速度超過同類ARM Cortex™-M系列內核。這一優勢部分可歸功於更高效的MIPS指令集架構和優化軟件工具,但主要原因還是在於MIPS架構具有衆多專爲更高的性能級和應用效率而設計的出色特性,其中包括一般是在微控制器設計中實現的加速功能。例如:

MIPS 內核包含32個GPR,而ARM內核只有16個GPR。這意味着寄存器溢出更少,從而性能更高。
MIPS內核包含有影子寄存器組,而ARM內核沒有。使用映像寄存器可加速中斷處理保存/恢復功能,減少上下文切換(context switching)和中斷延遲中所需要的週期。

MIPS架構主要執行單一操作指令,而ARM指令在寫入GPR之前執行多個操作(如移位操作、算術操作、條件校驗位等等),故MIPS更容易達到更高的時鐘頻率。

MIPS架構採用比ARM更簡單的存儲器尋址模式工作,故更容易達到更高的時鐘工作頻率。

MIPS架構的預測執行較少,這大大降低了其邏輯複雜性,並使MIPS內核能夠達到更高的頻率。

M4K與M14K具有5級流水線結構,故無需預測分支方向。而ARM內核採用了複雜的分支預測和分支推測邏輯。

MIPS架構實現了帶延遲的分支,而ARM結構不這樣;這意味着,利用MIPS,在短流水設計時可獲得更高效率。

MIPS同時提供32位和64位架構,MIPS64架構具有後向兼容性和更高的性能。ARM只有32位架構,而且並非所有版本都後向兼容。

3 專爲高性能MCU而設計的處理器內核 

2002年,MIPS科技公司推出了M4K內核,這是一種可用於MCU和小尺寸嵌入式控制器設計中的高性能、可綜合處理器內核。作爲手機、DTV、有線調制解調器、GPS和數碼相機中的控制器,M4K已被廣大範圍的應用所採納,迄今獲授權的公司已近30家,其中部分4K產品的獲授權廠商甚至超過了120家。此外,M4K內核已獲Microchip公司採用,作爲其32位PIC32 MCU產品系列中的標準微控制器。

M4K內核在設計中整合了一系列功能特性,能夠提供同類最佳性能,大大超越了ARM Cortex-M系列處理器。

3.1 M4K® 執行流水線 

M4K內核的性能可達1.5 DMIPS/MHz,而根據ARM網站公佈的數據,Cortex-M3的性能只有1.25 DMIPS/MHz,比前者低約20% (ARM Cortex-M0的性能甚至更低,僅0.9 DMIPS/MHz,比MIPS32 M4K內核低40%;Cortex-M0 還存在衆多其它侷限性,我們接下來會討論到)。換言之,Cortex-M3 需要使用高20%的時鐘頻率才能達到M4K內核的性能,但隨之產生更多的功耗。

類似的,如第4節的“性能基準”所述,在採用CoreMark 基準時,M4K內核可達到2.297 CM/MHz的性能,比同類的基於Cortex-M3的解決方案高20-30%。MIPS已把業內越來越獲認可的CoreMark基準視爲比Dhrystone MIPS更精確的CPU性能測量標準。

M4K執行單元採用5級流水線微架構,如圖2所示,而Cortex-M3內核的執行則基於3級流水線架構。因此M4K內核能夠採用更高的最大時鐘頻率,每秒鐘處理更多的指令,從而獲得比Cortex-M3更高的性能和執行效率。

在M4K內核中,所有ALU和移位操作都在單週期內完成。旁路邏輯(Bypass logic)包含在流水線中,在所有流水線級完成之前提供快速數據存取以供下一條指令所用。由於執行特定任務的週期縮短,性能得以提高。

圖2 M4K® 內核 5級流水線


3.2 系統協處理器(CP0) 

系統協處理器(CP0)是MIPS 架構所獨有的,M4K 內核就採用了這種技術。CP0作爲一個輔助執行單元工作,可分擔部分內核資源的管理,包括異常處理和存儲器管理,故而能夠提高內核的性能。

3.3 GPR 和影子寄存器

M4K內核在設計時可以選擇把通用寄存器(GPR)的最大數量增加到16組,其中每一組都包含了完整的32個寄存器。這些GPR可片上存儲參數和操作數,因此減少存儲器轉儲的開銷,並釋放指令週期。這對提高計算吞吐量十分有利。

如前所述,採用GPR作爲映像寄存器能夠減小MCU系統中常見的服務中斷事件的開銷,從而提高系統性能。

在異常中斷時,M4K內核會確定使用哪一組映像寄存器,將其設置爲激活的GPR組,允許中斷向量繼續執行。這種處理完全避免了上下文數據(context)的保存或恢復週期,因爲當前的激活寄存器組專門負責指定的中斷服務程序。這不僅意味着在中斷或異常代碼開始實際執行之前不會浪費時間,而且還表示自從上一次異常或中斷事件發生以來寄存器的內容一直被完好保存,這就節省了從SRAM空間取回特定數值的時間。

3.4 MDU

M4K內核中MDU的高性能實現方案能夠在單週期內完成一次32x16位乘法(或MAC指令), 兩個週期內完成32x32乘法/MAC操作。

MDU有自己的專用功能單元,可獨立操作內核執行流水線。所有乘法/除法指令發送給MDU,而把需要ALU的其它指令,譬如載入/存儲和移位操作,交由內核流水線並行處理。M4K內核中的MDU在加速信號處理操作方面頗具優勢,比如FFT、FIR 和IIR濾波器計算等在工業和網絡類型應用中一般由微控制器來執行的操作。下面舉例說明M4K加速DSP型功能的能力:一個PIC32 可在 22K 週期數,即283微秒@80MHz條件下執行一次256點16位 radix-4 FFT,比基於Cortex-M3微控制器的STM32的週期數少14%。

3.5 SRAM 接口 

代碼存取與數據存取的速度對處理器的性能有重大影響。在存儲器接口設計方面,設計人員作出了巨大的努力,以期儘可能增大可用帶寬,並儘可能減小延遲,最終達到0-等待狀態數據傳送的目標。MIPS架構整合了一個靈活的存儲器總線架構,其能夠從高速閃存(flash)或從高性能片上SRAM執行代碼。M4K內核還整合了一個用於指令及數據存儲器的高速低延遲SRAM接口。該接口支持單週期和多週期存儲器存取。M4K SRAM接口可配置爲雙模或統一模式。雙模模式可提供最高性能,並帶有獨立的數據(D-SRAM)總線與控制信號,以及指令(I-SRAM)總線與控制信號。雙模允許在I-SRAM 和 D-SRAM接口上同步處理任務,消除在公用總線接口上可能出現的延遲,防止其減緩程序的執行速度。

I-SRAM接口具有改變信號輸入方向的能力,在需要時,可將D-SRAM讀週期改變到I側方向。這有助於改良的Harvard架構(基於MCU的系統的一個常規特性)的實現,允許非易失性數據在程序存儲器中的存儲。

SRAM接口提供了中止M4K內核5級流水線的任何指令處理任務的能力,這種能力有利於外部系統控制器立即響應外部事件,如中斷請求或通過EJTAG調試接口的請求。在處理典型微控制器應用中的高度確定性特性時,快速響應外部中斷事件的能力至關重要。

SRAM接口還具有中止長延遲處理任務的能力。在處理典型微控制器應用中的高度確定性特性時,快速響應外部中斷事件的能力至關重要。

M4K內核SRAM接口爲M4K內核提供了一種高速、易於使用且高度可配置的存儲器接口,而且,大多數處理任務都是在單週期內完成的。除了指令和數據存儲器,它不包含額外的開銷,如處理任何情況的協議或信號等,故有助於芯片設計人員實現M4K內核的最大性能。

而Cortex-M3卻沒有這樣完善全面的存儲器控制特性,因此其性能比M4K內核的要低。

3.6 CorExtend®

MIPS32架構的另一個特性是CorExtend,其可爲開發人員提供產品差異性和定製化功能。這是設計時的一個選項,通過用戶定義指令(UDI)和定製硬件來擴展內核指令集。CorExtend允許設計人員在內核中自行增添功能性,以加速目標應用中造成瓶頸障礙的專用功能,從而提高系統總體性能。CorExtend在典型MCU環境中的使用包括專用圖形控制器、TCP/IP加速器、定製安全/加密邏輯、無線基帶控制或其它實時控制接口的設計。CorExtend與內核流水線協同工作,如圖3所示。CorExtend的功能性與MIPS32完全兼容,並得到所有領先的MIPS兼容開發工具的支持。

圖3 CorExtend®的流水線結構

4 性能基準 

CoreMark™ 是由EEMBC®開發的一種專門針對處理器內核的性能測試而設計的開源基準。CoreMark架構把處理器內核與所有系統附屬部件隔離開來,包括存儲器子系統的影響和編譯器的‘優化技巧’。CoreMark測試處理器流水線和常用功能的性能,包括讀/寫、整數和控制操作等。因此,相比其它基準,它能夠針對處理器內核性能及功能性提供一個人爲因素更少的、更接近實際水平的描述。

根據CoreMark網站的定義:“工作負載(workload)實際上包含了若干常用算法,如矩陣運算(允許使用MAC和常用數學運算)、鏈接表處理(常使用指針)、狀態機處理(常使用數據相關分支)和循環冗餘碼校驗(CRC是嵌入式結構中極爲常用的函數)。”

圖4 比較了從CoreMark網站上獲得的基於MIPS M4K的MCU與基於ARM Cortex-M3 /M0的MCU的相關數據。

圖4  M4K® PIC32 的CoreMark測試結果,並與意法半導體(ST)及恩智浦半導體公司(NXP)的Cortex-M 器件相比較




相比採用0等待狀態存儲器的基於Cortex-M3 及 Cortex-M0的競爭產品,基於M4K的PIC32 2採用2等待狀態存儲器工作,可獲得比更高的CoreMark/MHz性能。從圖4可看出,在相同時鐘頻率的條件下,PIC32的性能比Cor­tex-M3 STM 與 NXP解決方案(藍色)高20-50%,比Cortex-M0 NXP解決方案(黃色)高63%以上。

5 低功耗與小外型設計 

一個典型SoC中,處理器內核之外的存儲器、外設和控制邏輯佔用了大部分面積,其大部分功耗也來源於此。不過,除了最佳性能效率之外,MIPS科技還認識到,在微控制器設計中硅成本與功耗也是確保產品成功的關鍵指標。MIPS在處理器內核設計中整合了一些能夠儘量減小面積和功耗的特殊特性,本節將描述其中一部分。因此,MIPS科技得以通過提供‘同類最佳’面積和功耗解決方案,進一步增強其在性能方面的領導地位,從下面幾節對M4K 和 Cortex-M3的比較中可以清楚看到這一點。

5.1 可降低功耗的特性 

M4K微型引擎的高性能優勢使應用能夠運行在更低的時鐘頻率下。功率與頻率成正比,故隨頻率的減小,功率降低。從前面的分析我們可看到,M4K內核的處理性能至少比Cortex-M3高20%,這意味着它的功率效率(DMIPS/mW)也更好――亦即相同的任務所需的功率更低。M4K內核的高性能使它能夠更快地完成任務,有更多的時間處於低功耗狀態(空閒狀態),從而有助於降低功耗。

M4K內核是一種可綜合設計,能夠在不同的低功耗工藝和庫之間移植。該內核也是一種靜態設計,允許在線時鐘改變(根據需要改變到更低頻率)。它甚至還支持時鐘中止,這時功耗會降至µW數量級的極微水平(這種情況下,功耗主要源於工藝泄漏電流)。

M4K內核提供有好幾項功率管理模式,通過使用精細度時鐘門控技術並支持節電模式來對功率進行控制。M4K內核的功耗主要源於時鐘邏輯與寄存器。M4K在整個內核上廣泛採用時鐘門控技術,由此提供一種可關斷內核未用模塊的高效機制。M4K內核還通過使用內部寄存器與特定WAIT指令控制,提供進入低功耗與睡眠模式的機制。當WAIT指令被執行時,內部時鐘暫停,流水線凍結。任何中斷或復位,都將使內核退出睡眠模式,恢復正常工作。

這些功率管理特性的高效實現,結合低功耗製造工具,有助於大幅度降低有功功耗。

表1比較了在180nm 和 90nm工藝條件下 M 4K 與 Cortex-M3的功耗。這裏,M4K的工作頻率減小以匹配Cortex-M3的最大時鐘速度,它的功耗爲在該頻率下測得。

表1  M4K® 與 Cortex–M3的速度/功耗比較

  TSMC 180nm G TSMC 90nm G  
M4K Cortex-M3 M4K Cortex-M3
Optimization Speed Area Speed Area Speed Area Speed Area
Frequency (MHz) 180 100 50 100 50 360 275 50 275 50
Power (mW/MHz) 0.37 0.21 0.17 0.33 0.2 0.06 0.03 0.02 TBD 0.1
Power Efficiency (DMIPS/mw) 4.05 7.14 8.82 3.75 6.25 25 50 75 TBD 12.5
Libraries TSMC 7T SVT ARM SC7 TSMC 9T SVT TSMC 7T SVT ARM SC9

由表1可看出,在相同時鐘頻率下:

在180nm工藝下,利用速度優化配置,M4K的功耗只有Cortex-M3的65%。利用面積優化50MHz目標時鐘速度,M4K的功耗比Cortex-M3的小15%。

在90nm面積優化50MHz配置中,M4K的功耗只有同等Cortex-M3的20%。可惜ARM網站沒有提供90nm工藝下的功耗數據,不過,通過推測可以計算出M4K的功率節省有多可觀。

• 在功率效率方面,M4K優於Cortex-M3(180nm時大約2倍,90nm時爲6倍)——考慮到M4K的更高性能和更低功耗特性,這是不足爲奇的。
 
在130nm工藝條件下,M4K內核顯示出類似的低功耗特性。沒有130nm Cortex-M3的數據可供比較,因此下面我們只給出了130nm時M4K的功耗數據。

速度優化配置 @ 216MHz 最大頻率下,功耗爲0.17mW/MHz 

面積優化配置 @100MHz 頻率下,功耗爲0.06mW/MHz。

5.2 小尺寸的特性

M4k內核是一個高功率效率、高度可配置且靈活的處理器內核。圖5所示爲M4K內核的可選模塊,包括調試/跟蹤(EJTAG)、COP2 協處理器接口和 CorExtend擴展。MIPS16e ASE指令解碼器爲可選。

圖5  M4K®內核的結構示意圖


爲了減少門數,M4K提供了一組全面完整的設計配置選項。可配置選項包括激活/禁用調試功能、設置調試/跟蹤斷點的數目與類型、快速或慢速MDU、設置GPR寄存器組的數目,以及數據與指令SRAM接口分開或統一。

利用配置選項可綜合出一個經過速度或面積優化,能夠滿足所需應用目標頻率的要求,同時獲得最小尺寸與門數的實現方案。內核面積與工藝、單元庫及應用所需性能有關。要比較M4K內核與Cortex-M3在減小內核面積方面的設計效率,應該充分考慮到所有這些因素。不過,M4K內核只需33K門即能實現,即使而且擁有更多的特性功能,尺寸仍然小於Cortex-M3的。

6 生態系統

SoC開發環境包括硬件/軟件調試工具及其它第三方解決方案,在選擇處理器時是一項重要的考慮事項。

MIPS科技擁有一支致力於提供一系列硬件和軟件開發工具的專業團隊,可幫助設計人員成功地測試MIPS處理器並集成到SoC中,並且驗證它在目標系統應用中的工作性能。這些工具包括System Navigator™ EJTAG 調試探針、同時支持RTOS和Linux 目標的GNU軟件工具鏈、用於軟件剖析和協同仿真的週期精確及指令精確仿真器、基於FPGA的開發/評估板與Navigator集成元件套件(ICS),以及可與其它MIPS工具集成的基於Eclipse的開發環境。

圖6 系統Navigator™ 調試探針與SEAD3開發板

除此之外,MIPS科技還創建了一個MIPS 聯盟計劃(MAP),旨在支持廣大範圍的第三方生態系統。MAP是一個由100多家合作伙伴組成的社區,他們共同合作,提供數以百計的解決方案來支持MIPS架構和處理器內核。這個生態系統是設計人員的一個寶貴資源,可爲他們提供瞄準廣大範圍的市場應用(包括MCU)的MIPS兼容工具及解決方案,幫助他們加快產品上市。

MIPS生態系統已發展成爲一個擁有豐富且多元化支持的基礎架構,包括衆多分別提供OS、RTOS、硬件調試工具、軟件開發產品、應用軟件、EDA工具、物理IP及其它相關專用產品的合作伙伴。對於MCU開發,生態系統有許多支持範例可供衆多供應商選用。提供MCU支持的部分MIPS聯盟合作伙伴如下:

Express Logic、Mentor Graphics、Micrium、Segger、Green Hills Software、Wind River、CMX、FreeRTOS 等RTOS
供應商

提供調試探針和仿真器的Ashling、Luterbach、Macraigor、Corelis

提供軟件開發工具的CodeSourcery、Green Hills、Mentor Graphics、Hi-Tech 

提供仿真模型的Carbon、Imperas

提供SoC IP的Sonics、Dolphin、Denali

提供EDA/ESL 工具的Synopsys、Cadence、Magma

7 MIPS32 M14K™ 內核 

MIPS 科技最近推出的兩款新型MIPS32 4K處理器內核――MIPS32 M14K 與 M14Kc,繼續引領着它在微控制器及其它高性能、小外型及成本敏感的嵌入式應用方面的創新與發展。這兩款內核採用雙解碼器設計,包括MIPS32及微MIPS的指令解碼器。它們是整合了新型microMIPS代碼壓縮指令集架構並與MIPS32兼容的首批內核。microMIPS能夠提供很高的代碼密度與性能水平:維持原有MIPS32性能,調試至少減小30%的代碼量。

圖7 M14K™ 內核結構示意圖



與Cortex-M3相比,M14K內核擁有和M4K內核同樣的優點:更好的性能,更低的功耗,更小的尺寸,更高的可配置性和更大的靈活性。此外,M14K內核還具有Cortex-M系列所沒有的其它一些優點,如表2所示。

表2:M14K™、Cortex–M3和Cortex-M0的特性比較

Feature

MIPS M14K

ARM Cortex-M3

ARM Cortex-M0

Architecture

Harvard

Harvard

Von Neumann

Pipeline stages

5

3

3

ISA

MIPS32 microMIPS

Thumb-2

Thumb Thumb-2 (subset)

Legacy 32-bit decoder

Y - MIPS32

N

N

Total instructions

300+

155

56

DMIPS performance

1.5 DMIPS/MHz

1.25 DMIPS/MHz

0.9 DMIPS/MHz

CoreMark performance

2.36

1.76

1.6

GPRs

32

16

13

GPR sets (max)

16

1

1

Interrupt control

Y - int & ext

Y - int NMC

32

Priority levels

8

4

4

Interrupt latency

10 cycles

16 cycles

16 cycles

Tailchaining

Y

Y

Y

Atomic bit instructions

Y

Y

N

Instruction-only trace

Y

N

N

PC sampling

Y

N

N

Performance counter

Y

N

N

Fast debug channel

Y

N

N

Multiply-divide unit

Y

Y

Multiply only

Local code RAM (max)

4 GB

1 GB

None

Local data RAM (max)

4 GB

1 GB

None

Parity

Optional

N

N

Fast SRAM interface

Y

N

N

Flash memory prefetch

Y

N

N

MMU

Y- FMT

Optional

Optional

External interface

AHB-Lite

AHB-Lite

AHB-Lite

Co-processor interface

Y

N

N

Custom instruction support

Y

N

N


Cortex-M0簡介:Cortex-M0的核心架構版本被稱爲ARMv6,是Cortex-M3的ARMv7架構的前代版本。這實際上是一個帶一些Cortex-M3功能的ARM7架構。它執行一個3級流水線結構,其性能僅爲0.9 DMIPS/MHz,甚至不及Cortex­M3。

Cortex-M0總共執行56條Thumb和Thumb-2指令,其中只有6條是32位指令。如果不修改,爲Cortex-M3編寫的大部分代碼都不能在Cortex-M0上運行。

與ARM7一樣,Cortex-M0也重新採用馮·諾依曼(Von Neumann)架構。Cortex-M0不支持本地存儲,而是通過AHB總線從主存儲器上讀取代碼和數據,它在數據傳送完成之前需要額外的等待,因而大大降低了性能。

Cortex-M0的完整配置約爲24K門 。尺寸雖然小了,但Cortex-M0卻缺乏33K門大小的 M4K或M14K內核所具有的許多標準特性和性能。以犧牲Cortex-M0的性能和功能來換取面積外型的減小,有些得不償失。

8小結

在爲數字家庭和網絡市場提供高性能和高效率應用產品方面,MIPS科技口碑卓著。標準MIPS架構在不斷改進增強,以幫助微控制器設計人員應對技術挑戰,提供比ARM Cortex-M系列產品更出色的性能、更低的功耗及更多的先進特性。

由於具有更高的效率和更好的可配置性,M4K和M14K內核爲MCU和嵌入式控制器的設計人員提供了一種“3對1”的方案:無論是與Cor­tex-M3、-M0還是-M1相比,單個M4K/M14K內核都能提供更好的性能和更多的功能,它能夠以一取代這三種內核。

隨着MCU應用的逐漸普及,對高性能、低功耗及實時響應的要求也不斷提高,32-位處理器架構是滿足這些需求的最佳選擇。

在選擇MIPS處理器內核時,重點需考慮以下因素:

• Performance 性能

MIPS M4K和M14K內核執行5級流水線架構,性能達到1.5 DMIPS/MHz。ARM Cortex-M3及-M0爲3級流水線設計,性能分別爲1.25和0.9 DMIPS/MHz  – 比M4K/M14K低20%和60%。

在180nm和90nm工藝條件下,M4K和M14K內核的最大時鐘頻率比同等配置的Cortex-M3高20%。

CoreMark基準的結果顯示,M4K PIC32性能爲2.297 CM/MHz,比在相同時鐘頻率下執行的Cortex-M3 STM32F性能高20%。

M14K中斷延遲爲10個週期,而Cortex-M3爲12個週期。在處理連續(back-back)中斷時,M14K內核需要的週期數比Cortex-M3的少30%。

PIC32和M14K內核利用一個預取緩衝區來減少閃存的存取時間,並利用一個快速SRAM接口來加快執行速度,Cortex-M3則沒有。

PIC32的DSP性能比執行常用信號處理FFT算法的STM32F高14%。

• 低功耗及高電源效率

• 在MCU目標工藝節點上,相比Cortex-M3,M4K的功耗大幅降低,性能效率大幅提升。在180nm時,在相同時鐘頻率下,M4K的功耗比Cortex-M3小65%,而功效達到其2倍。

MIPS生態系統:包含MIPS提供的廣大範圍

的各種產品,其合作伙伴提供的硬件和軟件開發工具,與主要RTOS、中間件的兼容性,以及對主要EDA工具的支持,可幫助設計人員減少開發時間,加速產品上市。

經過驗證的技術,更低的風險:在大範圍的高性能應用中,數以十億計的SoC成功採用了MIPS32和MIPS64架構進行設計。MIPS是數字家庭(DTV、STB)、寬帶接入和無線網絡應用(WLAN、WiMAX)市場的領導者。

隨着32位CPU架構的性能的不斷提高,新一代嵌入式應用開始出現。MIPS 科技是高性能和性能/功效的領導者,是推動新一代產品的最佳不二選擇。

9 參考資料

MIPS Technologies www.mips.com 
ARM www.arm.com 
EEMBC CoreMark www.coremark.org 
Microprocessor Report www.mdronline.com 
Berkeley Design Technology Inc. www.BDTI.com 
‘See MIPS Run’ by Dominic Sweetman. ISBN 13; 978-0120884216 
‘Exploring the PIC32’ by Lucio Di Jasio. ISBN 13: 978-0750687096


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章