基于proteus的CPU控制器设计(硬布线版)

基于proteus的CPU控制器设计(硬布线版)

    • 硬布线版vs微程序版
    • 单周期硬布线控制器
    • 多周期硬布线控制器
  • 参考资料

硬布线版vs微程序版

本文是前述基于proteus的CPU控制器设计(微程序版)的姐妹篇,两个控制器的数据通路完全相同,指令集基本一致:硬布线版指令集是微程序版的扩展,增加了一条JMP3指令,如下表1所示:

表1. 硬布线控制器指令集列表
基于proteus的CPU控制器设计(硬布线版)_第1张图片
由上述指令表1可以推导出入硬布线版的指令状态图(如下图1所示):所有指令的取指操作都是相同的指令流ROM→IR(即CPU从程序存储器PROGRAM取出指令,经过总线BUS流向指令寄存器IR)。NOP和HLT指令只有上述取指操作,没有执行操作(HLT指令取指后硬件停机);而JMP1(直接寻址)/JMP2(间接寻址)/JMP3(二次间址)指令的执行操作则分别需要一次、两次和三次数据流ROM→PC(即CPU从程序存储器PROGRAM取出数据,经过总线BUS流向程序计数器PC),才能把目标地址送入PC。

图1. 硬布线控制器指令状态图
基于proteus的CPU控制器设计(硬布线版)_第2张图片

单周期硬布线控制器

如下图2所示,单周期硬布线版的最小版本CPU由蓝线左侧的数据通路和蓝线右侧的单周期硬布线控制器组成,左侧的数据通路与微程序版的最小版本CPU数据通路完全相同,而右侧的单周期硬布线控制器通过两级状态机来实现上述图1所示的指令状态图。

图2. 最小版本CPU(单周期硬布线版)

你可能感兴趣的:(proteus,proteus,控制器,CPU设计,硬布线,虚拟仿真)