实验四基本模型机设计与实现 - search readpudncom_第1页
实验四基本模型机设计与实现 - search readpudncom_第2页
实验四基本模型机设计与实现 - search readpudncom_第3页
实验四基本模型机设计与实现 - search readpudncom_第4页
实验四基本模型机设计与实现 - search readpudncom_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验四 基本模型机设计与实现一、 实验目的1 在掌握部件单元电路实验的基础上,将微程序控制器模块与运算器模块、存储器模块组合成一起,组成一台基本模型计算机。2 用微程序控制器来控制模型机的数据通道。3 通过CPU运行五条机器指令组成的简单程序,掌握机器指令与微指令的关系,建立利用指令控制整机(输入、输出、运算、存储系统)的概念。二、 实验设备计算机组成原理实验仪一台,PC机一台,排线若干。三、 实验原理(1) 实验数据框图如图4-1所示: 图4-1基本模型机数据通道框图(2) 在模型机实验中,数据通道的控制将由微程序控制器来完成,CPU从内存取出一条机器指令到执行指令结束的一个指令周期,是由微

2、指令组成的序列来完成的,即一条机器指令对应一个微程序。(3) 本实验我们将五条机器指令及有关数据写入RAM和ROM中。通过CPU运行由五条机器指令组成的简单程序,掌握机器指令与微指令的关系。(4) 微指令格式:24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 S3 S2 S1 S0 M Cn WE A9 A8 A B C UA5 UA4 UA3 UA2 UA1 uA0 A字段 B字段 C字段15 14 13 选择 12 11 10 选择 9 8 7 选择 0 0 0 0 0 0 0 0 0 0 0 1 LDRi 0 0

3、 1 RS-B 0 0 1 P(1) 0 1 0 LDDR1 0 1 0 RD-B 0 1 0 P(2) 0 1 1 LDDR2 0 1 1 R1-B 0 1 1 P(3) 1 0 0 LDIR 1 0 0 299-B 1 0 0 P(4) 1 0 1 LOAD 1 0 1 ALU-B 1 0 1 AR 1 1 0 LDAR 1 1 0 PC-B 1 1 0 LDPC 其中A8、A9是2:4译码器(74LS139)的输入端,Y0、Y1、Y2、Y3是译码器输出端,其电路结构如下: 其中Y0为SW-B,Y1为CE,Y2为LED-B,Y3为空。(5) 微程序流程图如下: 运行微程序图4-2基本模型机

4、微程序流程图(6) 微指令二进制代码表如表4.2所示:表4.2微地址S3 S2 S1 S0 M CN WE A9 A8ABCUA5-UA0000 0 0 0 0 0 0 1 10 0 00 0 01 0 00 1 0 0 0 0010 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 0 0 1 0020 0 0 0 0 0 0 0 11 0 00 0 00 0 10 0 1 0 0 0030 0 0 0 0 0 0 0 11 1 00 0 00 0 00 0 0 1 0 0040 0 0 0 0 0 0 0 10 1 10 0 00 0 00 0 0 1 0 1050 0

5、0 0 0 0 0 1 10 1 00 0 10 0 00 0 0 1 1 0061 0 0 1 0 1 0 1 10 0 1 1 0 1 0 0 0 0 0 0 0 0 1 070 0 0 0 0 0 0 0 11 1 00 0 00 0 00 0 1 1 0 1100 0 0 0 0 0 0 0 00 0 10 0 00 0 00 0 0 0 0 1110 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 0 0 1 1120 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 0 1 1 1130 0 0 0 0 0 0 1 11 1 01 1 01 1

6、 00 0 1 1 1 0140 0 0 0 0 0 0 1 11 1 01 1 01 1 00 1 0 1 1 0150 0 0 0 0 0 1 0 10 0 0 0 0 1 0 0 0 0 0 0 0 0 1 160 0 0 0 0 0 0 0 11 1 00 0 00 0 00 0 1 1 1 1170 0 0 0 0 0 0 0 10 1 00 0 00 0 00 1 0 1 0 1200 0 0 0 0 0 0 1 11 1 01 1 01 1 00 1 0 0 1 0210 0 0 0 0 0 0 1 11 1 01 1 01 1 00 1 0 1 0 0220 0 0 0 0 0

7、 0 0 10 1 00 0 00 0 00 1 0 1 1 1230 0 0 0 0 0 0 1 10 0 00 0 00 0 00 0 0 0 0 1240 0 0 0 0 0 0 0 00 1 0 0 0 0 0 0 0 0 1 1 0 0 0 250 0 0 0 0 1 1 1 00 0 01 0 10 0 00 0 0 0 0 1260 0 0 0 0 0 0 0 11 0 10 0 01 1 00 0 0 0 0 1270 0 0 0 0 1 1 1 00 0 01 0 10 0 00 1 0 0 0 0300 0 0 0 0 1 1 0 10 0 01 0 10 0 00 1 0

8、 0 0 1(7) 机器指令格式如表4.3所示:表4.3四、 实验内容及步骤1 实验内容(1)按图4-3连接实验线路,检查无错后通电。图4-3 基本模型机接线图(2)实验程序 用基本的五条机器指令编写实验程序。该实验程序作为例子已存在磁盘里,文件名为EX1,该程序包括机器指令程序和微指令程序,机器指令程序如下:(地址和内容都是十六进制,机器指令的前4位为操作码。)例子:微指令的微代码如下:(内容是十六进制)说明:十六进制微指令程序的微代码的表示法是按照表4.2微指令二进制代码表中从左到右分成3个8位,将此3个8位的二进制代码化为相应的十六进制数即可。脱机手动输入微代码时,请将十六进制的微代码的

9、第1字节和第3字节内容对换后输入,即从开关MK24开始,先输第3字节,再输第2字节,最后输第1字节。而十六进制的地址要转化为八进制输入,内容要转化为二进制输入。2 实验步骤与PC机联机将上面的实验程序(EX1)下载到实验仪里,该程序包括机器指令程序和微指令程序,机器指令程序装入6116存储器(RAM)里,微指令程序装入E2PROM2816控制存储器(ROM)里,然后运行程序。(1) 实验程序下载操作步骤:1 开机后,启动Windows系统,双击桌面上的“组成原理实验”快捷图标,即可进入DVCC组成原理实验系统主画面。2 单击该系统第三行的打开图标,即可出现文件框,选择文件名EX1并打开之。3

10、此时左边的编辑窗口“新文件”变为“EX1”,在该窗口里显示EX1的源文件,它包括机器指令程序和微指令程序的微代码,$P开头是机器指令程序,$M开头是微指令程序的微代码。4 单击“调试”图标,把打开的源文件下载到实验仪里,在下载过程中屏幕上方出现“正在传送文件”的提示,当文件传送完毕,提示消失。5 文件传送完毕,要检查源文件是否正确传送到实验仪RAM(6116存储器)和ROM(E2PROM2816控制存储器)里,首先检查实验仪RAM的内容,单击“程序RAM”打开该窗口,查看此时显示的地址和内容与实验程序中机器指令的地址和内容是否一致,若不一致,重复4的操作,若一致,就单击菜单栏中“调试”菜单,然

11、后选择并单击“刷新数据”或按“F5”热键对“程序RAM”窗口显示的程序进行刷新。刷新完后,再查看此时显示的地址和内容与实验程序中机器指令程序是否一致,若不一致,则要检查用户接线是否正确或实验仪其他问题。6 然后再检查实验仪ROM的内容,单击“程序ROM” 打开该窗口,查看此时显示的地址和内容与实验程序中机器指令的地址和内容是否一致,若不一致,重复4的操作,若一致,就单击菜单栏中“调试”菜单,然后选择并单击“刷新数据”或按“F5”热键对“程序ROM”窗口显示的程序进行刷新。刷新完后,再查看此时显示的地址和内容与实验程序中机器指令程序是否一致,若不一致,则要检查用户接线是否正确或实验仪其他问题。7

12、 经过上面5、6操作的检查后,若程序正确,就可以运行程序。(2)运行程序时要求:1 程序运行前必须要求对微地址清零。拨动实验仪右下角清零开关CLR(1-0-1)后,观看实验仪右上方的微地址显示灯(UA0-UA5)是否全为零,若全为零,则正确,若不全为零,说明有问题,要检查。2 使用单步微指令运行程序,单击该系统第三行的“单步微指令”图标即可。3 在每次单步执行一条微指令的过程中,都要观察屏幕动态流线显示的运行结果,根据屏幕显示的结果分析该条微指令的格式和功能是否一致。若不一致,必须检查原因。(3)记录程序运行过程的数据和结果,并;回答下面问题:1执行输入指令时,要求:a.写出输入指令由哪些微指

13、令组成。答:那些输入指令是由SWR0微指令组成。b.在微地址Addr=(02(N)时,在实验仪左下方“INPUT DEVICE”的8位数据开关D7D0输入数据,并记录输入数据=(0000 0001)。c.在微地址Addr=(10(N)时,观察屏幕下方显示的微指令信息表,记录2:4译码器输入端A9、A8的状态(0或1),填入括号里。A9=(0),A8=(0)。d.根据记录的A9、A8状态,分析此时应该选中哪个三态门的控制信号?为什么?答:此时应该选中SW-B三态门的控制信号,因为需要通过“INPUT DEVICE”的8位数据开关D7D0输入数据。e.执行完输入指令,即微地址Addr=(01(N)

14、时,记录输入的数据存入哪个寄存器(R0)。2 执行加法指令(ADD)时,要求:a.写出加法指令由哪些微指令组成。答:加法指令由PCAR PC+1;RAMBUS BUSAR;RAMBUS BUSDR2;R0DR1;(DR1)+(DR2)R0五条微指令组成。b.在微地址Addr=(05(N)时,是执行哪条微指令?该条微指令完成什么操作,与屏幕动态流线显示的结果一致否?记录DR2=(01)。答:在微地址Addr=(05(N)时,是执行R0DR1微指令;该条微指令完成将R0寄存器中的内容存入DR1的操作;与屏幕动态流线显示的结果一致;DR2=(01)。c.在微地址Addr=(06(N)时,是执行哪条微

15、指令?该条微指令完成什么操作,与屏幕动态流线显示的结果一致否?记录DR1=(01)。同时,观察观察屏幕下方显示的微指令信息表,记录S3、S2、S1、S0、M、Cn的状态(0或1),填入括号里。即S3S0=(1001)、M=(0)、Cn=(1)。答:在微地址Addr=(06(N)时,是执行(DR1)+(DR2)R0微指令;该条微指令完成将DR1与DR2的内容相加,并把结果存入到R0的操作;与屏幕动态流线显示的结果一致;此时DR1=(01);S3S0=(1001)、M=(0)、Cn=(1)。d.根据记录的S3S0以及M和Cn的状态,分析哪几个信号表示加法?该加法指令属于算术加还是逻辑加,有进位否?

16、答:信号S3S0=(1001)表示加法;该加法指令属于算术加;有进位。e. 在微地址Addr=(01(N)时,是执行哪条微指令?该条微指令完成什么操作,与屏幕动态流线显示的结果一致否?记录R0=(02)。分析R0的内容是哪两个数相加的结果,正确否?在输出运算结果时输出三态门控制信号ALU-B是有效还是无效,为什么?答:在微地址Addr=(01(N)时,是执行PCAR,PC+1微指令;该条微指令完成将PC的内容送到地址寄存器AR并将PC加1的操作;与屏幕动态流线显示的结果一致;此时R0=(02);R0是DR1的内容与DR2的内容相加的结果,结果正确;在输出运算结果时输出三态门控制信号ALUB有效

17、,因为要输出运算结果必须打开ALUB。3 执行传送指令(STA)时,要求:a. 写出传送指令(STA)由哪些微指令组成。答:传送指令(STA)是由PCAR PC+1,RAMBUS BUSAR,R0BUS BUSRAM 3条微指令组成。b. 写出传送(STA)指令的功能。答:传送(STA)指令的功能是把R0中的内容写入指定的RAM单元中。c.在微地址Addr=(15(N)时,观察屏幕下方显示的微指令信息表,记录WE、A9、A8的状态(0或1),填入括号里,即WE=(1),A9=(0),A8=(1),为下一步分析做准备。答:在微地址Addr=(15(N)时,WE=(1),A9=(0),A8=(1)

18、。d. 在微地址Addr=(01(N)时,是执行哪条微指令?该条微指令完成什么操作,与屏幕动态流线显示的结果一致否?记录此时屏幕显示AR=(05),RAM=(30),根据实验程序例子中STA指令的要求,验证AR和RAM所显示的内容正确否?根据记录的WE、A9、A8的状态,分析此时写信号WE和片选信号CE是有效还是无效,为什么?答:在微地址Addr=(01(N)时,是执行PCAR,PC+1微指令;该条微指令完成将PC的内容送到地址寄存器AR并将PC加1的操作;与屏幕动态流线显示的结果一致;AR与RAM所显示的内容正确;此时写信号WE和片选信号CE有效;因为只有片选信号CE有效才能确定所要写的内存

19、单元,只有写信号WE有效才能对所选的单元进行写操作。4 执行输出指令(OUT)时,要求:a. 写出传送指令(OUT)由哪些微指令组成。答:传送指令(OUT)由PCAR PC+1,RAMBUS BUSAR,RAMBUS BUSDR1,DR1LED微指令组成。b. 写出该条指令的功能。答:该条指令的功能是将指定的RAM单元中的内容送到BUS上。c.在微地址Addr=(01(N)时, 观察屏幕上“OUTPUT”方框中显示的数据,根据实验程序例子中OUT指令的要求,验证“OUTPUT”方框中的数据正确否?将“OUTPUT”方框中的数据填入括号(02)里。答:“OUTPUT”方框中的数据正确;“OUTP

20、UT”方框中的数据为(02)。5 执行无条件转移指令(JMP),要求:a. 写出无条件转移指令(JMP)由哪些微指令组成。答:无条件转移指令(JMP)由PCAR PC+1,RAMBUS BUSPC指令组成。b. 写出该条指令的功能,在执行无条件转移指令时,所指定的转移地址是属于机器指令地址还是微指令地址?答:该条指令的功能是使正在执行的指令无条件转移到指定的地址;所指定的转移地址是属于机器指令地址。c.在微地址Addr=(01(N)时, 观察屏幕上“PC= ”的方框中显示的数据,根据实验程序例子中JMP指令的要求转移地址,验证该数据是否程序指定转移的地址?并将PC值填入括号里。PC=(00)。答:该数据是程序指定转移的地址;PC=(00)。6 上面程序的运行中,为什么每执行完一条机器指令,微地址都要返回到01?答:因为每执行完一条机器指令,都要读取PC的值来顺序获得下一条机器指令的地址。7 在每一条机器指令的执行过程中,第一个CPU周期,即取指令阶段是由哪些微指令组成?它们完成了什么操作?答:在每一条机器指令的执行过程中,第一个CPU周期,都是由PCAR PC+1,RAMBUSBUSIR,P(1)微指令组成;它们完成取指操作并指定下一条机器指令的地址

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论