自己动手画cpu系列 建设中ing 仅供参考!
在这首推华中科技大学计算机组成原理实验课mooc连接
初衷:在mooc上看见了本课觉得超赞,本人已完成了课中所有的实验,在做实验的过程中有时候实验会没有思路或者有些bug会浪费很多时间,目前呢也没找到完整的答案,所以做了份自己的答案给大家困惑的时候一份参考(大神请忽视,我自己也就一弱鸡),也就给大家卡壳的时候能有个找灵感的地方,请先独立思考,切勿抄袭。

    • 数字逻辑基础
    • 数据表示实验
    • 运算器设计
    • 存储器设计
    • MIPS CPU
      • MIPS CPU必备基础知识
      • 8指令单周期MIPS32 CPU
      • 8指令多周期(微指令)MIPS32 CPU
      • 8指令多周期(硬布线)MIPS32 CPU
      • 24条指令5级流水MIPS32 CPU

hu~,终于完成了,真是费劲呐
支持24条指令,5级流水线,可以对分支指令处理,寄存器冲突处理,指令ROM为1K,数据RAM为1M,32位MIPS指令集CPU
但是…
大量使用比较器造成硬件开销巨大,测试一下发现这尼玛真是个老爷车还没单周期跑的快,自己电脑cpu占百分之八九十只能跑到20多赫兹,一个走马灯跑了半天,可优化空间太大了,写了那么多天造成这个破样,有点悲剧。。。
先放个图大伙参考就行了,要是有人想听思路的话接下来再更

更新:
说实在的虽然自己很烂,但是做完成就感爆棚有木有

跑马灯gif:
在这停留几秒才会显示,前面多录了几帧

这个是最终版本,建议先不要一上来就写流水线这个,有时间的最好把前面的实验都做做,最起码也要把前面单周期,多周期的做一下,要不然确实有些困难。

按我的步骤是硬布线控制器设计->流水接口设计->cpu框架设计->分支指令处理->寄存器冲突处理

一、 硬布线控制器的设计:
参照前面单周期的控制器,只不过这个是24指令的,如图:

①运算器控制信号设计:



按照老师给excel表填写完整,运算器部分需把ALU_OP那一列填写完整,运算器规格如下:

按照不同信号填写不同运算功能就行了
②控制信号生成:
就是ALU_OP后那几列控制信号,如上表填写,这个参照单周期24指令的控制信号,是一样的。
最后把逻辑表达式填入logisim中自动生成电路

ps:关于指令控制信号如何填写,首先把大体框架搭好就是按照取码、译码、执行、访存、写回每部分的逻辑器件先搭好,控制信号基本上控制的多路选择器,老师mooc上也有给出大体框架图,参照这些写出,还是最好把单周期的先做了

[华中科技计组实验]logisim完成单周期5级流水MIPS CPU相关推荐

  1. [华中科技计组实验]logisim完成运动码表

    自己动手画cpu系列 建设中ing 仅供参考! 在这首推华中科技大学计算机组成原理实验课mooc连接 初衷:在mooc上看见了本课觉得超赞,本人已完成了课中所有的实验,在做实验的过程中有时候实验会没有 ...

  2. 计组课设:单周期31条MIPS指令CPU设计(含代码)

    多周期54条CPU:计组课设:多周期54条MIPS指令CPU设计(含代码)_孔艺菲的博客-CSDN博客 单周期CPU源码:while-TuRe/Single-cycle-CPU31 (github.c ...

  3. 超前进位加法器实验报告_北科大第二次计组实验报告超前进位加法器

    北科大第二次计组实验报告超前进位加法器 北京科技大学 计算机与通信工程学院实 验 报 告实验名称: 超前进位加法器 学生姓名: 专 业: 计算机科学与技术 班 级: 学 号: 指导教师: 实验成绩: ...

  4. 计算机组成原理实验心得2000字,计组实验报告(共10篇).doc

    计组实验报告(共10篇) 计组实验报告(共10篇) 计组实验报告 计算机组成原理实验报告一 一.算术逻辑运算器 1. 实验目的与要求: 目的:① 掌握算术逻辑运算器单元ALU(74LS181)的工作原 ...

  5. 计算机组成实验六MIPS汇编器,杭电计组实验6-MIPS汇编器与模拟器实验.doc

    <杭电计组实验6-MIPS汇编器与模拟器实验.doc>由会员分享,提供在线免费全文阅读可下载,此文档格式为doc,更多相关<杭电计组实验6-MIPS汇编器与模拟器实验.doc> ...

  6. 【计组实验】P3 Verilog多周期处理器开发 MIPS指令集

    全部代码+测试指令: 链接:CPUMultiCycle p3正确运行_百度网盘 提取码:gmzb (实验P1P2)Logisim电路图以及Verilog单周期处理器设计,见以下博客: [计算机组成原理 ...

  7. 西电计组实验一 存储器实验

    FPGA中LPM_ROM定制与读出实验 一.实验目的   1.掌握FPGA中lpm_ROM的设置,作为只读存储器ROM的工作特性和配置方法:   2.用文本编辑器编辑mif文件配置ROM,学习将程序代 ...

  8. 超前进位加法器实验报告_北科大第二次计组实验报告超前进位加法器.doc

    北科大第二次计组实验报告超前进位加法器 北京科技大学 计算机与通信工程学院 实 验 报 告 实验名称: 超前进位加法器 学生姓名: 专 业: 计算机科学与技术 班 级: 学 号: 指导教师: 实验成绩 ...

  9. 使用logisim搭建单周期CPU与添加指令

    使用logisim搭建单周期CPU与添加指令 搭建 总设计 借用高老板的图,我们只需要分别做出PC.NPC.IM.RF.EXT.ALU.DM.Controller模块即可,再按图连线,最后进行控制信号 ...

最新文章

  1. 2016 年Adobe设计成就奖作品征集
  2. python语言format用法_python格式化输出之format用法
  3. 虚拟网站禁用php,虚拟主机php程序fsockopen函数被禁用
  4. “饮水机”:形象比喻 深入浅出理解RAID
  5. 【有内鬼,终止交易】风靡朋友圈的壁纸,实现代码竟如此简单 | 原力计划
  6. swift编程语言和c,Swift与Objective C对比:选择更快的开发语言
  7. Python打印2018年的日历(【问题描述】 打印2018年的日历 【输入形式】 【输出形式】 【样例输入】 【样例输出】)
  8. 电脑的脉搏---时钟频率的来龙去脉
  9. 加推与多家上市企业合作,智能名片小程序为企业销售赋能
  10. 解题:POI 2008 Plot purchase
  11. B. Boboniu Plays Chess(手速)
  12. Excel无法打开文件xxx.xlsx,因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配
  13. Linux 挂载nas盘
  14. SAP中采购收货控制中的配置问题分析
  15. Freshman的插入排序实现
  16. 宜家将首次参与天猫618购物节;3M启动上海结构胶国产化二期扩产项目 | 美通企业日报...
  17. 算法与程序设计相关知识
  18. android 调用搜狗地图api,sogou地图API用法实例教程
  19. 汇编实验1 两个多位十进制数相加的实验
  20. Python编程错误:参数错误([_ctypes.COMError: (-2147024809, ‘参数错误。‘, (None, None, None, 0, ...

热门文章

  1. 记录课设--《装卸料小车的PLC控制》
  2. 合作伙伴究竟有多重要?这家云服务商深有心得体会
  3. Mybatis使用Druid连接池
  4. Zabbix通过JMX监控Java应用
  5. hexo主题切换可能出现的错误
  6. 获取 hexo主题静态页面
  7. ioc和aop的原理面试
  8. App中的私域流量,你知道吗?
  9. 【HTML+CSS】实现网页的导航栏和下拉菜单
  10. 【纯html+css垂直导航栏代码】