RISC的英文全称是Reduced Instruction Set Computer,中文是精简指令集计算机。特点是所有指令的格式都是一致的,所有指令的指令周期也是相同的,并且采用流水线技术。在中高档服务器中采用RISC指令的CPU主要有Compaq(康柏,即新惠普)公司的Alpha、HP公司的PA-RISC、IBM公司的PowerPC、MIPS公司的MIPS和SUN公司的Sparc。精简指令集计算机(RISC:Reduced Instruction Set Computing RISC)是一种执行较少类型计算机指令的微处理器,起源于80年代的MIPS主机(即RISC机),RISC机中采用的微处理器统称RISC处理器。这样一来,它能够以更快的速度执行操作(每秒执行更多百万条指令,即MIPS)。因为计算机执行每个指令类型都需要额外的晶体管和电路元件,计算机指令集越大就会使微处理器更复杂,执行操作也会更慢。纽约约克镇IBM研究中心的John Cocke证明,计算机中约20%的指令承担了80%的工作,于1974年,他提出RISC的概念。许多当前的微芯片都使用RISC概念。

中文名

精简指令集

外文名

Reduced Instruction Set Computer

别名

精简指令集计算机

拼音

jing jian zhi ling ji

定义

是计算机中央处理器的一种设计模式

类型

计算机术语

特点

指令少、寻址方式少

采用

流水线技术

分类

多级指令、高速缓存

学科

计算机科学与技术

优点

高效快速

计算机介绍

精简指令集计算机(RISC:Reduced Instruction Set Computing)是一种指令长度较短的计算机,其运行速度比CISC要快。RISC和CISC是CPU从指令集的特点上可以分为两类:CISC和RISC。RISC是英文Reduced Instruction Set Computing的缩写,就是“精简指令运算集”,CISC就是“复杂指令运算集”。RISC的指令系统相对简单,它只要求硬件执行很有限且最常用的那部分指令,大部分复杂的操作则使用成熟的编译技术,由简单指令合成。目前在中高档服务器中普遍采用这一指令系统的CPU,特别是高档服务器全都采用RISC指令系统的CPU。在中高档服务器中采用RISC指令的CPU主要有Compaq(康柏,即新惠普)公司的Alpha、HP公司的PA-RISC、IBM公司的Power PC、MIPS公司的MIPS和SUN公司的Sparc。

RISC是相对于复杂指令集计算机(CISC)而言的。所谓复杂指令集计算机是依靠增加机器的硬件结构来满足对计算机日益增加的性能要求。计算机结构的发展一直是被复杂性越来越高的处理机垄断着,为了减少计算机操作与高级语言的差别,为了改善机器的运行特性,机器指令越来越多,指令系统也越来越复杂。特别是早期的较高速度的CPU和较慢速度的存储器间的矛盾,为了尽量减少存取数据的次数,提高机器的速度,大大发展了复杂指令集,但随着半导体工艺技术的发展,存储器的速度不断提高,特别是高速缓冲的使用,使计算机体系结构发生了根本性的变化,硬件工艺技术提高的同时,软件方面也发生了同等重要的进展,出现了优化编译程序,使程序的执行时间尽可能减少。并使机器语言所占的内存减至最小,在具有先进的存储器技术和先进的编译程序的条件下,CISC体系结构已不再适用了,因而诞生了RISC体系结构,RISC技术的基本出发点就是通过精减机器指令系统来减少硬件设计的复杂程度,提高指令执行速度。在RISC中,计算机实际上每一个机器周期里都执行指令,无论简单或复杂的操作,均由简单指令的程序块完成,具有较强的仿真能力。

在RISC机器中,要求在“单机器周期”时间内执行所有的指令,而系统最根本的吞吐率限制是由程序运行中访存时间比例所决定的,因此,只要CPU执行指令的时间与取指时间相同,即可获得最大的系统吞吐率。(对于一个机器周期执行一条指令而言)。RISC机器中,采用硬件控制以实现快速的指令译码,并采用较少的指令和简单的寻址模式,通过固定的指令格式来简化指令译码和硬线控制逻辑。另外,RISC设计是以复杂的编译设计优化来求取简单的硬件芯片环境。编译优化可以改善HLL程序的运行效率,但所有的程序必须由高级语言编写。

RISC设计消除了微码的例行程序,把机器低级控制交给软件处理。即用较快的RAM代替处理器中的微码ROM作为指令的缓存(Cache),计算机的控制驻存在指令Cache,从而使得计算机系统和编译器产生的指令流能使高级语言的需求和硬件性能密切配合。

计算机的性能可以用完成一特定任务所需的时间来衡量,这个时间等于C×T×I。

C=完成每条指令所需的周期数,T=每个周期的时间,I=每个任务的指令数

RISC技术就是努力使C和T减至最小,C和T的减小可能导致I的增加,但优化编译技术和其他技术的采用可以弥补由于I的增加对机器性能的影响。RISC技术之所以很快由一种新见解发展成为前景广阔的计算机市场,主要有如下几方面的原因:一是RISC结构适应日新月异的VLSI技术发展;二是RISC简化了处理器结构,实现和调试较容易,因而设计代价低,开发周期短;三是简化了结构,处理器占据了较小的芯片面积,从而可在同一芯片上集成进较大的寄存器文件,翻译后备缓冲器(TLB)、协处理器和快速乘除器等,使得处理器获得更高的性能;四是RISC对HLL程序的支持优于以往的复杂指令系统计算机,可以使用户(程序员)很容易使用统一的指令集,很容易估算代码优化所起的作用,使程序员对硬件的正确性有了更多的信任感。

分类

采用多级指令流水线结构

采用流水线技术可使每一时刻都有多条指令重叠执行,以减小 CPI 的值,使 CPU 不浪费空周期。实例: Pentium Ⅱ /Pro/Celeron 可同时发出执行五条指令, AMD - K6/K6 - 2 可同时发出六条指令。

机器中使用频率高的简单指令及部分复杂指令

这样可减小时钟周期数量,提高 CPU 速度,其实质是减小 CPI 下的值实现。实例:选取运算指令、加载、存储指令和转移指令作主指令集。

采用加载 (Load) 、存储 (Store) 结构

只允许 Load 和 Store 指令执行存储器操作,其余指令均对寄存器操作。实例: Amd - K6/K6 - 2 、 P Ⅱ /Celeron/Pro 均支持对寄存器的直接操作和重新命名,并大大增加通用寄存器的数量。

延迟加载指令和转移指令

由于数据从存储器到寄存器存在二者速度差、转移指令要进行入口地址的计算,这使 CPU 执行速度大大受限,因此, RISC 技术为保证流水线高速运行,在它们之间允许加一条不相关的可立即执行的指令,以提高速度。

实例:主要体现于预测执行、非顺序执行和数据传输等方面,除 Intel P54/55C 不支持,像 K6 - 2 、 P Ⅱ均支持。

采用高速缓存 (cache) 结构

为保证指令不间断地传送给 CPU 运算器, CPU 设置了一定大小的Cache 以扩展存储器的带宽,满足 CPU 频繁取指需求,一般有两个独立 Cache ,分别存放“指令+数据”。

实例: P Ⅱ /Celeron:16K + 16K , AMD - K6/K6 - 2 为 32K + 32K , Cyrix M Ⅱ :64K( 实也为 2 个 32K Cache ,此作共享 Cache) , P Ⅱ还加了 L2 Cache,更是大幅提高了 CPU 速度。

简介

精简指令集,是计算机中央处理器的一种设计模式,也被称为RISC(Reduced Instruction Set Computing的缩写)。这种设计思路对指令数目和寻址方式都做了精简,使其实现更容易,指令并行执行程度更好,编译器的效率更高。常用的精简指令集微处理器包括DECAlpha、ARC、ARM、AVR、MIPS、PA-RISC、PowerArchitecture(包括PowerPC)和SPARC等。这种设计思路最早的产生缘于有人发现,尽管传统处理器设计了许多特性让代码编写更加便捷,但这些复杂特性需要几个指令周期才能实现,并且常常不被运行程序所采用。此外,处理器和主内存之间运行速度的差别也变得越来越大。在这些因素促使下,出现了一系列新技术,使处理器的指令得以流水执行,同时降低处理器访问内存的次数。早期,这种指令集的特点是指令数目少,每条指令都采用标准字长、执行时间短、中央处理器的实现细节对于机器级程序是可见的。

发展背景

在早期的计算机业中,编译器技术尚未出现。程序是以机器语言或汇编语言完成的。为了便于编写程序,计算机架构师造出越来越复杂的指令,可以高阶程序语言直接陈述高阶功能。当时的看法是硬件比编译器更易设计,所以复杂的东西就加进硬件了。

加速复杂化的其它因素是缺乏大内存。内存小的环境中,具有极高讯息密度的程序较有利。当内存中的每一字节如此珍贵,例如储存某个完整系统只需几千字节,它使产业移向高度编码的指令、长度不等的指令、执行多个操作的指令,和执行数据传输与计算的指令。当时指令封包问题远比易解的指令重要。

那时使用磁性技术,内存不仅小,而且很慢。这是维持极高讯息密度的其它原因。借着具有极高讯息密度封包,当必须存取慢速资源时可以降低频率。

CPU只有少数缓存器的两个原因︰

CPU内部缓存器远贵于外部内存。以当时的集成电路技术水准,大缓存器集对芯片或电路板区域只是多余的浪费。

具有大数量的缓存器将需要大数量的指令位(使用珍贵的RAM)以做为缓存器指定器。

基于上述原因,CPU设计师试着令指令尽可能做更多的工作。这导致一个指令将做全部的工作︰读入两个数字,相加,并且直接在内存储存计算结果。其它版本将从内存读取两个数字,但计算结果储存在缓存器。另一个版本将从内存和缓存器各读一个数字,并再次存入内存。以此类推。这种处理器设计原理最终成为复杂指令集(CISC)。

当时的目标是给所有的指令提供所有的寻址模式,此称为「正交性」。这在 CPU 上导致了一些复杂性,但就理论上每个可能的命令都可以单独的调试(调用,be tuned),这样使得程序员能够比用简单的命令来得更快速。

这类的设计最终可以由光谱的两端来表达, 6502 在光谱的一端,而 VAX 在光谱的另一端。单价25美元的 1MHz 6502 芯片只有单一的通用缓存器,但它的极精简的单周期内存界面(single-cycle memory interface)让一个位的操作效能和更高频率设计几乎相同,例如 4MHz Zilog Z80 在使用相同慢速的记忆芯片下(大约近似 300ns)。

发展分歧

精简指令集

在计算机指令系统的优化发展过程中,出现过两个截然不同的优化方向:CISC技术和RISC技术。CISC是指复杂指令系统计算机(Complex Instruction Set Computer);RISC是指精简指令系统计算机(Reduced Instruction Set Computer)。这里的计算机指令系统指的是计算机的最低层的机器指令,也就是CPU能够直接识别的指令。随着计算机系统的复杂,要求计算机指令系统的构造能使计算机的整体性能更快更稳定。最初,人们采用的优化方法是通过设置一些功能复杂的指令,把一些原来由软件实现的、常用的功能改用硬件的指令系统实现,以此来提高计算机的执行速度,这种计算机系统就被称为复杂指令系统计算机,即Complex Instruction Set Computer,简称CISC。另一种优化方法是在20世纪80年代才发展起来的,其基本思想是尽量简化计算机指令功能,只保留那些功能简单、能在一个节拍内执行完成的指令,而把较复杂的功能用一段子程序来实现,这种计算机系统就被称为精简指令系统计算机.即Reduced Instruction Set Computer,简称RISC。RISC技术的精华就是通过简化计算机指令功能,使指令的平均执行周期减少,从而提高计算机的工作主频,同时大量使用通用寄存器来提高子程序执行的速度提出原由

IBM公司设在纽约Yorktown的JhomasI.Wason研究中心于1975年组织力量研究指令系统的合理性问题.因为当时已感到,日趋庞杂的指令系统不但不易实现.而且还可能降低系统性能.1979年以帕特逊教授为首的一批科学家也开始在美国加州大学伯克莱分校开展这一研究.结果表明,CISC存在许多缺点.首先.在这种计算机中.各种指令的使用率相差悬殊:一个典型程序的运算过程所使用的80%指令.只占一个处理器指令系统的20%.事实上最频繁使用的指令是取、存和加这些最简单的指令.这样-来,长期致力于复杂指令系统的设计,实际上是在设计一种难得在实践中用得上的指令系统的处理器.同时.复杂的指令系统必然带来结构的复杂性.这不但增加了设计的时间与成本还容易造成设计失误.此外.尽管VLSI技术现在已达到很高的水平,但也很难把CISC的全部硬件做在一个芯片上,这也妨碍单片计算机的发展.在CISC中,许多复杂指令需要极复杂的操作,这类指令多数是某种高级语言的直接翻版,因而通用性差.由于采用二级的微码执行方式,它也降低那些被频繁调用的简单指令系统的运行速度.因而.针对CISC的这些弊病.帕特逊等人提出了精简指令的设想即指令系统应当只包含那些使用频率很高的少量指令.并提供一些必要的指令以支持操作系统和高级语言.按照这个原则发展而成的计算机被称为精简指令集计算机(ReducedInstructionSetComputer-RISC)结构.简称RISC.

优势

精简指令集

RISC和CISC是设计制造微处理器的两种典型技术,虽然它们都是试图 在体系结构、操作运行、软件硬件、编译时间和运行时间等诸多因素中做出某种平衡,以求达到高效的目的,但采用的方法不同,因此,在很多方面差异很大,它们主要有:

(1)指令系统:RISC设计者把主要精力放在那些经常使用的指令上,尽量使它们具有简单高效。对不常用的功能,常通过组合指令来完成。因此,在RISC机器上实现特殊功能时,效率可能较低。但可以利用流水技术和超标量技术加以改进和弥补。而CISC计算机的指令系统比较丰富,有专用指令来完成特定的功能。因此,处理特殊任务效率较高。

(2)存储器操作:RISC对存储器操作有限制,使控制简单化;而CISC机器的存储器操作指令多,操作直接。

(3)程序:CISC汇编语言程序一般需要较大的内存空间,实现特殊功能时程序复杂,不易设计;而RISC汇编语言程序编程相对简单,科学计算及复杂操作的程序设计相对容易,效率较高。

精简指令集

(4)中断:RISC机器在一条指令执行的适当地方可以响应中断,但是相比CISC指令执行的时间短,所以中断响应及时;而CISC机器是在一条指令执行结束后响应中断。

(5)CPU:RISC CPU包含有较少的单元电路,因而面积小、功耗低;而CISCCPU包含有丰富的电路单元,因而功能强、面积大、功耗大。

(6)设计周期:RISC微处理器结构简单,布局紧凑,设计周期短,且易于采用最新技术;CISC微处理器结构复杂,设计周期长。

(7)用户使用:RISC微处理器结构简单,指令规整,性能容易把握,易学易用;CISC微处理器结构复杂,功能强大,实现特殊功能容易。

(8)应用范围:由于CISC指令系统的确定与特定的应用领域有关,故CISC机器更适合于专用机;而RISC机器则更适合于通用机。

劣势

当今计算机世界出现了寻觅更好性能的热潮,RISC与CISC既对峙又互补。RISC有其自身的缺点。

编译后指令长度较长,内存需要较大

RISC的缺点与其一些优点直接有关。因为RISC拥有的指令数少,有些在CISC中仅由一条指令完成的功能,在RISC中需二、三条甚至更多条指令,这使RISC代码较长,因而RISC的程序需要更多的内存,内存与CPU间的指令冲突也会增加。研究表明,平均而言,执行同样的功能,一个RISC程序比一个CISC程序长30%。同时,RISC对编译器要求较高,优化编译器的设计是一项极复要且技术要求很高的工作,它又必须由RISC机制造单位自身编制,因为没有RISC详细原始资料不可能产生编译程序的目标代码。这样,第三方公司提供新版本较困难,用户选择余地较小,软件费用增加了。

大寄存器组使寻址复杂,速度降低

RISC系统的一个有争议的特点是其大寄存器组。大寄存器组有前述优点,但另一方面,也有缺点,大寄存器使寻址时间增多,另个,一些编译器使小寄存器组的使用更为有效。CPU寄存器组到底应多大还有待讨论,大寄存器U组还可由高速缓存(CACHE)代替。大寄存器组的不足之处可归结如下:

  • 存取时间长。
  • 寄存器组占据了更多的芯片空间。
  • 先进的编译技术使小寄存器组更有效。
  • 如果上下文转换现场的所有CPU寄存器被保存,则大寄存器组会化更多存贮时间。
  • 如果使用了窗口指针(RISC的实施要点之一是重叠寄存器窗口,目的是便于参数传递。重叠寄存器窗口要用到窗口指针),寄存器地址译码会较长。同时重叠寄存器也使CPU逻辑变得复杂。

硬连线控制不灵活

出现错误的可能性较大,不易发现和修改错误,处理复杂指令也较困难。(4)单字指令不能使用用于全32位地址的直接内存寻址方式。由于这个原因,一些生产厂家已使一小部分指令具有双字卡(如INTEL80960),使用这样的指令由程序员决定,他可仅用单字指令写完整的程序。

特征

32位精简指令集架构

RISC的特点是指令及其格式精少,操作和控制简捷。具体有下列几个方面。

精简指令集

RISC结构采用精简的,长短划一的指令集,使大多数的操作获得了尽可能高的效率。某些在传统结构中要用多周期指令实现的操作,在RISC结构中,通过机器语言编程,就代之以多条单周期指令了。精简的指令集大大改善了处理器的性能,并推动了RISC的设计。对于到底精简到什么程度的问题,没有一定的回答。将现有RISC系统与CISC系统作一对比,便可见大概。通常,对RISC而言:

  • 指令数少,不超过128条。
  • 寻址方式少,不超过4种。
  • 指令格式少,不超过4种。

处理关于扩充指令集的建议是非常慎重的,要经过认真的权衡,验证,在看它们是否真正提高计算机的性能。例如,MIPS采用了一条规则:增加一条指令必须使性能在一定的应用范围内得到1%的增益,否则这条指令将被拒绝。

指令时钟周期,指令长度相等

如果每一条指令要执行的任务既简单又明了,则执行每一条指令所的时间可以被压缩周期数也可减少。RISC的设计目标是实现一个机器周期执行一条指令,使得系统操作更加有效。接近这个目标的技术包括指令流水线及特定的装/存结构等。典型的指令可包括取指、译码、执行和存装果等阶段。单周期指可通过让所有指令为标准长短来实现。标准指令长短应与计算机系统的基本字长相等,通常与系统中数据线数相等。

在任何取指周期,完整的单个指令要传给CPU。例如,如果基字长是32位,且系统总线的数据部分是32线,则标准指令长度是32位。要让所有指令的执行时间一致较困难。有些指令,包含简单的在CPU寄存器上的逻辑操作(清寄存器等),则可容易地在一个CPU时钟周期内执行;其它指令可能包含内存存取(对内存的读写、取数等)或多周期操作(乘、除等),可能无法在单周期内执行。这给设计者提出了这样的要求;让大多数经常使用的指令得以在一个单周期内执行。

指令流水线

减少执行一条指令所需周期数的方法是重叠执行多条指令。指令流水线采用这样的工作方式:将每条指令的执行分为几个离散部分,然后同时执行多条指令。任何指令的取指和执行阶段占据相同时间,理想的是一个单周期。这可说是RISC最重要的一条设计原则。所有从内存到CPU执行的指令,都遵循一种恒定的流的形式。每条指令都以同样的步调执行,无等待的指令。CPU始终是忙的。达到流水线操作的必要条件是:

  • 标准的,固定长短的指令,它与计算机字长和数据线的字长相等。
  • 所有指令的标准执行时间,最好在一个单CPU周期内。

例SPARC芯片等采用了取指、译码、执行和写入结果四级流水线结构,以最大限度来提高处理器性能。在每一个时钟周期的头上,都可以开始执行一条新的指令,这就保证了每个机器周期从存贮器平均取出一条新的指令,从而,总体看,大多数指令能在单周期内实现。指令流水线技术可以比作一条装配线—指令象是被加工的产品一样,从一道工序流到下一道工序,一直到它执行完为止。

因此,指令流水线利用一个等于其流水线深度的因子,来减少指令周期数是可能的,但这样的话,要求流水线始终充满有用指令且没有任何东西阻碍指令通过流水线,这样的需求给结构增加了一定的负担。例如,对于ALU等资源的竞争,阻止了流水线中指令的流动。长短不一的执行时间所引起的不良后果更是显而易见,这也是为什么RISC要定义一个有前面所述特点的指令集的原因。

装入和存数(LOAD/Store)结构

执行与内存有关的操作指令,不是要求增加每个周期的时间,就是要求增加指令的周期数,二者必取其一。因为这些指令要计算操作数的地址,将所需的操作数从内存中读出,计算得出结果,再把结果送回内存,所以它们执行的时间就长得多。为了消除这种指令的负作用,RISC采用了这样的装入和存数结构:只有装入(Load)和存数(Store)指令才去访间内存,所有其它操作只访问保存在处理器寄存器中的操作数。其优点在于:

  • 减少访问内存的次数,降低了对内存带宽的要求。
  • 将所有的操作限制于只针对寄存器,帮助了指令集的简化。
  • 取消内存操作可使编释器优化寄存的分配更容易—这种特性减少对内存的存取,同时也减少了每一任务的指令数。

所有这些都有助于RISC实现的每个周期执行一条指令的目标。尽管如此,装入和存数指令仍阻碍着IRSC设计目标的实现。用优化编译技术处理装入指令和分支指令的延迟,有助问题的解决。优化编译技术虽不是专门面向RISC结构的,但优化编译器依赖于RISC结构完成其出色的任务,RISC结构又依赖于优化编译器得到它们更完善的性能。编释器要能分析数据和控制流,并在此基础上调整指令的执行顺序,巧妙安排寄存器的用法。前一种作用可减少CPU的空闲时间,后一种作用可以提高寄存器中所保存的数据的可再用率,减少访存次数,缩短数据通路的长度。

拥有较大寄存器组

为了便于实现多数指令在寄存器之间的操作,即所谓的寄存器到寄存器操作,必须有足够量的CPU通用寄存器。足量的寄存器使得在随后操作中需作为操作用的中间结果暂存在CPU寄存器中,因而就减少了对内存的装入和存数,加快了运行速度。工业化RISC系统中至少采用32个通用CPU寄存器。

采用硬连线控制

由于微程序设计给设计者提供的灵活性,许多CISC系统是微程序控制的。不同的指令通常具有不同长度的微程序,这意味着每条指令执行的周期数不一样,这与所有指令一致的、流线的处理原则相矛盾。但这可由硬连线控制来解决,而且速度会更快。因此RISC应该是硬连接线控制的。当每条指令与一单条微指令有一对一相相符合的关系时可有例外,也就是每个微程序由一单个控制字组成。这种设计可与用硬连线控制一样快,一样高效,并使设计者得益于微程序设计的优越性。采用硬连线控制,可使RISC系统控制器简单。设计的简单又使机器的布局更加合理,使得设计者可以集中精力去优化那些剩下的,为数不多的,但又很关键的处理器特性。简化的结构使芯片上面积资源紧张的状态得以缓解,一些对性能至关重要的结构,象大的寄存器元件,转换查找缓存(TLB)S协处理器和乘除单元都可以装在同一块芯片上。这些附加的资源又使处理器增加了很大的性能优势。事实上,RISC并非一定严格地完全具备上述特点,有些称作RISC型的系统甚至违背了上述某方面。上述特点应被当作一种指导原则来解释RISC的性质。放宽点讲,满足大部分这些特点的系统就能被看作RISC。

结构特点

精简指令集

RISC是简化指令集计算机的简略缩写,其风格是强调计算机结构的简单性和高效性。RISC设计是从足够的不可缺少的指令集开始的。它的速度比那些具有传统复杂指令组计算机结构的机器快得多,而且RISC机由于其较简洁的设计,较易使用,故具有更短的研制开发周期。RISC结构一般具有如下的一些特点:

①单周期的执行:它统一用单周期指令。从根本上克服了CISC指令周期数有长有短,造成运行中偶发性不确定,致使运行失常的问题。

②采用高效的流水线操作:使指令在流水线中并行地操作,从而提高处理数据和指令的速度。

③无微代码的硬连线控制:微代码的使用会增加复杂性和每条指令的执行周期。

④指令格式的规格化和简单化:为与流水线结构相适应且提高流水线的效率,指令的格式必须趋于简单和固定的规式。比如指令采用16位或32位的固定的长度,并且指令中的操作码字段、操作数字段都尽可能具有统一的格式。此外,尽量减少寻址方式,从而使硬件逻辑部件简化且缩短译码时间,同时也提高了机器执行效率和可靠性。

⑤采用面向寄存器堆的指令:RISC结构采用大量的寄存器——寄存器操作指令,使指令系统更为精简。控制部件更为简化,指令执行速度大大提高。由于VLSI技术的迅速发展,使得在一个芯片上做大量的寄存器成为可能。这也促成了RISC结构的实现。

⑥采用装入/存储指令结构:在CISC结构中。大量设置存储器——存储器操作指令,频繁地访问内存,将会使执行速度降低。RISC结构的指令系统中,只有装入/存储指令可以访问内存,而其它指令均在寄存器之间对数据进行处理。用装入指令从内存中将数据取出,送到寄存器;在寄存器之间对数据进行快速处理,并将它暂存在那里,以便再有需要时。不必再次访问内存。在适当的时候,使用一条存储指令再将这个数据送回内存。采用这种方法可以提高指令执行的速度。

⑦注重编译的优化,力求有效地支撑高级语言程序。

通常使用的单片机中,MCS一51系列的单片机属于CISC的体系结构;AVR系列的单片机则属于RISC的体系结构。

发展前景

鉴于RISC的设计特点以及其无可比拟的优点,RISC体系结构处理器的发展方向:

扩展指令集

一 是增加处理器的并行性;

二是扩展支持可伸缩并行计算机系统的功能;

三是提高工艺水平。最终RISC与DSP在嵌入式应用中完美融合,密不可分。

RISC微处理器不仅精简了指令系统,采用超标量和超流水线结构;它们的指令数目只有几十条,却大大增强了并行处理能力。如:1987年SunMicrosystem公司推出的SPARC芯片就是一种超标量结构的RISC处理器。而SGI公司推出的MIPS处理器则采用超流水线结构,这些RISC处理器在构建并行精简指令系统多处理机中起着核心的作用。RISC处理器是当今UNIX领域64位多处理机的主流芯片。

性能特点

性能特点一:由于指令集简化后,流水线以及常用指令均可用硬件执行;

性能特点二:采用大量的寄存器,使大部分指令操作都在寄存器之间进行,提高了处理速度;

性能特点三:采用缓存—主机—外存三级存储结构,使取数与存数指令分开执行,使处理器可以完成尽可能多的工作,且不因从存储器存取信息而放慢处理速度。

应用特点

由于RISC处理器指令简单、采用硬布线控制逻辑、处理能力强、速度快,世界上绝大部分UNIX工作站和服务器厂商均采用RISC芯片作CPU用。如原DEC的Alpha21364、IBM的PowerPCG4、HP的PA—8900、SGI的R12000A和SUNMicrosystem公司的UltraSPARC║。

运行特点

RISC芯片的工作频率一般在400MHZ数量级。时钟频率低,功率消耗少,温升也少,机器不易发生故障和老化,提高了系统的可靠性。单一指令周期容纳多部并行操作。在RISC微处理器发展过程中。曾产生了超长指令字(VLIW)微处理器,它使用非常长的指令组合,把许多条指令连在一起,以能并行执行。VLIW处理器的基本模型是标量代码的执行模型,使每个机器周期内有多个操作。有些RISC处理器中也采用少数VLIW指令来提高处理速度。