大家好,我是小黄鸭,有问题请私聊。

原理大家参照上一篇文章MIPS CPU单周期(8条指令)的设计,主要是还是两部分:控制器+数据通路。
传送门单周期8条指令

单周期MIPS CPU 24条指令

  1. 总体结构设计
    单周期CPU设计实验我们首先设计一个硬布线控制器,利用硬布线控制器的设计原理,来实现一个支持24条指令的MIPS单周期CPU。利用在运算器实验和存储系统实验中构建的运算器、寄存器文件、存储系统等部件以及Logisim其他功能部件,来构建一个32位MIPS CPU单周期数据通路。
    在这里插入图片描述
  2. 数据通路的设计
    数据通路要将运算和功能部件进行连接,组成一个能个执行取值、译码、执行、进一步可能包含中断的数据连接,能够让指令从PC开始,流向各运算和功能部件,并成功指令相应的功能,给出相应的返回。并且数据通路要具备基本的CPU要求,能够形成相应的数据流和状态转移。
    数据通路
  3. 控制器的设计
    1. 运算器控制器
      运算器控制器设计的基本思想是通过24条MIPS指令的运算指令,进行组合逻辑分析,将运算指令送入到ALU_OP中。首先要对24条MIPS指令具体的执行过程进行分析,然后对每条MIPS指令,结合运算器ALU单元的运算规格,给出每条MIPS指令的运算类型,填入到自动生成表格中,进行ALU_OP值的生成,然后利用分析电路功能,自动生成电路。
      ALU

    2. 控制信号生成器
      控制信号生成器的基本思想与运算器部分类似,但这次不是对于24条MIPS指令的运算执行部分进行分析,而是对于24条MIPS指令具体所需要的控制信号进行分析,对每一条MIPS所需的控制信号分析,通过组合逻辑分析,得到控制信号的组合逻辑。
      控制信号

  4. 控制器的实现
    1. 根据总体方案设计中控制器的设计那一小节的相关内容,在Logism上进行主控制器、Branch控制器、SYSCALL控制器的具体实现。
      在这里插入图片描述
    2. 主存控制器的控制信号填入表中后,自动生成出相应的逻辑表达式,将表达式复制粘贴到电路中的分析电路功能中,自动生成组合逻辑电路如下,得到了24条MIPS指令关于ALU_OP的输入值组合逻辑。
      在这里插入图片描述
    3. 主存控制器的控制信号填入表中后,自动生成出相应的逻辑表达式,将表达式复制粘贴到电路中的分析电路功能中,自动生成组合逻辑电路如下,得到了24条MIPS指令所对应的控制信号的组合逻辑。在这里插入图片描述
    4. 最终的控制器
      在这里插入图片描述

有问题可在下方评论或私信

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐