微程序设计实验10

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

实验五 TEC-2机微程序设计实验

一、实验目的:

1、全面掌握计算机各部件组成及相互联接关系。

2、弄懂TEC-2机各指令的执行过程。

3、学习控制器设计的具体知识,理解动态微程序设计的概念。

4、掌握扩充新指令的方法。

二、实验内容:

1、熟悉微程序调试步骤

2、设计如下新指令,自行选定指令格式和操作码,编写微程序,并测试其功能。

⑴将用绝对地址表示的内存单元A与内存单元B中的内容相加,结果存放到内存单元C

三、预习要求:

按如下要求写出预习报告:

1、确定指令格式和操作码,找出其微程序入口地址。

2、确定实现方案,画出微程序流程图。

3、编写微码,用16进制数表示。

4、确定测试方案,编写微码装入和新指令测试程序,准备测试数据、写出测试步骤。

四、实验说明:

1、TEC-2机微程序设计说明

⑴写出要实现新指令的格式与功能。包括寻址方式、地址、字长,设计该指令的微操作执行步骤。

⑵确定对应的微指令字各字段的编码。

⑶选择操作码(OP码)和微程序入口地址时查看附录1 各条指令的操作码及微程序入口地址表格。

⑷不对存储器和I/O端口操作时,/MIO、REQ、/WE的编码为10X。

⑸装入微码程序,使用特殊命令LDMC时,要求:

R1为微程序在内存中的始地址;R2为微程序指令长度;R3为微程序在控存中的入口地址。

2、装入微指令到控制存储器的两种操作方法。

⑴在程序中用LDMC指令装入微指令

具体方法见实验步骤,本实验用这种方法。

⑵通过水平板上开关手工拨入

此种方法不作要求,只作参考。

五、实验步骤:

1、通过以下实例熟悉微指令的装入、新指令的运行及测试。

例:用绝对地址表示的内存单元ADDR1的内容与内存单元ADDR2中的内容相加,结果存放到内存单元ADDR2中。

D4XX

确定指令格式:

ADDR1

ADDR2

⑴编写微程序

PC→AR,PC+1→PC;00 0E00 A0B5 5402

MEM→AR;00 0E00 10F0 0002

MEM→Q;00 0E00 00F0 0000

PC→AR,PC+1→PC;00 0E00 A0B5 5402

MEM→AR;00 0E00 10F0 0002

MEM+Q→Q;00 0E01 00E0 0000

Q→MEM,CC#=0;29 0300 1020 0010

⑵启动TEC-2机,进入监控程序状态,输入微程序到内存中。写入微码时,每条微指令的前8位补全0,补齐64位。

①用“E”命令将微码写入内存, 本例写入0900H开始的内存区域。

>E900↙

屏幕显示:(每个数值间空格键隔开,回车键结束。)

0900:0000 0E00 A0B5 5402 0000

0E00 10F0 0002 0000 0E00

00F0 0000 0000 0E00 A0B5

5402 0000 0E00 10F0 0002

0000 0E01 00E0 0000 0029

0300 1020 0010 ↙

②用“D”命令检查写入是否正确

>D900↙

屏幕显示:

0900 0000 0E00 A0B5 5402 0000 0E00 10F0 0002

0908 0000 0E00 00F0 0000 0000 0E00 A0B5 5402

0910 0000 0E00 10F0 0002 0000 0E01 00E0 0000

0918 0029 0300 1020 0010 ┉

⑶ 装入微码

将内存存放的微程序装入到控制存储器中,由专用指令LDMC完成。

①用“A”命令输入用于装入微程序的汇编程序

>A800↙

0800: MOV Rl,900 ;900:微码在内存的起始地址

R2,7 ;7:微程序长度

MOV

MOV

R3,100 ;100:微程序在控存的起始地址(为什么是“100”) LDMC ;装入微码指令

RET

②用“G”运行上述程序

>G800↙

执行后,微码便装入到起始地址为0100H的微程序控制存储器中

⑷输入验证程序,运行新指令

①用“A”命令输入程序

>A820

0820: MOV R0,0023

[A00],R0

MOV

[A01],R0

MOV

0826: NOP

NOP

NOP

0829: RET

②用“E”命令将NOP填充位置改为新指令码

>E826↙

屏幕显示:

0826:

之后输入:

D400 0A00 0A01↙

③用“U”命令查看输入的程序

>U820↙

屏幕显示:

0820: 2C00 0023 MOV R0,0023

0822: 3400 0A00 MOV [0A00],R0

0824: 3400 0A01 MOV [0A01],R0

D400 DW D400

0826:

0A00 ADC R0,R0

0827:

0828:

0A01 ADC R0,R1

AC00 RET

0829:

④用“G”命令执行验证程序

>G820↙

思考:

① 上面提到的NOP指令的作用是什么?

②在“A”命令下能否直接输入新指令?为什么?

⑸观察运算结果

由“D”命令检查 0A00、0A01单元内容

>DA00↙

屏幕显示:

0A00 0023 0046 ┉

0A01单元内容为 0046,结果正确。

验证结果时要多给几组数据,最好2~5组数据。

2、按要求完成实验内容中相关题目,如果时间不够可利用开放时间调试。

六、本次实验报告要求:

本实验为综合设计实验,实验报告的内容要全面。实验报告要求如下:

1、写出实验目的、实验器材。

2、实验内容包括新指令的格式及相应的微程序,对每一条微指令都要加注释。

3、实验步骤要写出新指令的装入、运行及测试过程,特别要说明测试过程。

相关文档
最新文档