华科计算机组成原理 MIPS CPU设计 单周期硬布线&多周期硬布线&微程序CPU (Logisim&Educoder)

2023/6/17,有问题请在文末留言或者私信,最近很活跃。

这个实验线路比较复杂,尤其是在数据通路部分,再者,对于指令的运行方式和微程序的转换逻辑要求很高

单周期MIPS CPU设计&单周期硬布线控制器

  1. 数据通路如下,主要利用一个硬布线控制器,指令寄存器,PC计数器、寄存器堆(之前实验中的MIPS寄存器文件),ALU加法器(已经封装好的),数据存储器来实现。这里的连接就按照给出的框图进行连接就可以了,注意细节不要出现小错误数据通路数据通路
    补充一点,这里的停机是靠位于左上方的计数器,计算周期数。在计数器中设置最大值为224,当周期达到224时即可停机。
  2. 单周期硬布线控制器的设计
    1. 首先是指令译码逻辑的设计,该实验只涉及8条核心的MIPS指令。而这8条MIPS指令的指令字段已经在附件中给出(关于MIPS指令字段可参考我另一篇关于单总线定长&变长的博客biubiu传送门),并且电路底部文字也给出了关于SYSCALL的提示,因此,这部分只需根据相应的OPFUNC字段进行简单地逻辑比较就可实现。指令译码逻辑
    2. ALU控制逻辑的设计,由于该MIPS CPU设计中有关的8条核心MIPS指令中,对于ALU运算逻辑单元中只涉及到加法和比较,因此这一部分可以大大简化。只有运行STL指令时,需要选择比较运算,其余都是加法运算。控制器逻辑
    3. 对于控制器输出信号的设计,则要根据硬布线控制器中所包含的9中控制信号进行分析,如下图。主要考虑每种控制信号的产生条件。这里更高的要求是掌握8条核心指令集在执行时全部周期中所设计的控制信号,已经使用相应控制信号的作用
      控制信号
      控制信号1
  3. 当你上面两部分设计完成后,再次打开该电路文件时,你的整个数据通路中就只存在绿线和黑线了。这时候就要进行最后一步测试,在数据通路的指令存储器中加载sort文件。最终,会在相应的周期数停机,并呈现一个升序排列。测试停机

微程序地址转移逻辑设计

  1. 实验目的是了解微程序控制器中微程序分支的基本原理,这里的话建议去听一下中国大学有关多周期微程序CPU那一节的相关知识,能够帮助你更好的理解。而首先是要求设计微地址转移逻辑,也是最简单的一部分。
  2. 主要根据的下面这个指令状态变换图,这个状态图可谓是整个微程序CPU设计的核心,从开始的地址转移逻辑的设计到中间的微程序控制器设计以及最后的整个CPU数据通路的设计都有一定的帮助状态变化图
  3. 在相应的EXCEL表中进行填写,这个表格相对简单,主要是关于机器指令信号及其相关的微程序入口地址的填写。填写完毕后,利用Logisim的自生成功能,就可以实现电路要求的功能了。excel地址

有问题可在下方评论或者私信+企鹅453682174.

  • 110
    点赞
  • 765
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 56
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_AoSnow_

创作不易,打赏打赏些8

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值