03-第三章 STM32处理器总线结构和存储器

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。


3.3 位段



对别名区中某个字进行写操作,该字的第 0 位 将影响位段区中对应的位。 对别名区中某个字进行读操作,若位段区中对 应的位为 0 则读的结果为 0x00,若位段区中 对应的位为 1 则读的结果为0x01。 对别名区的读写可以实现对位段区中每一位的 原子操作,而且仅只需要一条指令即可实现。

3.3 位段



Cortex-M3 存储器空间中包括两个位段区: SRAM 区的最低 1MB空间和外设存储区的最 低 1MB 空间。 这两个位段区分别与两个 32M 的位段别名区 对应,位段区中的每一位映射到位段别名区中 的一个字。 通过对别名区中某个字的读写操作可以实现对 位段区中某一位的读写操作。
第三章 STM32 处理器总线结构和存储器

3.1 系统总线构架 3.2 存储器的组织与映射 3.3 位段 3.4 启动配置
3.1 系统总线构架

四个主动单元:Cortex-M3 内核的 ICode 总 线(I-bus)、DCode 总线(D-bus)、 System 总线(S-bus)和通用 DMA(GPDMA)。 三个被动单元:内部SRAM、内部Flash 存储 器、AHB 到 APB 的桥(AHB2APBx,连接 所有的 APB 设备)。
总线结构中各单元的功能

DMA 总线:将DMA 的 AHB 主控接口与总线 矩阵相连; 总线矩阵:用于连接三个主动单元部件和三个 被动单元,负责协调和仲裁Cortex-M3 内核和 DMA 对 SRAM 的访问,仲裁采用轮换算法。 AHB/APB 桥:两个 AHB/APB 桥在 AHB 和 2 个 APB 总线之间提供完全同步连接。
位段别名区中的字与位段区的位映射公式

bit_word_addr = bit_band_base + (byte_offset x 32) + bit_number × 4 例如:SRAM 位段区中地址为 0x20000300 的字节中的位 2 被映射到别名区中的地址为: 0x22006008(= 0x22000000 + (0x300*32) + (2*4))的字。



3.2 存储器的组织与映射
3.2.1 存储组织
Байду номын сангаас
Cortex-M3 处理器的存储系统采用统一编址方 式;程序存储器、数据存储器、寄存器以及输 入输出端口被组织在同一个 4GB 的线性地址 空间内;

小端方式存放。
3.2.2 STM32 处理器存储器映射

STM32 系列处理器将可访问的存储器空间被 分成 8 个主块,每个块为 512MB。 处理器内部存储器、片上外围设备的地址映射 以及分配给片上各个外围设备的地址空间请参 照书籍。

STM32F10x 处理器总线结构
总线结构中各单元的功能



ICode 总线:将 Flash 存储器指令接口与 Cortex-M3 内核的指令总线相连接,用于指 令预取; DCode 总线:将 Flash 存储器的数据接口与 Cortex-M3 内核的 DCode 总线相连接,用于 常量加载和调试访问; System 总线:将Cortex-M3 内核的 System 总线(外设总线)连接到总线矩阵;
3.4 启动配置

系 统 启 动之 后, CPU 从 位 于 0x0000 0000 地 址 处 的 启 动区开始执行代码。 对 于STM32F10x 系列处理器,可以通过配置 BOOT[1:0]引脚选择三种不同启动模式。

启动模式配置
3.4 启动配置

通过设置 BOOT[1:0]引脚,各种不同启动模式 对应的存储器物理地址将被映像到第 0 块(启 动区)。 系统复位后,在 SYSCLK 引脚的第4 个上升 沿,BOOT 引脚的值将被锁存。
相关文档
最新文档