1、课程设计报告计算机构成原理典型模型机设计与实验院系:专业:计算机科学与技术姓名:学号:班级:计*指引教师:*12月24日*大学目录一、设计目2二、设计任务2三、实验设备2四、设计原理2五、指令系统设计21.指令格式22.指令系统33.微程序入口地址形成办法3六、设计过程41.生成指令系统42.生成源代码43.编写微程序54.联机运营5七、设计心得5一、 设计目在掌握部件单元电路实验基本上,构造一台基本模型计算机。 为其设计815条机器指令,编写相应微程序,并在实验系统上调试通过,以理解CPU控制原理以及计算机整机系统概念。二、 设计任务设计815条机器指令,用相应微程序实现。示例程序给出了5条
2、指令:0000:IN R0,IOL(输入) ; IOLR0 ADD R0,0260H(加法) ;(R0)+(0260) R0 STA 0261h,R0(存数) ; (R0) (0261) OUT 0261h,IOH(输出); (0261) IOH JMP 0000(无条件转移)可以参照、修改。三、 实验设备Dais-CMX16+计算器构成原理教学实验系统一台四、 设计原理在已完毕实验课程中,咱们完毕了手动(在线)控制实验。其中各部件单元控制信号是以手动模仿产生为主。而本次设计是在微程序控制下,自动产生各部件单元控制信号,实现特定指令功能。计算机数据通路控制将由微程序控制器来完毕,即:CPU从主
3、存EM中取出一条机器指令、分析指令、执行指令一种指令周期解决过程,所有由微指令构成序列来完毕,设计并验证机器指令由相应微程序控制实现过程。五、 指令系统设计1.指令格式76543210OP-CODERdRsAddr其中:OP-CODE为操作码段,位于指令字节高四位(IR7IR4);Addr 定义操作数或操作数地址;Rd为目寄存器,Rs为源寄存器。它们编码见下表:Rs或Rd选定寄存器00R001R110R211R32.指令系统本实验装置微控制器微地址寄存器11位,高2位指定为“11”,实际使用低9位,用于所定义指令起始微地址(亦可称为指令微程序入口地址)。 因此,指令系统微程序地址寻址范畴为:6
4、007FFH,最多可支撑256条微指令运营,其容纳率达到了通用计算机控制器设计水准。3.微程序入口地址形成办法(1) 多路转移法微总线ud10ud9ud8ud7ud6Ud5ud4ud3ud2ud1ud0指令总线11id7id6id5id400000id8id5是机器指令操作码高四位,相应机器指令操作码:00h、10H、20h、30H、40h、50H、60h、70H、80h、90H、A0h、B0H、C0h、D0H、E0h;由上表可产生:600h、620h、640h、660h、680h、6A0h、6C0h、700h、720h、740h 共16个微地址,分别作为16个微程序入口地址。(2) 直接地址
5、法按照直接地址法(断定法)原理,直接由本条微指令给出下一条微指令地址,实现微程序转移。微指令格式:微操作控制字段测试字段下地址字段六、 设计过程1.生成指令系统生成指令系统如下:助记符操作数指令码长度微指令入口指令功能INR0,IOL201640I/O偶字节R0ADDR0,*403680R0+RAMR0NORR2E217C0R0取反R2SUBR0,R2381660R2-R0R0ANDR2,R0121620R0R2R2STA*,R06036C0R0RAMOUTIOH,*803700RAMI/O奇字节CLER0C01780R0=0SERR0,*5056A0RAMRAMR0(间接寻址,成果送R0)J
6、MP*A03740RAMPC2.生成源代码依照指令系统生成指令,源代码如下:;基本模型机程序#LOAD “MXJ1.IS” ;预调入指令系统微程序#SET RAM 0438H=0450H ;数据区0438H单元预置数据0450H#SET RAM 0450H=6666H;数据区0450H单元预置数据6666Hdata serment ;将程序装载到数据存储器assumeds:dataorg0start:inr0,ioladdr0,0438hNOR R2SUB R0,R2 AND R2,R0STA 0450H,R0 OUT OIH,0450H CLE R0SER R0,0438HJMP START
7、DATA ENDSEND START3.编写微程序按照指令系统中指令指令码求出相应微程序入口,然后跳转到微程序入口,按照系统建议微指令格式,参照微指令流程图,将每条微指令代码化。4.联机运营保存微程序及源代码,然后点击工具栏“装载”按钮开始装载,如源程序,语法错误即可完毕装载,进入调试状态。七、 设计心得一方面,非常感谢教师对我指引与协助,让我能顺利完毕这次课程设计。这次课程设计让咱们学到了许多知识,其中有许多是在课本上学不到。课程设计增长了我对微指令与机器指令设计经验,也提高了自己动手能力。在对微程序设计过程中,我进一步理解了计算机指令系统构成。在设计过程中,难免遇到困难,通过解决问题,咱们学会了独立思考,增强了团队意识,同步也加深了对控制台操作理解,这为咱们此后学习与工作,提供了良好锻炼机会,进一步增强了咱们实践能力,提高了咱们对本专业知识运用能力。虽然最后做得不是非常好,但我和小组内其她成员刻苦努力、坚持不懈钻研过程让我觉得成绩并不是很重要,核心是在设计过程中拓宽了知识面,懂得了合伙交流、互帮互助、坚持不懈。在后来学习生活中,我会继续认真地学习本专业有关知识,不断去发现问题,解决问题。