您好,欢迎访问三七文档
计算机组成原理课程设计1计算机组成原理课程设计计算机组成原理课程设计2目录1.1设计内容................................................................................................................31.2具体要求........................................................................................................................31.3设计环境........................................................................................................................32、总体设计方案...............................................................................................................52.1设计思路........................................................................................................................52.2微指令格式....................................................................................................................52.3设计的指令系统............................................................................................................52.424个微指令的意义:.................................................................................................63、详细设计方案.....................................................................................................................83.1指令流程图及其微程序清单........................................................................................84、调试过程......................................................................................................................124.1实验步骤......................................................................................................................124.2出现的问题与解决办法..............................................................................................255、小结.................................................................................................................................266、参考资料................................................................................................................26计算机组成原理课程设计31、设计任务与要求1.1设计内容实验一微程序控制器的设计与实现。主要内容如下:⑴指令系统能够实现数据传送,进行加、减运算和无条件转移,具有累加器寻址、寄存器寻址、寄存器间接寻址、存储器直接寻址、立即数寻址等五种寻址方式。⑵指令系统至少要包括六条指令,具有上述功能和寻址方式⑶根据微操作流程及给定的微指令格式写出相应的微程序⑷将所设计的微程序在虚拟环境中运行调试程序,并给出测试思路和具体程序段。实验二定点原码一位乘的设计与实现。主要内容如下:⑴利用计算机组成原理实验仪和仿真软件,实现定点原码一位乘⑵写出总体设计方案(包括设计原理和设计思路等)和详细设计方案⑶编写实现乘法的程序进行设计的验证1.2具体要求1.巩固和深刻理解“计算机组成原理”课程所讲解的原理,加深对计算机各模块协同工作的认识。2.通过设计实现机器指令及对应的微指令(微程序)并验证,从而掌握微程序设计的思想和具体流程、操作方法。3.通过控制器的微程序设计,综合理解计算机组成原理课程的核心知识,并进一步建立整机系统的概念。4.将所设计的微程序在虚拟环境中运行调试程序,并给出测试思路和具体程序段5.培养学生独立工作和创新思维的能力,取得设计与调试的实践经验。6.撰写课程设计报告。1.3设计环境本实现采用伟福COP2000型计算机组成原理实验仪,微机,相关虚拟软件。计算机组成原理课程设计4在COP2000试验仪上实现编程,所应用的编程语言为汇编语言。在伟福试验仪中有相关的模型机指令集分为几大类:算术运算指令、逻辑运算指令、移位指令、数据传输指令、跳转指令、中断返回指令、输入输出指令。计算机组成原理课程设计52、总体设计方案2.1设计思路实验一微程序控制器的设计与实现:根据所编写的指令系统的内容要求,首先用MOV和LD指令给寄存器和累加器传送立即数,实现立即数寻址。再用寄存器寻址方式,把寄存器的数据传送到另一个累加器,用ADD指令对两者进行相加运算。用寄存器间接寻址方式,把寄存器里的数据作为地址,将这个地址对应的存储器里的数据传送到累加器,用SUB指令对两者进行减运算。用累加器寻址方式,用CPL指令对其累加器的数据求反。利用存储器寻址方式,用JMP指令实现无条件跳转。实验二定点原码一位乘的设计与实现:原码一位乘,即两个原码数相乘,其乘积的符号为相乘两数符号的异或值,数值则为两数绝对值之积。被乘数与乘数都是4位,所以相乘的结果是8位。每个寄存器的范围是8位,所以乘积的结果用一个寄存器来存储表示。实验开始时将实验数据从实验箱的开关输入到R0、R1、R2三个寄存器中,部分积存放在R0,4位被乘数放在R1,4位乘数放在R2。运算过程采用原码一位乘。在计算时,首先判断乘数末位上的值是1还是0,决定部分积是否与被乘数相加,然后判断部分积的末位,因为右移时部分积的末位会溢出,乘数右移时要接收由部分积溢出来的数,所以根据判断来决定乘数右移后的高位是1还是0。运算结束时8位乘积结果的高4位从R0调出,低4位从R1调出,两个数据组成最终结果,并在OUT寄存器中显示。2.2微指令格式微指令的的基本格式由操作控制字段和顺序控制字段组成,而此模型机只由操作控制字段组成,24位操作控制信号排列如下:2.3设计的指令系统实验一微程序控制器的设计与实现:指令助记符指令意义描述MOVR?,#II将立即数装入寄存器R?LDA,#II将立即数装入累加器AADDA,R?累加器A加寄存器R?中的立即数SUBA,@R?累加器A加R?中地址对应的存储器里的数据CPLA对累加器A求反JMP无条件跳转指令计算机组成原理课程设计6实验二定点原码一位乘的设计与实现:2.424个微指令的意义:模型机的指令码为8位,根据指令类型的不同,可以有0到2个操作数。指令码的最低两位用来选择R0-R3寄存器,在微程序控制方式中,用指令码做为微地址来寻址微程序存储器,找到执行该指令的微程序。而在组合逻辑控制方式中,按时序用指令码产生相应的控制位。在本模型机中,一条指令最多分四个状态周期,一个状态周期为一个时钟脉冲,每个状态周期产生不同的控制逻辑,实现模型机的各种功能。模型机有24位控制位以控制寄存器的输入、输出,选择运算器的运算功能,存储器的读写。24位控制位分别介绍如下:XRD:外部设备读信号,当给出了外设的地址后,输出此信号,从指定外设读数据。EMWR:程序存储器EM写信号。EMRD:程序存储器EM读信号。PCOE:将程序计数器PC的值送到地址总线ABUS上。EMEN:将程序存储器EM与数据总线DBUS接通,由EMWR和EMRD决定是将DBUS数据写到EM中,还是从EM读出数据送到DBUS。指令助记符指令意义描述MOVR?,#II将立即数装入寄存器R?MOVA,R?将寄存器R?的值送到累加器A中MOVR?,A将累加器A的值送到寄存器R?中ADDA,#II累加器A加寄存器R0中的立即数ADDA,R?将寄存器R?的值加入累加器A中RRA累加器A右移RLA累加器A左移JZMM若零标志位置1,跳转到MM地址JMPMM跳转到MMANDA,R?累加器A“与”寄存器R?的值OUT将累加器A中数据输出到输出端口计算机组成原理课程设计7IREN:将程序存储器EM读出的数据打入指令寄存器IR和微指令计数器uPC。EINT:中断返回时清除中断响应和中断请求标志,便于下次中断。ELP:PC打入允许,与指令寄存器的IR3、IR2位结合,控制程序跳转。MAREN:将数据总线DBUS上数据打入地址寄存器MAR。MAROE:将地址寄存器MAR的值送到地址总线ABUS上。OUTEN:将数据总线DBUS上数据送到输出端口寄存器OUT里。STEN:将数据总线DBUS上数据存入堆栈寄存器ST中。RRD:读寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。RWR:写寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。CN:决定运算器是否带进位移位,CN=1带进位,CN=0不带进位。FEN:将标志位存入ALU内部的标志寄存器。X2、X1、X0三位组合来译码选择将数据送到DBUS上的寄存器。如下表所示:X2X1X0输出寄存器000IN_OE外部输入门001IA_OE中断向量010ST_OE堆栈寄存器011PC_OEPC寄存器100D_OE直通门101R_OE右移门110L_OE左移门111没有输出计算机组成原理课程设计8WEN:将数据总线DBUS的值打入工作寄存器W中。AEN:将数据总线DBUS的值打入累加器A中。S2、S1、S0三位组合决定ALU做何种运算。如下表所示:S2S1S0功能000A+W加001A-W减010A|W或011A&W与100A+W+C带进位加101A-W-C带进位减110~AA取反111A输出A3、详细设计方案3.1指令流程图及其微程序清单实验一微程序控制器的设计与实现:每条指令的指令流程图如下所示(0是低电平,1是高电平。标出的控制信号都为0,有效;未标出的控制信号都为1,无效。):1.MOVR0,#4H1)指令流程图如下页图2.1所示。2)微程序清单:计算机组成原理课程设计9图2.1“MOVR0,#4H”指令流程图2.LDA,#5H1)指令流程图:2)微程序清单:3.ADDA,R01)指令流程图如下页图2.2所示。2)微程序清单:PC-ABUSEM-IBUS-IRPC+1PC-ABUSEM-DBUS-APCOE=0,EMRD=0,IREN=0PCOE=0,EMRD=0,EMEN=0,AEN=0PC-ABUSEM-IBUS-IRPC+1
本文标题:组成原理课设报告
链接地址:https://www.777doc.com/doc-2058009 .html