计算机组成与结构实验四,《计算机组成与结构》实验报告4.doc

《计算机组成与结构》实验报告实验项目组合逻辑控制器部件教学实验实验编号2280110804学号2011222223姓名弥沛成绩1 .实验目的:

通过看懂教学计算机中已经设计好并正常运行的几条典型指令(例如,ADD、SHR、OUT、MVRD、JRC、RET、CALA 等指令)的功能、格式和执行流程,然后自己设计几条指令的功能、格式和执行流程,并在教学计算机上实现、调试正确。其最终要达到的目的是:

(1). 深入理解计算机控制器的功能、组成知识;

(2). 深入地学习计算机各类典型指令的执行流程;

(3). 对指令格式、寻址方式、指令系统、指令分类等建立具体的总体概念;

(4). 学习组合逻辑控制器的设计过程和相关技术。

2.实验内容:

(1). 完成控制器部件的教学实验,主要内容是由学生自己设计几条指令的的功能、格式和执行流程,并在教学计算机上实现、调试正确。

(2). 首先是看懂 TEC-2000 教学计算机的功能部件组成和线路逻辑关系,然后分析教学计算机中已经设计好并正常运行的几条典型指令(例如,ADD、SHR、OUT、MVRD、JRC、CALA、RET 等指令)的功能、格式和执行流程。

(3). 设计几条指令的功能、格式和执行流程,并在教学计算机上实现、调试正确。例如 ADC、JRS、JRNS、LDRA、STOR、JMPR 等指令,可以从《TEC-2000 教学计算机系统技术说明与实验指导》第二章给出的19 条扩展指令中任意选择,当然也可以设计与实现其它的指令,包括原来已经实现的基本指令(要变换为另外一个指令操作码)或自己确定的指令。

(4). 单条运行指令,查看指令的功能、格式和执行流程。先将教学机左下方的 5 个拨动开关置为11101,再按一下“RESET”按键,然后通过16 位的数据开关(SWH、SWL)置入指令,按“START”按键单步送脉冲,通过指示灯观察控制信号的变化。

(5). 用监控程序的 A、E(扩展指令必须用E 命令置入)命令编写一段小程序,观察运行结果。

3、实验步骤

(1). 接通教学机电源;

(2). 将教学机左下方的 5 个拨动开关置为11101(单步、手动置指令、组合、16 位、联机);

(3). 按一下“RESET”按键;

(4). 通过 16 位的数据开关SWH、SWL 置入指令操作码;

(5). 在单步方式下,通过指示灯观察各类基本指令的节拍。

1)选择基本指令的A 组指令中的ADD 指令,观察其节拍流程;

2)选择基本指令的 B 组指令中的PUSH 指令,观察其节拍流程;

3) 选择基本指令的 D 组指令中的CALA 指令,观察其节拍流程;

(6). 在单步方式下,通过指示灯观察各类扩展指令的节拍(扩展指令的节拍,在出厂时的TIMING GAL 中已实现,但其控制信号需用户来扩展实现,这一步,只是来观察扩展指令的节拍。请参看《TEC-2000 教学计算机系统技术说明与实验指导》第二章中提供的指令流程表和指令流程框图)。

1) 选择扩展指令的 A 组指令中的RCR 指令,观察其节拍流程;

2) 选择扩展指令的 C 组指令中的LDRA 指令,观察其节拍流程;

3) 选择扩展指令的 D 组指令中的IRET 指令,观察其节拍流程。

7.单步方式下,通过指示灯观察各类基本指令的控制信号。

1)选择基本指令的 A 组指令中的SHR 指令,观察其执行过程中控制信号的变化,分析其作用。

<1>置拨动开关 SW00010000;(表示指令SHR R1)

<2>先按“RESET”按键;再连续按“START”按键,观察每一步的节拍及控制信号如下表:

2) 选择基本指令的 B 组指令中的JMPA 指令,观察其执行过程中控制信号的变化,分析其作用。

3)选择基本指令的 D 组指令中的CALA 指令,观察其执行过程中控制信号的变化,分析其作用。

7. 在以上几步实验的基础上,选择几条扩展指令,将其控制信号的逻辑表达式写入 7 片GAL中(在教学机左上方,当系统工作在组合逻辑控制器方式时,用来为扩展指令提供控制信号)。

8. 单步方式下,通过指示灯观察上面扩展的几条扩展指令的控制信号是否与设计的一致。

1) 观察 A 组指令中的ADC 指令;

2) 观察 A 组指令中的JRS 指令;

3) 观察 A 组指令中的STC 指令,每一步的节拍及控制信号如下表。

4) 观察 A 组指令中的JMPR 指令,每一步的节拍及控制信号如下表。

5) 观察 C 组指令中的LDRX 指令,每一步的节拍及控制信号如下表。

6) 观察 C 组指令中的STRX 指令:

9.用教学机已实现的基本指令和扩展的

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
A基本指令 ADD、SUB、AND、OR、XOR、CMP、TEST、MVRR、DEC、INC、SHL、SHR、 JR、JRC、JRNC、JRZ、JRNZ 扩展指令 ADC、SBB、RCL、RCR、ASR、NOT、CLC、STC、EI、CI、JRS、 JRNS、JMPR B基本指令 JMPA、LDRR、STRR、PUSH、POP、PSHF、POPF、MVRD、IN、OUT、RET C:扩展指令 CALR、LDRA、STRA、LDRX、STRX D基本指令 CALA 扩展指令 IRET 这种分类办法,是为了突出指令执行步骤的划分结果,有利于讲解控制器设计技术。 A指令完成的是通用寄存器之间的数据运算或传送,或其它几项特殊的操作,在取指之后可一步完成。 B指令完成的是一次内存或I/O读、写操作,在取指之后可两步完成,第一步把要使用的地址传送到地址寄存器AR,第二步执行内存或I/O读、写操作。 C指令在取指之后可三步完成,其CALR指令在用两步完成一次写内存之后,第三步执行寄存器之间的数据传送;而其它指令在第一步置地址寄存器AR,第二步读内存(即取得一个内存单元的地址)并传送到地址寄存器AR,第三步执行另外一次读、写内存的操作。 D指令完成的是两次读、写内存操作,在取指之后可步完成。 十六位的教学机系统,实现了上面4的29条基本指令,用于支持教学机的监控程序和简单的汇编语言程序设计。保留了其余19条扩展指令,供学生在教学实验进行扩展,即完成对这些指令的设计与调试,当然,还可以扩展另外一些指令。 为了支持汇编语言程序设计,每一条指令分配了一个汇编语句名,其命名规则是: 用一个英文单词或其缩写形式(2~4个字母)给出一个汇编语句名,例如ADD、SUB、MVRR、MVRD、JR、JMPA、STRX等; 其的1~2个字母可能涉及到操作数寻址方式,具体规定如下: 用R代表寄存器寻址,例如ADD R0,R1 语句表示 R0←R0+R1;MVRR R0,R1语句表示把寄存器R1的内容传送到寄存器R0;在R字母两侧加上方括号,代表寄存器间接寻址,例如STRR [R8],R9 语句表示把R9的内容传送到以寄存器R8的内容为地址的内存单元之; 用D表示立即数寻址,例如MVRD R3,1234 语句表示 R0←立即数1234; 用X表示变址寻址,例如 LDRX R1,12[R2] 语句表示把变址寄存器R2的内容与变址偏移量12相加作为内存地址,进行读操作,读出的数据传送的寄存器R1; 用A表示直接地址寻址,例如 JMPA 2008 语句表示转移到2008单元之处, STRA [2000], R2 语句表示把R2的内容写入到地址为2000的内存单元之。 §1.2.1 基本指令汇总表

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值