计算机组成原理课程设计设计基本模型机的指令系统_第1页
计算机组成原理课程设计设计基本模型机的指令系统_第2页
计算机组成原理课程设计设计基本模型机的指令系统_第3页
计算机组成原理课程设计设计基本模型机的指令系统_第4页
计算机组成原理课程设计设计基本模型机的指令系统_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程设计说明书题目: 计算机组成原理课程设计 院 系: 计算机科学与工程学院 专业班级: 计算机08-6 学 号: 2008302974 学生姓名: 指导教师: 2010年 12 月 11 日 安徽理工大学课程设计(论文)任务书 计算机科学与工程 院系 硬件 教研室学 号2008302974学生姓名专业(班级)计算机08-6设计题目设计基本模型机的指令系统实现异或设计技术参数计算机组成原理教学实验仪一台,排线若干;pc机一台dj-cpt816组成原理实验软件模型机的指令系统,微程序,微指令,程序设计要求设计基本模型机的指令系统(包括逻辑与,逻辑或,算术加,减运算,输入,输出,转移,传送指令)在

2、已编写的指令系统上设计程序实现异或按时提交设计报告工作量 论文不少于15页,附带必要的图表工作计划设计课一:分析设计要求,制定设计计划,完成指令系统设计,并在cpth实验软件中形成.mic文件设计课二:分析设计编写程序实现异或设计课三:在微机和试验仪的支持下,调入指令系统和程序,运行,测试,完成系统的设计设计课四:提交设计报告参考资料1李敬兆. 8086/8088和基于arm核汇编语言程序设计 2清华大学出版社.计算机组成原理与设计实验指导3白中英.计算机组成原理指导教师签字教研室主任签字 2010年 12月 11 日 指导教师评语:成绩: 指导教师: 年 月 日安徽理工大学课程设计(论文)成

3、绩评定表摘要在飞速发展的科技社会中,计算机被应用到各行各业,各个领域中。人们渐渐地步入自动化、智能化的生活阶段。本次计算机组成原理课程设计课题是基本模型机的设计与实现。利用cpu与简单模型机来实现计算机组成原理课程及实验中所学到的实验原理和编程思想,硬件设备自拟,编写指令的应用程序,用微程序控制器实现了一系列的指令功能,最终达到将理论与实践相联系。本次设计完成了各指令的格式以及编码的设计,实现了各机器指令微代码,设计基本模型机的指令系统(包括逻辑与,逻辑或,算术加,减运算,输入,输出,转移,传送指令),形成具有一定功能的完整的应用程序。简言之,这次设计,计算机数据通路的控制将由微程序控制器来完

4、成,cpu从内存中取出一条机器指令到指令执行结束的一个指令周期,全部由微指令组成的序列来完成,即一条机器指令对应一条微程序,一条微程序又有若干微指令组成,一条微指令的功能由24位操作信号(即控制位)实现。这一课题的实现不仅使我们对各种微指令有了熟练的掌握,更对有关知识的深入学习打下基础。关键词:指令系统,微指令,机器指令,异或目录1系统分析11.1 设计背景11.2 设计目标32系统设计42.1 模型机的指令设计42.2 模型机的微指令设计52.3 异或程序设计103系统实现123.1 程序编写123.2 程序分析123.3 调试结果134总结144.1 设计体会144.2 系统改进14参考文

5、献15iv安徽理工大学课程设计(论文)1.系统分析1.1 设计背景通过计算机组成原理理论课和几次实验的学习,尝试设计八类机器指令,并编写相应的微程序,完成由基本单元电路构成一台基本模型机,再经过调试指令和模型机使其在微程序的控制下自动产生各部件单元的正常工作控制信号。本课程设计的模型机的指令码为8位,根据指令类型的不同,可以有0到2个操作数,指令码的最低两位用来选择r0-r3寄存器。在微程序控制方式下,用指令码作为微地址来寻址微程序存储器,找到执行该指令的微程序。在本模型机中,一条指令最多分为四个状态周期,一个状态周期为一个时钟脉冲,每个状态周期产生不同的控制逻辑,实现模型机的各种功能。模型机

6、有24位控制位以控制寄存器的输入输出,选择运算器的运算功能,存储器的读写。简言之,这次设计,计算机数据通路的控制将由微程序控制器来完成,cpu从内存中取出一条机器指令到指令执行结束的一个指令周期,全部由微指令组成的序列来完成,即一条机器指令对应一条微程序,一条微程序又有若干微指令组成,一条微指令的功能由24位操作信号(即控制位)实现。24位控制位分别介绍如下: xrd:外部设备读信号,当给出个外设的地址后,输出此信号,从指定外设读数据。 emwr:程序存储器em写信号 emrd:程序存储器em读信号 pcoe:将程序计数器pc的值送到地址总线abus上emen:将程序存储器em与数据总线dbu

7、s接通,有emwr和emrd决定是将dbus数据写入em中,还是从em读出数据到dbusiren:将程序存储器em独处的数据打入指令寄存器ir和微指令计数器upceint:中断返回时清除中断响应和中断请求标志,便于下次中断。elp:pc打入允许,与指令寄存器的ir2.,ir3位结合,控制程序跳转。maren:将数据总线dbus上数据打入地址寄存器marmaroe:将地址寄存器mar的值送到地址总线abus上outen:将数据总线dbus上数据送到输出端口寄存器out里sten:将数据总线dbus上数据存到堆栈寄存器里rrd:读寄存器组r0-r3,寄存器r?的选择由指令的最低两位决定rwr:写寄

8、存器组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 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_

9、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 设计目标本课程设计要求实现机器指令:zhn(传送),input(输入), yu(逻辑与),huo(逻辑或),output(输出),jia(算术加),jian(算术减),jc,jz,jmp(转移)和fei (逻辑非)。要包括直接寻址,立即数寻址,寄存器寻址,间接寻址四种寻址方式。最后要在设计的指令系统基础上,编写程序实现异或。2.系统设计2.1 模型机的

10、指令设计根据设计要求,设计出的指令要包括传送,逻辑与,逻辑或,算术加,减运算,输入,输出,转移这八种指令,且要运用直接寻址,立即数寻址,寄存器寻址,间接寻址四种寻址方式。由此设计出指令表如表3:表3 指令表指令类型助记符机器码功能取指_fetch_000000xxirpc算术加jia a,r?000001xx r?+aajia a, r?000010xx r?+aajia a,*000011xx *(*)+aajia a,#*000100xx #*+aa算术减jian a,r?001001xx r?-aajian a,r?001010xxr?-aajian a,*001011xx *a-(*)

11、ajian a,#*001100xx #*a-*a输入input010001xx k23k16a输出output010010xxaout寄存器逻辑与yu a,r?010011xxr?&aayu a,r?010100xxr?&aayu a,*010101xx *(*)&aayu a,#*010110xx #*&aa逻辑或huo a,r?010111xxr?|aahuo a,r?011000xxr?|aahuo a,*011001xx *(*)|aahuo a,#*011010xx #*|aa逻辑非fei a011011xxa取反传送zhn r?,a100000xxar?zhn *,a100010

12、xx *a(*)zhn r?,#*100011xx #*r?zhn a,r?011100xxr? azhn a,#*011111xx #*a转移jc *100100xx *cf=1则*pcjz *100101xx *zf=1则*pcjmp *100111xx *2.2 模型机的微指令设计 (1)微指令的24位控制位如下: xrd emwr emrd pcoe emen iren eint elp maren marde outen sten rrd rwr cn fen x2 x1 x0 wen aen s2 s1 s0(2)设计出的微指令集如表4:表4 微指令集表助记符 状态微地址微程序_f

13、etch_t000cbffff01ffffff02ffffff03ffffffjia a,r?t204fff7eft105fffe90t006cbffff07ffffffjia a,r?t308ff77fft209d7bfeft10afffe90t00bcbffffjia a,*t30cc77ffft20dd7bfeft10efffe90t00fcbffffjia a,#*t210c7ffeft111fffe90t012cbffff13ffffffjiac a,r?t214fff7eft115fffe94t016cbffff17ffffffjiac a,r?t318ff77fft219d7bf

14、eft11afffe94t01bcbffffjiac a,*t31cc77ffft21dd7bfeft11efffe94t01fcbffffjiac a,#*t220c7ffeft121fffe94t022cbffff23ffffffjian a,r?t224fff7eft125fffe91t026cbffff27ffffffjian a,r?t328ff77fft229d7bfeft12afffe91t02bcbffffjian a,*t32cc77ffft22dd7bfeft12efffe91t02fcbffffjian a,#*t230c7ffeft131fffe91t032cbffff

15、33ffffffjianc a,r?t234fff7eft135fffe95t036cbffff37ffffffjianc a,r?t338ff77fft239d7bfeft13afffe95t03bcbffffjianc a,*t33cc77ffft23dd7bfeft13efffe95t03fcbffffjianc a,#*t240c7ffeft141fffe95t042cbffff43ffffffinputt144ffff17t045cbffff46ffffff47ffffffoutputt148ffdf9ft049cbffff4affffff4bffffffyu a,r?t24cfff

16、7eft14dfffe93t04ecbffff4fffffffyu a,r?t350ff77fft251d7bfeft152fffe93t053cbffffyu a,*t354c77ffft255d7bfeft156fffe93t057cbffffyu a,#*t258c7ffeft169fffe93t05acbffff5bffffffhuo a,r?t25cfff7eft15dfffe92t05ecbffff5fffffffhuo a,r?t360ff77fft261d7bfeft162fffe92t063cbffffhuo a,*t364c77ffft265d7bfeft166fffe92

17、t067cbffffhuo a,#*t268c7ffeft169fffe92t06acbffff6bfffffffei at16cfffe96t06dcbffff6effffff6fffffffzhn a,r?t170fff7f7t071cbffff72ffffff73ffffffzhn a,r?t274ff77fft175d7bff7t076cbffff77ffffffzhn a,*t278c77ffft179d7bff7t07acbffff7bffffffzhn a,#*t17cc7fff7t07dcbffff7effffff7fffffffzhn r?,at180fffb9ft081cb

18、ffff82ffffff83ffffffzhn r?,at284ff77fft185b7bf9ft086cbffff87ffffffzhn *,at288c77ffft189b7bf9ft08acbffff8bffffffzhn r?,#*t18cc7fbfft08dcbffff8effffff8fffffffjc *t190c6fffft091cbffff92ffffff93ffffffjz *t194c6fffft095cbffff96ffffff97ffffffjmp *t198c6fffft099cbffff9affffff9bffffff2.3 异或程序设计程序设计思路:有等式则有程

19、序流程图如图5:图5 程序流程图3.系统实现3.1 程序编写 按照系统分析中得到的指令集,在dj-cpt816实验软件中新建指令系统,生成.mac文件和.mic文件。在dj-cpt816实验软件中新建.asm文件,输入程序: inputzhn r0,ainputzhn r1,afei azhn r2,azhn a,r0fei azhn r3,azhn a,r0yu a,r2zhn r2,azhn a,r1yu a,r3zhn r3,azhn a,r2jia a,r3outputend3.2 程序分析input /准备输入第一个二进制数zhn r0,a /输入第一个二进制数到寄存器r0input

20、 /准备输入第二个二进制数zhn r1,a /输入第一个二进制数到寄存器fei a /对累加器a里面的值取反zhn r2,a /把a里面的值存到寄存器r2中zhn a,r0 /把r0里面的值存到寄存器a中fei a /对累加器a里面的值取反zhn r3,a /把a里面的值存到寄存器r3中zhn a,r0 /把r0里面的值存到寄存器a中yu a,r2 /对a和r2里面的值进行与操作,并将结果放入a中zhn r2,a /把a里面的值存到寄存器r2中zhn a,r1 /把r1里面的值存到寄存器a中yu a,r3 /对a和r3里面的值进行与操作,并将结果放入a中zhn r3,a /把a里面的值存到寄存

21、器r3中zhn a,r2 /把r2里面的值存到寄存器a中jia a,r3 /把a和r3中的值进行加操作,并将结果放入a中output /输出a中的值end3.3 调试结果把计算机与试验仪器相连接,打开试验仪器,导入新建的指令系统,编译下载该asm文件,装载正确后单步运行,检查运行结果是否符合要求。实验结果:1第一次置k23k16 为00101000,第二次置k23k16为01011111,输出的是01110111 2第一次置k23k16 为00101111,第二次置k23k16为00101101,输出的是00000010 4.总结4.1 设计体会经过为期四周的课程设计,一路走下来发现自己存在的问题还是非常多的,当初拿到课程设计题目的时候由于相关知识的缺乏,自己并没有很好的设计思路,在通过和同学的探讨以及查阅相关资料之后,发现有时候同学之间的交流还是能够学到很多东西的。本次课程设计要求我们设计一台微程序控制的模型机,设计基本

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论