复杂模型机设计实验

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

复杂模型机设计实验

一、 实验目的

综合运用所学计算机原理知识,设计并实现较为完整的计算机。

二、 实验设备

TDN -CM +计算机组成原理教学实验系统。

三、 数据格式及指令系统

1. 数据格式

模型机规定采用定点补码表示法表示数据,且字长为8位,其格式如下:

2.

模型机设计四大类指令共十六条,其中包括算术逻辑指令、I/O 指令、访问及转移指令和停机指令。 1) 算术逻辑指令

设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:

其中,OP -CODE 为操作码,rs 为源寄存器,rd 为目的寄存器,并规定:

9条算术逻辑指令的名称、功能和具体格式见表 2) 访存指令及转移指令

模型机设计2条访存指令――存数(STA )和取数(LDA ),2条转移指令――无条件转移(JMP )和结果为零或有进位转移指令(BZC ),这4条指令长度为

2个字节,其指令格式为:

其中,OP -CODE 为操作码,rd 为目的寄存器地址(LDA 、STA 指令使用)。D 为偏移量(正负均可),M 为寻址模式,其定义如下:

本模型机规定变址寄存器

RI 指定为寄存器R2。 3) I/O 指令

输入(IN )和输出(OUT )指令采用单字节指令,其格式如下:

其中,addr =01

时,选中“INPUT DEVICE ”中的开关组作为输入设备,addr =10时,选中“OUTPUT DEVICE ”中的数码块作为输出设备。 4) 停机指令

指令格式如下:

HALT 指令用于实现停机操作。

3. 指令系统

本模型机共有16条基本指令,其中算术逻辑指令7条,访存指令和程序控制指令4条,输入输出指令2条,其它指令1条,表列出了各条指令的格式、汇编符号、指令功能。

四、总体设计

本模型机的数据通路框图如图所示。

图1:数据通路图

根据机器指令系统的要求,设计微程序流程图及确定微地址如下:

图2:微程序流程图

根据流程图,确定如下微程序:

微程序:

$M00018108 $M0101ED82 $M0200C050 $M0300A004 $M0400E0A0 $M0500E006 $M0600A007 $M0700E0A0 $M0801ED8A $M0901ED8C $M0A00A03B $M0B018001 $M0C00203C $M0D00A00E $M0E01B60F $M0F95EA25 $M1001ED83 $M1101ED85 $M1201ED8D $M1301EDA6 $M14001001 $M15030401 $M16018016 $M173D9A01 $M18019201 $M1901A22A $M1A01B22C $M1B01A232 $M1C01A233 $M1D01A236 $M1E318237 $M1F318239 $M20009001 $M21028401 $M2205DB81 $M230180E4 $M24018001 $M2595AAA0 $M2600A027 $M2701BC28 $M2895EA29 $M2995AA0 $M2A01B42B $M2B959B41 $M2C01A42D $M2D65AB6E $M2E0D9A01 $M2F01AA30 $M300D8171 $M31959B41 $M32019A01 $M3301B435 $M3405DB81 $M35B99B41 $M360D9A01 $M37298838 $M38019801 $M3919883A $M3A019801 $M3B070A08 $M3C068A09

验证程序:

助记符机器码

IN 01, R0 $P0044

IN 01, R2 $P0146

ADC R2, R0 $P0298

MOV R0, R1 $P0381

RLC R1, R1 $P04F5

BZC 00, 00 $P050C

$P0600

五、实验步骤

1.按图连接实验线路

2.写入程序

1)手动写入

A.按如下步骤讲微代码写入微控器中的存储器2816中:

①将编程开关置为PROM(编程)状态。

②将实验板上“STA TE UNIT”中的“STEP”置为“STEP”,“STOP”置为“RUN”

状态。

③用二进制模拟开关置微地址MA5—MA0。

④在MK24-MK1开关上置微代码,24位开关对应24位显示灯,开关量置为“0”

时灯亮,开关量为“1”时灯灭。

⑤启动时序电路(按动启动按钮“START”),即将微代码写入到2816的相应地址对

应的单元中。

⑥重复①-⑤步骤,将所有的微代码写入2816中。

B.按如下步骤校验微代码

①将编程开关置为READ(校验)状态。

②将实验板上“STA TE UNIT”中的“STEP”置为“STEP”,“STOP”置为“RUN”

状态。

③用二进制模拟开关置微地址MA5—MA0。

④启动时序电路(按动启动按钮“START”),读出微代码。观察显示灯MD24-MD1

的状态(灯亮为“0”,灭为“1”),检查读出的微代码是否与写入的相同。如果不

同,则将开关置于PROM编程状态,重新执行③)即可。

C.按如下步骤使用KWE微程序进行机器指令程序的装入。

①使编程开关处于“RUN”,STEP为“STEP”状态,STOP为“RUN”状态。

②拨动总清开关CLR(0→1→0),微地址寄存器清零,程序计数器清零,然后使控制

台SWB、SW A开关置为“0 1”,并按动一次START,微地址显示灯显示“010001”。

③再按动一次START,微地址灯显示“010100”,此时数据开关的内容置为要写入的

机器指令。再按动两次START键后,即完成该条指令的写入,并且微地址显示灯

相关文档
最新文档