打印
[APM32F0]

cortex-M0+相比cortex-M0有哪些改动

[复制链接]
177|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
我喜欢打游戏|  楼主 | 2024-11-13 20:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1.增加向量表重定位(VTOR),向量表默认存放在存储器初始地址,可以通过重定位,修改到SRAM或其他存储器区域。
2.从三级流水线(取指,译码,执行)改为两级(取指+预译码,译码+执行),减少了寄存器的数量及对应的面积和功耗,也减少了跳转指令带来的性能损失。为了避免流水线级数降低对最大时钟频率的影响,CPU设计时已经对预译码和译码进行了时序的平衡,另外在实际使用中,大多数芯片实际的工作频率较低。
3.增加了单周期I/O接口,这一接口的引入使M0+具有了哈佛结构的特征,但是因为主要的AHB master只有一个,因此还认为是冯诺依曼架构。
4.增加了MPU(可选)
5.增加了MTB(可选),实现低成本的指令跟踪(trace)。


使用特权

评论回复
沙发
呐咯密密| | 2024-11-14 20:33 | 只看该作者
应该是内核差不多,做了一些小升级

使用特权

评论回复
板凳
菜鸟的第一步| | 2024-11-16 20:29 | 只看该作者
Cortex-M0+相对于Cortex-M0的主要改动包括:

1. **流水线优化**:Cortex-M0+采用了两级流水线设计,相较于Cortex-M0的三级流水线,这可以减少寄存器的数量及其对应的面积和功耗,同时减少了跳转指令导致的性能损失。

2. **单周期I/O接口**:Cortex-M0+增加了单周期I/O接口,这使得其具有了类似哈佛架构的特点,虽然主AHB master只有一个,但这个变化提高了数据处理的效率。

3. **向量表重定位(VTOR)**:Cortex-M0+支持向量表重定位,这意味着向量表可以从默认的存储器初始地址移动到其他位置,如SRAM或其他存储器区域,提供了更大的灵活性。

4. **MPU(可选)**:Cortex-M0+增加了对MPU的支持,这允许操作系统在运行时定义应用任务的存储器访问权限,增强了系统的内存保护能力。

5. **微跟踪缓冲(MTB,可选)**:Cortex-M0+支持微跟踪缓冲,这是一个用于低成本指令跟踪的功能,有助于调试和性能分析。

6. **功耗和性能改进**:Cortex-M0+设计用于提供更低的功耗和更高的性能,同时保持与Cortex-M0的兼容性和软件可移植性。

这些改动使得Cortex-M0+在保持低成本的同时,提供了更好的性能和更灵活的系统设计选项。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

75

主题

611

帖子

0

粉丝