单片机交流
登录
直播中
杨海清
7年用户
1721经验值
私信
关注
[问答]
Cortex-M4内核与STM32之间有什么关系?
开启该帖子的消息推送
Cortex-M4
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的位置。
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的位置。
举报
更多回帖
rotate(-90deg);
回复
相关问答
Cortex-M4
Cortex-M4
内核
的DSP和专业DSP的区别是什么?
2021-11-19
3586
ARM与
STM32
之间
有
什么关系
2021-10-15
1838
ARM7、ARM9、ARM11、ARM-
Cortex
有
什么关系
?
2021-07-01
1504
STM32
F411的MCU是
Cortex-M
3,还是
Cortex-M4
?
2015-10-21
6711
Cortex-M4
比
Cortex-M
3多了哪些功能?
2021-10-22
1476
请问
cortex-M4
与
cortex
-A7
内核
启动流程是怎样的?
2021-11-30
1427
如何禁用
STM32
MP1
cortex
M4
内核
?
2022-12-30
263
ARM7、ARM9、
cortex-m
3、
cortex-m4
与
cortex
-a8的区别在哪
2021-10-21
2541
请问如何指定加载
Cortex-M4
固件的地址?
2023-01-17
273
Cortex-M4
未在uboot中运行带有
stm32
mp157a处理器的Rproc命令的原因?
2023-02-01
293
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
英国威廉希尔公司网站
william hill官网 版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分