年级 | 班号 |
| 组号 | 学号 |
| |||
专业 | 软件工程 | 日期 |
| 姓名 | 预判你的代码 | |||
实验名称 | CPU与模拟机设计实验 | 实验室 | 308 | |||||
实验 目的 或 要求 |
| |||||||
实验 环境 | PC机,TD-CMA实验系统一套 | |||||||
实验内容或 实验题目 | 本实验要实现一个简单的 CPU, 并且在此 CPU 的基础上,继续构建一个简单的模型计算机。 CPU由运算器(ALU)、微程序控制器(MC)、通用寄存器(RO),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成。这个CPU 在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中, CPU必须和主存挂接后,才有实际的意义,所以还需要在该CPU 的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。 | |||||||
实 验 原 理 ( 操 作 步 骤 ) | 实验原理: 微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件的为命令序列,完成数据传送和个汇总处理操作,他的执行方法是将控制各部件的微命令的集合进行编码,即将微命令的集合仿照及其指令一眼,用数字代码的形式表示,这种表示成微指令。这样就可以用一个微指令序列表示一条机器指令,这种为指令序列称作为程序。微程序存储在一种专用的存储器中,成为控制储存器。 本实验微程序流程图 方框是微指令 微地址用十六进制表示 伪指令格式 微指令字长24位 微指令转为二进制代码 写出微程序 保存到txt文件 实验具体操作:
选择联机软件的“【转储】一【刷新指令区】”可以读出下位机所有的机器指令和微指令,并在指令区显示。检查微控器相应地址单元的数据是否和编写的微程序中的十六进制数据相同,如果不同,则说明写入操作失败,应重新写入,可以通过联机软件单独修改某个单元的微指令,先用鼠标左键单击指令区的“微存’TAB 按钮,然后再单击需修改单元的数据,此时该单元变为编辑框,输入6位数据并回车,编辑框消失,并以红色显示写入的数据。 6.运行微程序: 运行时也分两种情况:本机运行和联机运行。 1)本机运行 ①将时序与操作台单元的开关KK1、KK3 置为‘运行’档,按动CON 单元的CLR按钮,将微地址寄存器(MAR)清零,同时也将指令寄存器(IR)、ALU 单元的暂存器A和暂存器B清零. ②将时序与操作台单元的开关KK2置为‘单拍’档,然后按动ST 按钮,体会系统在T1、T2、T3、T4节拍中各做的工作。T2节拍微控器将后续微地址(下条执行的微指令的地址)打入微地址寄存器,当前微指令打入微指令寄存器,并产生执行部件相应的控制信号:T3、T4节拍根据T2节拍产生的控制信号做出相应的执行动作,如果测试位有效,还要根据机器指令及当前微地址寄存器中的内容进行译码,使微程序转入相应的微地址入口,实现微程序的分支。 ③按动CON 单元的CLR按钮,清微地址寄存器(MAR)等,并将时序与单元的开关KK2置为‘单步’档. ④置IN单元数据为00100011,按动ST 按钮, 当MC单元后续微地址显示为000001时, 在CON单元的SD27...SD20模拟给出IN 指令00100000并继续单步执行, 当MC单元后续微地址显示为000001时,说明当前指令已执行完;在CON 单元的SD27...SD20 给出ADD指令00000000, 该指令将会在下个T3被打入指令寄存器(IR), 它将R0中的数据和其自身相加后送RO;接下来在CON 单元的SD27...SD20 给出OUT 指令00110000并继续单步执行, 在MC单元后续微地址显示为000001时,观查OUT 单元的显示值是否为01000110。 联机运行 联机运行时,进入软件界面,在菜单上选择【实验】一【微控器实验】,打开本实验的数据通路图,也可以通过工具栏上的下拉框打开数据通路图。将时序与操作台单元的开关KK1、KK3置为‘运行’档,按动CON 单元的总清开关后,按动软件中单节拍按钮,当后续微地址(通路图中的MAR) 为000001时, 置CON 单元SD27...SD20, 产生相应的机器指令,该指令将会在下个T3被打入指令寄存器(IR), 在后面的节拍中将执行这条机器指令。仔细观察每条机器指令的执行过程,体会后续微地址被强置转换的过程,这是计算机识别和执行指令的根基。也可以打开微程序流程图,跟踪显示每条机器指令的执行过程。按本机运行的顺序给出数据和指令,观查最后的运算结果是否正确。 注:联机的微程序流程图见上 | |
实验运行结果: 观察到相应的数据通路图 从In单元输入数据23H 将IN单元输入数据23H进行自加 Ro->a Ro->b A+b->ro 将自加单元结果从out单元输出 分析结果以及在试验中应注意的问题:
|