跳转指令的实现

上传人:子 文档编号:45976849 上传时间:2018-06-20 格式:DOC 页数:29 大小:1.53MB
返回 下载 相关 举报
跳转指令的实现_第1页
第1页 / 共29页
跳转指令的实现_第2页
第2页 / 共29页
跳转指令的实现_第3页
第3页 / 共29页
跳转指令的实现_第4页
第4页 / 共29页
跳转指令的实现_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《跳转指令的实现》由会员分享,可在线阅读,更多相关《跳转指令的实现(29页珍藏版)》请在金锄头文库上搜索。

1、武汉理工大学计算机组成原理课程设计说明书1课程设计任务书课程设计任务书学生姓名:学生姓名: 专业班级:专业班级: 指导教师:指导教师: 工作单位:工作单位: 题题 目目: : 基本模型机的设计基本模型机的设计跳转指令的实现跳转指令的实现初始条件:初始条件:理论:理论:学完“电工电子学” 、 “数字逻辑” 、 “汇编语言程序设计”、和“计算机 组成原理”课程,掌握计算机组成原理实验平台的使用。实践:实践:计算机学院科学系实验中心提供计算机、实验的软件、硬件平台,在实验中 心硬件平台验证设计结果。要求完成的主要任务要求完成的主要任务: : (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求

2、) 1、基本模型机系统分析与设计,利用所学的计算机组成原理课程中的知识和提供的 实验平台完成设计任务,从而建立清晰完整的整机概念。 2、根据课程设计题目的要求,编制实验所需的程序,上机测试并分析所设计的程序。3、课程设计的书写报告应包括:(1)课程设计的题目。(2)设计的目的及设计原理。(3)根据设计要求给出模型机的逻辑框图。(4)设计指令系统,并分析指令格式。(5)设计微程序及其实现的方法(包括微指令格式的设计,后续微地址的产生 方法以及微程序入口地址的形成) 。(6)模型机当中时序的设计安排。(7)设计指令执行流程。(8)给出编制的源程序,写出程序的指令代码及微程序。(9)说明在使用软件

3、HKCPT 的联机方式与脱机方式的实现过程(包括编制程序 中跳转指令的时序分析,累加器 A 和有关寄存器、存储器的数据变化以及 数据流程) 。(10)课程设计总结(设计的特点、不足、收获与体会) 。时间安排:时间安排:设计时间为第 18 周周一:熟悉相关资料。 周二:系统分析,设计程序。周三、四:编程并上实验平台调试 周五:撰写课程设计报告。指导教师签名:指导教师签名: 年年 月月 日日系主任(或责任教师)签名:系主任(或责任教师)签名: 年年 月月 日日武汉理工大学计算机组成原理课程设计说明书2基本模型机的设计跳转指令的实现1、课程设计的题目、课程设计的题目基本模型机的设计跳转指令的实现2

4、设计的目的及设计的原理2.1 设计的目的1、掌握了各个单元模块的工作原理,进一步将其组成整的系统,构造成 1 台基本的模型计算机。2、根据实验要求,规划读写内存、寄存器、数值计算等功能,并且编写相应的微程序。用软件 HKCPT 的微单步功能观察指令运行状态,掌握微程序控制原理。3、利用所学的计算机组成原理课程中的知识和提供的实验平台完成设计任务,从而建立清晰完整的整机概念,具体上机调试各个模块单元以便进一步掌握整机的概念。2.2 设计的原理在各个模型实验中,各模块的控制信号都是由实验者手动模拟产生的。而在真正的试验系统中,模型机的运行是在微程序的控制下,实现特定指令的功能。在本实验平台中,模型

5、机从内存中取出、解释、执行机器指令都由微指令和与之相配合的时序来完成,既1 条机器指令对应 1 个微程序。3 模型机的总体设计3.1 基本模型机系统分析与设计1、简单的模型计算机是由算术逻辑运算单元、微程序单元、堆栈寄存器单元、累加器、启停、时序单元、总线和存储器单元组成。2、在模型机中,我们将要实现 RAM 的读写指令,寄存器的读写指令,跳转指令,ALU的加、减指令。把通用寄存器作为累加器 A 们进行左、右移等操作指令,整体构成一个武汉理工大学计算机组成原理课程设计说明书3单累加器多寄存器的系统。3、根据设计要求,对实验仪硬件资源进行逻辑组合,便可设计出该模型机的整机逻辑框图。3.2 模型机

6、的逻辑框图4 设计指令系统本实验平台内采用的是 8 位数据总线和 8 位地址总线,在设计指令系统时考虑有如下几种类型的指令和寻址方式及编码方式:4.1 指令类型4.1.1 算术/逻辑运算类指令如:加法、减法、取反、逻辑运算ADD A,Ri , SUB A,Ri武汉理工大学计算机组成原理课程设计说明书44.1.2 移位操作类指令带进位或不带进位的移位指令RRC A , RLC A , RR A 4.1.3 数据传送类指令CPU 内部寄存器之间数据传递MOV A , RiMOV Ri , A4.1.4 程序跳转指令跳转指令分为无条件跳转指令和有条件跳转指令。可根据寄存器内容为零来标志(ZD) 、有

7、无进位来标志(CY) ,也可根据用户自定义标志。JMP addr 无条件跳转JZ addr ZD=0 时跳转JC addr CY=0 时跳转JN addr 自定义4.1.5 存储器操作类指令存储器读/写指令。把内存某单元内容写入寄存器中或把寄存器中的内容写入存储器。如: LDA addr (addr)-ASTA addr (A)-addr4.2 操作数寻址方式及编码4.2.1 直接地址寻址如:双字节指令LDA addr (addr)-ASTA addr (A)-addr第 1 字节 I7I6I5I4I3I2I1I0武汉理工大学计算机组成原理课程设计说明书5操作码 第 2 字节A7A6A5A4A

8、3A2A1A0操作数地址 addr 4.2.2 寄存器直接寻址指令字节中含有寄存器选择码,决定选择哪个寄存器进行操作。如:单字节指令MOV A , Ri (Ri)-A单字节I7I6I5I4I3I2I1I0操作码与 Ri 选择码如:双字节指令MOV Ri ,#data data-Ri第 1 字节I7I6I5I4I3I2I1I0操作码与 Ri 选择码第 2 字节D7D6D5D4D3D2D1D0Data4.2.3 寄存器间接寻址如:单字节指令MOV A ,Ri (Ri)-ARi 选择码I7I6I5I4I3I2I1I0操作码武汉理工大学计算机组成原理课程设计说明书64.2.4 立即数寻址如:单字节指令

9、MOV A ,#data data-AMOV Ri,#data data-Ri第 1 字节I7I6I5I4I3I2I1I0操作码与 Ri 选择码第 2 字节D7D6D5D4D3D2D1D0Data5 设计微程序及其实现的方法5.1 微指令格式的设计在本实验平台的硬件设计中,采用 24 位微指令,若微指令采用全水平不编码纯控制场的格式,那么至多可有 24 个微操作控制信号,可右微代码直接实现。如果采用多组编码译码,那么 24 位微代码通过二进制译码可实现个互斥的微操作控制信号。n2由于模型机指令系统规模较小,功能也不太复杂,所以采用全水平不编码纯控制场的微指令格式。5.2 后续微地址的产生方法每

10、条指令由不超过 4 条的微指令组成,那么可根据下表组成每条微程序的首地址。微指令的运行顺序为下地址确定法,即采用计数增量方法,每条微指令执行过后微地址自动加 1,指向下下一条微指令地址。例如:确定了一条程序的微程序入口地址位 07H,那么当执行完 07H 这条微指令后微地址加 1,指向 08H 微地址。微地址寄存器由 2 篇74LS161 组成,当模型机在停机状态下,微地址被清零。当实验平台开始运行时,微地址从 00H 开始运行。且 00H 放置一条取指指令,根据程序开始地址从内存中读出第一条指令。00取指微指令01武汉理工大学计算机组成原理课程设计说明书702 03减法指令微程序(1)04减

11、法指令为程序(2)05 06 07MOV 指令微程序(1)08MOV 指令微程序(2)09MOV 指令微程序(3)0A 0B 0C 0D 0E 0D 5.3 微程序入口地址的形成在模型机中,用指令操作码的高 4 位作为核心扩展成 8 位的微程序入口地址MD0MD7,这种方法成为“按操作码散转” (如下表所示) 。微程序首地址形成 MD7MD6MD5MD4MD3MD2MD1MD0 00 I7I6I5I411按操作码散转 指令操作码微程序首地址 MD7、MD6I7I6I5I4MD1、MD0MD7MD0000001003H 000011007H 00010100BH 00011100FH 00100

12、1013H 001011017H 00110101BH 00111101FH 010001023H 010011027H 01010102BH 01011102FH武汉理工大学计算机组成原理课程设计说明书8011001033H 011011037H 01110103BH 01111103FH6 模型机当中时序的设计安排1、由于模型机已经确定了指令系统,微指令采用全水平不编码纯控制场的格式,微程序的入口地址采用操作码散转方式,微地址采用技术增量方式,所以可确定模型机中时序单元中所产生的每一节拍的作用。2、在本实验中,由监控单元产生了一个 PLS-O 的信号来控制时序产生(如下图所示) 。PLS-

13、O 信号经过时序单元的处理产生了 4 个脉冲信号。4 个脉冲信号组成一个为周期,为不同的寄存器提供工作脉冲。它们分别实现的功能是:(1)PLS1:微地址寄存器的工作脉冲,用来设置微程序的首地址及微地址加 1.(2)PLS2:PC 计数器的工作脉冲,根据微指令的控制实现 PC 计数器加 1 和重置 PC 计数器(跳转指令)等功能。(3)PLS3:把 24 位微指令打入 3 片微指令锁存器。(4)PLS4:把当前总线上的数据打入微指令选通的寄存器中。SIGNPLS1PLS2PLS3PLS4微指令周期微指令周期7 设计指令执行流程在每个系统中,一条指令从内存取出到执行完毕,需要若干个机器周期,任何指

14、令周武汉理工大学计算机组成原理课程设计说明书9期中都必须有一个机器周期作为“取指令周期” ,成为公操作周期。而一条指令共需要几个机器周期取决于指令在机器内实现的复杂程度。对于微程序控制的计算机,在设计指令执行流程时,要保证每条指令所含有的微操作的必要性和合理性,还要知道总线 IAB,IDB,OAB,ODB 仅是传输信息的通路,没有寄存器信息的功能,而且必须包证总线传输信息时信息的唯一性。例如本次课程设计中用到的取值微指令、ADD、JMP、RRC、MOVE 等指令7.1 取值微指令的执行流程在模型机处于停机状态时,模型机的微地址寄存器被清零,微指令锁存器输出无效。在处于停机状态时,脉冲 PLS1

15、 对微地址寄存器无效,微地址寄存器保持为 0。脉冲 PLS2对 PC 计数器无效,同时 PLS2 把 HALT=1 打入启停单元中的运行状态寄存器中,把模型机置为运行状态,使微程序锁存器输出有效。PLS3 把微程序存储器 00H 单元中内容打入微指令锁存器中,并且输出取指微指令。PLS4 把从程序存储器中读出的数据打入指令寄存器中。在模型机处于运行状态时,脉冲 PLS1 将微地址寄存器加 1,脉冲 PLS2 将 PC 计数器加1,PLS3 把微程序存储器中的微指令打入微指令锁存器并且输出。PLS4 把当前总线上的数据打入当前微指令所选通的寄存器。7.2 ADD 指令的执行流程例如:ADD A,Ri,该指令功能为(A)+(Ri)-A,需执行以下微操作:(PC)+1PC

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

当前位置:首页 > 生活休闲 > 科普知识

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