《计算机组成原理课程设计报告基本模型机的设计与实现.doc》由会员分享,可在线阅读,更多相关《计算机组成原理课程设计报告基本模型机的设计与实现.doc(19页珍藏版)》请在三一办公上搜索。
1、长 沙 学 院课程设计说明书题 目 基本模型机的设计与实现 系 (部) 计算机科学与技术 专业(班级) 08级计科、数据库三班 姓 名 学 号 指导教师 起止日期 2010年12月272011年1月5日课程设计任务书课程名称:计算机组成原理设计题目:(共3个课题,最多3人一组,每组任选一题)1.基本模型机设计与实现;2.带移位运算的模型机的设计与实现;3.复杂模型机的设计与实现。已知技术参数和设计要求:内容和技术参数:利用所学过的理论知识,特别是微程序设计的思想,写出要设计的指令系统的微程序。设计环境为TDNCM计算机组成原理教学实验系统,微机,虚拟软件。将所设计的微程序在此环境中进行调试,并
2、给出测试思路和具体程序段。最后撰写出符合要求的课程设计说明书、完成答辩。1.基本模型机设计与实现指令系统至少要包括六条不同类型指令:如一条输入指令,一条减法指令,一条加法指令,一条存数指令,一条输出指令和一条无条件转移指令。2. 带移位运算的模型机的设计与实现在基本模型机的基础上增加左、右循环和左、右带进位循环四条指令3. 设计不少于10条指令的指令系统。其中,包含算术逻辑指令,访问内存指令,程序控制指令,输入输出指令,停机指令。重点是要包括直接、间接、变址和相对寻址等多种寻址方式。以上数据字长为8位,采用定点补码表示。指令字长为8的整数倍。微指令字长为24位。具体要求:1、确定设计目标确定所
3、设计计算机的功能和用途。2、确定指令系统确定数据的表示格式、位数、指令的编码、类型、需要设计哪些指令及使用的寻址方式。确定相对应指令所包含的微操作。3、总体结构与数据通路总体结构设计包括确定各部件设置以及它们之间的数据通路结构。在此基础上,就可以拟出各种信息传输路径,以及实现这些传输所需要的微命令。综合考虑计算机的速率、性能价格比、可靠性等要求,设计合理的数据通路结构,确定采用何种方案的内总线及外总线。数据通路不同,执行指令所需要的操作就不同,计算机的结构也就不一样。4、设计指令执行流程数据通路确定后,就可以设计指令系统中每条指令所需要的机器周期数。对于微程序控制的计算机,根据总线结构,需考虑
4、哪些微操作可以安排在同一条微指令中,哪些微操作不能安排在同一条微指令中。5、确定微程序地址根据后续微地址的形成方法,确定每个微程序地址及分支转移地址。6、微指令代码化根据微指令格式,将微程序流程中的所有微指令代码化,转化成相应的二进制代码写入到控制存储器中的相应单元中。7、组装、调试在总调试前,先按功能模块进行组装和分调,因为只有各功能模块工作正常后,才能保证整机的正常运行。当所有功能模块都调试正常后,进入总调试。连接所有模块,用单步微指令方式执行机器指令的微程序流程图,当全部微程序流程图检查完后,若运行结果正确,则在内存中装入一段机器指令,进行其他的运行方式等功能调试及执行指令的正确性验证。
5、课程设计说明书要求:课程设计说明书按学校统一格式撰写和装订。课程设计报告要求打印,其中的数据通路框图、微程序流程图、实验接线图用VISIO等工具软件绘制或用铅笔工工整整绘制。(1)封面(包括:题目、所在系、班级、学号、指导教师及时间等项,可到教务处网页上下载)(2)任务书(3)目录目录要层次清晰,要给出标题及页次,目录的最后一项是无序号的“参考文献”。(4)正文正文应按目录中编排的章节依次撰写,要求计算正确,论述清楚,文字简练通顺,插图清晰,书写整洁。文中图、表及公式应规范地绘制和书写。正文是实践设计报告的主体,具体由以下几部分组成:1)课程设计题目;2)课程设计使用的实验设备;3)课程设计步
6、骤(包括确定所设计计算机的功能和用途、指令系统、总体结构与数据通路、设计指令执行流程、确定微程序地址、微指令代码化、组装、调试。)4)课程设计总结(包括自己的收获与体会;遇到的问题和解决的方法等);(5)附录附录1:数据通路图附录2:微程序流程图附录3:实验接线图附录4:实验程序及微程序附录5:参考文献(资料)(格式规范参照长沙学院毕业设计(论文)撰写规范)设计工作量:(1)作品:设计的最终作品包括硬件和软件两个部分,要求能够演示并达到设计指标的要求。每个学生(或小组)在作品完成后,要经指导教师检查,同意拆除后方可拆卸。(2)论文:严格按上述课程设计说明书的要求撰写和装订。每个学生一份。成绩评
7、定标准:课程设计的成绩分为:优秀:、良好、中等、及格、不及格五个等级。优秀:完成复杂模型机的设计与实现,指令系统完备有更新扩充。调试成功。文档规范齐全。良好:完成模型机的设计与实现,指令系统指令种类丰富有一定的更新。调试成功。文档规范齐全。中等:完成基本模型机的设计与实现,在老师指导下对指令系统有更新。调试成功。文档规范齐全。及格:完成基本模型机的设计与实现。调试成功。文档规范齐全。不及格:没有课程设计报告,无故缺勤,不能完成调试者不及格。工作计划:时间:15、16周讲授:2课时答疑及设计:22课时上机调试:12课时答辩:4课时指导教师签名:日期:2010-12-10教研室主任签名: 日期:系
8、主任签名: 日期:长沙学院课程设计鉴定表姓名周子照学号2008021406专业计算机科学与技术班级08数据库三班设计题目基本模型机的设计与实现指导教师李南樱指导教师意见:评定等级: 教师签名: 日期: 答辩小组意见:评定等级:答辩小组长签名:日期:教研室意见:教研室主任签名: 日期: 系(部)意见:系主任签名:日期:说明课程设计成绩分“优秀”、“良好”、“中等”、“及格”、“不及格”五类;摘要本次课程设计的任务是完成一个基本模型机的设计与实现。设计经过综合运用了以前所学计算机原理的知识,依照设计要求和指导,实现了一个基本的模型计算机。本模型机实现的功能有:IN(输入),OUT(输出),ADD(
9、加法),SUB(减法),STA(存数),JMP(跳转)。设计进行开始,在了解微程序的基本格式, 及各个字段值的作用后, 按微指令格式参照指令流程图,设计出程序以及微程序,将每条微指令代码化,译成二进制代码表,并将二进制代码转换为联机操作时的十六进制格式文件。根据机器指令系统要求,设计微程序流程图及确定微地址。设计的加法和减法中, 被加数和被减数都由调试人员输入, 而加数和减数都从存储器中读取. 最后上机调试,各个功能运行结果正确。关键词: 基本模型机;机器指令;微指令目录1、课程设计题目-12、实验设备-13、课程设计步骤-13.1、所设计计算机的功能和用途-13.2、指令系统-23.3、总体
10、结构与数据通路-23.4、设计指令执行流程-33.5、微指令代码化-43.6、组装和调试-54、课程设计总结-75、附录-8附录1:数据通路图-8附录2:微程序流程图-9附录3:实验接线图-10附录4:实验程序及微程序-11 附录5:参考文献(资料)-121、 课程设计题目基本模型机的设计与实现2、 实验设备TDNCM+计算机组成原理教学实验系统一台,微机,虚拟软件,排线若干。3、 实验步骤3.1 所设计计算机的功能和用途设计的基本模型机的指令系统至少要包括六条不同类型的指令:一条输入指令,一条减法指令,一条加法指令,一条存数指令,一条输出指令和一条无条件转移指令。利用此模型机完成加法和减法操
11、作。两个操作都能读入被加(减)数,从内存中读取加(减)数,运算后都能保存运算结果,并且都将结果输出。3.2 指令系统本课程设计采用六条机器指令:IN(输入),OUT(输出),ADD(二进制加法),SUB(减法),STA(存数),JMP(无条件转移)。其指令格式及说明如下表:表1 指令系统编码序号助记符机器指令码功能说明1IN00000000 INPUT DEVICE中的开关状态R02ADD addr00010000 *R0+addrR03STA addr00100000 *R0addr4OUT addr00110000 *addrDR1LED5JMP addr01000000 *addrPC6
12、SUB addr01010000 *R0-addrR0其中:IN为单字长(8位),其余为双字长指令,*为addr对应的二进制地址码。3.3 总体结构和数据通路总体结构的设置如下:1、 寄存器的设置 R0、R1、R2为通用寄存器,8位;IR为指令寄存器,8位;PC为程序计数器,8位;AR为地址寄存器,8位;DR1、DR2为数据寄存器2、 运算器的设置 ALU为运算器数据通路可见附录1的数据通路图。3.4 设计指令执行流程本课程设计设计的机器指令程序如下表:表2 机器指令程序地址(二进制)内容(二进制)助记符说明0000 00000000 0000IN R0INPUT DEVICER00000 0
13、0010001 0000ADD 10H,R0R0+10HR00000 00100001 00000000 00110010 0000STA R0,11HR011H0000 01000001 00010000 0101 0011 0000OUT 11H11HLED0000 01100001 00010000 01110000 0000IN R0INPUT DEVICER00000 10000101 0000ADD 10H,R0R0-10HR00000 10010001 00000000 10100010 0000STA R0,12HR012H0000 1011 0001 00100000 110
14、00011 0000OUT 12H12HLED0000 11010001 00100000 11100100 0000JMP 00H00HPC0000 11110000 00000001 00000000 0001自定0001 0010求和结果0001 0011求差结果3.5 微指令代码化当全部微程序设计完毕后,应将每条微指令代码化,下表即为“二进制微代码表”。表3 基本模型机二进制微程序代码表微地址S3 S2 S1 S0 M CN WE A9 A8A BCUA5UA0 0 00 0 0 0 0 0 0 1 10 0 00 0 01 0 00 1 0 0 0 0 0 10 0 0 0 0 0
15、0 1 11 1 01 1 01 1 0 0 0 0 0 1 0 0 20 0 0 0 0 0 0 0 11 0 00 0 00 0 10 0 1 0 0 0 0 30 0 0 0 0 0 0 0 11 1 00 0 00 0 00 0 0 1 0 0 0 40 0 0 0 0 0 0 0 10 1 10 0 00 0 00 0 0 1 0 1 0 50 0 0 0 0 0 0 1 10 1 00 0 10 0 00 0 0 1 1 0 0 61 0 0 1 0 1 0 1 10 0 11 0 10 0 00 0 0 0 0 1 0 70 0 0 0 0 0 0 0 11 1 00 0 00
16、0 00 1 1 0 0 1 1 00 0 0 0 0 0 0 0 00 0 10 0 00 0 00 0 0 0 0 1 1 10 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 0 0 1 1 1 20 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 0 1 1 1 1 30 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 1 1 1 0 1 40 0 0 0 0 0 0 1 11 1 01 1 01 1 00 1 0 1 1 0 1 50 0 0 0 0 0 0 1 11 1 01 1 01 1 00 1 1 0 1 0 1 6
17、0 0 0 0 0 0 0 0 11 1 00 0 00 0 00 0 1 1 1 1 1 70 0 0 0 0 0 0 0 10 1 00 0 00 0 00 1 0 1 0 1 2 00 0 0 0 0 0 0 1 11 1 01 1 01 1 00 1 0 0 1 0 2 10 0 0 0 0 0 0 1 11 1 01 1 01 1 00 1 0 1 0 0 2 20 0 0 0 0 0 0 0 10 1 00 0 00 0 00 1 0 1 1 1 2 30 0 0 0 0 0 0 1 10 0 00 0 00 0 00 0 0 0 0 1 2 40 0 0 0 0 0 0 0 00
18、 1 00 0 00 0 00 1 1 0 0 0 2 5 0 0 0 0 0 1 1 1 00 0 01 0 10 0 00 0 0 0 0 1 2 60 0 0 0 0 0 0 0 11 0 10 0 01 1 00 0 0 0 0 1 2 70 0 0 0 0 1 1 1 00 0 01 0 10 0 00 1 0 0 0 0 3 00 0 0 0 0 1 1 0 10 0 01 0 10 0 00 1 0 0 0 1 3 10 0 0 0 0 0 1 0 10 0 00 0 10 0 00 0 0 0 0 1 3 20 0 0 0 0 0 0 0 1 1 1 00 0 00 0 0 0
19、 1 1 0 1 1 3 30 0 0 0 0 0 0 0 1 0 1 1 0 0 00 0 00 1 1 1 0 0 3 40 0 0 0 0 0 0 1 1 0 1 00 0 10 0 0 0 1 1 1 0 1 3 50 1 1 0 0 1 0 1 10 0 11 0 10 0 00 0 0 0 0 13.6 组装和调试本设计采用的方法是联机读/写程序。按照规定格式,将机器指令及微指令二进制表编辑成十六进制格式文件。打开电源,运行联机软件的CMP.EXE,根据所使用的PC微机串口选择键入1或2,测试通过后,进入主菜单,如下表:表4 联机软件主菜单F1_EditF2_P/W PRF3_R/
20、W CRF4_LoadF5_SaveF6_DebugF7_WaveF8_Exit进入主菜单后,用传送文件功能(F4_Load)将该格式文件传入实验系统。此功能键可完成对程序存储器及控制存储器的写入。按下“F4”,系统提示输入需装入的文件名,输入后回车,系统开始装入程序,成功后,屏幕显示“装入完成”。装入的文件必须在当前路径,文件格式应符合全屏幕编辑的规定。若文件不在当前路径,拷贝至当前目录即可。运行程序单步运行程序A使编程开关处于“RUN”状态,STEP为“STEP”状态,STOP为“RUN”状态。B拨动总清开关CLR(01),微地址清零,PC计数器清零,程序首地址为00H。C单步运行一条微指
21、令,每按动一次START键,即单步运行一条微指令。对照微程序流程图,观察微地址显示灯是否和流程一致。D当运行结束后,可检查存数单元(0B)中的结果是否和理论值一致。连续运行程序A使“STATE UNIT”中的STEP开关置于“EXEC”状态,STOP开关置为“RUN”状态。B拨动CLR开关,清微地址及PC计数器,按动START,系统连续运行程序,稍后将STOP拨至“STOP”时,系统停机。C停机后,可检查存数单元(0B)结果是否正确。若联机运行程序时,按下“F6”进入调试界面进入DEBUG调试界面,总清开关CLR(01)清零后,程序首地址为00H,按相应功能键即可联机运行、调试程序。执行完一条
22、指令后,计算机会根据指令的执行过程在屏幕上画出数据流图,有效的控制信号用高亮显示,并将下一条微指令显示在屏幕下方,可以直接地观察到指令的执行过程。1:单步执行机器指令。一条机器指令对应一段微程序,每执行一条微指令,计算机同时显示数据流图,执行完整条机器指令后停机,此时可以再键入“F1”继续单步下一条机器指令。2:单步微程序。每按动一次“F2”,单步执行一条微指令,同时显示数据流图。3:连续运行。按下“F3”后,系统开始连续运行程序,同时显示数据流图。此时按下任意键可终止程序运行。注意,按任意键有可能不会立即终止程序运行,只有当一条机器指令运行完后,此命令才有效。4:返回主菜单,按ESC键也可完
23、成。4、 课程设计总结本次课程设计,在李老师的帮助和指导下,以及三个组员的积极配合,努力工作,有了一周时间基本实现了课程设计的基本要求和功能。通过紧张有序的几天的课程设计实践,不仅让我们对基本模型机原理和微程序的编辑、写入方法有了进一步的了解, 也让我们觉得自己的动手能力有了很大的提高;在课程设计中自己思考解决遇到的问题,理论知识得到实际体验,这巩深化和巩固了自己的知识结构;组员之间紧密配合工作,更加理解了团队合作精神。本设计的难点在于测试字位P(1)、P(4)的功能,只要理解了它是怎么实现程序的顺序、分支、循环运行的,其它的步骤即可迎刃而解。通过这次实践,使我们懂得,只要自己在每一次实践中都
24、能仔细思考,能亲自动手,课程设计中遇到的难点都可以顺利解决。每个同学都要多操作演示,理解各个步骤的意义,只有多操作才能从中发现问题,及时解决问题,从而更好的掌握实验的基本原理。课程设计目的除工作量和设计质量之外,更重要的是认真去对待,通过设计实践对理论知识有了更深刻的认识,并从中学到书本上学不到的知识。 5、附录附录1:数据通路图图1 基本模型机数据通路图附录2:微程序流程图图2 基本模型机微程序流程图附录3:实验接线图图3 基本模型机实验接线图附录4:实验程序及微程序实验程序:$P0000$P0110$P0210$P0320$P0411$P0530$P0611$P0700$P0850$P09
25、10$P0A20$P0B12$P0C30$P0D12$P0E40$P0F00$P1O01$P11FF$P12FF实验微程序:$M00018110$M0101ED82$M0200C048$M0300E004$M0400B005$M0501A206$M06959A01$M0700E019$M08001001$M0901ED83$M0A01ED87$M0B01ED8E$M0C01ED96$M0D01ED9A$M0E00E00F$M0F00A015$M1001ED92$M1101ED94$M1200A017$M13018001$M14002018$M15070A01$M1600D181$M17070A10$M18068A11$M19028201$M1A00E01B$M1B00B01C$M1C01A21D$M1D659A01附录5:参考文献1 郭承恩,钟旭. 计算机组成原理实验指导. 长沙:长沙大学,2009.2 唐朔飞. 计算机组成原理. 北京:高等教育出版社,2008.