计算机组成原理实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机组成原理实验报告-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII
计算机组成原理实验报告
——微程序控制器实验一.实验目的:
1.能看懂教学计算机(TH-union)已经设计好并正常运行的数条基本指令的功能、格式及
执行流程。并可以自己设计几条指令,并理解其功能,格式及执行流程,在教学计算机上实现。
2.深入理解计算机微程序控制器的功能与组成原理
3.深入学习计算机各类典型指令的执行流程
4.对指令格式、寻址方式、指令系统、指令分类等建立具体的总体概念
5.学习微程序控制器的设计过程和相关技术
二.实验原理:
微程序控制器主要由控制存储器、微指令寄存器和地址转移逻辑三大部分组成。
其工作原理分为:
1、将程序和数据通过输入设备送入存储器;
2、启动运行后从存储器中取出程序指令送到控制器去识别,分析该指令要求什么事;
3、控制器根据指令的含义发出相应的命令(如加法、减法),将存储单元中存放的操作数据取出送往运算器进行运算,再把运算结果送回存储器指定的单元中;
4、运算任务完成后,就可以根据指令将结果通过输出设备输出
三.微指令格式:
微指令由下地址字段及控制字段组成.TH—UNION教学机的微指令格式如下:
其中高八位为下地址字段.其余各位为控制字段.
1)微地址形成逻辑
TH—UNION 教学机利用器件形成下一条微指令在控制器存储器的地址.
下地址的形成由下地址字段及控制字段中的CI3—SCC控制.当为顺序执行时,下地址字段不起作用.下地址为当前微指令地址加1;当为转移指令(CI3—
0=0011)时,由控制信号SCC提供转移条件,由下地址字段提供转移地址.
2)控制字段
控制字段用以向各部件发送控制信号,使各部件能协调工作。
控制字段中各控制信号有如下几类:
①对运算器部件为了完成数据运算和传送功能,微指令向其提供了24位的控制信号,包括:4位的A、B口地址,用于选择读写的通用积存器3组3位的控制码I8-I6、
I5-I3、I2-I6,用于选择结果处置方案、运算功能、数据来源。
3组共7位控制信号控制配合的两片GAL20V8
3位SST,用于控制记忆的状态标志位
2位SCI,用于控制产生运算器低位的进位输入信号
2位SSH,用于控制产生运算器最高,最地位(和积存器)移位输入信号
②对内存储器I/O和接口部件,控制器主要向它们提供读写操作用到的全部控制信号,共3位,即MRW
③对CPU内部总线数据来源的控制,主要通过3位编码标记为DCD,来选择把哪一组数据发送到内部总线(IB)上。
④对几个特定的积存器接受输入的控制,也通过了编码C标记为D (2),用来选择允许哪个积存器接受送个它的一组数据。
四.实验内容:
1.基本实验:观察基本指令的微码
2 扩展实验:运用扩展指令,输入程序,并运行
五.综合作业:
设计一条新指令,该指令的功能是把用绝对地址表示的内存单元ADDR的内容与一个寄存器的内容相加,结果存到ADDR中,即:
[ADR] [ADR] + SR
注意:操作码选用:从1A(H)~ 1F(H)之间选择一个使用;
微地址选:从28(H)开始 ~ 2F(H)
操作步骤:
操作功
能
微址下址CI3~0 SCC3
~0
MR
W
I2~0 I8~6 I5~3 B口A口SST SSH
Sci
DC2 DC1 功能
PC→AR
PC+1→
PC
28 00
(公
共地
址)
1110 0000 100 011 010 000 010
010
000 001 011 000 读取指令
(ADR)
MEM—AR 29 1C
(指
向
ALL
语
句)
0011 0000 001 111 001 000 000
000
000 000 011 000 读内存,输出
MEM的内容
(ADR)到
AR寄存器
MEM—DR 2A 30 0011 0000 001 111 011 000 000
000
000 000 000 000 读内存,输出
MEM的内容
(ADR)到
DR寄存器
DR+SR—
DR
2B 30 0011 0000 100 001 011 000 100
100
001 000 000 000 实现加法运算
DR-MEM 2C 00
(公
共地
址)
1110 0000 100 011 010 000 010
010
000 001 011 ALL语句,返
回到内存
模拟程序:
微程序:
首地址:
实现:800为首地址
六.思考题:
1.在上面的实验中,你可发现不同指令在执行过程中都会经过相同的微地址,即不同指令的微程序有公用部分。请找出他们,并说明其工作原理
地址为00的微地址主要用于给出监控程序的首地址和禁止中断,仅在启动时启动一次
地址为01和02的指令用于读取,公用于每条指令的读取指令的操作
地址为03的微指令用于通过指令的操作码映射出这条指令特定的操作步骤的首条微指令的地址并读出这条微指令,也公用于每条指令。
对于一些指令,都要无条件转向微地址30,我们称之为A组指令,其功能都需要通过一个操作步骤完成。本指令只用到一条微指令,条件满足时则要转移,需要顺序进到下一条,把指令的转移地址微送到程序计数器PC指令中。
对于一些指令,需要两个步骤完成,且都无条件转向微地址30,我们称之为B组指令,这些指令第一步传送内存地址或者IO接口地址,第二步完成内存或者IO接口的读写过程。对于一些指令,实现的是2次内存读写,且都无条件转向微地址30,我们称之为D组指令,使用的地址是1F—22的四条微指令。
还有一些微指令,地址为30,完成中断请求的功能。
2.总结机器指令与微指令的关系
(1)一条机器指令对应一个微程序,这个微程序是由若干条微指令构成的。因此,一条机器指令的功能是若干条微指令组成的序列来实现的。简而言之,