存数等指令实验计算机设计文档格式.docx
- 文档编号:19483851
- 上传时间:2023-01-06
- 格式:DOCX
- 页数:25
- 大小:232.86KB
存数等指令实验计算机设计文档格式.docx
《存数等指令实验计算机设计文档格式.docx》由会员分享,可在线阅读,更多相关《存数等指令实验计算机设计文档格式.docx(25页珍藏版)》请在冰豆网上搜索。
具体要求如下:
1、掌握实验计算机的整机结构。
熟悉实验计算机的组装和调试方法。
2、设计如下几条机器指令的格式,指令格式可以采用单字长或双字长设计。
输入输出指令:
IN#DATA,R0(功能DATA->
R0)
OUTADDR(功能(ADDR)->
LED输出)
算术减法运算指令:
SUBR0,ADDR(功能R0-(ADDR)->
带进位右移位运算指令:
RRCR0(功能R0的值带进位循环右移一位->
存数指令:
STAR0,ADDR(功能R0->
ADDR)
转移指令:
JMPADDR(功能ADDR->
PC)
3、设计微指令的格式,编写上述每条机器指令所对应的微程序,并上机调试。
4、通过如下程序的编写调试,验收机器指令、微指令、微程序的设计结果。
IN#data,R0
SUBR0,addr1
RRCR0
STAR0,addr2
OUTaddr2
JMP00H
Addr1:
XX
Addr2:
1.2设计设备
EL-JY-II型计算机组成原理实验系统一套,排线若干。
1.3实验计算机结构设计
1.运算器又是由299,74LS181完成控制信号功能的算逻部件,暂存器LDR1,LDR2,及三个用
用寄存器R0,R1,R2等组成。
具体来说,运算器ALU由U7--U10四片74LS181构成,暂存器
1由U3、U4两片74LS273构成,暂存器2由U5、U6两片74LS273构成。
微控器部分控存由
U13--U15三片2816构成。
除此之外,CPU的其他部分都由EP1K10集成。
相对控制器而言,
运算器接受控制器的命令而进行动作,即运算器所进行的全部操作都是有控制器发出的控制
信号来指挥的,所以它是执行部件。
2.控制器由程序计数器PC、指令寄存器、地址寄存器、时序电路、控制存储器及相应的译码电路组成。
存储器部分由两片6116构成16位存储器,地址总线只有低八位有效,因而其存储空间为00H--FFH。
3.存储器RAM是通过CE和W/R两个微命令来完成数据和程序的的存放功能的。
在运算前需要把
参加运算的数据和解题步骤通过输入设备送到存储器中保存。
4.输入设备是由置数开关SW控制完成的,能把人们用文字或语言所能表达的问题直接到计算机
内部处理。
5.输出设备有两位LED数码管和W/R控制完成的输出设备由底板上的四个LED数码管及其译码、驱动构成,当D-G和W/R均为低电平时将数据总线的数据送入数码管显示。
在开关方式下,输入设备由16位电平开关及两个三态缓冲芯片74LS244构成,当DIJ-G为低电平时将16位开关状态送上数据总线。
在键盘方式或联机方式下,数据可由键盘或上位机输入,然后由监控程序直接送上数据总线,因而外加的数据输入电路可以不用。
把计算机处理的结果变换为人或其他机器设备所能接收和识别的信息形式。
此实验计算机是由运算器,控制器,存储器,输入设备,输出设备五大部分组成,其结构图
如图1.1所示。
数据总线(D_BUS)
74299
LPC
299-G
程序计数器PC
ALU-G
LOADPC-G
MCNALUS3S2S1S0
数据暂存器LT1数据暂存器LT2LAR地址寄存器
地址总线(ADDR_BUS)
LDR1LDR2存储器(MEM)READ
WRITE
寄存器R0微控器脉冲源及时序
LDR0R0-G指令寄存器
C-GLDIR
输入设备W/R
控制门输出设备
数据D-G
控制信号
图1-1模型机结构框图
本系统的数据总线为16位,指令、地址和程序计数器均为8位。
当数据总线上的数据打入指
令寄存器、地址寄存器和程序计数器时,只有低八位有效。
1.4指令系统的设计
指令助记符、指令功能、指令编码如下:
1)输入指令:
IN#DATA,R0
指令功能:
#DATA→R0
指令代码:
00000000
2)减法指令:
SUBADDR,R0
R0-ADDR->
R0
00000001XXXXXXXX
3)带符号右移运算:
RRCR0
指令功能:
R0的值带进位循环右移一位->
指令格式:
00000100
4)转移指令:
JMPADDR
ADDR->
PC
00001001XXXXXXXX
5)存数指令:
STAADDR,R0
R0->
ADDR
指令格式:
00000101XXXXXXXX
6)输出指令:
OUTADDR,R0
ADDR->
LED
指令格式:
00000111
1.5微指令的格式设计及微操作控制部件的组成原理
1.5.1微指令格式
本系统设计的微指令字长共24位,其控制位顺序如下表1-1所示。
表1-1微指令格式
24
23
22
21
20
19
18
17
16
151413
121110
987
6
5
4
3
2
1
S3
S2
S1
S0
M
Cn
WE
1A
1B
F1
F2
F3
uA5
uA4
uA3
uA2
uA1
uA0
其中uA5-uA0为6位后续地址,F1,F2,F3为三个译码字段,分别由三个控制位译出多位,S3~S0为选择运算,M为逻辑算数操作选择,Cn表示有无进位,WE是读写控制,1A和1B控制规则如下:
两者均为00时为无操作,01是输出LED选通控制,10是内存RAM选通控制,11是输入电路选通控制。
1.5.2微操作控制信号功能
S3、S2、S1、S0、M、CN是控制运算器的逻辑和算术运算的微命令。
WE是写内存的微命令,状态“1”有效。
1A、1B是输入电路选通、内存RAM选通、输出LED选通控制微命令,分别对应状态“11”、“10”、“01”。
状态“00”为无效。
F1、F2、F3为三个译码字段,分别由三个控制位经指令译码电路74138译码输出8种状态,前7种状态分别对应一组互斥性微命令中的一个,状态“111”为无效。
F3字段包含P1-P4四个测试字位。
其功能是根据机器指令代码及相应微指令代码进行译码测试,使微程序转入相应的微地址入囗,从而实现微程序的顺序、分支、循环运行。
F1、F2、F3三个字段的编码方案如表1-2所示。
表1-2译码字段编码
F1字段
F2字段
F3字段
选择
000
LDRi
RAG
P1
001
LOAD
ALU-G
AR
010
LDR2
RCG
P3
011
自定义
100
LDR1
RBG
P2
101
LAR
PC-G
110
LDIR
299-C
P4
控制操作为P4测试,它以CA1、CA2作为测试条件,出现了写机器指令、读机器指令和运行机器指令3路分支,占用3个固定微地址单元。
当分支微地址单元固定后,剩下的其它地方就可以一条微指令占用控存一个微地址单元随意填写。
其中微命令LDRi表示写寄存器操作;
微命令LOAD表示程序计数器PC写操作;
微命令LDR2表示数据暂存器LT2写操作;
微命令LDR1表示数据暂存器LT1写操作;
微命令LAR表示地址寄存器AR写操作;
微命令LDIR表示指令寄存器写操作;
微命令RAG表示源寄存器读操作;
微命令ALU-G表示运算器输出操作;
微命令RCG表示目的寄存器读操作;
微命令PC-G表示程序计数器PC读操作;
微命令LPC表示程序计数器PC选通操作;
微命令299-G表示移位寄存器读写操作;
微命令RBG表示变址寄存器读操作。
机器指令的执行过程如下:
首先将指令在外存储器的地址送上地址总线,然后将该地址上的指令传送至指令寄存器,这就是“取指”过程。
之后必须对操作码进行P1测试,根据指令的译码将后续微地址中的某几位强制置位,使下一条微指令指向相应的微程序首地址,这就是“译码”过程。
然后才顺序执行该段微程序,这是真正的指令执行过程。
在所有机器指令的执行过程中,“取指”和“译码”是必不可少的,而且微指令执行的操作也是相同的,这些微指令称为公用微指令。
1.5.3微程序的控制方式设计
微程序顺序控制方式指在一条指令对应的微程序执行过程中,下一条微指令地址的确定方式,又叫后继地址生成方式,常见的有计数增量方式和断定方式。
计数增量方式的特点是微程序控制部件中的微地址中的微地址产生线路主要是微地址计数器MPC,MPC的初值由微程序首地址行成线路根据指令操作码编码形成,在微程序执行过程中计数增量计数产生下一条微指令地址,这使得微指令格式中可以不设置下地址场。
缩短微指令长度,也使得微程序控制部件较简单。
但微程序必须存放在控存若干连续单元中。
断定方式的特点是微指令中设有下地址场,它指出下条微指令的地址,这使一条指令的微程序中微指令在控存中不一定要连续存放。
在微指令执行过程中,微程序控制部件微地址形成电路直接接受微指令下地址场信息产生下一条微指令地址,微程序的首址也由此微地址形成线路根据指令操作码产生,所以本次微程序顺序控制方式采用断定方式。
1.5.4微程序控制部件组成原理
微程序控制部件组成原理图如图1-2所示。
图1-2微程序控制原理图
其主要由控制存储器、微指令寄存器、地址转移逻辑三部分构成,具体工作原理说明如下文所
述。
(1)控制存储器
控制存储器用来存放实现全部指令系统的微程序,它是一种只读型存储器。
一旦微程序固化,机器运行则只读不写。
其工作过程是:
每读出一条微指令,则执行这条微指令;
接着又读下一条微指令……。
读出一条微指令并执行微指令的时间总和称为一个微指令周期。
通常,在串行方式的微程序控制器中,微指令周期就是只读存储器的工作周期。
控制存储器的字长就是微指令的长度,其存储容量视机器指令系统而定,即取决于微程序的数量。
对控制存储器的要求是速度快,读出周期要短。
(2)微指令寄存器
微指令寄存器用来存放控制存储器读出的一条微指令信息。
其中微地址寄存器决定将要访问的下一条微指令的地址,而微命令寄存器则保存一条微指令的操作控制字段和判别字字段信息。
(3)地址转移逻辑
在一般情况下,微指令由控制存储器读出后直接给出下一条微指令的地址,通常我们简称微地址,这个微地址信息就存放在微地址寄存器中。
如果微程序不存在不出现分支,那么下一条微指令的地址就直接由微地址寄存器给出。
当微程序出现分支时,意味着微程序出现条件转移。
在这种情况下,通过判别测试字段P和执行部件的“状态条件”反馈信息,去修改微地址寄存器的内容,并按改好的内容去读下一条微指令。
地址转移逻辑就来承担自动完成修改微地址的任务。
1.6微程序设计
1.6.1微指令流程图
微指令流程图如图1-3所示。
开始
01
PCAR,PC+1
02
RAMD_BUSIR
45
P
(1)测试
INADDSTAOUTJMPRRRRC
20212223242526
D_INPUTR0PCARPCARPCARPCARR0299R0299
01PC+1PC+1PC+1PC+1
030731343537
RAMD_BUSRAMD_BUSRAMD_BUSRAMD_BUS右环移带进位
D_BUSARD_BUSARD_BUSARD_BUSPC右环移
0417323640
RAMD_BUSR0D_BUSRAMD_BUS01299R0299R0
D_BUSLT2D_BUSRAMD_BUSLT1
05330101
R0LT101LT1LED
06
(LT1)-(LT2)R001
图1-3微指令流程图
实验台控制流程图如图1-4所示。
控制开关
00
10
P(4)测试
MWE(10)MRD(00)RUN(11)
PCAR,PC+111PCAR,PC+11013
(D_INPUT)D_BUSLT114RAMD_BUSLT11201
LT1RAM15LT1LED16
图1-4实验台控制流程图
1.6.2微程序中各微指令的二进制编码,十六进制编码
下表为根据微程序流程图设计的各指令二进制微代码表
(1)IN#DATA,R0输入指令微代码表如表1-3所示。
表1-3输入指令微代码表
微地址
S3S2S1S0MCNWE1A1B
UA5…UA0
000001
000000000
101
000010
000000010
110
111
100101
000
010000
000000011
(2)SUBR0,addr1减法指令微代码如表1-4所示。
表1-4减法指令微代码表
010001
000011
000100
010
000101
100
000110
011000000
001
(3)RRCR0带符号右位移指令微代码如表1-6所示。
表1-6带进位右移位指令微代码表
011000
010110
001100000
100011
011111
001010000
100000
(4)STAR0,addr2存数指令微代码如表1-7所示。
表1-7存数指令微代码表
010010
000111
001111
0000001
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 指令 实验 计算机 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)