1、学习路径
STM32中文参考手册中的第二章存储器和总线构架
2、系统架构(中等容量芯片stm32f103c8)
在小容量、中容量和大容量产品中,主系统由以下部分构成:
四个驱动单元: CortexTM-M3内核DCode总线(D-bus),和系统总线(S-bus) 通用DMA1和通用DMA2
四个被动单元 内部SRAM 内部闪存存储器 FSMC AHB到APB的桥(AHB2APBx),它连接所有的APB设备 这些都是通过一个多级的AHB总线构架相互连接的
总线( Bus )是各种信号线的集合,是嵌入式系统中各布件之间传输数据信息、地址信息和控制信息的
公共通道。
与总线相关的主要参数有总线宽度、总线频率和总线带宽。总线宽度是指总线能同时传输的数据位数,
如 8 位、 32 位、 64 位;总线频率是指总线的工作速度,频率越高,速度越快;总线带宽用来描述总线传输数
据的快慢,总线带宽 = 总线宽度 x 总线频率 /8 ,单位为 MB/s 。
STM32 的总线结构如图 所示,可以分为6部分
① ICode 总线( Instruction bus ):用于访问存储空间里指令的总线;
② DCode 总线( Data bus ):用于访问存储空间里数据的总线;
③ System 总线:用于访问指令、数据以及调试模块接口;
④ DMA 总线:用于内存与外设之间的数据传输;
⑤ Bus matrix (总线矩阵):用于总线之间的访问优先级管理控制;
⑥ APB 总线:用于外设接口的数据传输; ARM 公司推出 AMBA 片上总线结构,该总线主要包含先进高
速总线( Advanced High-speed Bus , AHB )和先进外设总线( Advanced Peripheral Bus , APB ),分别连接
高速设备和低速设备。基于这个总线结构, ICode 、 Dcode 、 System Bus 都是 AHB 总线。这里 AHB 系统总线经
过两个 AHB-APB 桥转换成了两个 APB 总线。 APB1 上挂接有 DAC 、 UART 等外设,其最高频率可达 36MHz ;
APB2 上挂接有 ADC 、 GPIO 等外设,其最高频率可达 72MHz 。
在 MCU 每次复位后,所有的外设时钟都会默认处于关闭状态。因此,在使用外设前需要操作复位和时
钟寄存器 (Reset and Clock Control , RCC) 开启所需外设的时钟。