首页 > 代码库 > RISC设计原则及基本技术

RISC设计原则及基本技术

CISC的特点:

  • 指令系统庞大,指令功能复杂,指令寻址方式多,指令格式多
  • 绝大多数指令需要多个机器周期完成
  • 各种指令都可以访问存储器
  • 采用微程序控制
  • 有专用寄存器,少量
  • 难以用优化编译技术生成高效的目标代码程序


RISC特点:

  • 大多数指令在单周期内完成
  • LOAD/STORE结构
  • 硬布线控制逻辑
  • 减少指令和寻址方式的种类
  • 固定的指令格式
  • 注重编译的优化(三地址指令格式、较多的寄存器、对称的指令格式)

*我认为RISC与CISC的不同之处在于指令精简、寻址方式减少以及注重编译优化,这要得益于二八法则(CISC中,大约20%的指令占据了80%的处理机时间。其余80%指令使用频度只占20%的处理机运行时间)。RISC比CISC快3倍左右,主要取决于CPI(每条指令执行的平均周期数)。在RISC中CPI近乎1。


RISC的设计原则:

  • 使用频度很高的指令
  • 大大减少寻址方式
  • 所有指令在一个机器周期内完成
  • 扩大通用寄存器个数
  • 采用硬联控制实现
  • 通过精简指令和优化设计编译程序,以简单有效的方式支持高级语言


RISC结构采用的基本技术:

  • 在逻辑上采用硬联实现和微程序固件实现相结合的技术
  • 在CPU中设置数量较大的寄存器组,并采用重叠寄存器窗口的技术
  • 指令的执行采用流水和延迟转移技术
  • 采用优化编译技术,优化寄存器的分配和使用
RISC的不足:
  • 指令少,加重汇编程序员的负担
  • 浮点运算和虚拟存储器支持不足
  • 编译程序难写
对于不足的最后一条,我感到疑惑——RISC提供直接支持高级语言的能力,应当是简化了编译程序的设计,为什么还要说编译程序难写?希望知道的朋友们留下评论:)

VLIW(超长指令字):
  • 是一种显式指令级并行指令系统
  • 一条VLIW指令含有多个相同或不同的操作字段(每个操作字段的功能相当于一般处理机中的一条指令)
  • 每个操作字段能够分别独立地控制各自的功能部件同时运行
  • 二维程序结构
  • 指令级并行度高
应用VLIW的有Intel和HP合制的安腾(Intanium)处理机。