华中科技大学计算机组成原理实验—CPU设计实验报告
所有资源都已打包资源下载链接 || 盗梦空间一、实验目的1掌握多周期MIPS CPU中各条指令8条指令的数据通路掌握多周期MIPS CPU8条指令和微程序控制器的设计原理能利用相关原理在Logisim平台中设计实现8条指令的多周期微程序MIPS CPU包括微程序地址转移电路微程序控制器设计微程序代码设计CPU数据通路电路设计2掌握硬布线控制器的设计原理能利用相关原理在Logisim平台中设计实现8条指令的多周期微程序MIPS CPU包括硬布线地址转移电路硬布线控制器设计硬布线代码设计CPU数据通路电路设计3进一步熟练掌握Logisim平台的操作方法扩展Logisim的功能。二、实验内容多周期处理器数据通路高层视图1MIPS多周期硬布线CPU设计对照“多周期处理器数据通路高层视图”所示多周期MIPS处理器数据通路采用“简化的硬布线控制器模型图”所示的硬布线控制模型设计控制器构造多周期MIPS处理器。能支持“核心指令集表”中的8条MIPS核心指令最终设计实现的MIPS处理器能够运行试验包中的冒泡排序测试程序。2MIPS多周期微程序CPU设计对照“多周期处理器数据通路高层视图”所示多周期MIPS处理器数据通路采用微程序控制器的设计方法实现控制器构造多周期MIPS处理器能够支持“核心指令集表”中的8条MIPS核心指令最终设计实现的MIPS处理器能运行实验包中的冒泡排序测试程序。三、实验工具Logisim仿真实验软件四、方案设计与实验步骤及结果1MIPS多周期硬布线CPU设计①构建主要功能部件和数据通路多周期MIPS CPU的数据通路见“多周期MIPS CPU的数据通路图”。根据多周期MIPS CPU的数据通路连接多周期MIPS CPU数据通路电路多周期MIPS CPU数据通路电路见“多周期硬布线CPU数据通路电路图”多周期MIPS CPU的数据通路图多周期硬布线CPU数据通路电路图②构建硬布线控制器核心指令集8条可实现内存区域冒泡排序见“核心指令集表”指令的划分见“指令划分图”。指令划分图电路实现指令译码逻辑R型指令ADD、SLTI型指令LW、SW、BEQ、BNE、ADDISysCall指令指令译码逻辑实现电路见“指令译码逻辑实现电路图”指令译码逻辑实现电路图ALU控制器逻辑电路见“ALU控制器逻辑电路图”。ALU控制器逻辑电路图硬布线控制器状态转换逻辑自动生成表见“硬布线控制器状态转换逻辑自动生成表”利用该表自动生成状态机电路图略。硬布线控制器状态转换逻辑自动生成表硬布线控制器电路见“多周期硬布线控制器电路图”。多周期硬布线控制器电路图③系统调试将硬布线控制器输出与所有控点相连构造完整的多周期MIPS处理电路根据状态转换图指令测试控制器逻辑状态转换无误后测试程序包中的冒泡程序直至功能正确。注意多周期处理器中指令和数据存放至同一存储器中。用微指令生成表自动生成微指令微指令生成表见“微指令生成表”将微指令存入控制存储器将程序指令存入存储器中运行电路进行测试。测试结果见“多周期硬布线CPU测试结果图”。微指令生成表多周期硬布线CPU测试结果图2MIPS多周期微程序CPU设计①构建主要功能部件和数据通路在Logisim平台中设计MIPS多周期处理器所需要的主要功能部件。运算器既可以使用运算器试验中自行设计的运算器也可以使用标准库中的ALU模块。多周期MIPS处理器的数据通路电路可参考多周期硬布线CPU数据通路电路。多周期微程序CPU数据通路实现电路见“多周期微程序CPU数据通路实现电路图”。多周期微程序CPU数据通路实现电路图②设计微指令根据“多周期处理器数据通路高层视图”中的控制信号结合微程序控制器设计的基本原理设计MIPS多周期处理器微指令格式为每一条MIPS指令构建微程序微程序指令顺序控制方法可自行选择。③构建微程序控制器微程序控制器电路中的指令译码逻辑和ALU控制逻辑相同电路图分别见“指令译码逻辑实现电路图”和“ALU控制器逻辑电路图”。实现微程序地址转移逻辑由“指令状态变换图”可得R_Type的微程序入口地址为7ADDI的微程序入口地址为11LW的微程序入口地址为2SW的微程序入口地址为5BEQ的微程序入口地址为7BNE的微程序入口地址为10SYSCALL的微程序入口地址为13。利用微程序地址转移逻辑自动生成表见“微程序地址转移逻辑自动生成表”生成逻辑表达式利用逻辑表达式完成微程序地址转移逻辑电路见“微程序地址转移逻辑电路图”。指令状态变换图微程序地址转移逻辑自动生成表微程序地址转移逻辑电路图微程序控制器电路见“多周期微程序控制器电路图”。多周期微程序控制器电路图④系统调试将微程序控制器输出与所有控点相连构造完整的多周期MIPS处理电路根据状态转换图指令测试控制器逻辑状态转换无误后测试程序包中的冒泡程序直至功能正确。注意多周期处理器中指令和数据存放至同一存储器中。用微指令生成表自动生成微指令微指令生成表见“微指令生成表”将微指令存入控制存储器将程序指令存入存储器中运行电路进行测试。测试结果见“多周期微程序CPU测试结果图”。多周期微程序CPU测试结果图五、遇到的问题及解决方法1.对各实验原理欠缺全面了解。因为计算机组成原理的理论课程并没有学得很扎实所以在实验前我对各实验的原理欠缺比较全面的理解没有办法直接进行电路的设计。在实验设计之前我重新学习了相关实验的理论知识搞清楚各实验背后的原理然后才尝试进行试验的设计。结合教材上提示的电路原理图以及网上的相关资料最后在理解试验背后理论知识原理的基础上完成了电路的设计工作。2.实验逻辑较为复杂电路设计步骤难度较大对实验原理理解程度要求较高一方面需要对实验原理进行深入的学习与理解另一方面需要参考一些资料进行电路设计并在设计过程中加深对实验原理的理解。3.本次实验使用了Logisim平台的新功能即自动生成电路的功能在实验中需要使用excel表生成逻辑利用逻辑自动生成电路这部分操作是前几次实验没有涉及的自己摸索的过程中花费了较大的精力。4.电路较为复杂除了设计阶段连接阶段也具有较大的挑战性即使有三次实验的操作经验在连接时也会经常出错导致电路短路出现错误。

相关新闻

Python与数据库:SQLAlchemy实战指南

Python与数据库:SQLAlchemy实战指南

数据库操作是后端开发最核心的部分之一。在Python中,直接写原生SQL虽然灵活,但在项目变得复杂后,ORM(对象关系映射)能帮我们节省大量时间。SQLAlchemy是Python生态中最强大的ORM框架,这篇文章不讲太深的理论…

2026/10/9 22:02:31 阅读更多 →
死亡细胞修改器下载 及其用法

死亡细胞修改器下载 及其用法

下载链接 转存 避免丢失 《死亡细胞》风灵月影修改器:技术解析与功能详解 《死亡细胞》(Dead Cells)作为一款将Roguelite与银河恶魔城机制融合的硬核动作游戏,以其流畅的战斗、严苛的死亡惩罚和丰富的武器构筑受到核心玩家喜爱。…

2026/10/12 18:00:04 阅读更多 →
左上角角标NEW、最新CSS代码

左上角角标NEW、最新CSS代码

demo <!DOCTYPE html> <html><head><style>/*角标签&#xff0c;父元素必须设置position: relative;overflow: hidden;height: 大于120;width: 大于120px;&#xff0c;同时&#xff0c;角标标签内加入属性superscriptTitle"左上角标签文字内容&q…

2026/10/4 1:29:17 阅读更多 →

最新新闻

从直连到聚合:大模型API对接的架构演进与实战避坑指南

从直连到聚合:大模型API对接的架构演进与实战避坑指南

1. 从直连到聚合&#xff1a;API对接思路的转变2026年开年到现在&#xff0c;我陆续参与了三个不同规模的AI应用项目&#xff0c;从智能客服到内容生成工具&#xff0c;再到一个内部知识库问答系统。这三个项目有一个共同点&#xff1a;都需要对接大模型API。而在这三个项目的推…

2026/10/13 16:19:32 阅读更多 →
Linux内核inotify联动端侧模型:实现敏感配置文件变动的毫秒级语义差分告警

Linux内核inotify联动端侧模型:实现敏感配置文件变动的毫秒级语义差分告警

运维堡垒机与核心边缘节点上&#xff0c;/etc/pam.d/、/etc/sudoers 以及各类服务的核心配置文件始终是攻防对抗的最前线。传统的内核审计大多仰仗 auditd 规则或轻量级的 inotify 机制。当文件发生写入关闭事件&#xff08;IN_CLOSE_WRITE&#xff09;时&#xff0c;工具通常会…

2026/10/13 16:19:32 阅读更多 →
易语言视频转文本源码解析:从取帧到字幕文本的完整实现

易语言视频转文本源码解析:从取帧到字幕文本的完整实现

简介&#xff1a;面向易语言开发者的视频转文本功能实现源码&#xff0c;定位在图形图像与多媒体处理场景&#xff0c;适合对OCR、语音识别及中文编程感兴趣的初中级学员。压缩包共三个文件&#xff0c;大小约6.3MB&#xff0c;包含易语言主程序源文件(.e)、演示动画(.swf)和HT…

2026/10/13 16:19:32 阅读更多 →
易语言 esqlite3 V1.1 源码升级:多线程事务锁与加密数据库实战

易语言 esqlite3 V1.1 源码升级:多线程事务锁与加密数据库实战

简介&#xff1a;本资源为 sqlite3 易语言支持库与模块的 esqlite3 V1.1 版本&#xff0c;面向使用易语言进行数据库开发的中高级开发者&#xff0c;重点解决多线程环境下 SQLite 操作的稳定性与功能扩展问题。相比 1.0&#xff0c;本次更新新增了 S3 互斥体进入/退出、S3 聚合…

2026/10/13 16:19:32 阅读更多 →
WeTTY 源码安装与开发环境搭建:从 git clone 到热重载开发服务器

WeTTY 源码安装与开发环境搭建:从 git clone 到热重载开发服务器

后端开发工具运维 【免费下载链接】wetty Terminal in browser over http/https. (Ajaxterm/Anyterm alternative, but much better) 项目地址&#xff1a; https://gitcode.com/gh_mirrors/we/wetty 点击查看 免费下载 本文是基于 docs/development.md 展开的源码级开发指南&…

2026/10/13 16:19:32 阅读更多 →
交互式 ER 图 + Schema 差异对比 + 迁移SQL生成:LibreDB Studio 数据库设计工作流完整实操

交互式 ER 图 + Schema 差异对比 + 迁移SQL生成:LibreDB Studio 数据库设计工作流完整实操

【免费下载链接】libredb-studio One browser tab for PostgreSQL, MySQL, Oracle, SQL Server, MongoDB, Redis, SQLite, Couchbase, ClickHouse, Druid, DuckDB, Turso and more. An open-source SQL IDE with SSO, audit trail and AI-assisted queries MIT licensed, with …

2026/10/13 16:18:31 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目&#xff0c;我最大的感受是&#xff0c;大部分坑不是出在技术前沿&#xff0c;而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节&#xff0c;最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了&#xff0c;很难不碰到舵机控制这道坎。做智能小车要转方向&#xff0c;做机械臂要抬关节&#xff0c;做云台要偏航俯仰&#xff0c;背后都是同一个东西在干活&#xff1a;舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”&#xff1f;——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台&#xff1f;或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜&#xff1f;又或者&#xff0c;在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介&#xff1a;基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码&#xff0c;面向计算机相关专业课程设计与期末大作业学生&#xff0c;以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程&#xff0c;…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程&#xff1a;键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化&#xff0c;十个新手有八个栽在"往输入框里填东西"这件事上&#xff1a;要么填不进去&#xff0c;要么填了一半&#xff0c;要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程&#xff1a;阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀&#xff1a;什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面&#xff0c;跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 21:05:09 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →