《2022年cpu架构简析 .pdf》由会员分享,可在线阅读,更多相关《2022年cpu架构简析 .pdf(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、CPU架构解析报告报告人:夏栩四川农业大学信息工程学院本报告旨在从x86、MIPS、ARM等不同,简单分析说明各种架构之间关系、以及各自特点。首先明确体系架构和体系结构的定义,然后分别论述x86、ARM、MIPS 架构 的特点,然后是简单介绍ARM与MIPS 对比,ARM与 X86对比,最后是谈一下对ARM处理器的前景观望。首先,体系架构的定义:CPU 架构是CPU 厂商给属于同一系列的CPU 产品定的一个规范,主要目的是为了区分不同类型CPU 的重要标示。目前市面上的CPU 主要分有两大阵营,一个是intel 系列CPU,另一个是AMD 系列CPU。图表1 第一块支持X86 指令集的Inte
2、l i8086处理器名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 12 页 -图表 2 AMD 系列 CPU 体系结构的定义:在计算世界中,体系结构一词被用来描述一个抽象的机器,而不是一个具体的机器实现。一般而言,一个CPU 的体系结构有一个指令集加上一些寄存器而组成。“指令集”与“体系结构”这两个术语是同义词。一、x86、ARM、MIPS 架构x86、ARM、MIPS 算是是目前最常见也相对最知名的处理器架构了。1、x86架构名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 12 页 -图表3 X86 架构处理器示意图x86或80 x86 是英特尔首先开发制造的一
3、种微处理器体系结构的泛称。该系列较早期的处理器名称是以数字来表示,并以“86”作为结尾,包括Intel 8086、80186、80286、80386 以及80486,因此其架构被称为“x86”。x86架构于1978 年推出的Intel 8086 中央处理器中首度出现,它是从Intel 8008处理器中发展而来的,而8008则是发展自Intel 4004 的。8086在三年后为IBM PC所选用,之后 x86便成为了个人电脑的标准平台,成为了历来最成功的 CPU 架构。8086是16位元处理器;直到1985年32位元的80386的开发,这个架构都维持是16位元。接着一系列的处理器表示了32位元架
4、构的细微改进,推出了数种的扩充,直到2003年AMD对于这个架构发展了64位元的扩充,并命名为AMD64。后来Intel也推出了与之兼容的处理器,并命名为Intel 64。两者一般被统称为x86-64 或x64,开创了x86的64位时代。值得注意的是Intel早在1990年代就与惠普合作提出了一种用在安腾系列处名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 12 页 -理器中的独立的 64位架构,这种架构被称为 IA-64。IA-64是一种崭新的架构,和x86架构完全没有相似性。(对于 Intel和AMD的处理器技术,打算专门挑些典型的区别总结一篇文章)x86架构是重要地可变指令
5、长度的CISC。字组(word,4 字节)长度的内存存取允许不对齐内存位址,字组是以低位字节在前的顺序储存在内存中。向后相容性一直都是在x86架构的发展背后一股驱动力量(设计的需要决定了这项因素而常常导致批评,尤其是来自对手处理器的拥护者和理论界,他们对于一个被广泛认为是落后设计的架构的持续成功感到不解)。但在较新的微架构中,x86处理器会把x86指令转换为更像RISC 的微指令再予执行,从而获得可与RISC 比拟的超标量性能,而仍然保持向前兼容。如今,我们面前的PC机基本都是x86架构计算机。如果你想尝试其他架构的计算机,首先要考虑的是放弃Windows系统。(好消息是即将正式发布的Wind
6、ows 8 将支持x86和ARM两种架构)2、ARM架构名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 12 页 -图表4 ARM Cortex-A9架构处理器图表 5 ARM Cortex-A8处理器隶属于Cortex-A 系列,基于ARMv7-A 架构ARM架构(进阶精简指令集机器(Advanced RISC Machine),较早称作Acorn RISC Machine)是一个 32位元精简指令集(RISC)处理器架构,其广泛地使用名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 12 页 -在许多嵌入式系统设计。由于节能的特点,ARM处理器非常适用于移动通讯领
7、域,符合其主要设计目标为低耗电的特性。ARM架构包含了下述RISC 特性:1.读取储存 架构2.正交指令集(任意存取指令可以任意的寻址方式存取数据Orthogonal instruction set)3.大量的16 32-bit 寄存器阵列(register file)4.固定的32 bits 操作码(opcode)长度,降低编码数量所产生的耗费,减轻解码和流水线化的负担。5.大多均为一个CPU 周期执行。为了补强 这种简单的设计方式,相较于同时期的处理器如 Intel 80286和Motorola 68020,还多加了一些特殊设计:1.大部分指令可以条件式地执行,降低在分支时产生的负重,弥补
8、分支预测器(branch predictor)的不足。2.算数指令只会在要求时更改条件编码(conditioncode)3.32-bit 筒型位移器(barrelshifter)可用来执行大部分的算数指令和寻址计算而不会损失效能4.强大的索引寻址模式(addressing mode)5.精简但快速的双优先级中断子系统,具有可切换的暂存器组在今日,ARM家族占了所有32位元嵌入式处理器75%的比例,使它成为占全世界最多数的32位元架构之一。ARM处理器可以在很多消费性电子产品上看到,从可携式装置(PDA、移动电话、多媒体播放器、掌上型电玩、计算机)到名师资料总结-精品资料欢迎下载-名师精心整理-
9、第 6 页,共 12 页 -电脑周边设备(硬盘、桌上型路由器)甚至在导弹的弹载计算机等军用设施中都有他的存在。对于智能机爱好者们,ARM处理器的大名一定早有所闻。3、MIPS 架构图表6 MIPS 架构MIPS架构(英语:MIP Sarchitecture,为“无内部互锁流 水级的微处理器Microprocessor without Interlocked Pipeline Stages的缩写,也是Millionsof Instructions Per Second 的相关语),是一种采取精简指令集(RISC)的处理器架构,1981年出现,由MIPS 科技公司开发并授权,广泛被使用在许多电子产
10、品、网络设备、个人娱乐装置与商业装置上。其机制是尽量利用软件办法避免流水线中的数据相关问题。它最早是在80年代初期由斯坦福(Stanford)大学Hennessy 教授领导的研究小组研制出来的。MIPS 公司的R系列就是在此基础上开发的RISC 工业产品的名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 12 页 -微处理器。这些系列产品为很多计算机公司采用构成各种工作站和计算机系统。MIPS 是出现最早的商业RISC 架构芯片之一。MIPS 的系统结构及设计理念比较先进,强调软硬件协同提高性能,同时简化硬件设计。2002年,中国科学院计算所开始研发龙芯处理器,采用MIPS 架构,
11、但未经MIPS 公司的授权,遭到侵权的控告。2007年,中国科学院与 MIPS 公司达成和解,得到正式授权。中国龙芯 2 和前代产品采用的都是64位 MIPS 指令架构。过去,MIPS架构的产品多见于工作站领域,索尼 PS2游戏机所用的“Emotion Engine”也采用MIPS 指令,这些MIPS 处理器的性能都非常强劲,而龙芯2也属于这个阵营,在软件方面与上述产品完全兼容。ARM与MIPS 对比:与当前商业化最成功的ARM架构相比,MIPS 的优势主要有以下几点:1,MIPS 支持64bit指令和操作,ARM目前只到32bit 2,MIPS 有专门的除法器,可以执行除法指令3,MIPS
12、的内核寄存器比ARM多一倍,所以同样的性能下MIPS 的功耗会比ARM更低,同样功耗下性能比ARM更高4,MIPS 指令比ARM稍微多一点,稍微灵活一点5,有观点认为MIPS 的bank寄存器性能也要好于ARM,不过没见过能反映出来的测试以上为MIPS 对比ARM架构的优势,接下来我们再看一看MIPS 架构的不足之处,与ARM架构相比,MIPS 架构也存在着以下几点不足1,MIPS 的内存地址起始有问题,这导致了 MIPS 在内存和 cache 的支持方面都有限制,现在的MIPS 处理器单内核面对高容量内存时有问题名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 12 页 -2,M
13、IPS 今后的发展方向是并行线程,类似 INTEL 的超线程,而 ARM未来的发展方向是物理多核,目前看来物理多核占优。由此来看,我国的龙芯向多核发展还是颇具远见的。3,MIPS虽然结构更加简单,但是到现在还是顺序单发射,ARM已经进化到了乱序双发射,甚至NV的丹佛已经是乱序三发射了。商业上二者差别也大,ARM很昂贵,而且不能随意自行更改内核。而MIPS就要开放的多了。(这也算龙芯为什么不采用ARM架构的原因了。)ARM与x86对比:X86指令集有以下几个突出的缺点:通用寄存器组对CPU 内核结构的影响X86 指令集只有8个通用寄存器。所以,CISC 的 CPU执行是大多数时间是在访问存储器中
14、的数据,而不是寄存器中的。这就拖慢了整个系统的速度。RISC 系统往往具有非常多的通用寄存器,并采用了重叠寄存器窗口和寄存器堆等技术使寄存器资源得到充分的利用。RISC技术与 CISC技术比较名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 12 页 -图表 7 RISC 技术与 CISC技术比较解码对CPU 的外核的影响解码器,这是x86CPU 才有的东西。其作用是把长度不定的x86指令转换为长度固定的类似于RISC 的指令,并交给RISC 内核。解码分为硬件解码和微解码,对于简单的x86指令只要硬件解码即可,速度较快,而遇到复杂的x86指令则需要进行微解码,并把它分成若干条简单
15、指令,速度较慢且很复杂。寻址范围小约束了用户需要 ARM指令集的特点:1.体积小,低功耗,低成本,高性能;2.支持 Thumb(16 位)/ARM(32 位)双指令集,能很好的兼容8 位/16 位器件;3.大量使用寄存器,指令执行速度更快;4.大多数数据操作都在寄存器中完成;5.寻址方式灵活简单,执行效率高;6.指令长度固定;名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 12 页 -7.流水线处理方式8.Load store结构:在RISC 中,所有的计算都要求在寄存器中完成。而寄存器和内存的通信则由单独的指令来完成。而在 CSIC 中,CPU是可以直接对内存进行操作的。AR
16、M的一些非RISC 思想的指令架构:1.允许一些特定指令的执行周期数字可变,以降低功耗,减小面积和代码尺寸。2.增加了桶形移位器来扩展某些指令的功能。3.使用了16位的Thumb 指令集来提高代码密度。4.使用条件执行指令来提高代码密度和性能5.使用增强指令来实现数据信号处理的功能。ARM处理器的前景观望小结:X86采用CISC,具有大量的复杂指令、可变的指令长度、多种的寻址方式这些CISC 的特点,也是CISC 的缺点,因为这些都大大增加了解码的难度,而在现在的高速硬件发展下,复杂指令所带来的速度提升早已不及在解码上浪费点的时间。除了个人PC市场还在用X86指令集外,服务器以及更大的系统都早
17、已不用CISC 了。x86仍然存在的理由就是为了兼容大量的x86平台上的软件,同时,它的体系结构组成的实现不太困难。不过现在X86只是RISC 的内核披了件CISC 的外衣,从 Pentium 开始,CISC 指令在内部被解码成几条RISC 指令,即所谓的uOps,然后通过处理器调度机制将指令分配给RISC 内核进行。一方面,ARM采用的RISC 体系最大特点是指令长度固定,指令格式种类少,名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 12 页 -寻址方式种类少,大多数是简单指令且都能在一个时钟周期内完成,易于设计超标量与流水线,寄存器数量多,大量操作在寄存器之间进行,因此有
18、较快运行速度。另一方面,ARM 目前是移动处理器的老大。ARM 的合作伙伴们基于ARM 的设计向移动和嵌入式市场的出货量已经达500亿片。对于安卓,ARM 已然成为标准,这对Intel和 MIPS而言是个问题。尽管安卓的主要编程语言是 Java,开发者也可以使用现有的代码(比如C或者C+)去开发应用。这些固定平台的应用通常都编译成ARM 处理器的程序,不全都会编译成Intel或者 MIPS处理器的程序。为了解决这个问题,Intel和 MIPS要使用特殊的转换软件把ARM 的指令转换成他们处理器使用的指令。而这当然是会降低性能的。综上所述,制造处理器是一项复杂的业务,虽然ARM,Intel和MIPS都在不懈努力地向移动设备提供最好的技术,但是很明显ARM是老大。拥有着低功耗,简明的64 位设计,异构计算,以及作为移动计算的标准,看来ARM 在未来较长一段时间里保持其老大的地位。名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 12 页 -