资源预览内容
第1页 / 共17页
第2页 / 共17页
第3页 / 共17页
第4页 / 共17页
第5页 / 共17页
第6页 / 共17页
第7页 / 共17页
第8页 / 共17页
第9页 / 共17页
第10页 / 共17页
亲,该文档总共17页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
计算机组成原理课程设计学号:xxxxxxxxxx 姓名:学号:xxxxxxxxxx 姓名:设计任务: 综合前面实验单元典型部件设计与调试,对数据选择器(A、B)、计数器、运算器、寄存器和微程序控制器透彻了解的基础上,完成一个简单计算机的设计,使其具有简单运算功能:取数、读数、做加法、送数等。 设计目的: 通过一个简单计算机的设计,对计算机系统的基本组成、部件的设计、部件间的连接、微程序的编制与调试等全过程有一个较为综合、深入的认识和理解。 设计与调试步骤: 结合计算机组成原理的教学内容和课程设计平台系统,计算机的设计与调试步骤如下: 数据通路: 数据通路的设计在总体结构中是最重要的一个环节。实验室的仿真模型机的数据通路是以总线为基础、以CPU为核心构成的。系统简介:机器指令存放在3#RAM中将3#RAM作为内存使用,机器指令是按由上到下顺序执行的,其执行顺序由PC(程序计数器)和MAR(地址寄存器)控制。2#RAM和1#RAM作为控制存储器简称为控存一条微指令由十六个微命令组成高八位存放于2#RAM中,低八位存放于1#RAM中。后继地址有三种形成方式IR2IR1IR0 为001时PC+1安顺序执行微指令为010时JP无条件转移,地址由IR15-8提供。本简单计算机基于简化处理IR15-8均为0它代表了均跳向为指令寄存器的00入口即取指令入口。为011时 QJP高四位安机器指令的操作码转移,第四位为0其由后继地形成逻辑实现,所有涉及的地址转移均为指令的转移。因为机器指令是按顺序执行的。每按一次单脉冲键执行一条微指令,一条机器指令由若干条微指令组成,一条微指令由十六个微命令组成其中因为IR3IR6IR7全为零故省略掉了。为保证机器指令是从第一条开始顺序执行的,在操作前应按一次复位键将微指令计数器pc,机器指令计数器pc,内存地址寄存中的内容清零。第一条微指令地址为00,微操作为RAMIR即从内存中取出指令放到机器指令寄存器中,此时地址寄存器中的内容为00,所以在3#RAM的00地址中取出MOV1指令18,取出指令后PC+1PC(01)为取下一条内存内容做好准备,再按一次单脉冲键执行QJP及按操作码转移,此时指令寄存器中存放的为18 操作码为0001,所以转移后高四位为:0001 低四位为全零 :0000 。后继地址形成逻辑的输出0001 0000, 因此此时置数有效微地址输出为10(十六进制)。根据微地址10执行PCMAR, PC中的内容经取指过程中加1操作,已变为01,所以地址寄存器中存入了01,然后PC+1PC (PC变为02) 为取下一条内存内容做好准备。然后将内存中地址为01的数据传送至RAMR0 下一步为PCMAR存入的为02。下一个微指令为JP无条件转移,地址由微指令的高八位给出,高八位为0000 0000,所以微地址转向00,再次进行取指令。在3#RAM的02地址中取出MOV2指令28放进机器指令寄存器,取出指令后PC+1PC(03)为取下一条内存内容做好准备,再按一次单脉冲键执行QJP及按操作码转移,此时指令寄存器中存放的为28 操作码为0010,所以转移后高四位为:0010, 低四位为全零:0000 。后继地址形成逻辑的输出0010 0000, 因此此时置数有效微地址输出为20(十六进制)。根据微地址20执行PCMAR PC中的内容经取指过程中加1操作已变为03,所以地址寄存器中存入了03,然后PC+1PC (PC变为04) 为取下一条内存内容做好准备。然后将内存中地址为03的数据传送至RAMR1 下一步为PCMAR存入的为04。下一个微指令为JP无条件转移,地址由微指令的高八位给出,高八位为0000 0000,所以微地址转向00,再次进行取指令。在3#RAM的04地址中取出ADD指令30放进机器指令寄存器,取出指令后PC+1PC(05)为取下一条内存内容做好准备,再按一次单脉冲键执行QJP及按操作码转移,此时指令寄存器中存放的为30操作码为0011.所以转移后高四位为0011 第四位为全零 0000 。后继地址形成逻辑的输出0011 0000 ,因此时置数有效微地址输出为30(十六进制)。根据微地址30执行R0 +R1= R1 PC中的内容经取指过程中加1操作已变为05,所以地址寄存器中存入了05,然后PC+1PC (PC变为06) 为取下一条内存内容做好准备。下一个微指令为JP无条件转移,地址由微指令的高八位给出,高八位为0000 0000所以微地址转向00,再次进行取指令。在3#RAM的05地址中取出MOV3指令41放进机器指令寄存器,取出指令后PC+1PC(06)为取下一条内存内容做好准备,再按一次单脉冲键执行QJP及按操作码转移,此时指令寄存器中存放的为41 操作码为0100,所以转移后高四位为:0100 低四位为全零:0000 。后继地址形成逻辑的输出0100 0000 ,因此时置数有效微地址输出为40(十六进制)。根据微地址40执行R0MAR(R0中的数据作为写内存地址)。 PC中的内容经取指过程中加1操作已变为06,所以地址寄存器中存入了06,然后将内存中地址为03的数据传送至R1RAM 下一步为PCMAR存入的为06。下一个微指令为JP无条件转移,地址由微指令的高八位给出,高八位为0000 0000,所以微地址转向00,再次进行取指令。至此MOV1 MOV2 ADD MOV3 均执行完毕完成了两个数的相加操作。如果是07+02=09那么内存的07号地址中就存放了相加结果09。总图:输入输出说明:USB0-7 为内存的数据线当WR为1时可以写内存,同时加法器的输出也接到这八根线上结合输出分配可将数据送到R0 、R1、PC、IR 、MAR 中的一个或一个也不送。AD0-7 为内存的地址线。UAD0-7为ROM2和ROM1的共用地址IR0-15为ROM2和ROM1的输出其具体输出什么由其地址决定。WR RD为内存的读写控制P1为单脉冲Rst2为复位键,可对PC,PC.,MAR进行复位。 UPC和P控制ROM2和ROM1读和读出MD0-7为ROM3的输出其中的数据由此输出。二四译码器:二四译码器元件符号二四译码的输出控制选择器A、B数据通路,二四译码器的作用在这里是一个多路数据开关。三八译码器逻辑:三八译码器元件符号三八译码器的一组输入对应的输出中只有一个为1其余为零。设计中用到了两个三八译码器其中一个的输入为IR11、IR10、IR9,输出用到的五个分别控制R0 、R1 、 IR 、PC 、MAR 五个寄存器的数据开关。因为其输出同一时刻只有一个1,这就保证了同一时刻只对一个寄存器操作,另外还有五个寄存器均不操作时的情况,例如写内存的操作。另外一个三八译码器控制微指令地址的转移方式。其本质上仍是一个多路数据开关。后继地址产生逻辑: 当QJP=1时JP=0,微地址计数器置数端输入为0(置数低有效)微指令的高八位被屏蔽掉了,又因为有四个与门接地,所以输出的低四位为全零,高四位只与机器指令的高四位(操作码)有关,这样就实现了高四位按操作码转移,低四位为全零。当JP=1时QJP=0,微地址计数器置数端输入为0(置数低有效)因为有四个与门接地且QJP=0,所以输出只与微指令的高八位(IR15-8)有关,这样就实现了无条件转移,地址由IR15-8提供。当JP=0时QJP=0,微地址计数器置数端输入为1(置数低有效)此时置数端无效按一次单脉冲键微指令计数器从置数的输入开始计数器自加1顺序向下执行,直到下一次微指令跳转。一位全加器:一位加法器元件符 八位串行进位并行加法器八位串行进位加法器元件符号微指令计数器PC 微指令计数器元件符号微指令计数器不是真正的八位二进制计数器起到计数功能的只有六位,高两位是置数的输入。我们使用低六位来计数就足够了,程序中微指令最多才自加4次就开始重新置数了。这样设计只是为了简化硬件电路。三位二进制计数器三位二进制计数器元件符号这是微指令计数器底层模块具有置数和端复位键,在来一次脉冲时自加一当加到111时产生进位信号。二选一选择器这里的二选一是将八根线看成一组(R07-R00一组、R17-R10一组),从两组中选出一组作为输出。不带复位端的八位寄存器带复位端的八位寄存器微指令格式微指令字长16位即IR15IR0(1) 微指令字段定义A选择器控制:IR15IR14 0 0 备用 0 1 RA 1 0 MA 1 1 备用B选择器控制:IR13IR12 0 0 备用 0 1 PB 1 0 RB 1 1 备用输出分配 :IR11IR10IR9 0 0 0 备用 0 0 1 CPR0 0 1 0 CPR1 0 1 1 CPPC 1 0 0 CPIR 1 0 1 CPMAR 1 1 0 备用 1 1 1 备用低位进位控制:IR8 0 C0=0 1 C0=1存储器读写控制:IR5IR4 1 0 RD 0 1 WR后继地址形成方式:IR2IR1IR0 0 0 0 备用 0 0 1 PC+1 顺序执行微指令 0 1 0 JP无条件转移,地址由微指令的高八位IR15-8提供 0 1 1 QJP高四位按操作码转移,地四位为0。 1 0 0 YJP给定高四位第四位按源寻址方式转移。 1 0 1 MJP给定高四位低四位按目的寻址方式转移。 1 1 0 备用 1
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号