前言
ARM名声很大,最近在学习STM32,也借机梳理一下关于ARM的各种概念和信息。
本文主要内容:ARM一词的含义,ARM的发展历史,ARM cortex系列处理器简介与ARM在不同市场的应用情况。
一. ARM一词的4种含义
1.1 ARM公司
ARM第一种意思是指ARM公司。
ARM公司成立于1990年,是一家英国半导体设计公司,总部位于剑桥。ARM公司的全称是Advanced RISC Machines Ltd,中文翻译为安谋公司。ARM公司的主要业务是设计和授权处理器核心IP(Intellectual Property,知识产权)。
1.2 ARM指令集架构
ARM的第二种意思是指ARM指令集架构。
ARM,Advanced RISC Machines,直译为先进的精简指令集架构处理器,其中RISC是Reduced Instruction Set Computer的缩写,意为精简指令集处理器架构,ARM是RISC最突出的代表,其它比较有名的RISC指令集还有:MIPS,PowerPC,SPARC,RISC-V。
与RISC相对的是CISC,Complex Instruction Set Computing,复杂指令集处理器架构,闻名世界的X86指令集就是一种CISC指令集。
其实指令集和架构是两种不同的概念。
指令集(Instruction Set)是计算机硬件与软件之间的接口规范,是一种约定的机器语言,定义了计算机可以执行的操作,包括运算、存储、传输等。指令集是计算机硬件设计的基础,也是软件开发的基础。
架构(Architecture)是计算机系统的总体设计,包括计算机硬件的组成、互连方式、指令集、操作系统、编译器等。计算机架构决定了计算机系统的性能、可靠性、扩展性和兼容性等方面。
从功能上来看,指令集定义了计算机可以执行的操作,而架构则决定了计算机如何执行这些操作。指令集规定了一系列指令的编码格式和执行方式,架构则决定了计算机硬件的结构和组成方式,包括中央处理器(CPU)、内存、输入输出设备等。指令集是一种抽象的概念,而架构则更加具体。
另外,指令集和架构还有一些联系。指令集是计算机架构设计的重要组成部分,它会影响到架构的性能、可编程性、复杂度等方面。指令集与架构的协同设计可以提高计算机系统的性能和可靠性,并且可以降低计算机系统的设计成本。此外,指令集和架构也可以相互影响,当计算机架构设计变化时,需要相应地更新指令集;而当新的指令集出现时,也会对计算机架构设计产生影响。
对于ARM的指令集和架构来说,两者是绑定在一起的,所以我们通常不分开说这两者,而统一说成ARM指令集架构。
1.3 ARM内核
ARM的第三种意思是指ARM内核,或者说ARM处理器。
内核是相对于完整的芯片来说的,ARM将核心处理器部分设计完成,然后授权给其它芯片设计厂商,其它厂家可根据授权方式进行更改或直接使用,然后发布自己的芯片,这些芯片就是基于ARM内核的。
ARM内核有多种类型,比如,ARM6,ARM7,…,ARM11,cortex-M,cortex-R,cortex-A等。
1.4 ARM芯片
ARM的第四种意思是指ARM芯片。
上面说到了ARM公司的商业模式是授权ARM指令集架构或者ARM内核IP,这些拿到授权的公司基于ARM架构或内核最终设计出的芯片,被称为ARM芯片。
ARM芯片其实就是采用了ARM指令集架构或者ARM内核的芯片。
在微控制器领域,ARM芯片已成为市场的主流,市占比大概在70%,以下列出最有名的几个:
- STM32系列:STMicroelectronics即意法半导体公司的32位ARM Cortex-M系列微控制器,常用的有STM32F103,STM32F407等。
- LPC系列:NXP Semiconductors即恩智浦的32位ARM Cortex-M系列微控制器,常用的有LPC1788,LPC1754等。
- SAM系列:Microchip Technology公司的32位ARM Cortex-M系列微控制器。
- Kinetis系列:NXP Semiconductors公司的32位ARM Cortex-M系列微控制器。
- EFM32系列:Silicon Labs公司的32位ARM Cortex-M系列微控制器。
在手机和电脑处理器领域,ARM芯片也在逐年增加,以下列出最有名的几个:
- Qualcomm Snapdragon系列芯片:高通骁龙系列芯片,由美国高通公司发布,广泛应用于智能手机和平板电脑等领域。
- Apple A系列芯片:由美国苹果公司发布,广泛应用于iPhone、iPad等产品中。
- Samsung Exynos系列芯片:由韩国三星电子公司发布,广泛应用于三星手机等产品中。
- MediaTek Helio系列芯片:由台湾联发科技公司发布,广泛应用于智能手机等领域。
- HiSilicon Kirin系列芯片:华为麒麟系列芯片,由中国华为公司发布,广泛应用于华为手机等产品中。
二. ARM公司发展史
以下总结了ARM公司及其前身从建立到慢慢发展壮大的历史。
- 1978年,ARM的前身CPU公司(Cambridge Processing Unit,剑桥处理器单元)在英国剑桥成立,主要业务为电脑制造。
- 1979年,CPU公司改名为Acorn Computer Ltd,艾康电脑公司,以下简称Acorn。
- 1981年,Acorn推出了BBC Micro计算机,大获成功,这是欧洲第一台畅销的个人计算机。
- 1983年,为解决市场上缺乏高性能、低成本芯片的问题,Acorn开始自己设计处理器芯片。
- 1985年,Acorn的首席工程师Sophie Wilson带领团队研发出采用精简指令集的新处理器,名为Acorn RISC Machine,又称为ARM1,此芯片由Acorn设计,由英国的VLSI Technology公司制造。同一年,Inter推出了80386处理器,性能全面碾压ARM1,这也使得后续ARM处理器的研发开始朝着低成本,低功耗的路线,以避免与Inter的正面碰撞。
- 1986年,Acorn成立了Advanced RISC Machines Ltd.(ARM)子公司,该公司致力于开发和推广ARM架构处理器。同年,Acorn 推出了ARM2处理器(Acorn设计,VLSI制造),并于次年应用到Acorn推出个人电脑产品Acorn Archimedes中,此PC在英国市场大获成功。
- 1989年,Acorn推出了ARM3处理器(Acorn设计,VLSI制造)并应用到了Acorn Archimedes计算机的后续产品,如A3000、A3010、A3020和A4000,以及一些嵌入式系统和移动设备中。
- 1990年,Acorn为了ARM更好地发展同时减少公司的财务压力,Acorn将子公司ARM独立出来,并接受了苹果和VLSI的投资,ARM正式成为一家独立的合资公司。同年,ARM决定改变他们的产品策略——他们不再生产芯片,转而以授权IP的方式,将芯片设计方案卖给其他公司,收取一次性技术授权费和版税提成。这是一种全新的商业模式,极大地降低了ARM自身的研发成本和研发风险。
- 1991年,ARM授权了ARM2和ARM3内核IP给英国的GEC Plessey半导体公司,用于开发微控制器。
- 1992年,ARM发布了ARM6内核,它是ARM2和ARM3的改进版。不知为何ARM4和ARM5直接被跳过了,并没有此代号的产品发布。
- 1993年,ARM将ARM6内核授权给Cirrus Logic和德州仪器(Texas Instruments,TI)。同年,苹果公司推出了一款新型掌上电脑产品——Newton,ARM公司开发的ARM6芯片被用于该产品之中。
- 1997年,诺基亚6110手机发布,风靡全球,其中就使用了基于ARM7TDMI内核的处理器芯片。
- 1998年,业务飞速发展的ARM,同时在伦敦证交所和纳斯达克上市。
- 2004年,ARM发布cortex-M3内核,放弃了之前ARM6,ARM7这种命名方式,后续ARM将内核分类为cortex-A,cortex-R,cortex-M,分别适用于高性能,高可靠性和微控制器场合。
- 2007年,第一款iPhone发布,搭建的是Samsung生产的S5L8900,此芯片是基于ARM11内核设计的。此后苹果公司不管是买的处理器还是自研处理器,不管是手机还是iPad均使用了ARM指令集架构或者ARM内核,ARM则借此彻底搭上了全球移动应用发展的顺风车。
- 2008年,谷歌推出了Android操作系统,它是一种基于Linux内核的开源移动操作系统,也是基于ARM指令集架构设计的。ARM进一步巩固了移动市场的领导地位。
- 2010年,苹果公司向ARM董事会表示有意以85亿美元的价格收购ARM公司,但遭到ARM董事会的拒绝。
- 2011年,微软宣布Windows 8操作系统将支持ARM架构,这标志着传统的Wintel联盟(Windows + Intel)开始重视ARM架构的发展和应用。
- 2012年,微软推出了运行Windows RT操作系统的Surface RT平板电脑,它搭载了一款基于ARM架构的NVIDIA Tegra 3处理器,虽然这款电脑并未获得成功,但也预示着ARM架构已经开始在PC市场上崭露头角。
- 2016年,曾经投资阿里巴巴的孙正义和他的日本软银集团,以243亿英镑(约309亿美元)收购了ARM集团,ARM退市。软银集团表示,收购后将继续支持ARM的独立经营。截至收购时,ARM已经拥有近500家客户和超过80亿颗芯片的出货量。
- 2020年,NVIDIA宣布出价400亿美元从日本软银集团手中收购ARM,但此项收购遭到监管机构和大型企业(例:高通、微软、Google等)的一致反对。2022,收购案正式宣告失败。
本章参考
- Arm (企业) - 维基百科,自由的百科全书 (wikipedia.org)
- 艾康电脑 - 维基百科,自由的百科全书 (wikipedia.org)
- ARM到底是一家什么样的公司?_Acorn (sohu.com)
- ARM架构的崛起,智能手机SoC发展史_Acorn_公司_处理器 (sohu.com)
- List of ARM processors - Wikipedia
- ChatGPT的回答
三. ARM指令集架构与ARM内核发展史
ARM指令集架构发展史:
- ARMv1:1985年发布,最早的ARM架构。
- ARMv2:1986年发布,改进了ARMv1,增加了32位地址总线和指令集扩展(增加了一些指令)。
- ARMv3:1992年发布,支持虚拟内存、增加了指令集扩展,包括支持协处理器(coprocessor)。
- ARMv4:1994年发布,增加了Java虚拟机指令集扩展(Jazelle)和Thumb指令集,提高了代码密度。
- ARMv5:1997年发布,增加了支持嵌入式Java的指令集扩展(Jazelle-RCT)、增加了支持浮点运算的指令集扩展(VFP)。
- ARMv6:2002年发布,增加了Thumb-2指令集,提高了代码密度和执行效率,同时也增加了一些指令集扩展,包括支持Jazelle-DBX。
- ARMv7:2004年发布,增加了基于TrustZone的安全扩展、NEON指令集扩展,支持向量浮点运算(VFPv3)等。
- ARMv8:2011年发布,增加了AArch64架构,支持64位处理器,同时保留了AArch32架构,提高了性能和能耗效率。
- ARMv9:2021年发布,增加了Confidential Compute Architecture(CCA)和Realms技术,提高了安全性和隔离性。
ARM内核的发展史:
ARM内核非常多,这里直接使用维基百科中的ARM内核发布时间线汇总表。
关于ARM处理器与内核的对应关系,每个内核的性能特点,以及一些有名的其它公司基于ARM架构设计的芯片,本章参考的维基百科中均有详细的介绍。因篇幅限制,此处仅截图展示。
考虑到,维基百科访问不易,文末会将网页整理为PDF文件进行分享。
本章参考
- ARM架构 - 维基百科,自由的百科全书 (wikipedia.org)
- List of ARM processors - Wikipedia
四. ARM cortex处理器简介
为更好地适应不同市场的差异化需求,2004年以后,ARM公司放弃了之前ARM+数字的命名方式(如ARM7,ARM8等),转而用cortex来命令处理器产品,并分为三大产品线,分别是Cortex-A、Cortex-R和Cortex-M。
近两年推出的cortex-X并不是单独的产品线,它可看做cortex-A的升级版,两者的市场定位是一样的。
Cortex-A系列处理器是针对高端应用而设计的,通常应用于智能手机、平板电脑、数字电视和网络设备等。这些处理器拥有高性能、大规模的内存管理单元以及大量的内部缓存,支持多核处理和虚拟化技术。目前最新的Cortex-A系列处理器是Cortex-X3和Cortex-A715。
Cortex-R系列处理器是针对实时应用而设计的,通常应用于汽车、工业控制和医疗设备等。这些处理器拥有极低的延迟、高精度的计时器和内部存储器保护机制,能够在实时响应和高可靠性方面表现出色。目前最新的Cortex-R系列处理器是Cortex-R82。
Cortex-M系列处理器是针对低功耗、低成本、嵌入式应用而设计的,通常应用于传感器、智能家居、工业控制和医疗设备等。这些处理器拥有低功耗、小尺寸和低成本等优点,同时也支持实时性、安全性和可靠性等特性。目前最新的Cortex-M系列处理器是Cortex-M85和Cortex-M55。
五. ARM在不同市场的应用情况
在过去的几十年时间里,ARM公司慢慢从一个十几人的小公司成长为一个全球闻名的芯片巨头。从最初的ARM1处理器到现在的三大cortex产品系列,ARM公司不断推出性能更强、功耗更低、功能更丰富的处理器产品,在多个不同领域都有着广泛应用:
- 嵌入式市场:ARM架构的处理器在嵌入式市场中应用广泛,其中包括智能穿戴设备、物联网、工控设备、汽车电子等领域,根据ARM官方数据,全球90%以上的嵌入式处理器采用ARM架构,市场占有率超过90%。
- 移动设备市场:ARM架构的处理器在移动设备市场中占据绝对优势,几乎所有的智能手机和平板电脑都采用了基于ARM架构的处理器。市场占有率超过90%。
- 服务器市场:ARM架构的处理器在服务器市场中也有应用,特别是在低功耗服务器领域。目前X86架构处理器在服务器领域仍然占据着绝对的市场份额,但随着ARM处理器的性能不断提升和应用场景的不断扩大,ARM在服务器市场中的份额有望进一步增长。
- 智能家居市场:ARM架构的处理器在智能家居市场中应用广泛,包括家庭自动化、安防监控等领域。市场占有率超过50%。
六. 分享
- ARM企业(维基百科)——PDF
- ARM架构与处理器(List of ARM processors)(维基百科)——PDF
欢迎大家关注我的公众号:徐晓康的博客,回复以下四位数字获取。
8963
徐晓康的博客持续分享高质量硬件、FPGA与嵌入式知识,软件,工具等内容,欢迎大家关注。