文档详情

简单模型机的微程序设计.doc

发布:2016-04-07约4.04千字共6页下载文档
文本预览下载声明
《计算机组成原理课程设计》 简单模型机的微程序设计 学生姓名: 学  号: 系 别: 班 级: 专 业: 指导教师: 一. 课程设计的目的 计算机的硬件基本组成 计算机中机器指令的设计 计算机中机器指令的执行过程 微程序控制器的工作原理 微指令的格式设计原则 在此基础上设计可以运行一些基本机器指令的微程序的设计 二. 课程设计的内容和要求 1.通过使用作者开发的微程序分析和设计仿真软件,熟悉介绍的为基本模型机而设计的微程序的执行过程。必须充分理解并正确解释下些问题: (1)微程序中的微指令的各个字段的作用。哪些字段是不译码的,哪些字段是直接译码的,哪些字段又可以看成是字段间接编码的。 答:直接译码的是A、B、CS3~B0uA6~uA100:000001011110110110000001 01:000001001100000001000000 (5)解释一条机器指令的微程序的各条微指令的微地址是否连续?这些微指令的微地址的安排的严重原则是什么? 答:不连续。严重原则是将各条机器指令的入口微地址置于地址连续的地址单元中,避免其它微指令乱用这一段地址。 (6)为什么读写一次内存总要用两条微指令完成? 答:因为W/R只有两种状态,即要么是读,要么是写,所以,要完成一次读写总要用两条微指令完成。 (7)机器程序中用到的寄存器是R0,是由机器指令中哪些位决定的?如果要用R1或R2,是否要改写微程序或改写机器指令?如果要,应如何改写? 答:是由机器指令中的2~1位决定。如果要用到R1或R2,那么不需要改写微程序,但得改写机器指令的低两位,即2~1位,若要用到R1,则将其改为01,若要用R2,则将其改为10。 2.设计要求 在原有的5条机械指令的基础上增加实现下述各功能的机械指令,试设计相应的机械指令的格式并改写原有的微程序使其可以运行所有的机械指令。新增加的机械指令的功能是: 寄存器间的数据传送指令 MOV RD,RS (RS)→(RD) 减法指令 SUB R0,(ADDR):(R0)-(ADDR)→(R0) 与指令 AND RD,RS:(RS)AND(RD)→(RD) 或指令 OR RD,RS:(RS)OR(RD)→(RD) 异或指令 XOR RD,RS:(RS)XOR(RD)→(RD) 其中的RS、RD可以是R0、R1、R2中的任何一个。 3.设计思想(如何实现各指令分支、如何安排各指令对应的微程序中的微指令的微地址、如何设计各微指令的编码): ①实现分支:每一条机器指令执行完之后,就进行一次P(1)测试,根据P(1)测试跳到下一条机器指令的微地址。机械指令执行中则是根据微指令的后六位来确定下一条微指令的地址。 ②微地址的安排,将各条机械指令 (IN、ADD、STA、OUT、JMP、MOV、SUB、AND、OR、XOR……然后将完成各条指令的其它微指令的微地址设置为连续的 在指令寄存器IR中的8~5位的数值则由微指令01单元的后六位和对应的机械指令的入口微地址推出。 ③微指令的编码:先分析各条机器指令的功能,然后针对其功能将其用微指令表示的微指令流程图画好(如下所示),最后针对图中每条微指令要完成的功能设计好编码。 1).用微命令表示的微流程图如下: 2).编写的机器指令代码如下: 00H ;IN R0:SW-R0 01H ;ADD R0+29-R0=29H 02H ; 03H ;STA R0-17H=29H 04H ; 05H ;MOV R0-R1 06H ;STA R1-18H=29H 07H ; 08H ;ADD R2+12-R2=12 09H0AH ;SUB R0-12-R0=17H 0BH ;15H 0CH ;AND R1,R2-R1=00H 0DH ;OR R0,R1-R0=17H 0EH ;XOR R2,R0-R2=05H 0FH ;R0-LED 10H 11H ;JMP-00H 12H13H14H15H16H3).微指
显示全部
相似文档