當前位置:首頁 > 單片機 > 單片機
[導讀] 要使用低成本的 32位微控制器,開發(fā)人員面臨兩種選擇,基于Cortex-M3內核或者ARM7TDMI內核的處理器。如何做出選擇?選擇標準又是什么?本文主要介紹了ARM Cortex-M3內核微控制器區(qū)別于ARM7的一些特點,

要使用低成本的 32位微控制器,開發(fā)人員面臨兩種選擇,基于Cortex-M3內核或者ARM7TDMI內核的處理器。如何做出選擇?選擇標準又是什么?本文主要介紹了ARM Cortex-M3內核微控制器區(qū)別于ARM7的一些特點,幫助您快速選擇。

1.ARM實現(xiàn)方法

ARM Cortex-M3是一種基于ARM V7架構的最新ARM嵌入式內核,它采用哈佛結構,使用分離的指令和數(shù)據(jù)總線(馮諾伊曼結構下,數(shù)據(jù)和指令共用一條總線)。從本質上來說,哈佛結構在物理上更為復雜,但是處理速度明顯加快。根據(jù)摩爾定理,復雜性并不是一件非常重要的事,而吞吐量的增加卻極具價值。

ARM公司對Cortex-M3的定位是:向專業(yè)嵌入式市場提供低成本、低功耗的芯片。在成本和功耗方面,Cortex-M3具有相當好的性能,ARM公司認為它特別適用于汽車和無線通信領域。和所有的ARM內核一樣,ARM公司將內該設計授權給各個制造商來開發(fā)具體的芯片。迄今為止,已經(jīng)有多家芯片制造商開始生產基于Cortex-M3內核的微控制器。

ARM7TDMI(包括ARM7TDMIS)系列的ARM內核也是面向同一類市場的。這類內核已經(jīng)存在了十多年之久,并推動了ARM成為處理器內核領域的主導者。眾多的制造商(據(jù)ARM宣稱,多達16家)出售基于ARM7系列的處理器以及其他配套的系統(tǒng)軟件、開發(fā)和調試工具。在許多方面,ARM7TDMI 都可以稱得上是嵌入式領域的實干家。

2.兩者差異

除了使用哈佛結構, Cortex-M3還具有其他顯著的優(yōu)點:具有更小的基礎內核,價格更低,速度更快。與內核集成在一起的是一些系統(tǒng)外設,如中斷控制器、總線矩陣、調試功能模塊,而這些外設通常都是由芯片制造商增加的。 Cortex-M3 還集成了睡眠模式和可選的完整的八區(qū)域存儲器保護單元。它采用THUMB-2指令集,最大限度降低了匯編器使用率。

3.指令集

ARM7可以使用ARM和Thumb兩種指令集,而 Cortex-M3只支持最新的 Thumb-2指令集。這樣設計的優(yōu)勢在于:

免去 Thumb和ARM代碼的互相切換,對于早期的處理器來說,這種狀態(tài)切換會降低性能。

Thumb-2指令集的設計是專門面向C語言的,且包括If/Then結構(預測接下來的四條語句的條件執(zhí)行)、硬件除法以及本地位域操作。

Thumb-2指令集允許用戶在C代碼層面維護和修改應用程序,C代碼部分非常易于重用。

Thumb-2指令集也包含了調用匯編代碼的功能:Luminary公司認為沒有必要使用任何匯編語言。

綜合以上這些優(yōu)勢,新產品的開發(fā)將更易于實現(xiàn),上市時間也大為縮短。

4.中斷

Cortex-M3的另一個創(chuàng)新在于 嵌套向量中斷控制器 NVIC( Nested Vector InterruPTController)。相對于ARM7使用的外部中斷控制器,Cortex-M3內核中集成了中斷控制器,芯片制造廠商可以對其進行配置,提供基本的32個物理中斷,具有8層優(yōu)先級,最高可達到240個物理中斷和256個中斷優(yōu)先級。此類設計是確定的且具有低延遲性,特別適用于汽車應用。

NVIC使用的是基于堆棧的異常模型。在處理中斷時,將程序計數(shù)器,程序狀態(tài)寄存器,鏈接寄存器和通用寄存器壓入堆棧,中斷處理完成后,在恢復這些寄存器。堆棧處理是由硬件完成的,無需用匯編語言創(chuàng)建中斷服務程序的堆棧操作。

中斷嵌套是可以是實現(xiàn)的。中斷可以改為使用比之前服務程序更高的優(yōu)先級,而且可以在運行時改變優(yōu)先級狀態(tài)。使用末尾連鎖( tail-chaining)連續(xù)中斷技術只需消耗三個時鐘周期,相比于 32個時鐘周期的連續(xù)壓、出堆棧,大大降低了延遲,提高了性能。

如果在更高優(yōu)先級的中斷到來之前, NVIC已經(jīng)壓堆棧了,那就只需要獲取一個新的向量地址,就可以為更高優(yōu)先級的中斷服務了。同樣的,NVIC不會用出堆棧的操作來服務新的中斷。這種做法是完全確定的且具有低延遲性。

5.睡眠

Cortex-M3的電源管理方案通過NVIC支持Sleep Now, Sleep on Exit (退出最低優(yōu)先級的ISR) andSLEEPDEEP modes這三種睡眠模式。為了產生定期的中斷時間間隔,NVIC還集成了系統(tǒng)節(jié)拍計時器,這個計時器也可以作為RTOS和調度任務的心跳。這種做法與先前的ARM架構的不同之處就在于不需要外部時鐘。

6.存儲器保護單元

存儲器保護單元是一個可選組建。選用了這個選項,內存區(qū)域就可以與應用程序特定進程按照其他進程所定義的規(guī)則聯(lián)系在一起。例如,一些內存可以完全被其他進程阻止,而另外一部分內存能對某些進程表現(xiàn)為只讀。還可以禁止進程進入存儲器區(qū)域。可靠性,特別是實時性因此得到重大改進。

7.調試

對 Cortex-M3 處理器系統(tǒng)進行調試和追蹤是通過調試訪問端口( Debug ACCess Port )來實現(xiàn)的。調試訪問端口可以是一個 2針的串行調試端口( Serial Wire Debug Port )或者串行JTAG調試端口( Serial Wire JTAG Debug Port )。通過 Flash片、斷點單元、數(shù)據(jù)觀察點、跟蹤單元,以及可選的嵌入式跟蹤宏單元( Embedded Trace Macrocell )和指令跟蹤宏單元( Instrumentation Trace Macrocell )等一系列功能相結合,在內核部分就可以采用多種類型的調試方法及監(jiān)控函數(shù)。例如,可以設置斷點、觀察點、定義缺省條件或執(zhí)行調試請求、監(jiān)控停止操作或繼續(xù)操作。所有的這些功能在 ARM架構的產品中已經(jīng)實現(xiàn),只是 Cortex-M3 將這些功能整合起來,方便開發(fā)人員使用。

8.應用范圍

雖然 ARM7內核并沒有像Cortex系列那樣集成很多外設,但是大量的基于ARM7的器件,從通用MCU,到面向應用的MCU、SOC甚至是Actel公司基于ARM7內核的FPGA,都擁有更為眾多的外圍設備。大約有150種MCU是基于ARM7內核的(根據(jù)不同的統(tǒng)計方法,這個數(shù)字可能會更高)。

你會發(fā)現(xiàn) ARM7都可以實現(xiàn)幾乎所有的嵌入式應用,或采用定制的方式來滿足需求?;跇藴蕛群耍酒瑥S商可以加入不同類型、大小的存儲器和其他外圍設備,比如串行接口、總線控制器、存儲器控制器和圖形單元,并針對工業(yè)、汽車或者其他要求苛刻的領域,使用不同的芯片封裝,提供不同溫度范圍的芯片版本。芯片廠商也可能綁定特定的軟件,比如TCP/IP協(xié)議?;蛎嫦蛱囟☉玫能浖?/p>

例如, STMicroeleCTRonics公司的STR7產品線有三個主要系列共45個成員,具有不同的封裝和存儲器。每一個系列都針對特定的應用領域,具有不同外設集合。比如STR730家族是專為工業(yè)和汽車應用設計的,因此具有可擴展的溫度范圍,包括多個I/O口和3個CAN總線接口。STR710則是面向于消費市場以及高端的工業(yè)應用,它具有多個通信接口,比如USB, CAN, ISO7816以及4個UART,還有大容量的存儲器和一個外部存儲器接口。

芯片廠商也可以選擇利于開發(fā)人員開發(fā)產品的措施,比如采用 ARM的 嵌入式跟蹤宏單元 ETM( Embedded Trace Macrocell ),并提供開發(fā)和調試工具。

截止至這篇文章寫作之時, Luminary、STMicroelectronics這兩家公司已經(jīng)有基于Cortex-M3的芯片,其他公司如NXP、Atmel也宣布生產該類產品。(Luminary已經(jīng)被TI收購)

9.配套工具

ARM7應用已經(jīng)非常普及,它已經(jīng)有非常多第三方的開發(fā)和調試工具支持。在ARM的網(wǎng)站上有超過130家工具公司名稱列表。

大多數(shù)廠商提供了基本的開發(fā)板,并提供下載程序的接口、調試工具以及外部設備的驅動,包括LED燈的顯示狀態(tài)或者屏幕上的單行顯示。通常,開發(fā)套件包括編譯器、一些調試軟件以及開發(fā)板。更為高級的套件包括第三方的集成開發(fā)環(huán)境(IDE),IDE中包含編譯器、鏈接器、調試器、編輯器和其他工具,也可能包括仿真硬件,比如說JTAG仿真器。

內電路仿真器( ICE)是最早的也是最有用的調試工具形式之一,很多廠商都在ARM7上提供了這一接口。

軟件開發(fā)工具范圍很廣:從建模到可視化設計,到編譯器?,F(xiàn)在很多的產品也用到實時操作系統(tǒng)( RTOS)和中間件,以加速開發(fā)進程、降低開發(fā)難度。另外,還有一個非常重要的因素,很多的開發(fā)人員對 ARM7的開發(fā)經(jīng)驗非常豐富。

雖然現(xiàn)在已經(jīng)有新興的 Cortex-M3 工具,但顯然還是有一定的差距。不過, Cortex-M3的集成調試性能使調試變得簡單且有效,且無需用到內電路仿真器ICE。


10.決策

那么,你應該如何做出何種選擇呢?如果成本是最主要考慮因素,您應該選擇 Cortex-M3;如果在低成本的情況下尋求更好的性能和改進功耗,您最好考慮選用Cortex-M3;特別是如果你的應用是汽車和無線領域,最好也采用Cortex-M3,這正是Coretex-M3的主要定位市場。由于 Cortex-M3內核中的多種集成元素以及采用Thumb-2指令集,其開發(fā)和調試比ARM7TDMI要簡單快捷。


然而,由于重定義 ARM7TDMI的應用不是一件困難的事,特別是在使用了RTOS的情況下。保守者可能會沿用ARM7TDMI內核的芯片,并避免使用

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉