色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          Arm Cortex-M0+及其功能

          作者:EEPW 時(shí)間:2024-08-14 來源:EEPW 收藏

          Arm Cortex-M0+是一種可靠的架構(gòu),具有低功耗需求,并在緊湊而高效的形式下提供32位功能。

          本文引用地址:http://cafeforensic.com/article/202408/461999.htm

          Cortex-M0+并不是最新的小型低功耗處理器,事實(shí)上,一些更新的產(chǎn)品可能已經(jīng)超過了它。然而,由于其廣泛的部署和成熟的環(huán)境,Cortex-M0+仍然是低功耗應(yīng)用的有力選擇。

          那么,Cortex-M0+有哪些重要特性呢?Cortex-M處理器系列整體上旨在滿足市場(chǎng)對(duì)低功耗和低成本設(shè)備的需求,因此適用于廣泛的應(yīng)用場(chǎng)景。Cortex-M0+處理器進(jìn)一步發(fā)展了這一系列,提供了最小的占用面積和最低的功耗。這使得Cortex-M0+成為可穿戴設(shè)備和傳感器的理想選擇。

          Cortex-M0+是一個(gè)小型的32位微處理器,針對(duì)特定需求進(jìn)行了優(yōu)化,并與Cortex-M0具有完全相同的指令集兼容性。這意味著在兩者之間可以使用相同的編譯器和調(diào)試工具。

          Cortex-M0+有一個(gè)名為Micro Trace Buffer (MTB) 的硅選項(xiàng),提供了一個(gè)簡(jiǎn)單的指令跟蹤緩沖區(qū)。這是在Cortex-M0調(diào)試功能的基礎(chǔ)上增加的功能。此外,還可以將Cortex-M3和M4的一些功能添加為硅選項(xiàng)。

          Cortex-M0+基于ARMv6-M架構(gòu),與Cortex-M0共享指令集。適用的子指令集包括大多數(shù)的Thumb-1,缺少CBZ、CBNZ、IT和一些Thumb-2指令;并且只有BL、DMB、DSB、ISB、MRS、MSR指令。

          Cortex-M0+具有32位的硬件整數(shù)乘法,結(jié)果也是32位,并且支持1到32個(gè)中斷,外加NMI(非屏蔽中斷)。

          Cortex-M0+的內(nèi)存保護(hù)單元(MPU)的功能是監(jiān)控CPU對(duì)內(nèi)存的使用,確保沒有任務(wù)會(huì)破壞內(nèi)存或影響其他活動(dòng)任務(wù)。通常由實(shí)時(shí)操作系統(tǒng)(RTOS)控制,MPU可以檢測(cè)未經(jīng)授權(quán)的內(nèi)存訪問嘗試。

          Cortex-M0+中的流水線 原始的Cortex-M0內(nèi)核(以及Cortex-M3和M4)采用三級(jí)流水線構(gòu)建。Cortex-M0+則有所不同,它采用了兩級(jí)流水線。Cortex-M0+通過將流水線從三級(jí)減少到兩級(jí)來降低功耗并提高性能。指令每周期的效率更高,分支指令執(zhí)行的周期減少一個(gè)。第一級(jí)是取指和預(yù)解碼,第二級(jí)是主解碼和執(zhí)行。

          為什么選擇兩級(jí)流水線?使用兩級(jí)而不是三級(jí)流水線可以減少對(duì)閃存的訪問。這一點(diǎn)很重要,因?yàn)殚W存的功耗往往是微控制器總功耗的主要來源。因此,減少閃存訪問可以顯著降低整體功耗。

          Cortex-M0+支持多少個(gè)中斷優(yōu)先級(jí)? Arm Cortex-M0+的一部分是嵌套向量中斷控制器(NVIC),它作為內(nèi)核與任何外部中斷源之間的接口。它可以支持一個(gè)NMI,具有與其他外部中斷類似的屬性,并連接到CPU的NMI請(qǐng)求,但又是獨(dú)立的。

          此外,外部中斷控制器(EIC)可以生成事件,并允許單獨(dú)配置每條中斷線。它還支持中斷信號(hào)的脈沖和電平檢測(cè)、低延遲異常處理和中斷尾鏈功能。

          NVIC提供了外部中斷源(如外圍設(shè)備和外部引腳)與內(nèi)核之間的接口。通過編程,可以將每個(gè)中斷源的優(yōu)先級(jí)設(shè)置為四個(gè)級(jí)別之一。當(dāng)兩個(gè)待處理的中斷具有相同的優(yōu)先級(jí)時(shí),可以使用此優(yōu)先級(jí)。例如,在這種情況下,優(yōu)先級(jí)較低的中斷將優(yōu)先被處理,即最低的中斷向量地址。

          Cortex-M0+的性能和應(yīng)用 Cortex-M0+被認(rèn)為是Arm處理器中最節(jié)能的處理器之一,適用于受限的嵌入式應(yīng)用。M0+內(nèi)核的流水線為兩級(jí),這使其在保持2.42 CoreMark/MHz性能的同時(shí),實(shí)現(xiàn)了11.2 μW/MHz的功耗。該處理器還具有三種低功耗模式,可根據(jù)處理需求節(jié)省能源。

          根據(jù)已發(fā)布的資料,Cortex-M0+內(nèi)核已被廣泛應(yīng)用于業(yè)界。例如:

          • ABOV Semiconductor A31G11x, A31G12x, A31G314

          • Cypress PSoC 4000S, 4100S, 4100S+, 4100PS, 4700S, FM0+

          • Epson S1C31W74, S1C31D01, S1C31D50

          • Holtek HT32F52000

          • Microchip SAM C2, D0, D1, D2, DA, L2, R2, R3; and PIC32CM JH and MC[31]

          • NXP LPC800, LPC11E60, LPC11U60

          • NXP (Freescale) Kinetis E, EA, L, M, V1, W0, S32K11x

          • Raspberry Pi RP2040 (兩個(gè)M0+內(nèi)核)

          • Renesas S124, S128, RE, RE01

          • Silicon Labs (Energy Micro) EFM32 Zero, Happy

          • STMicroelectronics STM32 L0, G0, C0, WL (一個(gè)Cortex-M4加一個(gè)Cortex-M0+)

          許多其他設(shè)備將Cortex-M0+作為輔助內(nèi)核嵌入。值得注意的是,Cortex-M0+內(nèi)核的小尺寸使其能夠作為嵌入在更大設(shè)備中的單一內(nèi)核成功運(yùn)行,作為伴隨內(nèi)核。在這種安排中,Cortex-M0+可以提供任務(wù)分區(qū)和/或硬件隔離功能。



          關(guān)鍵詞: MCU Arm

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉