STM32单片机作为ARM Cortex-M3架构的微控制器,其内部总线结构复杂而高效,支撑着整个系统的数据流通与指令执行,是许多嵌入式工程师必须掌握的学习重点。下面将列出STM32单片机内部的主要总线及其功能。
1、I-Code总线
类型:指令总线
协议:基于AHB-Lite总线协议
位宽:32位
功能:连接Cortex™-M3内核的指令总线与闪存指令接口,负责在特定存储器地址范围内(0x0000_0000至0x1FFF_FFFF)的取指操作。CPU内核可一次取出两条16位Thumb指令。
2、D-Code总线
类型:数据总线
协议:基于AHB-Lite总线协议
位宽:32位
功能:连接Cortex™-M3内核的数据总线与闪存存储器的数据接口,负责在相同存储器地址范围内的数据访问操作。支持数据常量和调试访问,且只支持AHB-Lite的对齐访问。
3、类型总线
类型:外设总线
功能:连接Cortex™-M3内核的系统总线(外设总线)到总线矩阵,协调内核与DMA间的访问。负责在特定地址范围(0x2000_0000至0xDFFF_FFFF和0xE010_0000至0xFFFF_FFFF)内的所有数据传送,包括取指和数据访问。
4、DMA总线
功能:将DMA的AHB主控接口与总线矩阵相连,协调CPU的DCode和DMA到SRAM、闪存和外设的访问。DMA提供高速数据传输,减轻CPU负担。
5、总线矩阵
功能:协调内核系统总线和DMA主控总线之间的访问仲裁,采用轮换算法。包含4个驱动部件(CPU的DCode、系统总线、DMA1总线和DMA2总线)和4个被动部件(闪存存储器接口、SRAM、FSMC和AHB2APB桥)。
6、AHB/APB桥
功能:在AHB和2个APB总线间提供同步连接,APB1操作速度限于36MHz,APB2操作于全速(最高72MHz)。自动将8位或16位APB寄存器访问转换为32位访问,以适应32位向量。
本文凡亿企业培训原创文章,转载请注明来源!
暂无评论