目录
1 cotex-M3的优势?
2 M3产品分类
3 ARM背景和架构
4 M3为什么会出现MPU?
5 M3的指令集发展历程
6 M3的应用场景
学习cotex-M3之前,需要明白,为什么要选择这款处理器,它有什么优点,使用它能给我们带来什么?
CM3相比较于其他处理器,优势在于:
优势 | 描述 |
性能强劲 | 相同的主频下,能做处理更多任务。 |
功耗低 | 延长电池寿命——便携式设备福音(如无线网络应用) |
实时性好 | 能极速响应中断,响应中断所需周期数固定。 |
代码密度得到很大改善 | 一方面力挺大型应用程序,另一方面为低成本设计而省吃俭用。 |
丰富的优秀开发工具 | 免费的,便宜的,全能的,要什么有什么。 |
通常情况,目前M3的产品分为两种:
M3内核 | Cortex‐M3处理器内核是单片机的中央处理单元(CPU) |
基于M3的MCU | |
ARM的背景资料太多不在追溯。
ARM的版本历程可以参考下图:
MMU,存储器管理单元,用于实现虚拟内存和物理内存的分区保护,是应用处理器与嵌入式处理器的分水岭。
电脑和数码产品所使用的处理器几乎清一色地都带MMU。但是MMU也引入了不确定性,这有时是嵌入式领域——尤其是实时系统不可接受的。然而对于安全关键(safety‐critical)的嵌入式系统,还是不能没有内存的分区保护的。为解决矛盾,于是就有了MPU。可以把MPU认为是MMU的功能子集,它只支持分区保护,不支持具有“定位决定性”的虚拟内存机制。
学习一款处理器,其指令集的学习是无法避免了,整理出ARM指令集的发展历程如下:
以前:ARM处理器一直支持两种形式上相对独立的指令集,它们分别是:
这两种指令集对应两种处理器执行状态。在程序的执行过程中,处理器可以动态地在两种执行状态之中切换。实际上,Thumb指令集在功能上是ARM指令集的一个子集,但它能带来更高的代码密度,给目标代码减肥。
2003年,Thumb-2指令集问世,它是16位Thumb指令集的一个超集,在Thumb‐2中,16位指令首次与32位指令并存,两者(Thumb和Thumb-2)的关系参考下图:
Cortex‐M3勇敢地拒绝了32位ARM指令集,却把自己的处理能力全托给Thumb‐2指令集。
低成本单片机 | CM3适合做单片机,甚至简单到用于做玩具和小电器的单片机,都能使用CM3作为内核。 |
汽车电子 | CM3同时拥有非常高的性能和极低的中断延迟,打入实时领域的大门。 |
数据通信 | CM3的低成本+高效率,加上Thumb‐2的强大位操作指令集。 |
工业控制 | 在工控场合,关键的要素在于简洁、快速响应以及可靠。 |
消费类产品 | 现在最便宜的M3 MCU不到1美元 |
=>>总目录<<=
上一篇:如何发布自己的npm包
下一篇:密码强度等级