一,什么是cpu?
CPU(Central Processing Unit)即中央处理单元,是一块超大规模的集成电路、是一台计算机核心和控制核心。其功能主要是“解释计算机指令以及处理计算机软件中的数据”。主要包括:
- 运算器(ALU,Arithmetic and Logic Unit)
- 控制器(CU,Control Unit)
- 若干个寄存器和高速缓冲存储器及实现它们之间联系的数据、控制及状态的总线。
CPU内部存储器和输入、输出设备合称为“电子计算机三大核心部件”。
二,ARM和X86的恩怨情仇
ARM和X86是CPU的两种不同架构。
区别在于:
1,逻辑角度
Intel x86使用复杂指令集(CISC);而ARM使用精简指令集(RISC)。
举例说明:
同样是控制计算机完成一项工作,Intel 需要发出很多指令来指挥计算机完成各个步骤;而ARM只需发出简单的指令便可完成简单的功能。其原因在于,Intel是将不同单个“动作(步骤)”组合在一起完成整个操作,而ARM的功能较模块化,即只需下达完成某个简单操作的指令,ARM就会执行整个操作。
2,制造工艺
Intel的强项是设计超高性能的处理器;ARM设计的是低功耗处理器。Intel i7处理器平均发热功率为45W,基于ARM的SoC(片上系统,System on Chip)发热最大功率大约为3W。制造工艺纳米数越小,能量的使用效率越高。
3,64位计算
Intel并没有开发64位版本的X86指令集。64位的指令集名为X86-64,实际上是AMD设计开发的。ARM拥有ARM V8 64架构。这是基于原有的原则和指令集,开发的一个简明的64位架构。
4,异构计算
ARM的big.LITTLE架构,即处理器中的核可以有不同的性能和功耗。当设备正常运行时,使用低功效核;当运行复杂游戏时,使用的高性能的核。因为处理器执行指令有两种方式:
- 顺序执行:性能差、速度慢、功耗小。
- 乱序执行:性能强、速度快、功耗大。
而ARM的big.LITTLE架构可以拥有两个不同的核心,一个核心顺序执行、另一个核心乱序执行,在合适的时间可使用合适的核。
5,功耗
CPU的功耗主要与两方面有关:
- 工艺流程
- 设计
对于工艺流程而言,Intel的工艺比ARM领先一代(2-3年)。对于同样的设计,Intel设计出来的更紧凑、能量使用效率更高。
对于设计而言,有可分为:
- 前端设计
- 后端设计
对于前段设计:
X86的对指令的乱序执行能力很强,但X86增强了单核的多线程能力,因此,为了保持高性能,就让大部分模块都保持开启,时钟也保持切换。这样的后果就是耗电高。
ARM对指令的乱序执行能力不如X86,但顺序执行能力强。并且依靠多核来执行。这样,就容易保持子模块和时钟信号的关闭。因而耗电少。
对于后端设计:
后端设计处理电压、时钟等问题,是耗电的直接因素。晶体管耗电主要有两个原因:一个是动态功耗;另一个是漏电功耗。动态功耗是指晶体管在输入电压切换的时候产生的耗电。所有逻辑功能的0/1切换,归根到底都是时钟信号的切换。若时钟信号保持不变,那么这部分的功耗就为0。这就是“门控时钟(Clock Gating)”。而漏电功耗可以通过关掉某个模块的电源来控制(Power Gating)。
门控时钟恢复时间较短,电源控制的时间较长。因为恢复工作时候模块间是有先后次序的,不遵照这个次序就无法恢复。而遵照这个次序就会使总恢复时间变长。所以,为了省电,可关闭一些暂时不用的处理器模块,但也不能轻易的关闭,否则,一旦需要,恢复的时间会很长。总体的性能显然降低。
三,SoC
SoC(System on Chip),简称“片上系统”,是指将CPU、图形、视频、音频、网络等功能集成在一个芯片中的系统级芯片。
354

被折叠的 条评论
为什么被折叠?



