欢迎来到我司精密电阻产品网站!
STM32,Cortex-M3和ARMv8-M之间的关联
精密电阻 2024-11-22

整理出:Huanggong参考:Wikipedia参考地址:https://zh.wikipedia.org/wiki/ARM体系结构每个人都应该知道STM32,Cortex-M3,ARMv8-M与ARM相关,但是它们可能无法区分它们是什么关系,或者究竟是什么。

1.概述ARMv8-M:它是一种ARM体系结构。

ARM体系结构分为:ARMv1,ARMv2……ARMv8。

而ARMv8分为:ARMv8-A,ARMv8-R,ARMv8-M。

Cortex-M3:它是ARM处理器核心,也可以理解为ARM处理器家族的成员。

ARM处理器核心分为:经典核心和Cortex核心。

传统核心:ARM7,ARM9等。

Cortex核心:Cortex-A,Cortex-R,Cortex-M等。

STM32:是ARM核心处理器芯片。

STM32的大多数是Cortex-M内核,少数包含Cortex-A7(例如STM32MP)。

如图所示:实际上,有许多内容可以细分。

除了这些,还有一些通用的内容,例如ARM指令集,Thumb-2指令集等。

以上是一般内容,下面将进一步描述一些细节。

2.体系结构自1995年以来,“ ARM体系结构参考手册”已被提出。

是ARM文档的主要来源,提供有关ARM处理器体系结构和指令集,不同接口以及所有ARM处理器支持的实现(例如指令语义)的信息。

详细信息可能有所不同。

该架构随着时间的推移而发展,并始于Cortex系列的核心。

存在三种“配置”。

定义如下:配置:Cortex-A系列“嵌入式”配置:Cortex-R系列“微处理器”配置:ARM Cortex-M系列。

每种配置都允许体系结构的子集。

例如,用于ARMv6-M配置(使用Cortex M0 / M0 + / M1)的ARMv7-M体系结构的子集(支持更少的指令)。

3. CPU模式在任何时候,CPU只能处于特定模式,但是由于外部事件(中断)或编程,可以切换模式。

用户模式:仅非特权模式。

系统模式:只能进入特权模式,无例外。

它只能通过执行一条显式写入CPSR的模式位的指令来输入。

(Svc)模式:复位CPU或执行SWI指令时进入的特权模式。

中止模式:发生预读中断或数据中断异常时进入的特权模式。

未定义模式:发生未定义指令异常时进入的特权模式。

干预模式:处理器接受IRQ干预时进入的特权模式。

快速干预模式:处理器接受IRQ干预时进入的特权模式。

Hyp模式:armv-7a提供了由硬件虚拟化为cortex-A15处理器引入的管理模式。

4. ARM授权方法ARM不依赖于自己的设计来制造或销售CPU,而是将处理器体系结构许可给有兴趣的制造商。

标题中的STM32是由ARM生产的处理器,该处理器由Cortex-M内核授权给ST。

ARM提供了各种许可条款,包括价格和发布等项目。

对于许可方,ARM提供了ARM内核的集成硬件描述,包括完整的软件开发工具(编译器,调试器,SDK),以及销售包含ARM CPU的硅芯片的权利。

许多半导体公司持有ARM许可证:Atmel,ST,NXP,TI,IBM等。

在知识产权行业,ARM被公认为是最昂贵的CPU内核之一。

包含基本ARM内核的单个客户产品可能需要最高200,000美元的许可费。

而且,如果涉及大量的结构变更,成本可能会超过数千万美元。

5. ARM核心时间表早在1993年,经典的ARM7出现了,而现在每个人都看到了Cortex-A系列处理器。

实际上,在ARM7之前,还有一些相关的处理器,有兴趣的朋友可以在线了解它。

-结尾-