计算机组成原理实验——微控制器实验

1、目的与要求

1)掌握时序信号发生电路组成原理

2)掌握微程序控制器的设计思想和组成原理。

3掌握微程序的编制、写入,观察微程序的运行。

2、实验设备

ZYE1601B计算机组成原理教学实验箱一台,排线若干。

3、实验步骤与源程序

l) 实验接线如下:

① 跳线器J20、J21连上短路片;

② 跳线器J16上SP连H23;

③ UJ1连UJ2。

2) 根据机器指令画出对应的微程序流程图如下:

3)根据微程序流程图设计微指令,并按微指令格式转换成二进制代码,如下表所示。

二进制微代码表

微地址

S3 S2 S1 S0 M CN WE B1 B0

A

B

C

UA5…UA0

0 0

0  0  0  0  0  1  0  1  1

0 0 0

0 0 0

1 0 0

0 1 0 0 0 0

0 1

0  0  0  0  0  1  0  1  1

1 1 0

1 1 0

1 1 0

0 0 0 0 1 0

0 2

0  0  0  0  0  1  0  0  1

1 0 0

0 0 0

0 0 1

0 0 1 0 0 0

0 3

0  0  0  0  0  1  0  0  1

1 1 0

0 0 0

0 0 0

0 0 0 1 0 0

0 4

0  0  0  0  0  1  0  0  1

0 1 1

0 0 0

0 0 0

0 0 0 1 0 1

0 5

0  0  0  0  0  1  0  1  1

0 1 0

0 0 1

0 0 0

0 0 0 1 1 0

0 6

1  0  0  1  0  1  0  1  1

0 0 1

1 0 1

0 0 0

0 0 0 0 0 1

0 7

0  0  0  0  0  1  0  0  1

1 1 0

0 0 0

0 0 0

0 0 1 1 0 1

0 8

0  0  0  0  0  1  0  0  0

0 0 1

0 0 0

0 0 0

0 0 0 0 0 1

0 9

0  0  0  0  0  1  0  1  1

1 1 0

1 1 0

1 1 0

0 0 0 0 1 1

0  A

0  0  0  0  0  1  0  1  1

1 1 0

1 1 0

1 1 0

0 0 0 1 1 1

0 B

0  0  0  0  0  1  0  1  1

1 1 0

1 1 0

1 1 0

0 0 1 1 1 0

0 C

0  0  0  0  0  1  0  1  1

1 1 0

1 1 0

1 1 0

0 1 0 1 1 0

0 D

0  0  0  0  0  1  0  0  1

0 0 0

0 0 1

0 0 0

0 0 0 0 0 1

0 E

0  0  0  0  0  1  0  0  1

1 1 0

0 0 0

0 0 0

0 0 1 1 1 1

0 F

0  0  0  0  0  1  0  0  1

0 1 0

0 0 0

0 0 0

0 1 0 1 0 1

1 0

0  0  0  0  0  1  0  1  1

1 1 0

1 1 0

1 1 0

0 1 0 0 1 0

1 1

0  0  0  0  0  1  0  1  1

1 1 0

1 1 0

1 1 0

0 1 0 1 0 0

1 2

0  0  0  0  0  1  0  0  1

0 1 0

0 0 0

0 0 0

0 1 0 1 1 1

1 3

0  0  0  0  0  1  0  1  1

0 0 0

0 0 0

0 0 0

0 0 0 0 0 1

1 4

0  0  0  0  0  1  0  0  0

0 1 0

0 0 0

0 0 0

0 1 1 0 0 0

1 5

0  0  0  0  0  1  1  1  0

0 0 0

1 0 1

0 0 0

0 0 0 0 0 1

1 6

0  0  0  0  0  1  0  0  1

1 0 1

0 0 0

1 1 0

0 0 0 0 0 1

1  7

0  0  0  0  0  1  1  1  0

0 0 0

1 0 1

0 0 0

0 1 0 0 0 0

1 8

0  0  0  0  0  1  1  0  1

0 0 0

1 0 1

0 0 0

0 1 0 0 0 1

4)连接实验线路,仔细查线无误后接通电源。

5) 进一步了解微程序控制器的工作原理

① 写微程序

A. “编程开关”置为“写入”状态。

B. “运行控制”开关置为“运行”,“运行方式”开关置为“单步”状态。

C. 用二进制模拟开关UA0~UA5置6位微地址,UA0~UA5的电平由LK0~LK5显示,高电平亮,低电平灭。

D. 用二进制模拟开关MK1~MK24置24位微代码,24位微代码由LMD1~LMD24显示灯显示,高电平亮,低电平灭。

E. 按动“启动运行”开关,启动时序电路,即可将微代码写入到E2PROM 2816的相应地址单元中。

F . 重复C-E步骤,将表3-5的微代码全部写入E2PROM 2816中。

② 读微程序

A. 将“编程开关”设置为“读”状态。

B. “运行控制”开关置为“运行”,“运行方式”开关置为“单步”状态。

C. 用二进制模拟开关UA0~UA5置6位微地址。

D. 按动“启动运行”开关,启动时序电路,读出微代码,观察显示灯LMD1~LMD24的状态,检查读出的微代码是否与写入的相同,如果不同,则将“编程开关”置为“写入”状态。重新执行①即可。

③ 单步运行

A. “编程开关”置于“运行”状态。

B. “运行控制”开关置为“运行”,“运行方式”开关置为“单步”状态。

C. 系统总清,即“总清”开关拨0→1。使微地址寄存器U14~U16清零,从而明确本机的运行入口微地址为000000(二进制)。

D. 按动“启动运行”开关,启动时序电路,则每按动一次,读出一条微指令后停机,此时实验机上的微地址显示灯和微程序显示灯将显示所读出的一条指令。注意:在当前条件下,可将6芯排座“JSE1”和“UJ2”相连,可通过强置端SE1~SE6人为设置微地址,从而改变下一条微指令的地址。设置方法如下:先将微地址开关置“1”,再将UJ1上的排线换插到“JSE1”,然后将某个或几个二进制开关置为“0”,相应的微地址位即被强置为“1”,从而改变下一条微指令的地址。

④ 连续运行

A. 将“编程开关”置为“运行”状态。

B. “运行控制”开关置为“运行”,“运行方式”开关置为“连续”状态。

C. 系统总清,即“总清”开关拨0→1。使微地址寄存器U14~U16清零,从而明确本机的运行入口微地址为000000(二进制)。

D.  按动“启动运行”开关,启动时序电路,则可连续读出微指令。

4、结果分析与实验体会

1)写出外设输入指令、 二进制加法指令、存数指令、 输出到外设指令和无条件转移指令五条指令的微程序。(用十六进制表示)

IN:   05ED82   04C048   041001   041001

ADD:  05ED82   04C048   041001  05ED83  04E004  04B005  05A206   959A01

STA:  05ED82   04C048   041001  05ED87   04E00D  068201

OUT:  05ED82   04C048   041001  05ED8E  04E00F  04A0015  070A01

JMP: 05ED82   04C048   041001  05ED96   04D181

外设输入指令:041001

二进制加法指令:05ED83->04E004->04B005->05A206->959A01

存数指令:05ED83->04E00D->048201

输出到外设指令:05ED83->04E00F->04A0A5->070A01

无条件转移指令五条指令:05ED96->04D181

  1. 给出读写微程序过程和验证结果

读出的微程序与写入的微程序完全一致。当将编程开关置为“RUN”(运行)状态。使CLR 从1→0→1,此时微地址寄存器清“0”,从而给出取指微指令的入口地址为000000(二进制)。按动START,启动时序电路,每按动一次启动键,读出一条微指令。

外设输入指令:0105ED82,0204C048,08041001

二进制加法指令:0105ED82,0204C048,0905ED83,0304E004,0404BO05,0505A206,06959A01

存数指令:0105ED82,0204C048,0A05ED87,0704E00D,0D068201

输出到外设指令:0105ED82,0204C048,0B05ED8E,0E04E00F,0E04A015,15070A01

无条件转移指令:0105ED82,0204C048,OC04C048,OC05ED96,1604D181

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值