当前位置:文档之家› JUC2课程设计报告书

JUC2课程设计报告书

计算机组成原理课程设计报告JUC2模型机的微程序设计学号专业指导教师计算机学院2014年 07月 10日1熟悉微程序的设计和调试方法1.1目标要求(1) 掌握微程序的设计方法(2) 熟悉利用调试软件运行、调试微程序的方法1.2微程序设计1.2.1取指令的微程序设计1.2.2取目的操作数的微程序设计(1)直接寻址的微程序1.2.3执行阶段的微程序设计(1)INC指令的微程序(2)保存运算结果的微程序(3)JMP指令的微程序1.3调机程序设计程序 1-10030: 0460; INC 0040H0031: 0040;0032: 0420; JMP 0030H0033: 0030;程序1-20030: 0460; INC FF02H 0031: FF02;1.4运行调试运行调试记录表举例:1.5小结通过本次上机试验,主要是适应了一下实验室的环境,软件环境。

为以后的课设做好了准备!2双操作数指令的设计与调试2.1目标要求完成双操作数指令的微程序设计和验证;去源操作数阶段和去目的操作数阶段相关寻址方式的微程序设计和验证,2.2设计任务2.2.1取源操作数(1)立即寻址(2)直接寻址(3)间接寻址2.2.2取目的操作数(1)寄存器寻址(2)寄存器间接寻址2.2.3执行阶段(1)MOV指令的微程序微地址(H) 微指令(H)微指令字段(H)微命令F0 F1 F2 F3 F4 F5 F6 F7 F8 F9041 94000040 6 5 0 0 0 0 0 0 0 040 DRoe, Ace 040 00300E50 0 0 0 3 0 0 0 0 0 050 SVce,(2)SUB指令的微程序微地址(H) 微指令(H)微指令字段(H)微命令F0 F1 F2 F3 F4 F5 F6 F7 F8 F9044 98F00E50 4 6 3 3 0 0 0 0 0 050 TRoe,SUB,SV,PSWce2.3调机程序设计程序2-1 ,2-20030: 1620; MOV #0101,0040H0031: 0101;0032: 0040;0033: 4620; SUB #FFFF,00400034: FFFF;0035: 0040程序 2-30030: 1801; MOV FF08H,R10031: FF08;0032: 1060; MOV R1,FF02H0033: FF02;程序2-52.4调试结果2.5小结通过本次上机实验,我掌握了mov指令与sub指令的程序设计,并且也初步了解LED灯的相关的知识点。

3条件转移指令的设计与调试3.1设计目标为CPU扩充转移指令,完成转移指令的微程序设计与调试。

3.2设计任务3.2.1取目的操作数(1)相对寻址3.2.2操作指令(1)CMP指令的微程序(2)JC指令的微程序(3)TEST指令的微程序(4)JNZ指令的微程序3.3调机程序设计程序3-1,3-20030: 1601;MOV #0001,R1;0031: 0001;0032: 9601; CMP #0001,R1;0033: 0001;0034: 0220; JC 0040H;0035: 0040H;0036: 1620; MOV #0001H,FF01H;0037: 0001H;0038: FF01H;0040: 1620; MOV #0080H,FF01H;0041: 0080;0042: FF01;程序3-4INC FF02HADD #0001,R0 (#0001决定延迟的时间越大延时越小) JC 0030HJMP 0032H程序3-5MOV#00FFH R0MOV #010F R0MOV (R0)+,(R1)+CMP #0107,R0JNZ 0034HJMP 0030H3.4调试记录3-1 当IMM1大于imm2时当IMM1小于IMM2时3-3 imm1小于imm2imm1大于imm23.5小结通过本次上机实验,我清楚了JC,TEST,CMP等指令操作的过程,并且同时也了解到JC,JNZ指令的跳转条件,实现了CPU转移指令的扩充。

4移位指令的设计与调试4.1设计目标为CPU扩充移位指令,完成移位指令的微程序设计与调试。

4.2设计任务4.2.1操作指令(1)SHR指令的微程序(2)ROL指令的微程序4.3调机程序设计程序4-1.0030: 1600; MOV #0001,R0;0031: 0001;0032: 00C0; SHR, R0;0033: 0238; JC ’FFFDH;0034: FFFD;程序4-20030: 1601;MOV #0505,R1;0031: 0505;0032: A601; TEST #0001,R1;0033: 0001;0034: 0338; JZ ‘0003;0035: 0003;0036: 0101; ROL,R1;0037: 0420; JMP 0032H;0038: 0032;程序4-40030:1600; MOV #0001,R0; 0031; 0001;0032: 1060; MOV ,R0,FF01H; 0033: FF01;0034 0100; ROL R0 0035 9600; CMP #0100,R0 0036 00800037 0320 JZ 0030H 0038 00300039 0420 JMP 00324.4调试记录4.54-14-24-44.6小结通过本次上机实验,完成了CPU移位指令的扩充,同时也更深一步的接触到LED灯工作的原理及过程。

独立的写出了任务4所需的程序,是我这次上机最大的收获。

5堆栈相关指令的设计与调试5.1设计目标为CPU扩充PUSH,POP,CALL,RET指令,完成微程序设计。

5.2设计任务(1)PUSH指令的微程序(2)POP指令的微程序(非寄存器)(3)POP指令的微程序(寄存器)(4)CALL指令的微程序(5)RET指令的微程序5.3调机程序设计程序5-1,0030: 1600; MOV,#0041,R0;0031: 0041;0032: 0600; PUSH R0;0033: 0620; PUSH 0040H;0034: 0040;0035: 0648; POP (R0); 0036: 0641; POP R1; 0040: 0420;程序5-2 5-3MOV #0041 R0PUSH R0PUSH 0040HCALL 003CPOP(R0)POP R1003C: INC 0040RET程序5-4MOV #0001,R0 MOV R0,FF01H CALL 003DH ROLR0CMP#0100,R0 JZ0030H JMP0032H003D:ADD#8888,R1 JC0043HJMP 003DHRET5.4调试记录5-15-2,5-35-45.5小结通过本次上机实验,完成了CPU的PUSH,POP,CALL,EET指令的扩充,并完成了微程序设计。

上机时,主要时间花在了POP与Push两条指令的扩充上,通过很长时间的研究,把压栈和出栈搞明白了。

6中断系统的设计与调试6.1设计目标完成整个中断过程各个环节的设计6.2设计任务6.2.1编写中断隐指令的微程序(1)保护PC(2)保护PSW(3)中断响应信号INTA有效,读出中断向量地址VA(4)根据VA,取出中断服务程序的入口地址,送PC,关中断6.3小结通过本次上机实验,完成了中断系统的设计与调试,,熟悉了中断隐指令的微程序的操作步骤,但多重中断(中断嵌套)还没有完成。

7.1 第七天答辩验收7.2 任务要求将一个数放入寄存器R1,R1压栈,出栈至R2寄存器。

7.3总结在此次课程设计过程中,我们通过查阅资料,自学和与同学交流经验,并向老师请教等方式,综合运用所学知识,发现、提出、分析和解决实际问题,锻炼了实践能力,对我们的实际工作能力有了具体的训练和考察。

在给同学讲解的过程中,深刻理解了所学知识,也培养了我们团队合作的能力,相信会对今后的学习工作生活有非常重要的影响。

而且大大提高了动手的能力,使我们充分体会到了创造过程中探索的艰难和成功时的喜悦。

虽然这个设计做的不完美,但是在设计过程中所学到的东西是这次课程设计的最大收获和财富,使我们终身受益。

此次计算机组成原理课程设计中学到很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。

通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。

在设计的过程中难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,把以前所学过的知识重新温故。

这次课程设计终于顺利完成了,设计不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。

学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质.。

相关主题