03 04 05 06
3.读出存储器内容
44 66 08 F0 00000011 01000100 00000100 01100110 00000101 00001000 00000110 11110000 四、实验分析:
(1)、分析存储器在做写操作和读操作的过程中为什么都要先完成写地址操作。
答:写地址的操作是告诉存储电路是对哪个存储单元进行读/写操作,所以要先完成写地址操作。
(2)、分析控制端SW-B、LDAR、CE、WE什么时候有效,什么时候无效。
答:SW-B低电频有效,高电频无效;LDAR、CE、WE都是高电频有效,低电频无效。 (3)、做什么操作时需要脉冲信号,什么操作时不需要脉冲信号。
答:写地址,写数据的时候需要脉冲信号,读数据时不需要脉冲信号。
(4)、分析表二中写入存储单元的数据与读出时的数据是否一致,如果不一致,写出原因。
答:在我们的实验过程中,第一次写地址、写数据的操作都是不成功的,原因是存储电路接线出现问题;第二次不成功是因为实验电路的CLR控制信息为低电频(0),应该是高电频的(1);纠正这两个问题之后,读出的数据与写入的数据是一致的。
五、思考问题:
在完成上面5、6两题操作中,能否先连续输入所有的地址,再连续输入所有的内容或连续读出所有的内容,为什么?
答:不可以。因为在此电路中地址寄存器一次只能记录一个地址,连续输入所有地址实际上地址寄存器只记住了最后一个地址。同样,一次录入数据到一个存储单元,连续输入所有的数据,实际上也只记录了最后一个地址。读出操作也一样。
第 5 页
实验三 微程序控制器实验 (一) 算术逻辑运算器
三、实验结果:
1.图3—5为几条机器指令对应的参考微程序流程图,根据每个控制信号的作用,每条微指令可按前面所述的微指令格式转换成二进制代码,将全部微程序按微指令格式变成二进制代码,可得到表3-2的二进制代码表
第 6 页
二进制 000000 000001 000010 000011 000100 000101 000110 000111 001001 001100 010011 010110
3.观察微程序控制器的工作原理:
(—)按图3—6连接实验线路,仔细查线无误后接通电源。
微地址 00 01 02 03 04 05 06 07 10 11 12 13 14 15 16 17 20 21 22 23 24 25 26 27 30 S3S2S1SOMCNWEA9A8 000000011 000000011 000000001 000000001 000000001 000000011 100101011 000000001 000000000 00000001l 0000000l1 000000011 000000011 000000101 000000001 000000001 0000000l1 000000011 000000001 000000011 000000000 000001110 000000001 000001l10 000001101 A 000 110 100 110 011 010 001 110 001 110 110 110 110 000 110 010 110 110 010 000 010 000 101 000 000 B 000 110 000 000 000 001 101 000 000 110 110 110 110 001 000 000 110 110 000 000 000 101 000 101 101 C 100 110 001 000 000 000 000 000 000 110 110 110 110 000 000 000 110 110 000 000 000 000 110 000 000 UA5?UA0 010000 000010 001000 000100 000l0l 000110 00000l 001101 000001 000011 000l11 001110 010110 000001 001111 0l010l 010010 010100 010111 00000l 011000 000001 00000l 010000 010001
(二)编程写入E2PROM2816
第 7 页
A.将编程开关(MJ20)置为PROM(编程)状态。
B.将实验板上STATEUNIT中SETP置为“SETP”状态,STOP置为“RUN'’状态。 C.在右下角的UA5—UAO开关上置表3—2中要:与的某个微地址(八进制)。
D.在MK24-MKl开关上置表3-2中要写的微地址后面的24位微代码,24位开关对应24位显示灯,开头量为“1”时灯亮,开关量为“0”时灯灭。
E.启动时序电路(按动启动按钮START),即将微代码写入到E2PROM2816的相应地址对应的单元中。
F.重复C—E步骤,将表3-2的每一行(代表每一条微指令)写入E2PROM2816。 (三)校验
A.将编程开关置为READ(校验)状态。
B。将实验板的STEP开关置为“STEP'’状态,STOP开关置为“RUN”状态。 C.在开关UA5-UAO上按表3—2置好要读的某个微地址。
D.按动START键,启动时序电路,就能读出微代码,观察显示灯MD24—MDl的状态(灯亮为“1”灭为“0”),检查读出的微代码是否与已写入的相同。如果不同,这将开关置于PROM编程状态,重新执行(一)编程步骤。
E。重复C—D步骤,将表3-2的每一行(代表每一条微指令)从E2PROM2816中读出了。 (四)单步运行
A.将编程开关置于“RUN'’状态。
B.实验仪的“STEP'’及“STOP'’开关保持原状,即STEP置为“SETP'’状态,STOP置为“RUN”状态。
C.买验仪的“SW-BUS”开关置为“0”,将SEl-SE6对接的二进制开关INPUTDEVICE区域内的D5—D0全为“1”。
D.操作CLR开关/拨动开关在实验板—F角)使CLR信号系统1→0→1微地址寄予器MA5—MAO清零,从而明确本机的运行入口微地址为000000(二进制)。
E.按动“START'’键,启动时序电路,则每按动一次启动键,读出一条微指令后停机,此时实验台上的微地址显示灯和微命令显示灯将显示所读出的一条指令,当读00条微指令,UA5—UAO灯显示为010000时,在当前条件下,可通过强置端SE1—SE6对接的D7—D0人为设置分支地址,比如:“11111100”,“11111110”,“J11111101”。因为SEl—SE6是低电平有效信号,所以当需要人为设置分支地址时,将某个或几个进制D7—D0开关置为“0”,相应的微地址位即被强置为“1”从而改变下一条微指令的地址。(二进制开关置为“0”,相应的地址位将被强置为“1”)
D.同理在读到02条微指令时,UA5-UAO灯显示为001000时,在当前条件下,可通过强置端SEl—SE6对接的D7-D0人为设置分支地址,比如:“11111111”、“11111110”,“11111101”,“11111100”,“11111011”。
E.把所有分支都执行一遍。
四、实验分析:
(1)本次实验共设计了几条指令?
答:共设计了两条指令,分别是IN、ADD和JMP。 (2)ADD加法指令由哪些微指令组成?
答:ADD指令由PC+1、BUS-AR、BUS-DR2、OR-DR1、(DR1+DR2)?OR构成。 (3)S3S2S1S0MCN控制信号共同起至U什么作用?
答:这些控制信号分别是:S3、S2、S1、S0是运算选择控制端,由它们决定运算器执行哪一种运算(16种算术运算或16种逻辑运算)。M是算术/逻辑运算选择,M=0时,执行
第 8 页
算术运算,M=I时,执行逻辑运算。Cn是算术运算的进位控制端,Cn=0(低电平),表示有进位,运算时相当于在最低位上加进位1,Cn=l(高电平),表示无进位。逻辑运算与进位无关。
(4)写出WE信号的作用。
答:在执行IN指令时,打开三态门接收INPUT DRIVER控制台录入的数据,并在接收后关闭三态门。
(5)A、B、C能译出什么信号?
答: A、B、C三个译码字段,分别有二个控制位译码出多位。 (6)UA5—UAO是当前微地址还是后继微地址? 答:UA5—UAO是后继微地址。
(7)06微指令功能是什么?06微指令S3S2S1S0MCN的值为“100101”代表什么运算?A字段“001”和B字段“101”分别起什么作用?06微指令中UA5—UAO中“00000001”代表什么含义?
答:06的指令功能是(DR1+DR2)?OR;S3S2S1S0MCN的值为“100101”代表有进位算术加法运算。A字段“001”和B字段“101”分别起到记录PC地址和指令地址的偏移量。06微指令中UA5—UAO中“00000001”代表执行完此微指令后要执行的下一条微指令的地址。
实验四 基本模型机设计与实现
三、实验结果:
用所介绍的五条机器指令来编写实验程序。该实验程序作为例子已存在磁盘里,文件名
第 9 页