复杂试验计算机组成及加法右移指令程序设计Word文件下载.docx
- 文档编号:20409360
- 上传时间:2023-01-22
- 格式:DOCX
- 页数:27
- 大小:557.48KB
复杂试验计算机组成及加法右移指令程序设计Word文件下载.docx
《复杂试验计算机组成及加法右移指令程序设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《复杂试验计算机组成及加法右移指令程序设计Word文件下载.docx(27页珍藏版)》请在冰豆网上搜索。
3.2程序调试过程19
3.3结果分析20
4心得体会20
5参考文献20
1实验计算机的设计
1.1整机逻辑框图
图1.1逻辑框图
1.2指令系统的设计
本实验共有14条基本指令,其中算术逻辑指令8条,访问内存指令和程序控制指令4条。
输入输出指令2条。
表8-1列出了各条指令的格式、汇编符号和指令功能。
表1.1
汇编符号
指令的格式
功能
MOVrd,rs
ADDrd,rs
SUBrd,rs
1000rsrd
1001rs rd
1010rsrd
rsrd
rs+rdrd
rd-rsrd
INCrd
ANDrd,rs
NOTrd
RORrd
1011rdrd
1100rsrd
1101rdrd
1110rdrd
rd+1rd
rs∧rdrd
rdrd
rd
ROLrd
1111rdrd
MOV[D],rd
001000rd
D
rd[D]
MOVrd,[D]
001001rd
D
[D]rd
MOVrd,D
000001rd
Drd
JMPD
0000 10 00
D
D PC
INrd,KIN
OUTDISP,rd
010010rd
010001rd
KINrd
rdDISP
1.3微指令的格式设计及微操作控制部件的组成原理
1.3.1微指令编码的格式设计
1、数据格式:
本实验计算机采用定点补码表示法表示数据,字长为16位,其格式如下:
15
1413……..0
符号
尾数
其中第16位为符号位,数值表示范围是:
-32768≤X<
32767。
2、指令格式:
1)算术逻辑指令
设计9条单字长算术逻辑指令,寻址方式采用寄存器直接寻址。
其格式如下:
7654
32
10
OP-CODE
rs
rd
其中OP-CODE为操作码,rs为源寄存器,rd为目的寄存器,并规定:
0111
1000
1001
1010
1011
1100
1101
1110
1111
指令
CLR
MOV
ADD
SUB
INC
AND
NOT
ROR
ROL
Rs或rd
选定寄存器
00
Ax
01
Bx
10
Cx
9条算术逻辑指令的名称、功能和具体格式见表8-2。
2)存储器访问及转移指令
存储器的访问有两种,即存数和取数。
它们都使用助记符MOV,但其操作码不同。
转移指令只有一种,即无条件转移(JMP)。
指令格式如下:
76
54
M
D
其中OP-CODE为操作码,rd为寄存器。
M为寻址模式,D随M的不同其定义也不相同,如下表所示:
指令说明
写存储器
读存储器
转移指令
寻址模式M
有效地址E
D定义
说明
E=(PC)+1
立即数
立即寻址
E=D
直接地址
直接寻址
11
E=100H+D
扩展直接寻址
注:
扩展直接寻址用于面包板上扩展的存储器的寻址。
3)I/O指令
输入(IN)和输出(OUT)指令采用单字节指令,其格式如下:
addr
其中,当OP-CODE=0100且addr=10时,从“数据输入电路”中的开关组输入数据;
当OP-CODE=0100且addr=01时,将数据送到“输出显示电路”中的数码管显示。
本系统设计的微程序字长共24位,其控制位顺序如下:
24
23
22
21
20
19
18
17
16
151413
121110
987
6
5
4
3
2
1
S3
S2
S1
S0
Cn
WE
1A
1B
F1
F2
F3
uA5
uA4
uA3
uA2
uA1
uA0
F1、F2、F3三个字段的编码方案如表8-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
LPC
110
LDIR
299-G
P4
111
无操作
1.3.2微操作控制信号设计
设计三个控制操作微程序:
存储器读操作(MRD):
拨动清零开关CLR对地址、指令寄存器清零后,指令译码输入CA1、CA2为“00”时,按“单步”键,可对RAM连续读操作。
存储器写操作(MWE):
拨动清零开关CLR对地址、指令寄存器清零后,指令译码输入CA1、CA2为“10”时,按“单步”键,可对RAM连续写操作。
启动程序(RUN):
拨动开关CLR对地址、指令寄存器清零后,指令译码输入CA1、CA2为“11”时,按“单步”键,即可转入到第01号“取指”微指令,启动程序运行。
注:
CA1、CA2由控制总线的E4、E5给出。
键盘操作方式时由监控程序直接对E4、E5赋值,无需接线。
开关方式时可将E4、E5接至控制开关CA1、CA2,由开关来控制。
表1.2
指令助记符
控制信号
取指
微指令
PCO,BI
RC,B2,B3,CI,GI
P+1,CK
MLD
ADDrd,rs
LDR1,LDR2,LT1,LT2
SUBrd,rs
ANDA,Ai
OB,CC,CG
RR,A,B,CT,OT,
Cn,M,,S3,S2,S1,S0,
X0,X1,CA,SA,SB,CP
ORA,Ai
X0,X1,CA,
SA,SB,CP
XORA,Ai
NOTA
OB,CT,OT,
Cn,M,S3,S2,S1,S0,
X0,X1,CA
DECAi
A,B,RR,CT,OT
Cn,M,S3,S2,S1,S0
OB,A,B,WR
INCAi
MOVAi,Aj
A,B,RR,CT,OT,
NOTAi
1.3.3微程序顺序控制方式设计
微程序控制部件组成原理
三片EEPROM2816构成24位控制存储器,两片8D触发器74LS273和一片4D触发器74LS175
构成18位微命令寄存器,三片3线-8线译码器74LS138对微命令进行译码。
三片2D触发器
74LS74
构成6位微地址寄存器,它们带有清“0”端和预置端。
在不判别测试的情况下,T2时刻打入微
地址器的内
容即为下一条微指令地址。
当T4时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过
强置端将某一触发器置为“1”状态,完成地址修改。
SA5~SA0为微控制器电路微地址锁存器的
强置端输出。
在该电路中有一组开关K1,K2,K3,K4,它们可以设成三种状态:
写入,读出和运行。
当处
于“写入”状态时,可以根据微地址和微指令二进制代码写入到2816中。
当处于“读出”状态
时,可以将写入的二进制代码读出,从而可以对写入控存的二进制代码的正确性进行验证。
于“运行”状态时,只要给出微程序的入口微地址,则可根据微程序流程图自动执行微程序。
图1.2程序控制部件组成
微程序入口地址形成方法
由于每条机器指令都需要取指操作,所以将取指操作编制成一段公用微程序,通常安排在控存的0号或特定单元开始的一段控存空间内。
每一条机器指令对应着一段微程序,其入口就是初始微地址。
首先由“取指令”微程序取出一条机器指令到IR中,然后根据机器指令操作码转换成该指令对应的微程序入口地址。
这是一种多分支(或多路转移)的情况,常用三种方式形成微程序入口地址。
(1)一级功能转移
如果机器指令操作码字段的位数和位置固定,可以直接使操作码与入口地址码的部分位相对应。
例如,某计算机有16条机器指令,指令操作码用4位二进制数表示,分别为0000、0001、…、1111。
现以字母Q表示操作码,令微程序的入口地址为Q11B,例如000011B为MOV指令的入口地址,000111B为ADD指令的入口地址,001011B为SUB指令的入口地址……。
(2)二级功能转移
若各类指令的操作码的位数和位置不固定时,需采用分级转移,第一次先按指令类型标志转移,以区分出指令属于哪一类,如单操作数指令、双操作数指令等。
在每一类机器指令中的操作码的位数和位置应当是固定的,第二次即可按操作码区分出具体是哪条指令,以便转移到相应微程序入口。
(3)通过PLA电路实现功能转移
可编程逻辑阵列PLA实质上是一种译码-编码阵列,具有多个输入和多个输出,PLA的输入是机器操作码和其他判别条件,PLA的输出就是相应微程序的入口地址,这种方法对于变长度、变位置的操作码的处理更为有效而且转移速度较快。
控存的下地址确定方法
(1)计数增量方式
这种方式的特点是微程序控制部件中的微地址中的微地址产生线路主要是微地址计数器MPC。
MPC的初值由微程序首址形成线路根据指令操作码编码形成。
在微程序执行过程中该计数器增量
计数,产生下一条微指令地址。
这使得微指令格式中可以不设置“下地址场”。
缩短了微指令长度
,也使微程序控制部件结构较简单。
但微程序必须存放在控存若干连续单元中。
微操作控制信号
指令操作码
图1.3计数增量方式
(2)断定方式
微指令中设有“下地址场”,它指出下条微指令的地址,这使一条指令的微程序中的微指令在
控存中不一定要连续存放。
在微程序执行过程中,微程序控制部件中的微地址形成电路直接接受
微指令下地址场信息来产生下条微指令地址,微程序的首址也由此微地址形成线路根据指令操作
码产生。
图1.4断定方式
1.4微程序设计
1.4.1每条指令对应的微程序流程图
控制开关
00
P(4)测试
MWE(01)MRD(00)RUN(11)
PCAR,PC+111PCAR,PC+11013
(D_INPUT)D_BUSLT114RAMD_BUSLT11201
LT1RAM74LT1LED73
图1.5微程序流程图
图1.6微程序流程图
表1.3据本实验程序流程图设计的二进制微代码表
1.4.2每段微程序中各微指令的二进制编码、16进制编码
微地址
S3S2S1S0MCNWE1A1B
UA5--UA0
000000
000000000
111
110
001000
000001
101
000010
000000010
110
111101
000110
101
100101
000111
111
001010
001001
001100
100
111011
001011
000000011
111100
010000
010010
010011
010100
100
010101
000000101
010
010111
000
011000
011001
101010
011010
101100
011011
110010
011100
110011
011101
110110
011110
001100000
110111
011111
111001
100000
000000110
100001
100010
001
010
101011
100101000
000
001
101101
011000000
110101
101110000
000011000
001000000
111000
000100000
111010
000001101
111111110
表1.4二进制代码表
1.4.3每段微程序在控存中的存放位置
微地址(八进制)
微地址(二进制)
微代码(十六进制)
007F88
005B42
02
016FFD
03
000011
014FC4
04
000100
015F20
05
000101
015FC6
06
014FC7
07
005B4A
005B4C
12
014FFB
13
007FC1
14
01CFFC
001101
014FCE
001110
0025CF
001111
9453E5
005B43
010001
005B45
005B4D
005B66
018FC1
25
02F5C1
26
010110
007FD6
27
3C03C1
30
0001C1
31
0041EA
32
0021EC
33
0041F2
34
0041F3
35
0041F6
36
3001F7
37
3001F9
40
010FC1
41
0379C1
42
011F41
43
100011
007EA4
44
100100
45
844920
46
100110
014FE7
47
100111
002BE8
50
10100
9459E9
51
101001
944920
52
0025EB
53
9403FE
54
0049ED
55
0449EE
56
101110
0C49EF
57
101111
0049F0
60
110000
0C7F31
61
110001
9403C1
62
0003C1
63
0025F5
64
110100
041341
65
B803C1
66
0C03C1
67
287DF8
70
000DC1
71
187DFA
72
73
06F3C8
74
FF73C9
75
016E10
76
111110
0041C1
1.5编写调试程序
设计如下几条机器指令的格式,指令格式可以采用单字长或双字长设计。
OUTRi(功能Ri的值->
通过如下程序的编写调试,验收机器指令、微指令、微程序的设计结果。
O
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 复杂 试验 计算机 组成 加法 指令 程序设计
![提示](https://static.bdocx.com/images/bang_tan.gif)