【方辉专栏】Armv7 M 架构简介
发布时间:2022-09-16

摘要: 本文主要对Armv7-M架构进行介绍。

关键字:Armv7-M架构、Thumb指令


1.Armv7架构简介

Armv7是一组体系结构:

Armv7-A支持Arm和Thumb指令集的应用系统,以及要求内存管理支持中的拟地址。

Armv7-R支持Arm和Thumb指令集的实时系统,以及要求内存管理仅支持物理地址。

Armv7-M仅支持Thumb指令集的微控制系统,总体代码量和确定性比性能更重要。


2.Armv7-M架构

Armv7基于市场的多样性定义一组针对不同需求的架构。这组架构在应用层面是一致的,大部分变化是系统基本的。

在Armv6 T2中引入Thumb-2技术为Arm和Thumb指令集提供了平衡,并为Arm架构扩展到新市场,特别是微控制器市场提供了机会。

为了充分利用这一机会,Arm引入了Armv7-M架构,以补充其在高性能和实时嵌入式市场中的优势。Armv7-M是一个只支持Thumb,具有新的系统级程序员模型的架构。


2.1 Armv7-M架构的设计原则:

启用具有知名能力、性能和区域限制的实现:

--为简单的流水线设计提供可能,在广泛应用中提供知名的系统性能水平。

高度确定的操作

--单次或低周期计数。

--最小的中断延迟,最短的流水线。

--无缓存操作。

兼容C/C++:

--异常处理程序是标准的C/C++函数。

专为深度嵌入式系统设计:

--少引脚设备。

--为Arm架构提供新的入门级机会。

为事件驱动系统提供调试和软件分析支持。


2.2 Armv7-M 指令集

Armv7-M只支持执行Thumb指令。同时将浮点指令和数字信号处理(DSP)指令添加到Thumb指令集。


更详细的指令介绍请持续关注后续更新。