计算机组成原理课程设计_第1页
计算机组成原理课程设计_第2页
计算机组成原理课程设计_第3页
计算机组成原理课程设计_第4页
计算机组成原理课程设计_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、课程设计说明书计算机组成原理课程设计 院 系:计算机科学与工程学院 专业班级:计科(16级4班) 学 号: 学生姓名 指导教师:X老师 2018年6月20日安徽理工大学课程设计(论文)任务书 计算机科学与工程 学院 学 号学生姓名专业(班级)设计题目设计指令系统设计技术参数1.本系统采用DJ-CPTH超强型计算机组成原理教学实验系统搭建电路图,在实验箱上实现指令系统。2.利用软件工程中的可行性研究以及分析方法,进行系统分析。设计要求1. 在基本模型机的基础上构建一组能实现输入、输出、加、减、逻辑与、逻辑或、逻辑非、转移指令等8个功能的指令,这些指令的助记符不得与指导书上相同。2. 指令包括立即

2、数寻址、寄存器直接寻址、存储器直接寻址三种寻址方式。3. 利用新构建的指令系统编程,分别实现以下程序,每组指定一题完成,且每组题目不可重复。1) 将四个二位十进制的BCD码转换成二进制数码;并实现MOV R?,MM和ADD R?,MM指令。2) 将20个字节的内存单元清零;并实现MOV MM,#II和SUB R?,A指令。3) 实现十进制的的乘法功能;并实现CPL R?和ADD R?,#II指令。4) 输入十个8位有符号数,找出十个数的最大奇数与最小偶数;并实现MOV R?,A和SUB R?,#II指令。5) 输入是个8位有符号数,找出其中的最大值和最小值;并实现ADD R?,A和IN MM指

3、令。6) 在数组A中包含5个互不相等的整数,数组B中包含5个互不相等的整数,请将既在A中出现又在B中出现的整数存放在数组C中。并实现IN R?和SUBB R?,#II指令。7) 输入一个16位的数,对其进行带进位的循环左移;并实现MOV MM,R?和SUBB R?,A指令。说明:MM表示存储单元,#II表示立即数,R?表示寄存器R0,R1,R2,R3。工作量1.课程设计说明书1000字;2.画出流程图,编写微指令代码和程序。工作计划1.首先认真研究老师所给的题目,了解题目要求做什么;2.查阅资料,解决难题;3.编写源程序并调试之;4.写课程设计说明书。参考资料1 张昆藏计算机系统结构北京:科学

4、出版社2 著平玲娣,潘雪增计算机组成与设计浙江大学出版社3 白中英计算机组成原理(第二版)北京:科学出版社4 DJ-CPTH超强型计算机组成原理与系统结构实验指导书指导教师签字教研室主任签字 2018年 5月28日姓名:学号班级:题目:实现十进制的的乘法功能;并实现CPL R?和ADD R?,#II指令指导教师评语:成绩: 指导教师: 年 月 日安徽理工大学课程设计(论文)成绩评定表摘 要在现如今飞速发展的第三次信息化革命中,计算机被应用到各行各业,各个领域中。随着计算机的深入发展,人们逐渐步入自动化智能化的生活阶段。“计算机组成原理”是计算机科学与技术系的一-广核心专业基础课程,在计算机专业

5、中起到很重要的作用。本次课程设计通过对-一个简单模型机的设计与实现,是我们对计算机的基本组成、部件的设计、部件间的连接有更深的理解,利用CPU与简单模型机来实现计算机组成原理课程及实验中所学到的实验原理和编程思想,编写指令的应用程序,用微程序控制器实现一-系列的指令功能最终达到将理论与实践相结合。本次设计完成了各指令的格式以及编码的设计,实现了各机器指令微代码,形成具有实现同或功能的应用程序。本课程设计是在完成计算机组成原理实验的基础上,来进行模型计算机的指令系统设计。利用计算机组成原理实验中所学到的实验原理以及编程思想,硬件设备,在基本模型机的基础上构建一组能实现输入、输出、全加、逻辑与、左

6、移指令等功能的指令。指令包括立即数寻址、寄存器直接寻址、存储器直接寻址三种寻址方式。利用新构建的指令系统编程,实现十进制的的乘法功能;并实现CPL R?和ADD R?,#II指令。并且完成测试验证。关键词:指令系统设计,DJ-CPTH模型机,计算机组成原理,十进制乘法,寻址方式AbstractNow third times the rapid development of the information revolution, the computer is applied to all walks of life in various fields. Along with the devel

7、opment of computer, people gradually entered the stage of life intelligent automation. "Computer composition principle" is the Department of computer science and technology, a wide - Core Courses ", plays a very important role in computer science. This course is designed and implement

8、ed through a simple model machine. We have a deeper understanding of the basic components of the computer, the design of the components, the connection between parts, and the application of CPU and simple model machines to realize the principles and programming ideas of the computer composition prin

9、ciples and experiments, and write instructions. The application, with micro controller to achieve a series of instructions - function finally reached the combination of theory and practice. This design has completed the instruction format and encoding design, the realization of the machine instructi

10、ons to form micro code, with applications to achieve the same or function.The course design is based on the principle of Computer Organization experiment, design instruction system for model computer. Hardware using the computer component experiments principle learned experimental principle and prog

11、ramming ideas, based on the basic model of the construction of a group can achieve input, output, and logic and, left instructions and other functions of the instruction. Instructions include immediate, direct register addressing, directly addressable memory addressing three. The use of programming

12、instruction system of new construction, to achieve the decimal multiplication function; and the realization of CPL R and ADD R? #II, instruction. Complete the test and verification.Keywords: instruction system design, DJ-CPTH model machine, computer principle, composition of decimal multiplication,

13、addressing mode目录1 设计需求11.1设计内容11.2设计要求12 设计方案32.1 设计思路32.2 2.2程序清单52.3 2.3指令流程图63 调试过程93.1 3.1指令系统设计93.2 3.2 微程序设计94 心得体会145 致谢156 参考文献151 设计需求1.1设计内容(1) 采用DJ-CPTH超强型计算机组成原理教学实验系统搭建电路图,在实验箱上实现指令系统;8) 利用软件工程中的可行性研究以及分析方法,进行系统分析。1.2设计要求(1)在基本模型机的基础上构建一组能实现输入、输出、加、减、逻辑与、逻辑或、逻辑非、转移指令等8个功能的指令,这些指令的助记符不得

14、与指导书上相同;(2)指令包括立即数寻址、寄存器直接寻址、存储器直接寻址三种寻址方式;(3)利用新构建的指令系统编程,实现十进制的的乘法功能;并实现CPL R?和ADD R?,#II指令。2 设计方案2.1 设计思路按照要求设计指令系统,该指令系统能够实现数据传送、带进位的加法运算、左移运算,累加器A判零条件转移指令具有累加器寻址、寄存器寻址、寄存器间接寻址、存储器直接寻址、立即数寻址等五种寻址方式。从而可以想到如下指令:24位控制位分别介绍如下:XRD: 外部设备读信号,当给出了外设的地址后,输出此信号,从指定外设读数据。EMWR: 程序存储器EM写信号。EMRD: 程序存储器EM读信号。P

15、COE: 将程序计数器PC的值送到地址总线ABUS上。EMEN: 将程序存储器EM与数据总线DBUS接通,由EMWR和EMRD决定是将DBUS数据写到EM中,还是从EM读出数据送到DBUS。IREN: 将程序存储器EM读出的数据打入指令寄存器IR和微指令计数器uPC。EINT: 中断返回时清除中断响应和中断请求标志,便于下次中断。ELPPC: 打入允许,与指令寄存器的IR3、IR2位结合,控制程序跳转。MAREN: 将数据总线DBUS上数据打入地址寄存器MAR。MAROE: 将地址寄存器MAR的值送到地址总线ABUS上。OUTEN: 将数据总线DBUS上数据送到输出端口寄存器OUT里。STEN

16、: 将数据总线DBUS上数据存入堆栈寄存器ST中。RRD: 读寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。RWR: 写寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。CN: 决定运算器是否带进位移位,CN=1带进位,CN=0不带进位。FEN: 将标志位存入ALU内部的标志寄存器。WEN: 将数据总线DBUS的值打入工作寄存器W中。AEN: 将数据总线DBUS的值打入累加器A中。X2:X1:X0: X2、X1、X0三位组合来译码选择将数据送到DBUS上的寄存器。具体如下:X2 X1 X0输出寄存器0 0 0IN_OE 外部输入门0 0 1IA_OE 中断向量0 1 0ST

17、_OE 堆栈寄存器0 1 1PC_OE PC寄存器1 0 0D_OE 直通门1 0 1R_OE 右移门1 1 0L_OE 左移门1 1 1没有输出S2:S1:S0: S2、S1、S0三位组合决定ALU做何种运算。具体如下:S2 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 输出A模型机的寻址方式分五种:累加器寻址:操作数为累加器A,例如“CPL A”是将累加器A值取反,还有些指令是隐含寻址累加器A,例如“OUT”是将累加器A的值输出到输出端口寄存

18、器OUT。寄存器寻址:参与运算的数据在R0-R3的寄存器中,例如 “ADD A,R0”指令是将寄存器R0的值加上累加器A的值,再存入累加器A中。寄存器间接寻址:参与运算的数据在存储器EM中,数据的地址在寄存器R0-R3中,例如 “MOV A,R1”指令是将寄存器R1的值做为地址,把存储器EM中该地址的内容送入累加器A中。存储器直接寻址:参与运算的数据在存储器EM中,数据的地址为指令的操作数。例如“AND A,40H”指令是将存储器EM中40H单元的数据与累加器A的值做逻辑与运算,结果存入累加器A。立即数寻址:参与运算的数据为指令的操作数。例如 “SUB A,#10H”是从累加器A中减去立即数1

19、0H,结果存入累加器A。2.2 2.2程序清单;CS R1,#0002;CS R2,#0023; a*b a,b均为4位BCD码(无符号)SR ;采用I/O输入CS R1,ASRCS R2,ACS R3,#0000;R3存放结果CS A,R2YU A,#0001 ;b0=0,A=0MJZ T1CS A,R1 ;b0!=0QJ A,R3CS R3,AT1:CS A,R2YU A,#0010 ;b1=0,A=0MJZ T2CS A,R1ZY A ;A左移QJ A,R3CS R3,AT2:CS A,R2YU A,#0100 ;b2=0,A=0MJZ T3CS A,R1ZY AZY AQJ A,R3C

20、S R3,AT3:CS A,R2YU A,#1000 ;b3=0,A=0MJZ T4CS A, R1ZY AZY AZY AQJ A,R3CS R3,AT4:CS A,R3SC2.3 2.3指令流程图CS A,#01HPC>MAR(PC+1>PC)MAR>EMEM>IR 、uPCEM>A(PC+1>PC)图1 立即数寻址,传送指令,将01h传送给累加器aPC>MAR(PC+1>PC)CS R0,#01HMAR>EMEM>IR 、uPCEM>R0(PC+1>PC)图2 立即数寻址,将01h传送给r0 PC>MAR(PC

21、+1>PC)MAR>EMEM>IR 、uPCW+A>A(PC+1>PC)R0>WQJ A,R0 图3 寄存器寻址,加法操作,将r0的值与a相加,结果存入a中CPPC>MAR(PC+1>PC) MAR>EMEM>IR 、uPCA>A(PC+1>PC) 图5 累加器寻址,将a的值取反PC>MAR(PC+1>PC)SCMAR>EMEM>IR 、uPCA>OUT(PC+1>PC)图6 OUT 将累加器的值送到输出端并输出3 调试过程3.1 3.1指令系统设计本指令系统涉及8条指令,分别完成数据传

22、送,进行加、减和无条件转移,具有累加器寻址、寄存器寻址、寄存器间接寻址、存储器直接寻址、立即数寻址等五种寻址方式。具体指令设计如下:助记符机器码1机器码2机器码3注释-FATCH-000000xx 00 - 03试验机占用,不可用CS R?,#* 000001xx 04 - 07#*将立即数送到R?中CS A,R?000010xx 08 - OB将R?的值送到A中CS R?,A 001001xx 24 - 27将A的值送到R?中YU A,#*000011xx 0C - 0F#*A与立即数MJZ * 000100xx 10 - 13*标志位为1时跳转到*位置QJ A,R?000101xx 14

23、- 17R?中的值加到A中且带进位ZY A 000110xx 18 - 1B A中的值左移SC A000111xx 1C - 1F将A中的值输出到输出端口SR 001000xx 20 - 23从输入端口读取数据到A中3.2 3.2 微程序设计将窗口切换到“uM微程序”窗口,设计每条指令的微程序。每个微程序开始要执行的第一条微指令应是取指操作,因为程序复位后,PC和uPC的值都为0,所以微程序的0地址处就是程序执行的第一条取指的微指令。取指操作要做的工作是从程序存储器EM中读出下条将要执行的指令,并将指令的机器码存入指令寄存器IR和微程序计数器uPC中,读出下条操作的微指令。图8 取指操作图图9 取立即数并放入累加器ACS R0,#01H这条指令是把立即数1从存储器EM中取出,放入寄存器R0中。微程序设计如下(C7FBFF):图1

温馨提示

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

评论

0/150

提交评论