单片机交流
直播中

杨海清

7年用户 1721经验值
私信 关注
[问答]

Cortex-M4内核与STM32之间有什么关系?

Cortex-M4内核与STM32之间有什么关系?

回帖(1)

王丽娟

2021-10-22 15:10:20
Cortex-M4处理器的内部资源
               




STM32F4系列提供的CPU外部资源
            




总线矩阵:
总线矩阵是STM32单片机内最重要的硬件结构之一,通过总线矩阵灵活地将Cortex-M4处理器的内核总线(I-Code、D-Code、System BUS)与众多系统级外设(保证CPU正常运行)(如:片内SRAM、片内FLASH、数据DMA总线)或速度要求极高的应用级外设(为用户的具体应用提供服务)(如:以太网DMA总线、USB DMA总线等)相连接。
除此之外,总线矩阵还进一步提供了面向更外一层设备的总线接口APB、AHB和FSMC,其与众多应用级外设相连,并为Cortex-M4处理器提供了访问MCU片内设备(如:DMA外设总线、TIM、ADC、DAC、USART、SPI、USB等)和MCU片外高速设备(如:片外RAM、FLASH)的途径。
时钟系统(时钟树):
是整个单片机系统的心脏,为所有设备(CPU、存储器、总线、外设)提供时钟脉冲。
            




嵌入SRAM:
F429系列提供了大小256KB的系统SRAM,以及4KB的备份SRAM。
以CPU速度运行,可按字节、半字(16 位)或全字(32 位)访问,相当于是ST公司为Cortex-M4内核配备的外部Cache,可通过I-Code和D-Code总线分别访问!
还部分区域支持AHB总线上不同设备的并发访问。
嵌入Flash:
F429系列提供了1MB大小的片内FLASH,用于存储用户程序代码(Code区)。
               




学习笔记 2】—— 地址0x0000 0000的“Flash/系统存储器/SRAM别名区”
在STM32F429存储器地址映射空间的地址0x0000 0000处的“Flash/系统存储器/SRAM别名区”是用来实现物理重映射的。这么做的原因在于:
Cortex-M4处理器复位时默认访问(PC指向)的地址是0x0000 0000,而在STM32F4xx系列中ST公司又将其内部Flash设计在了0x0800 0000的位置,那么在系统复位后,就必须通过物理重映射技术将地址0x0800 0000映射到地址0x0000 0000上。这样CPU在访问0x0000 0000时就等同于在访问0x0800 0000上的Flash(的内容),如此一来CPU才有指令可以执行,系统才能正常启动。
若通过BOOT引脚设置自举模式为SRAM自举或系统存储器自举,也同理,实际上就是将SRAM或系统存储器的首地址映射到了0x0000 0000的位置。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分