5. 计算机组成和体系结构 华工 实验五 CPU组成与机器指令执行周期实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验五 CPU组成与机器指令执行周期实验
一、实验目的
1.将微程序控制器同执行部件(整个数据通路)联机,组成一台模型计算机。
2.用微程序控制器控制模型计算机的数据通路。
3.通过TEC-5执行由8条机器指令组成的简单程序,掌握机器指令与微指令的关系,
牢固建立计算机的整机概念。
二、实验电路
本次实验将前面几个实验中的所有电路,包括运算器、存储器、通用寄存器堆、微程序控制器等模块组合在一起,构成一台简单的模型机。因此,在基本实验中,
这是最复杂的一个实验,也将是最有收获的一个实验。
在前面的实验中,实验者本身作为“控制器”,完成了对数据通路的控制。而在本次实验中,数据通路的控制将交由微程序控制器来完成。TEC-5从存中取出一条机器指令到执行指令结束的一个指令周期,是由微程序完成的,即一条机器指令对应一个微程序序列。
三、实验设备
1.TEC-5计算机组成原理实验系统1台
2.逻辑测试笔一支(在TEC-5)上
3.双踪示波器一台(公用)
4.直流万用表一只(公用)
四、实验任务
1.对机器指令组成的简单程序进行译码。将下表的程序按机器指令格式手工汇编成
二进制机器代码,此项任务请在预习时完成。
2.按照下面框图,参考前面实验的电路图完成连线,工作量大概是:控制台、时序
部件、数据通路和微程序控制器之间的连线。控制器是控制部件,数据通路是执行部件,时序发生器是时序部件。注意通用寄存器堆RF的RD1、RD0、RS1、RS0、WR1、WR0与IR3-IR0间的连线。
图3.9 模型机连线示意图
3.将任务1中的程序代码用控制台指令存入存中,并根据程序的需要,用数码开关
SW7-SW0设置通用寄存器的数据。注意:由于设置通用寄存器时会破坏存储器单
元的数据,因此应先设置寄存器中的数据,再设置存储器中的程序和数据。要求
使用两组寄存器数据,一组寄存器数据在执行ADD R1,R0指令时产生进位,一组
寄存器数据在执行ADD R1,R0指令时不产生进位,以观察同一程序程序的不同执行
流程。
4.用单拍(DP)方式执行一遍程序,记录最后得到的四个寄存器的数据,以及由STA
指令存入RAM中的数据,与理论分析值比较。执行时注意观察各个指示灯的显示,
以跟踪程序执行的详细过程(可观察到每一条微指令的执行过程)。
5.用连续方式再次执行程序。这种情况相当于计算机正常的工作。程序执行到STP
指令后自动停机。读出寄存器中的运算结果,与理论值比较。
五、实验要求
1.务必做好实验预习,这样在实验中才能做到头脑清醒、思路清晰、忙而不乱、心
中有数。
2.根据实验任务的要求,预习时做好必要的准备,填好相关表格、数据和理论分析
值,以便与实验值对照。
3.本次实验接线较多,务必仔细,以免因接线错误导致控制出错,影响实验进度。
4.写出实验报告,容是:
(1)实验目的。
(2)实验任务1-5中的数据表格。
(3)值得讨论的其他问题。
六、实验步骤和实验结果
(1)按照表1中的指令格式与功能对表2中的机器指令组成的简单程序进行译码。
表1 指令格式与功能
表2 机器指令程序
(2)接线
本实验接线比较多,需仔细。
接线表
只要把上表种同列的信号用线连接即可,一共接线33条。
接好线后,将编程开关拨到“正常位置”。合上电源,按CLR#按钮,使TEC-5实验实验系统处于初始状态。
(3)存程序代码,设置通用寄存器R0、R1、R2和R3的第一组值及存储器相关单元的数据。
本组的寄存器数据是R0=35H,R1=43H,R2=10H,R3=07H。存储器10H单元的容为55H。选择这组数据的目的是执行ADD R1,R0指令时不产生进位C,从而在执行JC R3指令时不产生跳转,而是顺序执行。
●设置通用寄存器R0、R1、R2和R3的值
在本操作中,我们打算使R0=35H,R1=43H,R2=10H,R3=07H
1.令DP=0,DB=0,使系统处于连续运行状态。令SWC=0,SWB=1,SWA=1,使系统处于写寄存器状态WRF。按CLR#按钮,使实验系统处于初始状态。
2.在SW7—SW0上设置一个存储器地址,该存储器地址供设置通用寄存器使用。该存储器地址最好是不常用的一个地址,以免设置通用寄存器操作破坏重要的存储器单元的容。
例如可将该地址设置为0FFH。按一次QD按钮,将0FFH写入左端口地址寄存器AR。
3.在SW7—SW0上设置00H,作为通用寄存器R0的寄存器号。按一次QD按钮,将00H 写入指令寄存器IR。
4.在SW7—SW0设置35H,按一次QD按钮,将35H写入IR指定的R0寄存器。
5.在SW7—SW0上设置01H,作为通用寄存器R1的寄存器号。按一次QD按钮,将01H 写入指令寄存器IR。
6.在SW7—SW0设置43H,按一次QD按钮,将43H写入IR指定的R1寄存器。
7.在SW7—SW0上设置02H,作为通用寄存器R2的寄存器号。按一次QD按钮,将02H 写入指令寄存器IR。
8.在SW7—SW0设置10H,按一次QD按钮,将10H写入IR指定的R2寄存器。
9.在SW7—SW0上设置03H,作为通用寄存器R3的寄存器号。按一次QD按钮,将03H 写入指令寄存器IR。
10.在SW7—SW0设置07H,按一次QD按钮,将07H写入IR指定的R3寄存器。
设置寄存器容完毕。按CLR#按钮,使系统恢复到初始状态。