Cortex-M0 處理器

發(fā)布時(shí)間:2013-7-3 17:06    發(fā)布者:李寬
關(guān)鍵詞: Cortex-M0
ARM Cortex-M0 處理器是目前最小的 ARM 處理器。該處理器的芯片面積非常小,能耗極低,且編程所需的代碼占用量很少,這就使得開(kāi)發(fā)人員可以直接跳過(guò)16位系統,以 接近8 位系統的成本開(kāi)銷(xiāo)獲取 32 位系統的性能。Cortex-M0 處理器超低的門(mén)數開(kāi)銷(xiāo),使得它可以用在在模擬和數;旌显O備中。



什么選擇 Cortex-M0?

最小的 ARM 處理器

Cortex-M0 在代碼密度和能效比方面的優(yōu)勢意味著(zhù)它能夠順理成章地在很廣大的應用領(lǐng)域里成為8/16 位系統經(jīng)濟實(shí)用的升級換代產(chǎn)品,同時(shí)它還保留了與更強大的 Cortex-M3 和 Cortex-M4 處理器的工具及二進(jìn)制向上兼容性。對于需要更低功耗或更多設計選擇的應用,完全兼容的 Cortex-M0+ 處理器是理想的候選產(chǎn)品。

低功耗

Cortex-M0 處理器在門(mén)數低于 12 K 時(shí)的能耗僅為 16µW/MHz(90LP 工藝,最低配置),這都得益于該處理器是建立在 ARM 作為低能耗技術(shù)的領(lǐng)導者以及超低能耗設備的主要推動(dòng)者所具備的專(zhuān)業(yè)知識基礎之上。

簡(jiǎn)單

由于僅有 56 個(gè)指令,您可以快速掌握整個(gè) Cortex-M0 指令集及其對 C 語(yǔ)言友好的架構,使開(kāi)發(fā)變得簡(jiǎn)單而快速?晒┻x擇的具有完全確定性的指令和中斷計時(shí)使得計算響應時(shí)間十分容易。

優(yōu)化的連接性

支持實(shí)現低能耗網(wǎng)絡(luò )互聯(lián)設備(如 Bluetooth Low Energy (BLE)、IEEE 802.15 和 Z-wave),尤其是那些需要通過(guò)增強數字功能以高效地進(jìn)行預處理和傳輸數據的模擬設備。

ARM Cortex-M0 規范[td]        
ARM Cortex-M0 功能
ISA 支持Thumb® / Thumb-2子集
管道3 階段
性能效率1.62 CoreMark/MHz - 0.84 DMIPS/MHz(RVCT 5.0.90 編譯器)
中斷不可屏蔽的中斷 (NMI) + 1 到 32 個(gè)物理中斷
睡眠模式            集成的 WFI 和 WFE 指令和“退出時(shí)睡眠”功能。
            睡眠和深度睡眠信號
            隨 ARM 電源管理工具包提供的可選保留模式
位操作可以使用 Cortex-M 系統設計工具包來(lái)實(shí)現位段區
增強的指令硬件單周期 (32x32) 乘法選項
調試可選 JTAG 和串行線(xiàn)調試端口。最多 4 個(gè)斷點(diǎn)和 2 個(gè)觀(guān)察點(diǎn)

   
ARM Cortex-M0 實(shí)現數據*

            180ULL
            (7 軌,通常為 1.8v,25C)
            90LP
            (7 軌,通常為 1.2v,25C)
            40G
            (9 軌,通常為 0.9v,25C)
動(dòng)態(tài)功耗73µW/MHz16µW/MHz4µW/MHz
平面規劃面積0.13 mm20.04 mm2>0.01 mm2

* 基本可用配置包括 1 IRQ + NMI,不包括調試

ARM Cortex-M 技術(shù)

每個(gè) Cortex-M 系列處理器都有其特定優(yōu)點(diǎn):采用一些基本技術(shù),而這些技術(shù)使得 Cortex-M 處理器適用于廣泛的嵌入式應用程序。

RISC 處理器內核
  • 高性能 32 位 CPU
  • 具有確定性的運算
  • 緊湊而低延遲的管道
  • 16/32 位指令的最佳混合
  • 代碼大小比 8 位設備小 30%
  • 對性能沒(méi)有負面影響
低功耗模式
嵌套矢量中斷控制器 (NVIC)
  • 集成的睡眠狀態(tài)支持
  • 多電源域
  • 基于架構的軟件控制
  • 低延遲、低抖動(dòng)中斷響應
  • 不需要匯編編程
  •   以純 C 語(yǔ)言編寫(xiě)的中斷服務(wù)例程
工具和 RTOS 支持

CMSIS

ARM Cortex 微控制器軟件接口標準 (CMSIS) 是一個(gè)與供應商無(wú)關(guān)的硬件抽象層,用于 Cortex-M 處理器系列。CMSIS 可為接口外設、實(shí)時(shí)操作系統和中間件實(shí)現一致且簡(jiǎn)單的處理器軟件接口,從而簡(jiǎn)化軟件的重用。CMSIS 可縮短微控制器開(kāi)發(fā)人員新手的學(xué)習過(guò)程,從而縮短新產(chǎn)品的上市時(shí)間。
深入:嵌套矢量中斷控制器 (NVIC)

NVIC 是 Cortex-M 處理器不可或缺的部分,它為處理器提供了卓越的中斷處理能力。

Cortex-M 處理器使用一個(gè)矢量表,其中包含要為特定中斷處理程序執行的函數的地址。接受中斷時(shí),處理器會(huì )從該矢量表中提取地址。

為減少門(mén)數和提高系統靈活性,Cortex-M 處理器采用基于堆棧的異常模型。一旦發(fā)生異常,Cortex-M 處理器就會(huì )將關(guān)鍵通用寄存器推到堆棧上。一旦完成入棧和指令取回,就會(huì )執行中斷服務(wù)例程或故障處理程序,然后自動(dòng)還原寄存器以使中斷的程序恢復正常執行。這種方法不再需要編寫(xiě)對于傳統 C 語(yǔ)言中斷服務(wù)例程來(lái)說(shuō)執行堆棧操作所必需的匯編器包裝程序,從而大大方便了應用程序的開(kāi)發(fā)。NVIC 支持多個(gè)中斷的嵌套(入棧),通過(guò)運用較高優(yōu)先級來(lái)允許某一中斷的較早執行。對硬件中斷的全面響應

Cortex-M 系列處理器的中斷響應是從發(fā)出中斷信號到執行中斷服務(wù)例程的周期數。它包括:

    檢測中斷
    back-to-back 或 late arriving 的最佳處理(參見(jiàn)下文)
    提取中斷向量地址
    將易損壞的寄存器入棧
    跳轉到中斷處理程序

這些任務(wù)在硬件中執行,并且包含在為 Cortex-M 處理器報出的中斷響應周期時(shí)間中。在許多其他架構中,這些任務(wù)必須在軟件的中斷處理程序中執行,從而引入延遲并帶來(lái)復雜性。

NVIC 中的 Tail chaining


Back to back 中斷時(shí)序圖

在 Back to back 中斷的情況下,傳統系統會(huì )重復完整的狀態(tài)保存和還原周期兩次,從而導致更高的延遲。Cortex-M 處理器通過(guò)在 NVIC 硬件中實(shí)現 Tail chaining 技術(shù)來(lái)簡(jiǎn)化活動(dòng)的中斷和掛起的中斷之間的切換。處理器狀態(tài)會(huì )在進(jìn)入中斷時(shí)自動(dòng)保存,并在退出中斷時(shí)恢復。由于與軟件實(shí)現相比周期數減少,因而可顯著(zhù)提高低頻系統的性能。

NVIC 對遲到的較高優(yōu)先級中斷的響應


遲到中斷到達時(shí)間圖

如果在為上一個(gè)中斷執行堆棧推送期間較高優(yōu)先級的中斷遲到,NVIC 會(huì )立即提取新的矢量地址來(lái)為掛起的中斷提供服務(wù),如上所示。Cortex-M NVIC 對這些可能性提供具有確定性的響應并支持遲到和搶占。

NVIC 進(jìn)行的堆棧彈出搶占


搶占時(shí)間圖

同樣,如果異常到達,NVIC 將放棄堆棧彈出并立即為新的中斷提供服務(wù),如上所示。通過(guò)搶占并切換到第二個(gè)中斷而不完成狀態(tài)還原和保存,NVIC 以具有確定性的方式實(shí)現了縮短延遲。

從 8/16 位遷移到 ARM Cortex-M


ARM Cortex-M 代碼大小優(yōu)勢說(shuō)明

ARM Cortex-M 處理器提供優(yōu)于 8 位和 16 位架構的代碼密度。這在減少對內存的需求和最大限度地提高寶貴的芯片上閃存的使用率方面具有很大的優(yōu)勢。我們將在本部分中分析此優(yōu)勢的原因。

指令寬度

很多人認為 8 位微控制器使用 8 位指令,而基于 ARM Cortex-M 處理器的微控制器使用 32 位指令,其實(shí)這是一種誤解。事實(shí)上,舉例來(lái)說(shuō),PIC18 和 PIC16 指令大小分別是 16 位和 14 位。對于 8051 架構,雖然某些指令的長(cháng)度為 1 字節,但許多其他指令的長(cháng)度為 2 字節或 3 字節。16 位架構也是如此,其中某些指令可能占用 6 字節或更多內存。

ARM Cortex-M 處理器采用可提供極佳代碼密度的 ARM Thumb®-2 技術(shù)。通過(guò) Thumb-2 技術(shù),Cortex-M 處理器支持基本 16 位 Thumb 指令,這些指令經(jīng)過(guò)擴展,可包括進(jìn)更強大的 32 位指令。在很多情況下,C 編譯器將使用 16 位版本的指令,除非使用 32 位版本可以更有效地執行運算。

指令效率

由于沒(méi)有同時(shí)考慮到 ARM Cortex-M 處理器指令更為強大,此圖片是不完整的。在許多情況下,單個(gè) Thumb 指令可相當于數個(gè) 8/16 位微控制器指令;這意味著(zhù) Cortex-M 設備的代碼量更少,因此可以更低的總線(xiàn)速度完成同一任務(wù)。

在各處理器架構之間比較 16 位乘法運算


8 位示例16 位示例ARM Cortex-M
MOV A, XL;2 字節
MOV B, YL;3 字節
MUL AB;1 字節
MOV R0, A;1 字節
MOV R1, B;3 字節
MOV A, XL;2 字節
MOV B, YH;3 字節
MUL AB;1 字節
ADD A, R1;1 字節
MOV R1, A;1 字節
MOV A, B;2 字節
ADDC A, #0;2 字節
MOV R2, A;1 字節
MOV A, XH;2 字節
MOV B, YL;3 字節
MUL AB;1 字節
ADD A, R1;1 字節
MOV R1, A;1 字節
MOV A, B;2 字節
ADDC A, R2;1 字節
MOV R2, A;1 字節
MOV A, XH;2 字節
MOV B, YH;3 字節
MUL AB;1 字節
ADD A, R2;1 字節
MOV R2, A;1 字節
MOV A, B;2 字節
ADDC A, #0;2 字節
MOV R3, A;1 字節  
            
MOV R4,&0130h
MOV R5,&0138h
MOV SumLo,R6
MOV SumHi,R7
(操作數被移入或移出內存映射的硬件乘法單元)
            
MULS r0,r1,r0
注意:Cortex-M 乘法實(shí)際上執行 32 位乘法,此處我們假設 r0 和 r1 包含 16 位數據。

壓縮的數據占用空間

請務(wù)必注意,Cortex-M 處理器支持 8 位和 16 位數據傳輸,可高效利用數據內存。這意味著(zhù)程序員可以繼續使用他們在面向 8/16 位的軟件中使用的相同數據類(lèi)型。

能效優(yōu)勢


對不斷增加連接(例如,USB、藍牙和 IEEE 802.15)、具有復雜模擬傳感器(例如,加速計和觸摸屏)且成本日益降低的產(chǎn)品的需求,已導致需要將模擬設備與數字功能更緊密地集成,以對數據進(jìn)行預處理和傳輸。大多數 8 位設備在不顯著(zhù)增加 MHz(并因此不顯著(zhù)增加功率)的情況下不提供支持這些任務(wù)的性能,因此嵌入式開(kāi)發(fā)人員需要尋找具有更高級處理器技術(shù)的替代設備。16 位設備以前曾被用來(lái)解決微控制器應用中的能效問(wèn)題。但是,16 位設備相對不高的性能意味著(zhù)它們通常需要較長(cháng)的活動(dòng)工作周期或較高的時(shí)鐘頻率才能完成 32 位設備所完成的相同任務(wù)。

使軟件開(kāi)發(fā)更加容易


基于 ARM Cortex 處理器的微控制器的軟件開(kāi)發(fā)可能比 8 位微控制器產(chǎn)品的開(kāi)發(fā)容易得多。 Cortex 處理器不但是完全可通過(guò) C 語(yǔ)言進(jìn)行編程的,而且還附帶各種高級調試功能以幫助定位軟件中的問(wèn)題。 除 MCU 開(kāi)發(fā)工具包中包括的所有附加資源外,Internet 上還有大量示例和教程,其中許多來(lái)自基于 ARM 處理器的 MCU 供應商的網(wǎng)站。

來(lái)源:ARM公司

本文地址:http://selenalain.com/thread-116976-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页