Tuesday, June 27, 2017

ARM核心及体系结构

下表列出了英国ARM公司的ARM微处理器核心以及体系结构(英文名:ARM Architecture Reference Manua)的发展历史:
 

核 心

体系结构

常见CPU

ARM1

V1

ARM2

V2

ARM2As、ARM3

V2a

ARM6、ARM600、ARM610、ARM7、ARM710

V3

ST的

StrongARM、ARM8、ARM810

V4

Intel的SA1110:StrongARM

ARM7TDMI、ARM710T、ARM720T、ARM740T、ARM9TDMI、ARM920T、ARM940T

V4T

Philips的LPC210x:ARM7TDMI
Samsung的S3C2440:ARM920T
Cirrus Logic的EP930X:ARM920T
Marvell的PXA310:ARM920T

ARM9E-S、ARM10TDMI、ARM1020E

V5TE

Samsung的S3C2450:ARM926EJ
Marvell的PXA910/920/935

ARM1136J(F)-S、ARM1176JZ(F)-S、ARM11 MPCore

V6

SiRFprima/A4:ARM1136

Freescale的MX31:ARM1136J(F)-S
Samsung的S3C6410:ARM1176JZ(F)-S

ARM1156T2(F)-S

V6T2

ARM Cortex-M、ARM Cortex-R、ARM Cortex-A

V7

ST的STM32F10X:ARM Cortex-M3
Samsung的S5PC100:ARM Cortex-A8
TI的OMAP3530:ARM Cortex-A8

我们可以看到,Cortex系列属于ARMv7架构,这是ARM公司最新的指令集架构,而我们比较熟悉的三星的S3C2410芯片是ARMv4架构,ATMEL公司的AT91SAM9261芯片则是ARMv5架构。

ARMv7架构是在ARMv6架构的基础上诞生的。该架构采用了Thumb-2技术,Thumb-2技术是在ARM的Thumb代码压缩技术的基础上发展起来的,并且保持了对现存ARM解决方案的完整的代码兼容性。Thumb-2技术比纯32位代码少使用 31%的内存,减小了系统开销。同时能够提供比已有的基于Thumb技术的解决方案高出38%的性能。ARMv7架构还采用了NEON技术,将DSP和媒体处理能力提高了近4倍,并支持改良的浮点运算,满足下一代3D图形、游戏物理应用以及传统嵌入式控制应用的需求。此外,ARMv7还支持改良的运行环境,以迎合不断增加的JIT(Just In Time)和DAC(DynamicAdaptive Compilation)技术的使用。另外,ARMv7架构对于早期的ARM处理器软件也提供很好的兼容性。

ARMv7架构定义了三大分工明确的系列:“A”系列面向尖端的基于虚拟内存的操作系统和用户应用;“R”系列针对实时系统;“M”系列对微控制器和低成本应用提供优化。

2011年10月25-27日,ARM在美国加州圣克拉拉举行了一场技术大会“ARM TechCon 2011”,正式宣布了自己的第一款64位处理器架构“ARMv8”。

ARMv8架构基于32位的ARMv7而来,并保留了TrustZone安全执行环境、虚拟化、NEON(高级SIMD)等关键技术特性。Cortex-A9、Cortex-A15等著名核心就是由ARMv7架构衍生出来的。ARMv8完全向下兼容现有的32位ARMv7软件,而且运行于ARMv8上的64位操作系统也可以简单、高效地支持现有的32位软件。ARMv8在32位指令的基础上增加64位操作能力,拥有AArch64、AArch32两种执行状态,其中前者引入了一套新的指令集“A64”专门用于64位处理,而后者用来兼容现有的32位ARM指令集。

Leave a Reply

Your email address will not be published. Required fields are marked *