Cortex-M3是一個32位的核,在傳統(tǒng)的
單片機領(lǐng)域中,有一些不同于通用32位CPU應(yīng)用的要求。譚軍舉例說,在工控領(lǐng)域,用戶要求具有更快的中斷速度,
Cortex-M3采用了Tail-Chaining中斷技術(shù),完全基于硬件進行中斷處理,最多可減少12個時鐘周期數(shù),在實際應(yīng)用中可減少70% 中斷。概述單片機的另外一個特點是調(diào)試工具非常便宜,不象ARM的仿真器動輒幾千上萬。針對這個特點,
Cortex-M3采用了新型的單線調(diào)試(Single Wire)技術(shù),專門拿出一個引腳來做調(diào)試,從而節(jié)約了大筆的調(diào)試工具費用。同時,Cortex-M3中還集成了大部分存儲器控制器,這樣工程師可以直接在MCU外連接Flash,降低了設(shè)計難度和應(yīng)用障礙。ARM Cortex-M3處理器結(jié)合了多種突破性技術(shù),令芯片供應(yīng)商提供超低費用的芯片,僅33000門的內(nèi)核性能可達1.2DMIPS/MHz。該處理器還集成了許多緊耦合系統(tǒng)外設(shè),令系統(tǒng)能滿足下一代產(chǎn)品的控制需求。ARM公司希望Cortex-M3核的推出,能幫助單片機廠商。Cortex的優(yōu)勢應(yīng)該在于
低功耗、低成本、高性能3者(或2者)的結(jié)合。Cortex如果能做到 合理的低
功耗(肯定要比Arm7 & Arm9要低,但不大可能比
430、PIC、AVR低) + 合理的高性能(10~50MIPS是比較可能出現(xiàn)的范圍) + 適當?shù)牡统杀?1~5$應(yīng)該不會奇怪)。簡單的低成本不大可能比典型的8位MCU低。對于已經(jīng)有8位MCU的廠商來說,比如 Philips、Atmel、Freescale、Microchip還有ST和Silocon Lab,不大可能用Cortex來打自己的8位MCU。對于沒有8位MCU的廠商來說,當然是另外一回事,但他們在國內(nèi)進行推廣的實力在短期內(nèi)還不夠。對于已經(jīng)有32位ARM的廠商來說,比如Philips、Atmel、ST,又不大可能用 Cortex來打自己的Arm7/9,對他們來說,比較合理的定位把Cortex與Arm7/9錯開,即<40MIPS的性能+低于Arm7的價格,當然功耗也會更低些;當然這樣做的結(jié)果很可能是,斷了16位MCU的后路。對于仍然在推廣16位MCU的廠商來說,比如Freescal、Microchip,處境比較尷尬,因為Cortex基本上可以完全替代16位MCU。所以,未來的1~2年,來自新廠商的Cortex比較值得期待-包括國內(nèi)的供應(yīng)商;對于已有32位ARM的廠商,情況比較有趣;對于16位MCU的廠商,反應(yīng)比較有意思。編程模式Cortex-M3處理器采用ARMv7-M架構(gòu),它包括所有的16位Thumb指令集和基本的32位Thumb-2指令集架構(gòu),Cortex-M3處理器不能執(zhí)行ARM指令集。Thumb-2在Thumb指令集架構(gòu)(ISA)上進行了大量的改進,它與Thumb相比,具有更高的代碼密度并提供16/32位指令的更高性能。關(guān)于工作模式Cortex-M3處理器支持2種工作模式:線程模式和處理模式。在復(fù)位時處理器進入“線程模式”,異常返回時也會進入該模式,特權(quán)和用戶(非特權(quán))模式代碼能夠在“線程模式”下運行。出現(xiàn)異常模式時處理器進入“處理模式”,在處理模式下,所有代碼都是特權(quán)訪問的。關(guān)于工作狀態(tài)Coretx-M3處理器有2種工作狀態(tài)。Thumb狀態(tài):這是16位和32位“半字對齊”的Thumb和Thumb-2指令的執(zhí)行狀態(tài)。調(diào)試狀態(tài):處理器停止并進行調(diào)試,進入該狀態(tài)。開發(fā)工具Keil ULINK仿真器對客戶來說用什么技術(shù)、芯片不是主要的。主要的是能否滿足要求。高性價比、開發(fā)門檻底、易于使用才是硬道理。Cortex M3從理論上來說是高性價比。但目前已有的芯片的功能太少。Cortex M系列在處理能力基本與ARM7同,主要是成本低,功耗小。如果周立功自己來做加上豐富的外設(shè),如UART/USB/MAC以及無線通訊等功能,加上 FLASH、RAM這樣的SOC可以替換現(xiàn)在的許多應(yīng)用,但這樣的話不知道什么時候可以看到成品。內(nèi)核是好,外設(shè)也是很重要的。
關(guān)鍵詞:
Cortex-M