实验八基本模型机的设计与实现

上传人:飞*** 文档编号:40864380 上传时间:2018-05-27 格式:DOC 页数:7 大小:684.50KB
返回 下载 相关 举报
实验八基本模型机的设计与实现_第1页
第1页 / 共7页
实验八基本模型机的设计与实现_第2页
第2页 / 共7页
实验八基本模型机的设计与实现_第3页
第3页 / 共7页
实验八基本模型机的设计与实现_第4页
第4页 / 共7页
实验八基本模型机的设计与实现_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《实验八基本模型机的设计与实现》由会员分享,可在线阅读,更多相关《实验八基本模型机的设计与实现(7页珍藏版)》请在金锄头文库上搜索。

1、1实验八实验八 基本模型机的设计与实现基本模型机的设计与实现一 实验目的 (1) 在掌握部件单元电路实验的基础上,进一步将其组成系统,构造一台基本模型计算机。(2) 为其定义五条机器指令,并编写相应的微程序,具体上机调试掌握整机概念 二 实验设备TDNCM计算机组成原理教学实验系统一台,排线若干。 三 实验内容1) 实验原理部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本次实验将能在微程序控 制下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制 将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周 期全部由微指令组成的序列来完成,

2、即一条机器指令对应一个微程序。本实验采用五条机器指令:IN(输入),ADD(二进制加法),STA(存数),OUT(输出),JMP( 无条件转移)。其指令格式如下(前4位为操作码):助记符 机器指令码 说明IN 00000000 “INPUT DEVICE”中的开关状态 R0ADD addr 0001 0000 R0+addr R0STA addr 0010 0000 R0 addrOUT addr 0011 0000 addr LEDJMP addr 0100 0000 addr PC其中::IN为单字长(8位),其余为双字长指令,为addr对应的二进制地址码。为了向RAM中装入程序和数据,检

3、查写入是否正确,并能启动程序执行,还必须设计三个 控制台操作微程序。* 存储器读操作(KRD):拨动总清开关CLR后,控制台开关SWB、SWA为“0 0”时,按START微动开关,可对RAM连续手动读操作。* 存储器写操作(KWE):拨动总清开关CLR后,控制台开关SWB、SWA置为“0 1”时,按START微动开关可对RAM进行连续手动写入。* 启动程序:拨动总清开关CLR后,控制台开关SWB、SWA置为“1 1”时,按START微动开关,即可转入到第01号“取址”微指令,启动程序运行。 上述三条控制台指令用两个开关SWB,SWA的状态来设置,其定义如表1所示。 表1 控制台的开关设置SWB

4、SWA控制台指令0 0 10 1 1读内存(KRD) 写内存(KWE) 启动程序(RP)根据以上要求,可设计数据通路框图,如图1所示。微指令定义如表1所示。系统涉及到的微程序流程如图2所示。当拟定“取指”微指令时,该微指令的判别测试字段2为P(1)测试。由于“取指”微指令是所有微程序都使用的公用微指令,因此P(1) 的测试结果出现多路分支。本机用指令寄存器的前4位(IR7一IR4)作为测试条件,出现5路 分支,占用5个固定微地址单元。控制台操作为P(4)测试,它以控制台开关SWB,SWA作为测试条件,出现了3路分支, 图1 数据通路框图(a) 五条指令的微程序流程图ADD111001IN131

5、2100201STAOUTSWR0P(1)PCARPC+1RAMBUS BUSIR0403PCARPC+1RAMBUS BUSAR 1507PCARPC+1RAMBUS BUSAR16PCARPC+1RAMBUS BUSAR26PCARPC+1RAMBUS BUSPCJMP140605R0DR1RAMBUSBUS-DR0(DR1)+(DR2)R001R0BUS BUSRAM0117RAMBUS BUSDR101DR1LED2501运行微程序八进制地址3占用3个固定微地址单元。当分支微地址单元固定后,剩下的其他地方就可以一条微指令占 用控存一个微地址单元随意填写。注意:微程序流程图上的单元地址为

6、8进制。当全部微程序设计完毕后,应将每条微指令代码化,表2即为将图2的微程序流程图按微指 令格式转化而成的“二进制微代码表”。下面介绍指令寄存器(IR):指令寄存器用来保存当前正在执行的一条指令。当执行一条指 令时,先把它从内存取到缓冲寄存器中,然后再传送至指令寄存器。指令划分为操作码和 地址码字段,由二进制数构成,为了执行任何给定的指令,必须对操作码进行测试P(1), 通过节拍脉冲T4的控制以便识别所要求的操作。“指令译码器” (实验板上标有“INS DECODE”的芯片)根据指令中的操作码译码强置微控器单元的微地址,使下一条微指令指 向相应的微程序首地址。 本系统有两种外部IO设备,一种是

7、二进制代码开关,它作为输入设备(INPUT DEVICE):另一种是数码块,它作为输出设备(OUTPUT DEVICE)。例如:输入时,二进制开关数据直接经过三态门送到总线上,只要开关状态不 变,输入的信息也不变。输出时,将输出数据送到数据总线上,当写信号(WR)有效时, 将数据打入输出锁存器,驱动数码块显示。 表2 微程序代码表微地址S3 S2 S1 S0 M Cn WEA9 A8ABCA5-A0 000 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

8、0 0 0 0 0 11 0 00 0 00 0 10 0 1 0 0 0图2 微程序流程图KWE23202000KRDRPP(1)1507PCARPC+1RAMBUS BUSDR116PCARPC+1DR1LED控制台213024PCARPC+1(SW)BUS BUSDR1DR1RAM(b) 控制台微程序流程图八进制地址014030 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 0 0 0 0 0 1 10 1 00 0 10 0 00 0 0 1 1 0

9、061 0 0 1 0 1 0 1 10 0 11 0 10 0 00 0 0 0 0 1070 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 00 0 1 1 1 0140 0 0 0 0 0 0 1 11 1 01 1 01

10、 1 00 1 0 1 1 0150 0 0 0 0 0 1 0 10 0 00 0 10 0 00 0 0 0 0 1160 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 0 0 10 1 00 0 00 0 00 1 0 1 1 1230 0 0 0 0 0 0

11、 1 10 0 00 0 00 0 00 0 0 0 0 1240 0 0 0 0 0 0 0 00 1 00 0 00 0 00 1 1 0 0 0250 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 0 0 1本实验设计机器指令程序如下:地址(二进制) 内容(二进制) 助记符 说 明0000 000

12、0 0000 0000 IN R0 “INPUT DEVICE”R00000 0001 0001 0000 ADD 0AH,R0 R0+0AH R00000 0010 0000 10100000 0011 0010 0000 STA R0,0BH R00BH0000 0100 0000 1011 0000 0101 0011 0000 OUT 0BH 0BH LED0000 0110 0000 1011 0000 0111 0100 0000 JMP 00H 00HPC0000 1000 0000 00000000 1001 0000 1010 0000 0001 自定 0000 1011 求

13、和结果 四 实验步骤 (1) 按图20连接实验线路。5(2) 写程序 方法一:手动写入 先将机器指令对应的微代码正确地写入2816中,由于在微程序控制实验中已将微代码 写入E2PROM芯片中,对照表5校验正确后就可使用。 使用控制台KWE和KRD微程序进行机器指令程序的装入和检查。 A.使编程开关处于“RUN“,STEP为“STEP”状态,STOP为“RUN”状态。 B拨动总清开关CLR(01),微地址寄存器清零,程序计数器清零。然后使控制台S WB,SWA开关置为“01”,按动一次启动开关START,微地址显示灯显示“010001”, 再按动一次START,微地址灯显示“010100“。此时

14、,数据开关的内容置为要写入的机器 指令,按动两次START键后,即完成该条指令的写入。若仔细阅读KE的流程,就不难发现 ,机器指令的首地址总清后为零,以后每个循环PC会自动加1,所以,每次按动START,图20 基本模型机实验接线图6只有在微地址灯显示“010100”时,才设置内容,直到所有机器指令写完。 C写完程序后须进行校验。拨动总清开关CLR(01)后,微地址清零。PC程序计数器 清零,然后使控制台开关SWB,SWA为“00”,按动启动START,微地址灯将显示“010000”;再按START,微地址灯显示为“010010“;第3次按START,微地址灯显示为“010 111”,再按ST

15、ART后,此时输出单元的数码管显示为该首地址中的内容。不断按动STAR T,以后每个循环PC会自动加1,可检查后续单元内容。每次在微地址灯显示为“010000” 时,是将当前地址中的机器指令写入到输出设备中显示。方法二:联机读写程序按照规定格式,将机器指令及表2微指令二进制表编辑成十六进制的如下格式文件。微指令 格式中的微指令代码为将表2中的24位微代码按从左到右分成6个4位,将此6个4位二进制代 码化为相应的十六进制数即可。程 序$P4000$P4110$P420A$P4320$P440B$P4530$P460B$P4740$P4800$P4A01微程序 $M00018110$M0901ED8

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 其它考试类文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号