精简指令集RISC

来源:互联网 发布:云打印软件 编辑:程序博客网 时间:2024/04/30 01:34
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公司的Spare。
CPU执行运算速度受三个因素的影响(1)程序中指令数I,(2)每条指令执行所用周期数CPI,(3)周期时间T。这三者又有:程序执行时间=I*CPI*T,因此,从这个等式可看出减小其中任一个都可提高CPU的速度,因此RISC技术就从这三方面下手,对I、CPI、T进行优化改良,其措施如下:
  1、采用多级指令流水线结构
  采用流水线技术可使每一时刻都有多条指令重叠执行,以减小CPI的值,使CPU不浪费空周期。实例:Pentium Ⅱ/Pro/Celeron可同时发出执行五条指令,AMD-K6/K6-2可同时发出六条指令。
  2、选取机器中使用频率最高的简单指令及部分复杂指令
  这样可减小时钟周期数量,提高CPU速度,其实质是减小CPI下的值实现。实例:选取运算指令、加载、存储指令和转移指令作主指令集。
  3、采用加载(Load)、存储(Store)结构
  只允许Load和Store指令执行存储器操作,其余指令均对寄存器操作。实例:Amd-K6/K6-2、PⅡ/Celeron/Pro均支持对寄存器的直接操作和重新命名,并大大增加通用寄存器的数量。
  4、延迟加载指令和转移指令
  由于数据从存储器到寄存器存在二者速度差、转移指令要进行入口地址的计算,这使CPU执行速度大大受限,因此,RISC技术为保证流水线高速运行,在它们之间允许加一条不相关的可立即执行的指令,以提高速度。
  实例:主要体现于预测执行、非顺序执行和数据传输等方面,除Intel P54/55C不支持,像K6-2、PⅡ均支持。
  5、采用高速缓存(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速度。
 
 
原创粉丝点击