`
haoyifen
  • 浏览: 16818 次
文章分类
社区版块
存档分类
最新评论

Cortex-M0(+)内核的处理器架构简介

 
阅读更多

系统架构

Cortex-M0处理器具有32位系统总线接口,以及32位地址线,即有4GB的地址空间。

Cortex-M0系统结构
系统总线基于AHB_Lite高级高性能总线协议。外设总线基于APB高级外设总线协议,通过一个转换桥连接到AHB上。这只是Cortex-M0内核的大概模式,Cortex-M0+的存储器系统与Cortex-M0基本相同。但是厂商根据需要会进行调整。
以下的是基于cortex-M0+内核的stm32L053的内部架构图。
stm32L053的内部架构图
可以看到GPIO口挂在了内核上,由BusMartix负责AHB,DMA,SRAM,MIF之间的数据交换
主总线和外设总线是分离的,所以很多情况下时钟频率也不同。我们可以使外设运行在较低的频率上,或者关闭不用的外设时钟,这样可以降低功耗。

存储器映射

Cortex-M0(+)处理器的4G存储空间从架构上被分为多个区域。总的被分成8个大部分,每个部分512M。
Cortex-M0处理器架构定义的存储器映射
虽然映射已经被架构预先定义,但是实际分配却是很灵活的。
1.代码区域 (0x0000 0000~0x1FFF FFFF) 512M,主要用于存储代码
2.SRAM区域 (0x2000 0000~0x3FFF FFFF) 512M,主要用于数据存储
3.外设区域 (0x4000 0000~0x5FFF FFFF) 512M,主要用于外设及数据存储。不允许执行程序
4.RAM区域 (0x6000 0000~0x9FFF FFFF) 1GB,外部RAM区域,由两个512M区域组成
5.设备区域 (0xA000 0000~0xDFFF FFFF) 1GB,由两个512M组成。属性不同。主要用于外设和IO口,不允许程序执行,但是可以用作通用数据存储。
6.内部私有总线区域(0xE000 0000~0xE00F FFFF) 1MB。用于处理器内部的外设,包括中断控制器NVIC和调试部件,还有systick。不允许程序执行。
7.保留存储器空间 (0xE010 0000~0xFFFF FFFF) 511M用于保留。
stm32L053存储器映射
上图为基于Cortex-M0+的stm32L053的存储器映射图。我们可以看到基本是与Cortex-M0内核是符合的。但是具体的分配具有很大的灵活性。
片上FLASH在0x0800 0000,SRAM在0x2000 0000。
IO口在0x5000 0000-0x5000 1FFF,占用了8K。
APB1上的器件基地址为0x4000 0000;
APB2上的外设基地址为0x4001 0000;
AHB上的外设基地址为 0x4002 0000。

<script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('<ul/>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); }; $numbering.fadeIn(1700); }); }); </script>
分享到:
评论

相关推荐

    Cortex M0+ 技术参考手册

    《Cortex M0+ 技术参考手册》是针对ARM Cortex-M0+微控制器内核的技术文档,详细介绍了Cortex-M0+架构的特点、指令集、寄存器配置等内容,为开发者提供全面深入的理解和支持。该手册由ARM公司编写并版权所有,版本号...

    Cortex M0+通用用户手册

    Cortex M0+通用用户手册主要介绍了ARM公司的一款微控制器核心——Cortex-M0+,包括它的处理器架构、指令集和核心外设。下面我们将详细阐述这些知识要点。 首先,我们需要明白ARM公司是一个英国的微处理器架构和软件...

    cortex-m0+用户手册

    根据提供的文件信息,本文将对"Cortex-M0+用户手册"进行详细的知识点解析,主要围绕Cortex-M0+处理器的基础架构、特性及其应用展开。 ### Cortex-M0+概述 Cortex-M0+是ARM公司推出的一款入门级的32位微控制器内核...

    Cortex学习\M0\深入浅出Cortex-M0.rar

    Cortex-M0是ARM架构中最基础且广泛应用的内核,常用于低功耗和低成本的微控制器设计。这本书通过详细讲解,旨在帮助读者掌握Cortex-M0的基本特性和编程技巧。 Cortex-M0是ARM公司推出的一种高效能、低功耗的32位微...

    Cortex-M0技术参考手册

    #### 一、Cortex-M0处理器概述 Cortex-M0是一款由ARM公司设计的精简指令集计算(RISC)微控制器内核,适用于低成本、低功耗的应用场景。它具备了ARM Cortex系列处理器的一些基本特性,如高效的流水线结构、支持Thumb...

    Atmel批量付运基于Cortex-M0+处理器的新型MCU.pdf

    本文主要涉及三个关键知识点:基于Cortex-M0+处理器的微控制器、Atmel的SAM D20 MCU系列和CEVA-XC DSP授权许可。 首先,Cortex-M0+处理器是ARM公司设计的一种超低功耗的微处理器核心,常用于嵌入式系统,特别是微...

    ARM Cortex-M0权威指南_EN_2nd

    ARM Cortex-M0处理器作为ARM内核中最简单的处理器之一,非常适合那些对资源有限制的嵌入式应用。ARM Cortex-M0+是Cortex-M0的增强版本,增加了额外的改进,如更高的性能和更低的功耗。这些处理器通常用于执行简单的...

    ARM CORTEX-M0汇编指令汇总

    Cortex-M0内核主要面向简单的微控制器应用,例如家用电器、传感器、办公自动化设备等。该内核不包含M系列中的某些复杂功能,如DSP指令集和内存保护单元(MPU),但依然保持了Cortex-M系列内核的低功耗和高性能特点。 ...

    ARM Cortex®-M0 DesignStart™ Design Kit (代码及文档)

    其中,硬件描述语言源码允许开发者对Cortex-M0内核进行定制,比如改变中断处理机制、调整流水线深度等,以适应特定应用的需求。 Cortex-M0处理器具有以下关键特性: 1. **RISC架构**:采用精简指令集计算,强调高...

    ARM Cortex-M0权威指南(英文版)

    #### 二、ARM Cortex-M0架构简介 1. **Cortex-M0架构特点** - **低功耗设计**:Cortex-M0针对低功耗应用进行了优化,特别适合电池供电设备。 - **简化指令集**:采用了Thumb-2指令集,提高了代码密度和执行效率。 ...

    ARM Cortex-M0原理与应用实践

    《ARM Cortex-M0原理与应用实践》这本书为学习者提供了一个全面了解Cortex-M0内核及其应用程序开发的机会。通过深入研究这本书中的理论知识和实践案例,读者不仅可以掌握Cortex-M0的基本原理,还能学会如何利用这款...

    cortex- m0 手册

    Cortex-M0是ARM公司针对微控制器市场设计的一种高效能、低功耗的处理器内核,广泛应用于物联网(IoT)、消费电子和汽车电子等领域。它的设计目标是提供简单的软件接口,同时保持低功耗和低成本,以满足各种嵌入式应用...

    飞思卡尔推出基于ARM Cortex-M0 处理器的Kinetis L系列微控制器.pdf

    Cortex-M0+内核采用了优化的冯·诺依曼架构,具有简单的指令集和高效的处理单元,使得代码密度高,能效比优秀。 Kinetis L系列微控制器扩展了飞思卡尔在嵌入式处理器领域的领导地位,这一系列MCU的特点包括: 1. *...

    cortex_m0p_r0p1_trm_CORE_

    "Cortex-M0p_r0p1_trm CORE"指的是Cortex-M0+处理器的参考手册(Technical Reference Manual,TRM),它是深入学习和理解该微控制器架构和功能的关键资源。 **1. Cortex-M0+概述** Cortex-M0+基于ARMv6-M架构,具有...

    cortex-m0数据资料

    Cortex-M0+是一种微处理器内核,它是ARM公司设计的一种针对低成本、低功耗嵌入式系统应用的处理器核心。Cortex-M0+内核在Cortex-M0的基础上进行了性能提升,同时保持了与Cortex-M0的兼容性。Cortex-M0+支持更高效的...

    2. Cortex-M0内核

    ### Cortex-M0 内核详解 #### Cortex-M0 内核概述 ...通过了解其架构特点、指令集、中断处理机制等方面的特性,开发者可以更好地利用Cortex-M0内核的优势,为各种应用领域提供高效可靠的解决方案。

    ARM Cortex-M3,Cortex-M0,Cortex-A8的主要区别

    - **RISC处理器内核**:采用精简指令集计算(RISC)架构,提供高效的指令执行。 - **Thumb-2技术**:支持16/32位指令混合编码,能够在不牺牲性能的情况下减小程序代码大小。 - **低延迟3阶段管道**:确保了指令执行的...

    Cortex-M0处理器初探

    #### 二、Cortex-M0处理器简介 Cortex-M0处理器属于ARMv6-M架构,是专门为嵌入式应用设计的一款处理器。它不仅具备高性能的32位ARM内核,而且还集成了可嵌套中断控制器(NVIC)以及可选的唤醒中断控制器(WIC),并且...

Global site tag (gtag.js) - Google Analytics