当前位置:文档之家› 计算机组成原理课设(多寄存器减法、右移位、输入输出、转移指令实验计算机设计)

计算机组成原理课设(多寄存器减法、右移位、输入输出、转移指令实验计算机设计)

目录1课设目的 (1)2课设内容 (1)3课设计算机的设计 (1)3.1设计整机逻辑框图 (1)3.2指令系统的设计 (3)3.3微指令的格式设计及微操作控制部件的组成原理 (6)3.4微程序设计 (9)3.5编写调试程序 (12)3.6编写实验程序 (14)4实验计算机的组装 (15)5、实验计算机的调试 (18)5.1.调试前准备 (18)5.2.程序调试过程 (18)5.3调试结果 (19)5.4出错和故障分析 (21)5.4.1出错分析 (21)5.4.2故障分析查找 (21)5.4.3确认是否属故障 (22)5.4.4正确判断故障原因 (22)6心得体会 (22)7参考文献 (22)1课设目的(1)组成一个复杂的计算机整机系统—模型机,输入程序并运行;(2)了解微程序控制器是如何控制模型机运行的,掌握整机动态工作过程;(3)定义几条机器指令,编写相应微程序并具体上机调试.(4)完成多寄存器算术减法\右移位\输入输出\转移指令实验计算机设计。

2课设内容利用EL-JY-II型计算机组成原理实验仪提供的硬件资源,通过设计(包括整机结构设计、指令设计、微程序设计、微指令设计、调试程序设计等)、组装、调试三个步骤完成台微程序控制的简单实验计算机的研制。

完成多寄存器算术减法\右移位\输入输出\转移指令实验计算机设计。

3课设计算机的设计3.1设计整机逻辑框图本系统的结构组成为:1.基板:本部分是8位机和16位机的公共部分,包括以下几个部分:数据输入和输出,显示及监控,脉冲源及时序电路,数据和地址总线,外设控制课设电路,单片机控制电路和键盘操作部分,与PC机通讯的接口,主存储器,电源,CPLD课设板(选件),自由课设区(面包板)。

2.CPU板:本板分为8位机和16位机两种,除数据字长分别为8位和16位以外,都包括以下几个部分:微程序控制器,运算器,寄存器堆,程序计数器,指令寄存器,指令译码电路,地址寄存器,数据、地址和控制总线。

运算器:由算术逻辑单元(ALU)、累加寄存器、数据缓冲寄存器、和状态条件寄存器组成,它是数据加工处理部件。

相对控制器而言,运算器接受控制器的命令而进行动作,即运算器所进行的全部操作都是有控制器发出的控制信号来指挥的,所以它是执行部件.存储器:是保存或“记忆”解题的原始数据和解题步骤。

在运算前需要把参加运算的数据和解题步骤通过输入设备送到存储器中保存。

微程序控制器:控制部件通过控制线向执行部件发出各种控制命令,通常把这种控制命令叫做微命令,而执行部件接受命令后的操作叫做微操作。

1地址寄存器:用来保存当前CPU所访问的内存单元地址。

程序计数器:CPU能确定下一条指令的地址来保证程序能够连续地执行下去指令寄存器:指令寄存器用来保存当前正在执行的一条指令。

当执行一条指令时,先把它从内存取到缓冲寄存器中,然后再传到指令寄存器。

指令划分为操作码和地址码字段,由二进制数构成,为了执行任何给定的指令,必须对操作码进行测试P1,通过节拍脉冲的控制以便识别所要求的操作。

“指令译码器”根据指令中的操作码译码强置微控器单元的微地址,使下一条微指令指向相应的微程序首地址。

输入设备:能把人们用文字或语言所能表达的问题直接到计算机内部处理。

输出设备:把计算机处理的结果变换为人或其他机器设备所能接收和识别的信息形式。

本系统有两种外部I/O设备,一种是二进制代码开关,它作为输入设备;另一种是数码管,它作为输出设备。

输入时,二进制开关数据直接经过三态门送到数据总线上,只要开关状态不变,输入的信息也不变。

输出时,将输出数据送到外部数据总线上,当写信号(W/R)有效时,将数据打入输出锁存器,驱动数码管显示。

整机逻辑框图如图1.1所示:23图3.1 模型及结构框图3.2指令系统的设计(1)算术逻辑指令控制信号)算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址其格式如表3.1所示:表3.1 算术逻辑指令格式其中OP_CODE为操作码,rs为源寄存器,rd为目的寄存器,并规定如表3.2所示:表3.2 选定寄存器(2)访问及转移指令本机设计有2条访问指令,即存数(STA)、取数(LDA),1条转移指令,即无条转移(JMP)、指令格式表3.3所示表3.3 访存及转移指令格式其中OP-CODE为操作码,rd为目的寄存器地址(LDA、STA指令使用)。

D为位移量(正负均可),M为寻址模式,其定义见表3.4所示表3.4 寻址模式本机规定变址寄存器RI指定为寄存器R2。

(3)I/O指令输入(IN)和输出(OUT)指令采用单字节指令,其格式如表3.5:表3.5 I/O指令格式4其中,addr=01时,选中“数据输入电路”中的开关组作为输入设备,addr=10时,选中“输出显示电路”中的数码管作为输出设备。

各指令系统主要功能参如表3.6所示:表3.6 各指令系统主要功能算术运算指令:SUB R0,R2指令功能:rs-rd→rd指令格式如表3.7所示:表3.7 SUB指令格式机器码:10100010RRC R2,R0指令功能:rs的值带进位循环右移一位→rd指令格式如表3.8所示表3.8 RRC指令格式机器码:1110100输入输出指令:IN #DATA R05IN #DATA R2指令功能:DATA→rd指令格式如表3.9所示:表3.9 IN指令格式机器码:IN #DATA R0 01000100IN #DATA R2 01000110OUT #DATA R0指令功能:Ri的值→LED输出指令格式如表3.10所示表3.10 OUT指令格式机器码:01011000转移指令:JMP 00H指令功能:ADDR→PC指令格式如表3.11所示表3.11 JMP指令格式机器码:000010003.3微指令的格式设计及微操作控制部件的组成原理系统设计的微指令采用水平型微指令格式,字长共24位,其控制位顺序如表3.12所示:表3.12 控制位的顺序其中前18位为操作控制字段和测试字段。

uA5-uA0为6位的下地址字段微地址。

微指令中个控制位的含义如下:S3、S2、S1、S0、M、Cn是控制运算器的逻辑和算术运算的微命令,如图3.13所示表3.13 控制运算器的逻辑和算术的微命令WE是写内存的微命令,状态“1”有效。

1A、1B是输入电路选通、内存RAM选通、输出LED选通控制微命令,分别对应状态“11”、“10”、“01”。

状态“00”为无效。

F1、F2、F3为三个译码字段,分别由三个控制位经指令译码电路74138译码输出8种状态,前7种状态分别对应一组互斥性微命令中的一个,状态“111”为无效。

F3字段包含P1- P4四个测试字位。

其功能是根据机器指令代码及相应微指令代码进行译码测试,使微程序转入相应的微地址入囗,从而实现微程序的顺序、分支、循环运行。

F1、F2、F3三个字段的编码方案如表3.14所示表3.14 F1,F2,F3三个字段的编码方案表7其中微命令LDRi表示写寄存器操作。

微命令LOAD表示程序计数器PC写操作。

微命令LDR2表示数据暂存器LT2写操作。

微命令LDR1表示数据暂存器LT1写操作。

微命令LAR表示地址寄存器AR写操作。

微命令LDIR表示指令寄存器写操作。

微命令RAG表示源寄存器读操作。

微命令ALU-G表示运算器输出操作。

微命令RCG表示目的寄存器读操作。

微命令PC-G表示程序计数器PC读操作。

微命令LPC表示程序计数器PC选通操作。

微命令299-G表示移位寄存器读写操作。

微命令RBG表示变址寄存器读操作。

确定微程序控制方式微程序入口地址形成方法采用多路转移方式,根据判别测试条件,通过微地址形成电路使微程序转入相应的微地址入口。

本系统有3个判别测试位:P4判别测试位是根据指令译码输入CA1、CA2的状态为测试条件,通过修改下地址字段微地址的μA0、μA1位产生3路分支转移,使微程序分别转移到写机器指令、读机器指令、和执行机器指令三种状态的微程序的入口。

P1判别测试位是根据指令中的前4位操作码IR7、IR6、IR5、IR4的状态为测试条件,通过修改下地址字段微地址的μA3、μA2、μA1、μA0位产生16路分支转移,使微程序分别转移到IN指令、ADD指令、MOV指令、OUT指令、RRC指令等16条机器指令执行阶段的微程序的入口。

P2判别测试位是根据指令中的2位操作码IR3、IR2的状态为测试条件,通过修改下地址字段微地址的μA1、μA0位产生4路分支转移,使微程序分别转移到LDA指令、STA指令、BZC指令和JMP指令4条机器指令执行阶段的微程序的入口。

微程序顺序控制方法微程序顺序控制方式也即微程序执行过程中下一条微指令地址的确定方式。

常用的有两种方式:计数增量方式和“下地址场”断定方式。

8计数增量方式是指微程序在执行过程中,通过微程序控制部件中的微地址计数器MPC增量计数,来产生下一条微指令地址。

因此,采用这种方式的微指令格式中可以不设置“下地址场”字段,微程序存储在控存的若干个连续单元中。

“下地址场”断定方式是指微程序在执行过程中,通过微程序控制部件中的微地址形成电路,直接接受微指令中“下地址场”字段的信息,来产生下一条微指令地址。

因此,采用这种方式的微指令格式中设有“下地址场”字段,一条机器指令所对应的微程序在控存中可以不连续存放。

本实验计算机的顺序控制是采用“下地址场”断定方式。

无论是在微程序的顺序执行过程中,还是最后一条微指令执行结束之后进入下一条机器指令的取指过程,都是由微指令中“下地址场”字段的微地址,通过微程序控制部件中的微地址形成电路,直接来产生下一条微指令地址。

微程序控制部件组成结构示意图如图3.2所示。

图3.2 微程序控制部件组成结构示意图3.4微程序设计画出每条机器指令所对应的微程序流程图,并标出每条微指令中所使用的微操作命令输入指令IN的程序流程图如图3.3所示:9图3.3 IN指令的程序流程图输出指令OUT的程序流程图如图3.4所示:图3.4 OUT指令的程序流程图转移指令JMP得逞醋溜程序图如图3.5所示:10图3.5 JMP的程序流程图算术运算指令RRC的程序流程如图3.6所示图3.6 RRC的程序流程图11算术运算指令SUB的程序流程图如图3.7所示图3.7 SUB的程序流程图3.5编写调试程序根据指令执行流程和微指令格式,编写各指令对应的微程序中每条微指令的编码(分别写出2进制和16进制编码)IN指令的编码如表3.15所示:表3.15 IN指令的编码12OUT指令的编码如表3.16所示:表3.16 OUT指令的编码SUB指令的编码如表3.17所示:表3.17 SUB的编码RRC指令的编码如表3.18所示;表3.18 RRC的编码13JMP指令的编码如表3.19所示:表3.19 JMP指令的编码3.6编写实验程序使用各指令编写一段实验程序(用汇编语言写出程序、及程序中每条指令的机器码,即16进制编码和在内存中的存放地址)。

相关主题