基于ARM嵌入式處理器的片上系統解決方案可應用于企業應用、汽車系統、家庭網絡和無線技術等市場領域。ARM Cortex系列提供了一個標準的體系結構來滿足以上各種技術的不同性能要求,其包含的處理器基于ARMv7架構的三個分工明確的部分。A部分面向復雜的尖端應用程序,用于運行開放式的復雜操作系統;R部分針對實時系統;M部分為成本控制和微控制器應用提供優化。
Cortex-M3是ARM公司于2004年底推出的首款基于ARMv7-M架構的處理器,它集緊湊封裝、降低功耗、簡化開發于一體,是專門為了在微控制器、汽車車身系統、工業控制系統和無線網絡等對功耗和成本敏感的嵌入式應用領域實現高系統性能而設計的。
In-Stat首席分析師Max Baron表示,最近幾年,32位微控制器工業發展神速,2005年收入比以前提高一倍,市場價值達到38億美元。在未來五年內,該市場出貨量將比2005年提高一倍,收入將超過61億美元,Cortex-M3處理器為深嵌入式應用市場提供了一款集多個優點于一身的產品。
2006年10月在加州圣克拉拉舉行的ARM開發商大會上,意法半導體宣布將在其下一代32位微控制器系列產品內集成ARM Cortex-M3處理器,以加快市場從高端的8位、16位微控制器升級到32位解決方案,為市場提供能夠簡化開發過程、大幅度節省成本和電能的高性能微控制器。
如果按ARM公司原來的ARM7、ARM9、ARM11等方式來命名,這款芯片的名稱應該為ARM12, 但是ARM已經決定繼續使用Cortex系列來命名,將來還會推出針對特定應用的Cortex系列產品。本文介紹Cortex-M3的特點、結構及應用領域。
一、Cortex-M3處理器的特點
1、通過提高效率來提高性能
處理器可通過兩種途徑來提高它的性能,一是“work hard”,也就是直接通過提高時鐘頻率來提高性能,這種情況以高功耗作為代價,并增加了設計的復雜性。另一種是“work smart”,在低時鐘頻率的情況下提高運算效率,使處理器可以憑借簡單的低功耗設計來完成與情況1中同樣的功能。Cortex-M3處理器的核心是基于哈佛架構的3級流水線內核,該內核集成了分支預測,單周期乘法,硬件除法等眾多功能強大的特性,使其在Dhrystone benchmark上具有出色的表現(1.25 DMIPS/MHz)。根據Dhrystone benchmark的測評結果,采用新的Thumb-2指令集架構的Cortex-M3處理器,與執行Thumb指令的ARM7TDMI-S處理器相比,每兆赫的效率提高了70%,與執行ARM指令的ARM7TDMI-S處理器相比,效率提高了35%。
2、快速有效的應用程序開發源于簡易的使用方法
縮短上市時間與降低開發成本是選擇微控制器的關鍵標準,而快速和簡易的軟件開發能力是實現這些要求的關鍵。Cortex-M3處理器專門針對快速和簡單的編程而設計,用戶無需深厚的架構知識或編寫任何匯編代碼就可以建立簡單的應用程序。Cortex-M3處理器帶有一個簡化的基于棧的編程模型,該模型與傳統的ARM架構兼容,同時與傳統的8位、16位架構所使用的系統相似,它簡化了8位、16位到32位的轉換過程。此外,使用基于硬件的中斷機制意味著編寫中斷服務程序(handlers)不再重要。在不需要匯編代碼寄存器操作的情況下,啟動代碼得到了大大的簡化。
在位字段處理、硬件除法和If/Then指令的協助下,Thumb-2指令集架構(Instruction Set Architecture-ISA)底層的關鍵特性使C 代碼的執行變得更加自然。在開發方面,Thumb-2指令自動優化了性能和代碼密度,在無需交互使用ARM代碼和Thumb代碼的情況下加快了開發的進程,簡化了編譯目標的長期維護和支持工作。如此一來,用戶不但可以繼續使用C代碼,而且還免去了建立預編譯目標代碼庫的麻煩,代碼在更大程度上獲得了重復利用。
3、針對敏感市場降低成本和功耗
成本是采用高性能微控制器永恒的屏障。由于先進的制造工藝相當昂貴,只有降低芯片的尺寸才有可能從本質上降低成本。為了減小系統區域,Cortex-M3處理器采用了至今為止最小的ARM內核,該內核的核心部分(0.18um G)的門數僅為33000個,它把緊密相連的系統部件有效地結合在一起。通過采用非對齊數據存儲技術、原子位操作和Thumb-2指令集,存儲容量的需求得到最小化,其中Thumb-2指令集對指令存儲容量的要求比ARM指令減少超過25%。
為了迎合對節能要求日益增長的大型家電和無線網絡市場,Cortex-M3處理器支持擴展時鐘門控和內置睡眠模式。當采用ARM Metro標準單元庫和TSMC 0.13G制造工藝時,處理器運行在50MHz的目標頻率下的功耗僅為4.5mW,芯片封裝面積只有0.33mm2。
4、集成的調試和跟蹤功能
嵌入式系統通常不具備圖形用戶界面,軟件調試也因此成了程序員的一大難題。傳統上,在線仿真器(ICE)單元作為插件使用,通過大家熟悉的PC界面向系統提供窗口。然而,隨著系統體積的變小及其復雜性的增加,物理附加類似的調試單元已經再難成為可行的方案。Cortex-M3 處理器通過其集成部件在硬件的本身實現了各種調試技術,使調試在具備跟蹤和分析、斷點、觀察點和代碼修補功能的同時,速度也獲得了有效的提高,促使產品可以更快地投入市場。此外,處理器還通過一個傳統的JTAG端口或一個適用于低管腳數封裝(LPC封裝)器件的2管腳串行線調試(Serial Wire Debug-SWD)端口賦予系統高度的可視性。
5、從ARM7升級為Cortex-M3可獲取更佳的性能和功效
在過去十年中,ARM7系列處理器被廣泛應用于眾多領域。之后,Cortex-M3在ARM7的基礎上開發成功,為基于ARM7處理器系統的升級開辟了通道。它的中心內核效率更高,編程模型更簡單,它具有出色的確定中斷行為,其集成外設以低成本提供了更強大的性能。
二、Cortex-M3處理器結構
基于ARMv7架構的Cortex-M3處理器帶有一個分級結構。它集成了名為CM3Core的中心處理器內核和先進的系統外設,實現了內置的中斷控制、存儲器保護以及系統的調試和跟蹤功能。這些外設可進行高度配置,允許Cortex-M3處理器處理大范圍的應用并更貼近系統的需求。目前Cortex-M3內核和集成部件(圖3)已進行了專門的設計,用于實現最小存儲容量、減少管腳數目和降低功耗。
閱讀全文,請訪問廣州周立功單片機發展有限公司網站http://www.zlgmcu.com/download/downs.asp?ID=1863。