Cortex - M 微控制器内存映射与总线技术详解
1. Cortex - M 内存模板概述
不同的 Cortex - M 微控制器家族具有不同的外设范围和内存大小,但 Arm 定义了一个基本的内存模板,所有设备都必须遵循该模板。这个模板提供了标准布局,使得所有供应商提供的内存和外设都位于通用的内存区域。
Cortex - M 内存模板将 Cortex - M 处理器的 4GB 地址空间划分为八个区域,具体如下:
|区域|大小|用途|
| ---- | ---- | ---- |
|前三个区域|每个 0.5GB|分别用于可执行代码空间、内部 RAM 和内部外设|
|接下来两个区域|每个 1GB|用于外部内存和内存映射设备|
|最后三个区域| - |构成 Cortex - M 处理器的内存空间,包含系统控制块(SCB)的配置和控制寄存器以及调试器寄存器。地址映射顶部还为供应商特定寄存器提供了地址空间|
2. Cortex - M 处理器的总线结构
虽然 Cortex - M 内存映射是一个线性的 4GB 地址空间,没有分页区域或复杂的寻址模式,但微控制器的内存和外设通过多种不同的总线连接到 Cortex - M 处理器,具体如下:
- ICODE 总线和 DCODE 总线 :地址空间的前 0.5GB 用于可执行代码和代码常量,该区域有两条专用总线。ICODE 总线用于获取代码指令,DCODE 总线用于获取代码常量。
- 系统总线 :其余的用户内存空间(内部 RAM 和外设,以及外部 RAM 和外设)通过单独的系统
超级会员免费看
订阅专栏 解锁全文
1982

被折叠的 条评论
为什么被折叠?



