ARM架构了解

1、ARM的起源

ARM公司的前身Acorn公司研究出第一颗精简指令集处理器Reduced Instruction Set Computer(RISC),因此这颗处理器也叫Acorn RISC Machine,简称ARM
精简指令集RISC,与之相对的就是Intel的复杂指令集CISC,指令集就是让处理器进行某些操作的命令合集,随着技术的发展,添加的指令越来越多,人们发现整个指令集中,只有约20%的指令常常会被使用到,大约占了整个程序内容的80%,而剩余80%的指令,只占了整个程序内容的20%(典型的二八原则)。

复杂指令集和精简指令集
复杂指令集是在办事前就要准备好所有材料,然后递上材料等待结果就行,精简指令集则是把一个流程拆解成步
骤,每一个步骤提供相应的材料,这也就是x86在同频率下性能超arm的原因

A要坐车去B
arm:准备四个轮子和一个座位>把A放在座位上>座位放在四个轮子上>去B
x86:仓库找车>坐车>去B
同样的事情,虽然结果是一样把A送到了目的地,但是arm没有仓库,什么都要造,x86是有一堆仓库,随便用,
差异在于arm过程中消耗少,因为只需要车和轮子,而x86拿车出来,但是车上的灯光,空调,其余的空座位是
本次执行中不需要的东西,也一起弄进去了,所以占用资源比arm大,但是做复杂的事因为x86啥都有,所以比
arm开发更简单,统一标准的库也能让效率更高

于是Acorn公司的思路就是专心优化、加速常用指令,不常用的指令用常用指令去组合,因此Acorn和Intel走向两条不同的方向,Intel采用复杂指令集,支持众多指令,运行更快,性能更好,但设计成本也更高,功耗也高。Acorn的处理器,也就是后来的ARM,使用精简指令集,支持常用指令,整体性能弱一些,但成本更低,功耗也低。这也明白了为什么手机和电脑处理的频率差不多,但性能无法相比,因为他们的处理器架构就不一样。
后面,Acorn和苹果合作,成立了新公司Advanced RISC Machines,也就是ARM,后来ARM改变商业模式,提出了IP授权的商业模式,不在生产芯片,而是售卖芯片设计的授权,逐渐形成了一个以ARM为核心的生态圈,像高通、华为、德州仪器、意法半导体等厂商购买ARM授权,然后根据自身行业需求,设计不同功能的芯片。

2、什么是ARM

现在说ARM,指一家半导体行业技术领先的公司,主要业务是设计RISC处理器(设计RISC处理器架构的公司);也指一类微处理器芯片或产品的统称,即采用ARM公司提供方案开发的处理器,像高通的处理器、华为的处理器,都叫ARM处理器

3、CPU的x86架构和ARM架构

英特尔和AMD的CPU都采用x86架构,也就是复杂指令集架构CISC,而我们的手机、平板大多采用ARM指令集架构。
以修房为例,x86是高楼的设计规范,更轻量的ARM是活动板房的设计规范。确定了基本设计规范后后,根据自己的产品定位,设计出相应的户型,比如一室一厅还是一室两厅,这些设计出来的户型就是我们说的微架构。那CPU上的微架构,就是英特尔设计的Skylake,ADM设计的Zen,还有ARM公司设计的Cortex-A75这些,虽然各家的微架构不一样,但基本都是基于x86或者ARM架构而来的。又比如我们经常听到的挤牙膏:英特尔第一年CPU架构不变,提升制作工艺,22纳米->14纳米;第二年的产品,更新CPU架构,14纳米保持不变;第三年的产品,架构和工艺都不变,对CPU进行优化。三年一个循环,这个操作就是我们常提的挤牙膏

4、ARM架构

以STM32芯片举例,蓝色部分就是整个STM32芯片,内部处于CPU地位的就是ARM设计的内核(指令集架构),右边橙色部分就是ST公司设计的外围电路。

蓝色部分就是ARM公司设计老版本内核,ARM9、11就是经典的ARM处理器;接着推出了Cortex系列内核,并且推出了三款子型号用于不同的场景,A、R、M系列,Application、RealTime、Microcontroller,加起来刚好是ARM,R和M系列主要用于嵌入式领域,A系列用于高端应用型的领域,主要用于手机,像苹果、高通、联发科的手机芯片基本都是采用ARM内核架构的,A系列也是发展最开、性能最高的系列。又如苹果推出的基于ARM的M1芯片,将这个ARM架构推进了电脑领域。R系列主要用于面向实时性很高的场景,比如硬盘控制器;M系列主要用于单片机领域,比如STM32

  • 7
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值