《计算机组成原理》课程设计说明书模型机指令系统的设计与实现

上传人:夏** 文档编号:431490042 上传时间:2023-09-23 格式:DOC 页数:15 大小:409.52KB
返回 下载 相关 举报
《计算机组成原理》课程设计说明书模型机指令系统的设计与实现_第1页
第1页 / 共15页
《计算机组成原理》课程设计说明书模型机指令系统的设计与实现_第2页
第2页 / 共15页
《计算机组成原理》课程设计说明书模型机指令系统的设计与实现_第3页
第3页 / 共15页
《计算机组成原理》课程设计说明书模型机指令系统的设计与实现_第4页
第4页 / 共15页
《计算机组成原理》课程设计说明书模型机指令系统的设计与实现_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《《计算机组成原理》课程设计说明书模型机指令系统的设计与实现》由会员分享,可在线阅读,更多相关《《计算机组成原理》课程设计说明书模型机指令系统的设计与实现(15页珍藏版)》请在金锄头文库上搜索。

1、课程设计说明书题目:模型机指令系统的设计与实现院 系: 专业班级: 学 号: 学生姓名: 指导教师: 2010年12月10日 安徽理工大学课程设计(论文)任务书学 号学生姓名专业(班级)设计题目模型机指令系统的设计与实现设计技术参数(1)用微程序控制器实现设计任务;(2)要满足指令系统的性能要求;(3)设计说明书能很好地反映设计内容设计要求参考实验指导书第四章模型机综合实验(微程序控制器)设计的过程,运用其微指令格式,独立设计指令系统。并用该指令系统中的指令编一完成简单运算的程序,并进行调试运行。工作量 要求设计说明书的字数在3000字以上。工作计划2010.11.22-11.24 根据设计要

2、求,查找相关资料,完成需求分析;2010.11.25-11.28 进行系统的概要设计;2010.11.29-12. 01 进行系统的详细设计和微程序的书写;2010.12.02-12.05 对系统进行调试分析,写出课程设计报告。参考资料 1 白中英.计算机组成原理(第四版).科学出版社.20082 DJ-CPTH超强型计算机组成原理与系统结构实验指导书.启东市东疆计算机有限公司.2008指导教师签字教研室主任签字2010年6月20日指导教师评语:成绩: 指导教师: 年 月 日目录1 问题描述51.1 设计目的51.2 设计要求52 数据格式和指令系统62.1 数据格式62.2 指令格式62.3

3、指令系统83 模型机的数据通路94 详细设计115 调试分析136 设计体会15参考文献161 问题描述1.1 设计目的本课程设计是计算机组成原理课程结束以后开设的大型实践性教学环节。通过本课程设计,加深对计算机系统各模块的工作原理及相互联系的认识,特别是对微程序控制器的理解,进一步巩固所学的理论知识,并提高运用所学知识分析和解决实际问题的能力;锻炼计算机硬件的设计能力、调试能力;培养严谨的科学实验作风和良好的工程素质,为今后的工作打下基础。1.2 设计要求(1) 确定设计目标参考指导书上模型机综合实验设计的过程,运用其微指令格式,独立设计指令系统。并用该指令系统中的指令编写一个简单运算的程序

4、,并进行调试运行。(2) 确定指令系统确定数据的表示格式、位数、指令的编码、类型、需要设计哪些指令及使用的寻址方式。(3) 总体结构与数据通路总体结构设计包含确定各部件设置以及它们之间的数据通路结构。在此基础上,拟出各种信息传送路径,以及实现这些传送所需要的微命令。(4) 设计指令执行流程数据通路确定后,就可以设计指令系统中每条指令的执行流程。根据指令的复杂程度,每条指令所需要的机器周期数。对于微程序控制的计算机,根据总线结构,需考虑哪些微操作可以安排在同一个微指令中,哪些微操作不能安排在同一条微指令中。(5) 确定微程序地址根据后续微地址的形成方法,确定每条微程序地址及分支转移地址。(6)

5、微程序的编写根据微指令格式,将微程序流程中的所有微指令代码化,转化成相应的二进制代码,写入到控制存储器中的相应单元中。(7) 调试在模型机上,用单步微指令方式执行机器指令的微程序流程图,当全部微程序流程图检查完后,若运行结果正确,则在内存中装入一段机器指令,进行其他的运行方式等功能调试及执行指令的正确性验证。2 数据格式和指令系统2.1 数据格式模型机规定采用定点补码表示数据,字长是8位的,其中最高位为符合位,其它都是数值位。数据格式如表2-1所示76543210符号位数值位表2-1 数据格式2.2 指令格式模型机设计四大类指令,即数据处理、数据存储、数据传送、程序控制,具体有数据传送指令、算

6、术运算类指令、逻辑运算指令、程序控制类指令、输入输出类指令、字符串类指令、系统控制指令。指令格式,是指令字用二进制代码表示的结构形式,通常由操作码字段和地址码字段组成。操作码字段表征指令的操作特性与功能,而地址码字段通常指定参与操作的操作数的地址。因此,一条指令的结构可用如下形式来表示:操作码字段OP地址码字段A表2-2 指令格式微指令是一组实现一定操作功能的微命令的组合。图2-1表示一个具体的微指令结构。图2-1 微指令结构上图中24位控制位分别介绍如下:XRD:外部设备读信号,当给出个外设的地址后,输出此信号,从指定外设读数据。 EMWR:程序存储器EM写信号EMRD:程序存储器EM读信号

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

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

9、器0 1 1PC_OE PC寄存器1 0 0D_OE 直通门1 0 1R_OE 右移门1 1 0L_OE 左移门1 1 1没有输出表2-3 数据输出选择器原理图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表2-4 运算器的选择2.3指令系统模型机的指令集分几大类: 算术运算指令、逻辑运算指令、移位指令、数据传输指令、跳转指令、中断返回指令、输入/输出指令。2.3.1数据传输指令主要包括取数指令、存数指令、传送指令、成组传送指令、字节交换

10、指令、清寄存器指令等等。这类指令主要用来实现主存和寄存器之间,或寄存器和寄存器之间的数据传送。2.3.2算术运算指令该指令包括二进制定点加、减、乘、除指令,浮点加、减乘、除指令,求反、求补指令,算术移位指令,算术比较指令,十进制加、减运算指令等。这类指令主要用于定点或浮点的算术去处。2.3.3逻辑运算指令这类指令包括逻辑加、逻辑乘、按们加,逻辑移位等指令,主要用于无符号数的们操作、代码的转换、判断及运算。2.3.4程序控制指令又叫转移指令。机器执行到某条指令时,出现了几种不同的结果,这时机器必须执行一条转移指令,根据不同结果进入转移,从而改变程序原来执行的顺序。在注册软件的时候经常遇到。2.3

11、.5输入输出指令主要是用来启动外围设备,检查测试外围设备的工作状态,并实现外部设备和CPU之间,或外围设备与外围设备之间的信息传送。2.3.6字符串处理指令字符串处理指令是一种非数值处理指令,一般包括字符串传送、字符串转换、字符串比较、字符串查询等等。2.3.7特权指令特权指令是指具有特殊权限的指令。这种指令如果使用不当就会破坏系统,所以一般不直接提供给用户用。3 模型机的数据通路 模型机的数据通路如图3-1所示:图3-1 模型机的数据通路图3-2示出了模型机的运算器的数据通路:图3-2 模型机的运算器的数据通路其中ALU为算术逻辑单元,R1、R2、R3为三个寄存器。4 详细设计根据图2-1微

12、指令格式,我们可以 了解到许多的微指令在执行的时候,只需要把它所需要用到的位置有效(即为0)就可以了。我们知道,每个程序开始执行的第一条微指令必须是取指操作。而取指操作要做的工作是从程序存储器EM中读出下条将要执行的指令,并将指令的机器码存入指令寄存器IR和微程序计数器uPC中,读出下条将要执行的指令。要从EM中读数,EMRD必需有效;读EM的地址要从PC输出,所以PCOE要有效,它有效的同时还会使PC加1;IREN是将EM读出的指令码存入uPC和IR。此微指令的状态为“T0”,微地址“0 0”,微程序“CBFFFFH”,这是个取指操作。不管是要做什么指令最后必需是取指令,所以这个微指令是在每

13、个指令的后面都有的。下面举例说明一个指令的设计方法:LADD A,#* 取名规则:为了表现出是自己设计的,把最前面都加了个L(李),但为了方便记忆,后面保持和默认的指令名字一致,便于区分出自己的指令,同时也有助于程序的阅读。指令作用:累加器A加立即数,完成加法操作。设计方法:立即数的加法指令分为两步:1、 从EM中读出立即数,送到DBUS,并存入工作寄存器W中,从EM中读数,EMRD应该有效,读EM的地址由PC输出,PCOE要有效,读出的数据要送到DBUS,EMEN应该有效,数据存入W中,WEN应该有效,根据上述描述,“LADD A,#*”指令的T1状态微指令的值为“C7FFEFH”。2、 执行加法操作,并将结果存入A中。执行的是加法操作,根据表2-4可知,S2S1S0的值应该是000(二进制表示的),结果无需移位直接输出到DBUS,根据表2-3可短,X2X1X0的值应该为100(二进制表示的),从DBUS将数据再存入A中,AEN应该有效。与此同时,ABUS 和IBUS空闲,取指操作可以并行执行,也就是以PC为地址,从EM中读出下条将要执行指令的机器码,并打入IR和uPC中,由上述可知:EMRD、PCOE、IREN要有效,而T0状态时将EMRD、P

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号