精简指令集RISC

一、参考

精简指令集【百度百科】
科技简章044-什么是精简指令集【知乎】
微程序设计【百度百科】

二、背景

计算机执行的每个指令的类型都需要二外的晶体管和电路元件,计算机指令集越大就会使微处理器更复杂,执行操作也会更慢。纽约约克镇IBM研究中心的John Cocke证明,计算机中约20%的指令承担了80%的工作,于1974年,他提出RISC(精简指令集计算:Reduced Instruction Set Computing)的概念。许多当前的微芯片都使用RISC概念。

三、特点

  1. RISC采用了单周期指令,即指令周期数长短统一。某些在传统结构中要用多周期指令实现的操作,在RISC结构中,通过机器语言编程,就代之以多条单周期指令了;

  2. RISC采取流水线的概念,将处理过程划分多个阶段,每个时钟周期可以执行一条指令,允许并行处理。(流水线概念可参考文章:流水线、超流水线、超标量);

    举个简单的例子:
    在CISC(Complex Instruction Set Computing复杂指令集)结构中,发出指令:1、“种花” ;2、“花种好了”
    在RISC中要分为以下几个指令:1、“找种子”;2、“把土放进花盆里”;3、“把种子埋进土里”;4、“施肥”;5、“花种好了”

  3. 简化了指令的格式,通常不超过4种。提高了流水线的效率;

  4. 减少了寻址方式,通常不超过4种。简化了硬件逻辑部件的设计,也缩短了译码的时间;

  5. 采用了装入/存数(Load/Store)结构
    在执行内存相关操作时,首先需要计算操作数的地址,然后从内存中将操作数取出,进行计算后,再将计算出的结果写回至内存。这些阶段所执行的时间就会很长。而RISC结构采用的装入/存数(Load/Store)结构可以只在Load指令和Store指令时才回去访问内存,所有其他的操作只会访问保存在处理器寄存器内的操作数

    此种结构有点在于:
    (1)减少访问内存的次数,降低了对内存带宽的要求。
    (2)将所有的操作限制于只针对寄存器,其他的所有数据都要从内存中暂时读到寄存器中,不需要去访问内存,提高了指令集的简化程度
    (3)取消内存操作可使编释器优化寄存的分配更容易—这种特性减少对内存的存取,同时也减少了每一任务的指令数。

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

  7. RISC摒弃了微程序控制结构。
    微程序是由若干条微指令组成的序列。一条机器指令的功能可由若干条微指令组成的序列来解释和执行,因此机器执行一条指令的过程,也就是执行一个相应的微程序的过程,且不同的指令通常具有不同长度的微程序,这也就意味着如果使用微程序结构,那么每条指令的长度和执行周期都不一致,这与RISC的设计理念相悖,所以在RISC结构中大多使用硬连线控制结构即将由单个控制字组组成每一个微程序。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值