体系结构 RISC, CISC, x86, ARM, MIPS_第1页
体系结构 RISC, CISC, x86, ARM, MIPS_第2页
体系结构 RISC, CISC, x86, ARM, MIPS_第3页
体系结构 RISC, CISC, x86, ARM, MIPS_第4页
体系结构 RISC, CISC, x86, ARM, MIPS_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、体系结构:RISC,CISC,x86,ARM,MIPS硬件体系结构(Architecture)软件操作系统(OperatingSystem)一、RISC与CISC1CISC(ComplexInstructionSetComputer,复杂指令集计算机)复杂指令集(CISC,ComplexInstructionSetComputer)是一种微处理器指令集架构(ISA),每个指令可执行若干低阶操作,诸如从内存读取、储存、和计算操作,全部集于单一指令之中。CISC特点:1指令系统庞大,指令功能复杂,指令格式、寻址方式多;2绝大多数指令需多个机器周期完成;3各种指令都可访问存储器;4采用微程序控制;5

2、有专用寄存器,少量;6难以用优化编译技术生成高效的目标代码程序;在CISC指令集的各种指令中,大约有20%的指令会被反复使用,占整个程序代码的80%。而余下的80%的指令却不经常使用,在程序设计中只占20%。2RISC(reducedinstructionsetcomputer,精简指令集计算机)精简指令集这种设计思路对指令数目和寻址方式都做了精简,吏其实现更容易,指令并行执行程度更好,编译器的效率更高。它能够以更快的速度执行操作。这种设计思路最早的产生缘自于有人发现尽管传统处理器设计了许多特性让代码编写更加便捷,但这些复杂特性需要几个指令周期才能实现,并且常常不被运行程序所采用。此外,处理器

3、和主内存之间运行速度的差别也变得越来越大。在这些因素促使下,出现了一系列新技术,使处理器的指令得以流水执行,同时降低处理器访问内存的次数。实际上在后来的发展中,RISC与CISC在竞争的过程中相互学习,现在的RISC指令集也达到数百条,运行周期也不再固定。虽然如此,RISC设计的根本原则针对流水线化的处理器优化一0没有改变,而且还在遵循这种原则的基础上发展出RISC的一个并行化变种VLIW(包括IntelEPIC),就是将简短而长度统一的精简指令组合出超长指令,每次执行一条超长指令,等于并行执行多条短指令。RISC特点:1统一指令编码(例如,所有指令中的op-code永远位于同样的位元位置、等

4、长指令),可快速解译;2泛用的暂存器,所有暂存器可用于所有内容,以及编译器设计的单纯化(不过暂存器中区分了整数和浮点数);3单纯的寻址模式(复杂寻址模式以简单计算指令序列取代);4硬件中支援少数资料型别(例如,-些CISC电脑中存有处理字节字串的指令。这在RISC电脑中不太可能出现)。二者区别:CISC(复杂指令集计算机)和RISC(精简指令集计算机)是当前CPU的两种架构。它们的区别在于不同的CPU设计理念和方法。早期的CPU全部是CISC架构,它的设计目的是要用最少的机器语言指令来完成所需的计算任务。RISC和CISC是设计制造微处理器的两种典型技术,虽然它们都是试图在体系结构、操作运行、

5、软件硬件、编译时间和运行时间等诸多因素中做出某种平衡,以求达到高效的目的,但采用的方法不同,因此,在很多方面差异很大,它们主要有:(1)指令系统:RISC设计者把主要精力放在那些经常使用的指令上,尽量使它们具有简单高效的特色。对不常用的功能,常通过组合指令来完成。因此,在RISC机器上实现特殊功能时,效率可能较低。但可以利用流水技术和超标量技术加以改进和弥补。而CISC计算机的指令系统比较丰富,有专用指令来完成特定的功能。因此,处理特殊任务效率较高。(2)存储器操作:RISC对存储器操作有限制,使控制简单化;而CISC机器的存储器操作指令多,操作直接。(3)程序:RISC汇编语言程序一般需要较

6、大的内存空间,实现特殊功能时程序复杂,不易设计;而CISC汇编语言程序编程相对简单,科学计算及复杂操作的程序社设计相对容易,效率较高。(4)中断:RISC机器在一条指令执行的适当地方可以响应中断;而CISC机器是在一条指令执行结束后响应中断。(5)CPU:RISCCPU包含有较少的单元电路,因而面积小、功耗低;而CISCCPU包含有丰富的电路单元,因而功能强、面积大、功耗大。(6)设计周期:RISC微处理器结构简单,布局紧凑,设计周期短,且易于采用最新技术;CISC微处理器结构复杂,设计周期长。(7)用户使用:RISC微处理器结构简单,指令规整,性能容易把握,易学易用CISC微处理器结构复杂,

7、功能强大,实现特殊功能容易。(8)应用范围:由于RISC指令系统的确定与特定的应用领域有关,故RISC机器更适合于专用机;而CISC机器则更适合于通用机。二、x86、ARM、MIPS架构x86、ARM、MIPS算是是目前最常见也相对最知名的处理器架构了。x86架构x86或80 x86是英特尔首先开发制造的一种微处理器体系结构的泛称。该系列较早期的处理器名称是以数字来表示,并以86作为结尾,包括Intel8086、80186、80286、80386以及80486,因此其架构被称为“x86”。x86架构于1978年推出的Intel8086中央处理器中首度出现,它是从Intel8008处理器中发展而

8、来的,而8008则是发展自Intel4004的。8086在三年后为IBMPC所选用,之后x86便成为了个人电脑的标准平台,成为了历来最成功的CPU架构。8086是16位元处理器;直到1985年32位元的80386的开发,这个架构都维持是16位元。接着一系列的处理器表示了32位元架构的细微改进,推出了数种的扩充,直到2003年AMD对于这个架构发展了64位元的扩充,并命名为AMD64。后来Intel也推出了与之兼容的处理器,并命名为Intel64。两者一般被统称为x86-64或x64,开创了x86的64位时代。值得注意的是Intel早在1990年代就与惠普合作提出了一种用在安腾系列处理器中的独立

9、的64位架构,这种架构被称为IA-64。IA-64是一种崭新的架构,和x86架构完全没有相似性。(对于Intel和AMD的处理器技术,打算专门挑些典型的区别总结一篇文章)x86架构是重要地可变指令长度的CISC。字组(word,4字节)长度的内存存取允许不对齐内存位址,字组是以低位字节在前的顺序储存在内存中。向后相容性一直都是在x86架构的发展背后一股驱动力量(设计的需要决定了这项因素而常常导致批评,尤其是来自对手处理器的拥护者和理论界,他们对于一个被广泛认为是落后设计的架构的持续成功感到不解)。但在较新的微架构中,x86处理器会把x86指令转换为更像RISC的微指令再予执行,从而获得可与RI

10、SC比拟的超标量性能,而仍然保持向前兼容。如今,我们面前的PC机基本都是x86架构计算机。如果你想尝试其他架构的计算机,首先要考虑的是放弃Windows系统。(好消息是即将正式发布的Windows8将支持x86和ARM两种架构)ARM架构ARM架构(进阶精简指令集机器(AdvancedRISCMachine),较早称作AcornRISCMachine)是一个32位元精简指令集(RISC)处理器架构,其广泛地使用在许多嵌入式系统设计。由于节能的特点,ARM处理器非常适用于移动通讯领域,符合其主要设计目标为低耗电的特性。ARM架构包含了下述RISC特性:1读取/储存架构2正交指令集(任意存取指令可

11、以任意的寻址方式存取数据Orthogonalinstructionset)3大量的16x32-bit寄存器阵列(registerfile)4固定的32bits操作码(opcode)长度,降低编码数量所产生的耗费,减轻解码和流水线化的负担。5大多均为一个CPU周期执行。为了补强这种简单的设计方式相较于同时期的处理器如Intel80286和Motorola68020,还多加了一些特殊设计:1大部分指令可以条件式地执行,降低在分支时产生的负重,弥补分支预测器(branchpredictor)的不足。2算数指令只会在要求时更改条件编码(conditioncode)3.32-bit筒型位移器(barre

12、lshifter)可用来执行大部分的算数指令和寻址计算而不会损失效能4强大的索引寻址模式(addressingmode)5精简但快速的双优先级中断子系统,具有可切换的暂存器组在今日,ARM家族占了所有32位元嵌入式处理器75%的比例,使它成为占全世界最多数的32位元架构之一。ARM处理器可以在很多消费性电子产品上看到从可携式装置(PDA、移动电话、多媒体播放器、掌上型电玩、计算机)到电脑周边设备(硬盘、桌上型路由器)甚至在导弹的弹载计算机等军用设施中都有他的存在。对于智能机爱好者们,ARM处理器的大名一定早有所闻。MIPS架构MIPS架构(英语:MIPSarchitecture,为无内部互锁流

13、水级的微处理器MicroprocessorwithoutInterlockedPipelineStages的缩写,也是MillionsofInstructionsPerSecond的相关语),是一种采取精简指令集(RISC)的处理器架构,1981年出现,由MIPS科技公司开发并授权,广泛被使用在许多电子产品、网络设备、个人娱乐装置与商业装置上。其机制是尽量利用软件办法避免流水线中的数据相关问题。它最早是在80年代初期由斯坦福(Stanford)大学Hennessy教授领导的研究小组研制出来的。MIPS公司的R系列就是在此基础上开发的RISC工业产品的微处理器。这些系列产品为很多计算机公司采用构

14、成各种工作站和计算机系统。MIPS是出现最早的商业RISC架构芯片之一。MIPS的系统结构及设计理念比较先进,强调软硬件协同提高性能,同时简化硬件设计。2002年,中国科学院计算所开始研发龙芯处理器,采用MIPS架构,但未经MIPS公司的授权,遭到侵权的控告。2007年,中国科学院与MIPS公司达成和解,得到正式授权。中国龙芯2和前代产品采用的都是64位MIPS指令架构。过去,MIPS架构的产品多见于工作站领域,索尼PS2游戏机所用的“EmotionEngine也采用MIPS指令,这些MIPS处理器的性能都非常强劲,而龙芯2也属于这个阵营,在软件方面与上述产品完全兼容。另:ARM与MIPS对比

15、:与当前商业化最成功的ARM架构相比,MIPS的优势主要有以下几点:1,MIPS支持64bit指令和操作,ARM目前只到32bit2,MIPS有专门的除法器,可以执行除法指令3,MIPS的内核寄存器比ARM多一倍,所以同样的性能下MIPS的功耗会比ARM更低,同样功耗下性能比ARM更高4,MIPS指令比ARM稍微多一点,稍微灵活一点5,有观点认为MIPS的bank寄存器性能也要好于ARM,不过没见过能反映出来的测试以上为MIPS对比ARM架构的优势,接下来我们再看一看MIPS架构的不足之处,与ARM架构相比,MIPS架构也存在着以下几点不足1,MIPS的内存地址起始有问题,这导致了MIPS在内

16、存和cache的支持方面都有限制,现在的MIPS处理器单内核面对高容量内存时有问题2,MIPS今后的发展方向是并行线程,类似INTEL的超线程,而ARM未来的发展方向是物理多核,目前看来物理多核占优。由此来看,我国的龙芯向多核发展还是颇具远见的。3,MIPS虽然结构更加简单,但是到现在还是顺序单发射,ARM已经进化到了乱序双发射,甚至NV的丹佛已经是乱序三发射了。商业上二者差别也大,ARM很昂贵,而且不能随意自行更改内核。而MIPS就要开放的多了。(这也算龙芯为什么不采用ARM架构的原因了。)龙芯为何选择MIPS?这还要从这三大架构的拥有者谈起。x86架构的拥有者intel可以算作是技术合作上

17、最抠门儿的一位,在推出x86架构之后,intel就只将这一架构授权给过AMD和VIA(台湾)等几个芯片公司。而在VIA退出x86架构处理器竞争之后,intel便不再给任何公司x86架构授权。所以从x86架构上入手,龙芯处理器显然是行不通的。intel的x86架构行不通,那么ARM架构是否就能行得通呢?答案当然也是否定的。ARM公司是一家非常优秀的芯片设计公司,但自身并不生产处理器,而是将自身的设计licensing卖给需要处理器的公司,而后交给他们生产或者是找人代工。也许有人要问了,既然ARM向外卖出架构设计,那么为何龙芯不去选择ARM架构呢?其实不然,ARM之所以能够发展成为一家非常成功的商

18、业性公司,靠的就是芯片的架构设计,倘若架构设计被别人夺走了,那么自己就丢掉了赖以生存的饭碗。所以ARM虽然对外进行licensing授权,却不允许购买者进行任何对ARM架构有更改的设计。倘若个更改了设计,那么这便违反了合作协定。ARM便有权撤回licensing授权。我国的龙芯要是选择了ARM架构的话,那么基本上也就被捆住了脚步,无法发展出属于自己的高性能处理器了。自身虽然强大,但因考虑到市场发展的问题ARM也对外妥协过。目前高通,苹果和NVIDIA这三家公司便是ARM体系中较为特殊的几个。因为这三家公司在芯片设计领域的特殊地位,ARM为了能够拉拢他们站立在自己的阵营中,对这三家公司开出了特别

19、通行证。在其他芯片公司只能使用licensing去生产芯片的时候,高通,苹果和NVIDIA却能够自行设计基于ARM架构的处理器。也正是拉拢到了高通,苹果和NVIDIA,才使得ARM拥有了更多的支持者。但即便这样,我们也不得不佩服ARM的老狐狸作风,在给出架构授权后,ARM依然会通过升级下一代架构为由让高通,苹果和NVIDIA再掏一回钱购买架构授权。这样ARM就可以再赚一把。相信看到这里您应该了解到龙芯不选择ARM的原因了。那么是什么本领让MIPS最终成为了我国龙芯处理器的设计架构呢?答案非常简单,那就是架构授权。也许有人又问了,ARM不也是给授权吗?那为什么还选MIPS呢?MIPS和ARM虽然

20、都是对外进行架构授权的公司,但意义完全不同。ARM对外出售的是设计方案授权(licensing),与ARM的商业化相比,MIPS倒像是学院派的公司。MIPS的架构授权,并不限制任何对MIPS架构的更改。换句话说,就是MIPS公司给授权者一张白纸,而白纸上仅仅写着一行字,MIPS公司同意你设计生产MIPS架构处理器,至于你设计成什么样,性能有多高,经过多少代更改,MIPS一概不管,只要你不把架构彻底改变就行了。与ARM相比,MIPS是一个完全开放的架构,对龙芯未来的发展没有任何的限制,这与intel给AMDx86架构授权,而不是给设计图纸的道理是完全一样的。在加上MIPS本身经过几十年的发展,已

21、经拥有了众多的应用软件,综合考虑来看,MIPS是最为适合龙芯处理器发展的架构选择。但是MIPS的学院派作风令MIPS失去了早期发展市场的大好时机RISC平台是诞生于MIPS早先产品的,也正是RISC平台的诞生,才最终发展成为了我们现在的智能手机与平板机这样强大的产品。然而作为RISC系统的创始人,MIPS的商业化发展并非一帆风顺,也许是受公司前身是大学科学实验室的影响。公司高层对商业化发展嗤之以鼻,这才令本身技术要落后于MIPS的ARM得到了发展时机。中国作为全球最大的芯片需求市场也得到了MIPS的重视。除了龙芯这样的大型科研项目外,一家名为君正的民营芯片公司也成为了MIPS的客户,这也是MI

22、PS在中国市场的第二个客户。与龙芯不同,君正是一家彻彻底底面向商业化的企业型公司,其生产的MIPS芯片主要面向MP3,MP4和智能手机。除了这两家正规企业外。还有众多的山寨厂商也在使用MIPS的芯片,由此可见,中国芯片市场还是非常庞大的。ARM与x86对比:X86指令集有以下几个突出的缺点:通用寄存器组一对CPU内核结构的影响X86指令集只有8个通用寄存器。所以,CISC的CPU执行是大多数时间是在访问存储器中的数据,而不是寄存器中的。这就拖慢了整个系统的速度。RISC系统往往具有非常多的通用寄存器,并采用了重叠寄存器窗口和寄存器堆等技术使寄存器资源得到充分的利用。解码对CPU的外核的影响解码器,这是X86CPU才有的东西。其作用是把长度不定的x86指令转换为长度固定的类似于RISC的指令,并交给RISC内核。解码分为硬件解码和微解码,对于简单的x86指令只要硬件解码即可,速度较快,而遇到复杂的x8

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论