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