JUC2课程设计报告 江苏大学 大二上.docx
《JUC2课程设计报告 江苏大学 大二上.docx》由会员分享,可在线阅读,更多相关《JUC2课程设计报告 江苏大学 大二上.docx(19页珍藏版)》请在冰豆网上搜索。
JUC2课程设计报告江苏大学大二上
计算机组成原理课程设计报告
JUC2模型机的微程序设计
姓名
学号
专业
指导教师
江苏大学计算机学院
2014年1月9日
1熟悉微程序的设计和调试方法
1.1目标要求
(1)掌握微程序的设计方法
(2)熟悉利用调试软件运行、调试微程序的方法
1.2微程序设计
1.2.1取指令的微程序设计
微地址(H)
微指令(H)
微指令字段(H)
微命令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
000
20080001
1
0
0
0
2
0
0
0
0
001
PCoe,ARce
001
00069002
0
0
0
0
1
2
1
1
0
002
ARoe′,RD,DRce′,PCinc
002
CC000003
6
3
0
0
0
0
0
0
0
003
DRoe,IRce
003
00000404
0
0
0
0
0
0
0
0
2
004
BM2
1.2.2取目的操作数的微程序设计
(1)直接寻址的微程序
微地址(H)
微指令(H)
微指令字段(H)
微命令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
02C
20080033
1
0
0
0
2
0
0
0
0
033
PCoe,ARce
033
00069034
0
0
0
0
1
2
1
1
0
034
ARoe’,RD,DRce’,PCinc
034
C0080035
6
0
0
0
2
0
0
0
0
035
DRoe,ARce
035
00061036
0
0
0
0
1
2
0
1
0
036
ARoe’,RD,DRce’
036
D4000007
6
5
0
0
0
0
0
0
0
007
DRoe,Ace
1.2.3执行阶段的微程序设计
(1)INC指令的微程序
微地址(H)
微指令(H)
微指令字段(H)
微命令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
071
1A700E50
0
6
9
3
0
0
0
0
7
050
INC,SVce,PSWce
(2)保存运算结果的微程序
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
051
60030052
3
0
0
0
0
3
0
0
0
052
Soe,DRce
052
00052200
0
0
0
0
1
1
0
0
1
000
ARoe’,DRoe’,WR
(3)JMP指令的微程序
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
070
A4000E50
5
1
0
0
0
0
0
0
7
050
ARoe,PCce
1.3调机程序设计
程序11
0030:
0460;INC0040H
0031:
0040;
0032:
0420;JMP0030H
0033:
0030;
1.4运行调试
运行调试记录表举例:
操作
µAR
µIR
运行结果及分析
程序1-1
复位CPU
000
00000000
PC=0030,SP=0030
微指令单步
000
20080001
IB=0030,AR=0030。
PC->AR
001
00069002
DB=DR=0460,PC=0031。
指令->DR,PC加1
002
CC000003
IB=IR=0460。
DR->IR
003
00000404
BM2
1.5小结
经过半天的实验以及老师的讲解,对cpu指令的执行过程有了更深的了解,并且完成了一个简单的指令微程序的设计,加深了对知识的理解。
2双操作数指令的设计与调试
任务要求
1、编写源操作数立即寻址的微程序,并用下面的调机程序验证。
MOV#0101,0040H
2、编写SUB指令的微程序,并用下面的调机程序验证。
MOV#0101,0040H
SUB#FFFF,0040H
观察0040H单元和PSW的变化。
3、编写寄存器寻址的微程序,并用下面的调机程序验证。
MOVFF08H,R1
MOVR1,FF01H
JMP0030H
微指令微程序设计
取源操作数的直接寻址方式的微命令与取目的操作数直接寻址的微命令相同不过地址改为从00C,013,014,015,016为止。
MOV#0101,0040H
源操作数立即寻址的微程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
00B
20080012
1
0
0
0
2
0
0
0
0
012
PCoe,ARce
012
00069016
0
0
0
0
1
2
1
1
0
016
ARoe’,RD,DRce’,PCinc
016
D0000006
6
4
0
0
0
0
0
0
0
006
DRoe,TRce
MOV指令的微程序
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
041
94000040
4
5
0
0
0
0
0
0
0
040
TRoe,Ace
040
00300E50
0
0
0
3
0
0
0
0
7
050
SVce
SUB#FFFF,0040H
SUB指令的微程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
044
98F00E50
4
6
3
3
0
0
0
0
7
050
TRoe,SUB,SV,PSWce
MOVFF08H,R1
目的操作数寄存器寻址
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
028
54000007
2
4
0
0
0
0
0
0
0
007
GRSoe,TRce
目的操作数为寄存器寻址,执行完毕后保存操作
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
050
68000200
3
2
0
0
0
0
0
0
1
000
Soe,GRSce
MOVR1,FF01H
取源操作数的寄存器寻址方式的微命令与取目的操作数寄存器寻址的微命令相同不过地址改为008。
调机程序设计
程序2-1
0030:
1620;MOV#0101,0040
0031:
0101;
0032:
0040;
程序2-2
0030:
1620; MOV#0101,0040
0031:
0101;
0032:
0040;
0033:
4620; SUB#FFFF,0040
0034:
FFFF;
0035:
0040;
程序2-3
0030:
1801;MOVFF08,R1
0031:
FF08;
0032:
1060;MOVR1,FF01
0033:
FF01;
0034:
0420;JMP0030
0035:
0030;
小结:
经过半天的实验,学会了传送指令mov和减法sub指令的微程序设计,获益匪浅。
3.条件转移指令的设计与调试
任务要求
1、编写JC指令的微程序,并用下面的调机程序验证。
ORG0030H
MOV#imm1,R1
CMP#imm2,R1
JCADDR1
MOV#0101H,FF01H
HALT
ADDR1:
MOV#8080H,FF01H
HALT
微指令微程序设计
CMP的微程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
049
98F00000
4
6
3
3
0
0
0
0
0
000
TRoe,SUB,PSWce,SVce
JC的微程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
068
00000682
0
0
0
0
0
0
0
0
3
082
BM=3
083
A4000200
5
1
0
0
0
0
0
0
7
050
ARoe,PCce
当CF=1时程序跳转到083执行转移指令,否则跳转到082,082为空指令BM=1,即为顺序执行下一条指令.
HALT的微程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
058
00000058
0
0
0
0
0
0
0
0
0
058
调机程序的设计:
0030:
1601;MOV#0001,R1
0031:
0001;
0032:
9601;CMP#0002,R1
0033:
0002;
0034:
0220;JC003A
0035:
003A;
0036:
1620;MOV#0101,FF01
0037:
0101;
0038:
FF01;
0039:
0000;HALT
003A:
1620;MOV#8080,FF01
003B:
8080;
003C:
FF01;
003D:
0000;HALT
小结:
经过半天的学习和实验,我学会了条件转移指令JC,比较指令CMP和暂停指令HALT的微程序设计。
第四天:
移位指令的设计与调试
任务要求
1、完成以下调机程序。
ORG0030H
MOV#0001,R0
SHRR0
JC-3
HALT
分析上述调机程序的功能,运行之后相关寄存器和PSW会有怎样的变化,程序是否
转移,转移的目的地址是多少。
2、完成以下调机程序。
ORG0030H
MOV#0505,R1
TEST#0001,R1
JZ+3
ROLR1
JMP0032H
HALT
SHR的微指令程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
063
18100E50
0
5
6
1
0
0
0
0
7
050
SR,PSWce
目的操作数相对寻址的微程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
02F
2008003D
1
0
0
0
2
0
0
0
0
03D
PCoe,ARce
03D
0006903E
0
0
0
0
1
2
1
1
0
03E
ARoe’,RD,DRce’,PCinc
03E
D400003F
6
5
0
0
0
0
0
0
0
03F
DRoe,Ace
03F
20700032
1
0
1
3
0
0
0
0
0
032
PCoe,ADD,SV
032
60080035
3
0
0
0
2
0
0
0
0
035
Soe,ARce
035
00061036
0
0
0
0
1
2
0
1
0
036
ARoe’,RD,DRce’
036
D4000007
6
4
0
0
0
0
0
0
0
007
DRoe,TRce
TEST#0001,R1
TEST的微指令程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
04A
99400000
4
6
5
0
0
0
0
0
0
000
TRoe,AND,PSWce
JZ的微指令程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
06C
00000682
0
0
0
0
0
0
0
0
3
082
BM=3
ROL的微指令程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
064
18200E50
0
5
0
2
0
0
0
0
7
050
SL,PSWce
调机指令的设计:
0030:
1601;MOV#0001,R0
0031:
0001;
0032:
00C0;SHRR0
0033:
0238; JC-3
0034:
0220;HALT
小结:
经过半天的实验以及上网查了一些资料,完成了移位指令SHR,ROL的微程序设计。
5.堆栈相关指令的设计与调试
任务要求
1、编写PUSH和POP指令的微程序,并用下面的调机程序验证。
ORG0030H
MOV#0041H,R0
PUSHR0
PUSH0040H
POP(R0)
POPR1
PUSH的微程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
078
03000084
0
0
C
0
0
0
0
0
0
084
SPdec
084
E0080085
7
0
0
0
2
0
0
0
0
085
SPoe,ARce
085
00300086
0
0
0
3
0
0
0
0
0
086
SVce
086
60030087
3
0
0
0
0
3
0
0
0
087
Soe,DRce
087
00052200
0
0
0
0
1
1
0
2
1
000
ARoe’,DRoe’,WR
POP(非寄存器寻址)的微指令程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
079
00000E8C
0
0
0
0
0
0
0
0
7
08C
BM=7
08D
B0000090
5
4
0
0
0
0
0
0
0
090
ARoe,TRce
090
E0080091
7
0
0
0
2
0
0
0
0
091
SPoe,ARce
091
03061092
0
0
B
0
1
2
0
1
0
092
ARoe’,RD,DRce’,SPinc
092
80080093
4
0
0
0
2
0
0
0
0
093
TRoe,ARce
093
00052200
0
0
0
0
1
1
0
2
1
000
ARoe’,DRoe’,WR
POP(寄存器寻址)的微指令程序设计
微地址
微指令
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
微命令
079
00000E8C
0
0
0
0
0
0
0
0
7
08C
BM=7
08C
E008008E
7
0
0
0
2
0
0
0
0
08E
SPoe,ARce
08E
0306108F
0
0
B
0
1
2
0
1
0
08F
ARoe’,RD,DRce’,SPinc
08F
B8000200
6
2
0
0
0
0
0
0
1
000
DRoe,GRSce
调机程序设计:
0030:
1600;MOV#0040,R0
0031:
0041;
0032:
0600;PUSHR0
0033:
0620; PUSH0040
0034:
0040;
0035:
0648;POP(R0)
0036:
1620;POPR1
总结
这次计算机组成原理的课程设计,使我加深了对课本知识的理解,也在实践中运用了课本上的理论内容。
在这次课程设计,经历了很多次程序异常,然后找出错误并最终发现错误并改正的过程,在一次次的改正中从第一次课程设计时的循规蹈矩,照抄课本到后面的能够运用自己的微指令编码技术编写出符合要求的微程序,感觉学到了很多,很多东西不再浮于表面,而是有更加深刻的理解。