计算机组成原理课程设计2.doc

上传人:文库蛋蛋多 文档编号:2882295 上传时间:2023-03-01 格式:DOC 页数:19 大小:193.50KB
返回 下载 相关 举报
计算机组成原理课程设计2.doc_第1页
第1页 / 共19页
计算机组成原理课程设计2.doc_第2页
第2页 / 共19页
计算机组成原理课程设计2.doc_第3页
第3页 / 共19页
计算机组成原理课程设计2.doc_第4页
第4页 / 共19页
计算机组成原理课程设计2.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《计算机组成原理课程设计2.doc》由会员分享,可在线阅读,更多相关《计算机组成原理课程设计2.doc(19页珍藏版)》请在三一办公上搜索。

1、课程设计说明书题目: 计算机组成原理课程设计 院 系: 计算机科学与工程学院 专业班级: * 学 号: * 学生姓名: * 指导教师: * 2011年 6月 29 日课程设计(论文)任务书 计算机科学与工程 院系 计算机硬件 教研室学 号*学生姓名*专业(班级)*设计题目设计一指令系统设计技术参数计算机组成原理教学实验仪一台,排线若干;PC机一台*DJ-CPT816组成原理实验软件模型机的指令系统,微程序,微指令,程序通过CPTH计算机组成原理教学实验系统设计指令/微指令系统。设计要求1.在基本模型机的基础上改进并实现IN,LDA,OUT,JMP,ADD,SUB等6条指令的功能。2.设计相应的

2、微程序。3. 在实验箱上实现指令系统。工作量 论文不少于15页,附带必要的图表工作计划学习微程序控制器,了解实验箱中的各部分结构。分析题目,查阅资料,画出流程图,设计出微指令。按实验要求连线,编写程序在实验箱上运行。写出课程设计报告。参考资料1 陈书开,王毅.计算机组成与系统结构.武汉:武汉大学出版社,20052 张功萱.计算机组成原理.北京:清华大学出版社,2005年09月3 王诚.计算机组成原理实验指导书.北京:清华大学出版社,20024 杨小龙.计算机组成原理与系统结构实验教程.西安:西安电子科技大学出版社,20045 袁开榜.计算机组成原理.北京:高等教育出版社,1995指导教师签字教

3、研室主任签字 2011年 6月 29 日 指导教师评语:成绩: 指导教师: 年 月 日课程设计(论文)成绩评定表目录1系统分析11.1 设计背景11.2 设计的原理31.3模型机的逻辑框图32指令系统及其指令格式42.1指令系统42.2 指令的格式53微程序的设计及其实现的方法63.1微程序入口地址的形成73.2微指令格式的设计83.3后续微地址的产生方法83.3程序执行流程94程序的实现104.1源程序,程序的指令代码及微程序104.2 程序的指令代码104.3 微程序104.4 程序调试11总结13参考文献14摘要在飞速发展的科技社会中,计算机被应用到各行各业,各个领域中。人们渐渐地步入自

4、动化、智能化的生活阶段。本次计算机组成原理课程设计课题是基本模型机的设计与实现。利用CPU与简单模型机来实现计算机组成原理课程及实验中所学到的实验原理和编程思想,硬件设备自拟,编写指令的应用程序,用微程序控制器实现了一系列的指令功能,最终达到将理论与实践相联系。本次设计完成了各指令的格式以及编码的设计,实现了各机器指令微代码,设计基本模型机的指令系统(包括逻辑与,逻辑或,算术加,减运算,输入,输出,转移,传送指令),形成具有一定功能的完整的应用程序。简言之,这次设计,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期,全部由微指令组成的序列来

5、完成,即一条机器指令对应一条微程序,一条微程序又有若干微指令组成,一条微指令的功能由24位操作信号(即控制位)实现。这一课题的实现不仅使我们对各种微指令有了熟练的掌握,更对有关知识的深入学习打下基础。关键词:指令系统,微指令,机器指令,加减运算1.系统分析1.1 设计背景通过计算机组成原理理论课和几次实验的学习,尝试设计八类机器指令,并编写相应的微程序,完成由基本单元电路构成一台基本模型机,再经过调试指令和模型机使其在微程序的控制下自动产生各部件单元的正常工作控制信号。本课程设计的模型机的指令码为8位,根据指令类型的不同,可以有0到2个操作数,指令码的最低两位用来选择R0-R3寄存器。在微程序

6、控制方式下,用指令码作为微地址来寻址微程序存储器,找到执行该指令的微程序。在本模型机中,一条指令最多分为四个状态周期,一个状态周期为一个时钟脉冲,每个状态周期产生不同的控制逻辑,实现模型机的各种功能。模型机有24位控制位以控制寄存器的输入输出,选择运算器的运算功能,存储器的读写。简言之,这次设计,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期,全部由微指令组成的序列来完成,即一条机器指令对应一条微程序,一条微程序又有若干微指令组成,一条微指令的功能由24位操作信号(即控制位)实现。24位控制位分别介绍如下: XRD:外部设备读信号,当给出

7、个外设的地址后,输出此信号,从指定外设读数据。 EMWR:程序存储器EM写信号 EMRD:程序存储器EM读信号 PCOE:将程序计数器PC的值送到地址总线ABUS上EMEN:将程序存储器EM与数据总线DBUS接通,有EMWR和EMRD决定是将DBUS数据写入EM中,还是从EM读出数据到DBUSIREN:将程序存储器EM独处的数据打入指令寄存器IR和微指令计数器uPCEINT:中断返回时清除中断响应和中断请求标志,便于下次中断。ELP:PC打入允许,与指令寄存器的IR2.,IR3位结合,控制程序跳转。MAREN:将数据总线DBUS上数据打入地址寄存器MARMAROE:将地址寄存器MAR的值送到地

8、址总线ABUS上OUTEN:将数据总线DBUS上数据送到输出端口寄存器OUT里STEN:将数据总线DBUS上数据存到堆栈寄存器里RRD:读寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定RWR:写寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定CN:决定运算器是否带进位移位,CN=1带进位,CN=0不带进位FEN:将标志位存入ALU内部的标志寄存器X2,X1,X0三位组合来译码选择将数据送到DBUS上的哪个寄存器,见表1WEN:将数据总线DBUS的值打入工作寄存器W中AEN:将数据总线DBUS的值打入累加器A中S2,S1,S0三位组合决定ALU做何种运算,见表2表1X2 X1

9、X0输出寄存器0 0 0IN_OE 外部输入门0 0 1IA_OE 中断向量0 1 0ST_OE 堆栈寄存器0 1 1PC_OE PC寄存器1 0 0D_OE 直通门1 0 1R_OE 右移门1 1 0L_OE 左移门1 1 1没有输出表2S2 S1 S0功能0 0 0A+W 加0 0 1A-W 减0 1 0A|W 或0 1 1A & W 与1 0 0A+W+C 带进位加1 0 1A-W-C 带进位减1 1 0A A取反1 1 1A 输出A1.2设计的原理计算机中CPU是核心,它是通过指令和微指令的执行来工作的。指令是计算机要完成的某一项功能。它对应到执行的过程中是一段微程序。一段微程序含多条

10、为指令,而一条微指令又含多个微命令。一个微命令驱动某个硬件部件执行某种操作。通过这样一个关系,从而达到由计算机指令来驱动计算机各个硬部件的协调工作以实现一条指令的执行。在各个模块实验中,个模块的控制信号都是有实验者手动模拟产生的。而在真正的实验系统中,模型机的运行是在微程序的控制下进行的,可实现特定的指令功能。在本实验平台中,模型机从内存中取出、解释、执行机器指令都将由微指令和与之配合的时序来完成,即一条机器指令由对应一个微程序。1.3.模型机的逻辑框图简单的模型计算机是由算术逻辑单元、微程序单元、堆栈寄存器单元、累加器,启停、时序单元、总线和存储器单元组成。在模型机中,我们将要实现RAM的读

11、写指令,寄存器的读写指令,跳转指令,ALU的加、减、与、或指令。把通用寄存器作为累加器A,进行左、右移等指令,整体构成一个单累加器多寄存器的系统。运算器由2片74L181构成8位字长的ALU单元。2片74LS374作为2个数据锁存器(DR1、DR2),8芯插座ALU-IN作为数据输入端,可通过短8芯扁平电缆,把数据输入端连接到数据总线上。数据输入锁存器DR1的EDR1为低电平,并且D1CK有上升沿时,那来自数据总线的数据打入锁存器DR1。同样使EDR2为低电平、D2CK有上升沿时把数据总线上的数据打入数据锁存器DR2。整机的逻辑框图如下:2.指令系统及其指令格式2.1指令系统 MOV A ,

12、#10 ; /将立即数10传送到累加器A中MOV R0, #20 ; /将立即数20传送到寄存器R0中 ADD A, R0 ; /将累加器A和寄存器R0中的内容相加,结果送入累加器A中MOV R1, #10 ; /将立即数10传送到寄存器R1中SUB A, R1 ; /将累加器A中的内容减去寄存器R1中的内容,结果送入累加器A;STA 10 ; /A-RAMHALT ; /停机2.2指令格式一般指令由操作码和操作码组成,如下所示:操作码地址码 计算机操作数寻址方式及其编码的格式如下:1、 直接寻址方式:如双字节指令STA addr (A)-addr第1字节 I7I6I5I4I3I2I1I0 操

13、作码 第2字节A7A6A5A4A3A2A1 操作地址addr2、 寄存器直接寻址:指令字节中含有寄存器选择码,决定选哪个寄存器进行操作。如:单字节指令MOV A,Rj (Ri)-AMOV指令采用单字节指令,其格式如下: 单字节I7I6I5I4I3I2I1I0 操作码与Ri选择码如:双字节指令MOV Ri, #data data-Ri第1字节 I7I6I5I4I3I2I1I0 操作码及Ri选择码 第2字节D7D6D5D4D3D2D1D0 data 3、寄存器间接寻址 如:单字节指令: MOV A,Ri (Ri)-A Ri选择码I7 I6I5I4I3I2I1I0 操作码4、立即数寻址如:MOV A

14、, #data data-AMOV Ri, #data data-Ri 第1字节I7I6I5I4I3I2I1I0 操作码及Ri选择码 第2字节D7D6D5D4D3D2D1D0 data3.微程序的设计及其实现的方法3.1 微程序入口地址的形成在本实验平台的硬件设计是采用的24位微指令,若微指令采用全水平不编码纯控制场的格式,那么至多可有24个微操作控制信号,可由微代码直接实现。若采用多组编码译码,那么24位的微代码通过二进制译码可实现2n个互斥的微操作控制信号。由于模型机指令系统规模较小,功能也不太复杂,所以采用全水平不编码纯控制场的微指令格式。在模型机中,用指令操作码的高4位作为核心扩展成8

15、位的微程序入口地址MD0-MD7。这种方法称为“按操作码散转”(如下表所示)。微程序首地址形成MD7MD6MD5MD4MD3MD2MD1MD0001716151411按操作码散转指令操作码微程序首地址MD7、MD6I7I6I5I4MD1、MD0MD7MD0000001003H000011007H00010100BH00011100FH001001013H001011017H00110101BH00111101FH010001023H010011027H01010102BH01011102FH011001033H011011037H01110103BH01111103FH此次实验程序中的微程序指

16、令如下表:指令助记符微地址有效值微指令十六进制编码MOV A,RI0FH10H11H12HFF7BFF4DFFFFMOV Ri,A13H14H15H16H7FBDFF4DFFFFMOV A,#data17H18H19H1AHDDFBFF4DFFFFSTA addr23H24H25H26HD5FFFFBBFDFF4DFFFFHALT3FHFFDFFF3.2微指令格式的设计一条微指令的一般格式是如下图:判别测试下地址操作控制顺序控制3.3后续微地址的产生方法由于本系统中指令系统规模不大,功能较简单,微指令采用全水平、不编码的方式,每一个微操作控制信号由一位微代码来表示,24位微代码至少可表示24个

17、不同的微操作控制信号。用增量方式来控制微代码的运行顺序,每一条指令的微程序连续存放在微指令存储器连续的单元中。在本系统内,MLD为置微地址的控制信号,MCK为工作脉冲。当MLD=0、MCK有上沿时,把MD0MD7的值作为微程序的地址,打入微地址寄存器。当MLD=1、MCK有上升沿时,微地址计数器自动加1。 由于模型机已经确定了指令系统,微指令采用全水平不编码纯控制场的格式,微程序的入口地址采用操作码散转方式,微地址采用计数增量方式,所以可确定模型机中时序单元中所产生的每一拍的作用。为了更好地观察实验的各个中间过程中各寄存器的值,由监控单元产生一个PLS-O的信号来控制时序产生。PLS-O信号经

18、过时序单元的处理产生了4个脉冲信号。4个脉冲信号组成一个微周期,为不同的寄存器提供工作脉冲。 PLS1: 微地址寄存器的工作脉冲,用来设置微程序的首地址及微地址加1。PLS2: PC计数器的工作脉冲,根据微指令的控制实现PC计数器加1和重置PC计数器(如跳转指令)等功能。PLS3: 把24位微指令打入3片微指令锁存器PLS4: 把当前总线上的数据打入微指令选通的寄存器3.4此次实验每条指令的执行流程如下:周期微操作指令助记符T0T1T2T3取指微指令PC-BUS-RAMRAM-BUS-IR1 MOV A,#10BUS-ARAM-BUS-IR1RAM-BUS-IR1 MOV R0,#20RAM-

19、R0RAM-BUS-IR1 ADD A, R0A-锁存器DR1R0-锁存器DR2ALU-ARAM-BUS-IR1MOV R1,#10RAM-R1RAM-BUS-IR1SUB A,R1A-锁存器DR1R1-锁存器DR2ALU-ARAM-BUS-IR1STA 10RAMBUSIR2A-RAM(10H)RAM-BUS-IR1 HALT置模型机为停机状态 4. 源程序,程序的指令代码及微程序 4.1源程序MOV A,#10MOV R0,#20ADD A,R0MOV R1,#10SUB A,R1MOV R1,ASTA 10HALT4.2程序的指令代码内存地址指令助记符指令码或立即数说明00HMOV A,

20、#105FH立即数 10H-A01H10H02HMOV R0,#206CH立即数 20H-寄存器R003H20H04HADD A,R00CHA内容+R0内容-A05HMOV R1,#106DH立即数10H-寄存器R106H10H07HSUB A,R11DHA内容-R1内容-A08HSTA 108FH将A内容写入RAM地址10H09H10H0AHHALTFFH停机4.3微程序MOV A,#10: 00004D,FF,FF 取指指令 0017DD,FB,FF DbusA MOV R0,20 00364D,FE,FF 取指指令 0013FF,BD,FF ADbusRIADD A,R0: 001C4D

21、,FF,FF 取指指令 0037FFFCFB ADbusDR1 0038DDFF7B RAMDbusDR2 0039FFFBBB ALUAMOV R1,10: 003A4DFFFF 取指指令 0013FFBDFF ADbusRISUB A,R1: 001C4D,FF,FF 取指指令 0037FFFCFB ADbusDR1 0038DDFF7B RAMDbusDR2 0039FFFBBB ALUASTA 10 : 00144DFFFF 取指指令 0023D5FFFF DbusIR2 0024BBFDFF IR2Dbus; ADbusRAMHALT : 00254DFFFF 取指指令 0003FF

22、FDFFF 停机4.4程序的运行调试首先启动HKCPT软件,打开主窗口.在代码窗口输入汇编源程序,然后单步运行,微单步运行过程如下表格所示:微地址数据流程数据总线地址总线操作寄存器00H取指令RAM-BUS-IR15FH00HIR1=5FHMOV A,#5517HBUS-A55H01HA=55H18H取指微指令RAM-BUS-IR16CH02HIR1=6CHMOV R0, #661BH66H03H寄存器R0=66H1CH0CH04HIR1=0CHADD A, R003H55H无效DR1=55H04H66H无效DR2=66H05HBBH无效A=BBH06H6DH05HIR1=6DHMOV R1,

23、 #331BH33H06H寄存器R1=33H1CH1DH07HIR1=1DHSUB A, R107HBBH无效DR1=1DH08H33H无效DR2=33H09H88H无效A=88H0AH8FH08HIR1=8FHSTA 1023H10H09HIR2=10H24H88H10HRAM(10)=88H25HFFH0AHIR1=FFHHALT3FH无效无效置停止状态4.总结4.1 设计体会通过近一个星期的课程设计,结果设计出来了这么一个看似很一般的指令系统。但是我感觉从中还是学习到了不少东西。把以前从书本上学习到的东西完全应用到实践当中。一开始在书上看到的一些什么指令系统、微指令等等东西的时候不知所云

24、,因为它们都是计算机能够识别的,对我来说就很难认识了;而且它们听上去又很抽象,感觉跟人的思维完全不同,又不能从形象的角度来见识见识它们,所以很难理解。但是在这次课程设计后我对它们就有了一个形象化的认识啦。实验仪器完全有助于我去理解这些指令到底是如何实现特定的功能的。而且,从所给的软件中很容易编写出自己的指令系统,只是一个指令的详细设计还是比较难的,因为有24位要按照所完成的功能编写0或1,这是此次课程设计的关键,但是如果掌握了各个位的作用,同时又很清楚自己设计的指令要完成的功能,那么设置0和1就不会那么麻烦啦。最初,自己一个人看看书,搞搞软件,用用实验仪器就可以轻松搞定。可是,我错了,因为看了

25、两天都没什么头绪,原因很简单,因为不知道这24如何去编写,后来经过询问老师、同学,都很热情的给予了我帮助,从他们身上我也学习到了很多很多有用的东西。而且当自己完成任务之后,还主动帮助了其它有困难的同学。本来可以说是一件很枯燥无味的课程设计,结果却成了大家一起进步的阶梯。所以我觉得,一次程序设计最主要的目的不是让我们真正把正确的东西做出来在老师、同学们面前炫耀的;而是在这个过程中我们学习到的做为一个团队,做为一个班级的一员,我们不能只自救追求个人的荣誉,更重要的是要和大家、各自己的团队学会合作。这些在我们走进自己的工作岗位上时,是我们每个人都应该也是必须学会的。当然这此实验也培养了我们实践为主的良好的科学研究精神。加强了每个人对计算机的进一步认识。增强了我们的实践能力。为今后的工作打下了良好的基础。参考文献1 陈书开,王毅.计算机组成与系统结构.武汉:武汉大学出版社,20052 张功萱.计算机组成原理.北京:清华大学出版社,2005年09月3 王诚.计算机组成原理实验指导书.北京:清华大学出版社,20024 杨小龙.计算机组成原理与系统结构实验教程.西安:西安电子科技大学出版社,20045 袁开榜.计算机组成原理.北京:高等教育出版社,1995

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号