文章目录
- 脑图
- 视频解读
- CPU的组成
- 指令集架构: 复杂指令集 (CISC) VS 精简指令集 (RISC)
- X86架构
- ARM架构
- X86架构 VS ARM架构
- 制程工艺
- 64位计算
- 异构计算
- 功耗
- MIPS架构
- PowerPC架构
脑图
常见的四大CPU体系结构ARM、X86/Atom、MIPS、PowerPC,这里我们来看下主流的X86架构和ARM架构。
视频解读
CPU的x86和ARM架构有啥区别?指令集又是啥?
它诞下AMD和Intel,孕育了硅谷,让乔布斯顶礼膜拜–仙童半导体公司
X86架构——Intel 全球最大的半导体公司,荣誉背后,英特尔究竟经历了怎样的沉浮?
X86架构——和英特尔直面对抗,为什么说AMD是芯片企业中最可怕的那个
芯片行业的巨头ARM(英国公司,2016年已被日本软银收购),即使是高通这样的公司,都时刻受其制约
概括来说:
CPU两个主要的发展方向根据指令集架构来划分: 复杂指令集VS精简指令集
而复杂指令集和精简指令集最为代表性的CPU架构 : X86 和 ARM
使用X86架构生产CPU的巨头公司: Intel 和 AMD (这两家的创始人都是从仙童半导体公司出走创办的) ,采用复杂指令集 (CISC)
使用ARM(Advanced RISC Machine)架构生产CPU的巨头公司: 英国ARM公司,采用精简指令集 (RISC),ARM公司依靠 知识产权(IP) 和 指令集架构授权盈利。ARM 公司本身并不靠自有的设计来制造或出售 CPU ,而是将处理器架构授权给有兴趣的厂家,比如手机行业的 高通、三星巨头都需要依靠ARM架构来生产手机芯片 。
CPU的组成
中央处理单元(CPU)主要由运算器、控制器、寄存器三部分组成。
简单的说
- 控制单元是整个CPU的指挥控制中心,由程序计数器PC(Program Counter), 指令寄存器IR(Instruction
Register)、指令译码器ID(Instruction Decoder)和操作控制器OC(Operation Controller)等组成 - 运算单元:是运算器的核心。可以执行算术运算和逻辑运算。 运算器接受控制单元的命令而进行动作,即运算单元所进行的全部操作都是由控制单元发出的控制信号来指挥的,所以它是执行部件。
- 存储单元:包括CPU片内缓存和寄存器组,是CPU中暂时存放数据的地方,里面保存着那些等待处理的数据,或已经处理过的数据,CPU访问寄存器所用的时间要比访问内存的时间短。采用寄存器,可以减少CPU访问内存的次数,从而提高了CPU的工作速度。但因为受到芯片面积和集成度所限,寄存器组的容量不可能很大。
指令集架构: 复杂指令集 (CISC) VS 精简指令集 (RISC)
目前已存的指令集架构有4种:
- 复杂指令集运算(Complex Instruction Set Computing,CISC);
- 精简指令集运算(Reduced Instruction Set Computing,RISC) ;
- 显式并行指令集运算(Explicitly Parallel Instruction Computing,EPIC);
- 超长指令字指令集运算(VLIW)。
基于VLIW研发的CPU架构主要用于早期的小型机,现在已基本消亡。而EPIC是Intel和HP从VLIW中发展出来的,目前好像只有Intel的IA-64架构下的纯64位微处理器的Itanium/Itanium 2采用EPIC。因此目前比较流行的指令集只剩下:CISC和RISC。
要了解X86和ARM,首先需要先了解复杂指令集(CISC)和精简指令集(RISC),这两个是处理器设计的两个大的方向
举个简单的例子来理解CISC 和 RISC:机器人跳舞
复杂指令集,下发一条跳舞指令,机器人就可以完成跳舞
精简指令集,需要下发 上下左右前前后后等多条指令,机器人才能完成跳舞。
基于指令集的CPU架构 (除了X86是CISC,剩下的基本都是RISC):
- CISC:Intel和AMD的X86架构都是基于CISC,包括X86和X86-64。
- RISC: 包括ARM架构、MIPS架构、IBM 的PowerPC架构、SUN 的 Ultra SPARC架构。
X86架构
X86架构是微处理器执行的计算机语言指令集,基于Intel 8086且向后兼容的中央处理器指令集架构,包括Intel 8086、80186、80286、80386以及80486,由于以“86”作为结尾,因此其架构被称为“x86”
应用领域:个人计算机、服务器等
ARM架构
ARM架构是一个精简指令集(RISC)处理器架构,其广泛地使用在许多嵌入式系统设计。由于节能的特点,ARM处理器非常适用于移动通讯领域,符合其主要设计目标为低耗电的特性。
应用领域:手机、PAD、导航系统、网络设备等都是ARM架构,目前世界上使用最广泛的CPU就是ARM
X86架构 VS ARM架构
制程工艺
ARM架构主要用途决定其追求处理器功耗低,而X86架构则是处理能力强大。现在主流的ARM芯片已使用10nm制程工艺了,而I7CPU却依然采用的14nm制程工艺
64位计算
对于64位计算,X86架构的两巨头ARM和Intel也有一些显著区别。Intel最初并没有开发64位版本的x86指令集。64位的指令集名为x86-64(有时简称为x64),实际上是AMD设计开发的。Intel做的64位计算,是搞了一个新64位处理器项目名为IA64。由此制造出了Itanium系列处理器。而AMD知道自己造不出能与IA64兼容的处理器,于是它把x86扩展一下,加入了64位寻址和64位寄存器。最终出来的架构,就是 AMD64,成为了64位版本的x86处理器的标准。
而ARM在看到移动设备对64位计算的需求后,于2011年发布了ARMv8 64位架构。ARMv8使用了两种执行模式,AArch32和AArch64。顾名思义,一个运行32位代码,一个运行64位代码。ARM设计的巧妙之处,是处理器在运行中可以无缝地在两种模式间切换
异构计算
ARM的big.LITTLE架构是一项Intel一时无法复制的创新。
在big.LITTLE架构里,处理器可以是不同类型的。
传统的双核或者四核处理器中包含同样的2个核或者4个核,每个核提供一样的性能,拥有相同的功耗。而ARM通过big.LITTLE向移动设备推出了异构计算。这意味着处理器中的核可以有不同的性能和功耗。当设备正常运行时,使用低功耗核,而当你需要高计算能力时,使用的是高性能的核。
功耗
首先,功耗和工艺制程相关.
现在主流的制程工艺在10nm-14nm,而主流ARM架构CPU和X86架构CPU的制程工艺相差不大。
其次和设计相关。
X86为了增强对乱序操作的处理能力,加强了乱序指令的执行。此外,X86还增强了单核的多线程能力。,性能高,功耗高。 ARM的指令强在确定次序的执行,并且依靠多核而不是单核多线程来执行。这样容易保持子模块和时钟信号的关闭,显然就更省电。
MIPS架构
上世纪80年代由美国斯坦福大学Hennessy教授的研究小组研发,它采用精简指令系统计算结构(RISC)来设计芯片。
和Intel采用的复杂指令系统计算结构(CISC)相比,RISC具有设计更简单、设计周期更短等优点,并可以应用更多先进的技术,开发更快的下一代处理器。
MIPS是出现最早的商业RISC架构芯片之一,新的架构集成了所有原来MIPS指令集,并增加了许多更强大的功能。MIPS自己只进行CPU的设计,之后把设计方案授权给客户,使得客户能够制造出高性能的CPU。
应用领域:工作站等计算机平台,目前国内龙芯主要使用MIPS架构机器
- 龙芯基于 MIPS架构,自研。
- 兆芯(上海兆芯集成电路有限公司生产)基于X86架构的兆芯x86通用处理器 。
02年,中科院计算机研究所制造了龙芯处理器,但未经授权,一直被MIPS公司状告侵权。07年,中科院计算机研究所的龙芯处理器获得了MIPS的全部专利、指令集授权,中国开始走上了一MIPS为基础的CPU研发道路。
PowerPC架构
PowerPC是IBM联合苹果、摩托罗拉公司研发的一种基于RISC精简指令集的CPU。
PowerPC架构最大优点是灵活性非常好,核心数目灵活可变,因此在嵌入式设备上具有很高效益,可以针对服务器市场做超多核,针对掌机做双核,因此它具有优异的性能、较低的能量损耗以及较低的散热量。