《计算机组成原理报告》由会员分享,可在线阅读,更多相关《计算机组成原理报告(11页珍藏版)》请在金锄头文库上搜索。
1、河南科技大学河南科技大学课课 程程 设设 计计 说说 明明 书书课程名称课程名称 组成原理课程设计 题题 目目 模型机设计 院院 系系 班级学号班级学号 计算机 132 学生姓名学生姓名 指导教师指导教师 赵长伟 日日 期期 2014 年 6 月 2 日 一一.课程设计目的课程设计目的1.掌握整机动态工作过程 2.了解微程序控制器的设计,构建指令系统 3.组建模型机,编写应用程序进行调试二二. 实验设备:实验设备:EL-JY-II型计算机组成原理实验系统一套,排线若干。三三.模型机结构模型机结构:图1 模型机结构框图 图1中运算器ALU由U7U10四片74LS181构成,暂存器1由U3、U4两
2、片74LS273构成,暂 存器2由U5、U6两片74LS273构成。微控器部分控存由U13U15三片2816构成。除此之外, CPU的其它部分都由EP1K10集成(其原理见系统介绍部分)。 存储器部分由两片6116构成16位存储器,地址总线只有低八位有效,因而其存储空间为00HFFH。 输出设备由底板上的四个LED数码管及其译码、驱动电路构成,当D-G和W/R均为低电平时将 数据总线的数据送入数码管显示。在开关方式下,输入设备由16位电平开关及两个三态传 输芯片74LS244构成,当DIJ-G为低电平时将16位开关状态送上数据总线。在键盘方式或联 机方式下,数据可由键盘或串口输入,然后由监控程
3、序直接送上数据总线,因而外加的数 据输入电路可以不用。 注:本系统的数据总线为16位,指令、地址和程序计数器均为8位。当数据总线上的数据打 入指令寄存器、地址寄存器和程序计数器时,只有低8位有效。四四.工作原理:工作原理:1数据格式 本实验计算机采用定点补码表示法表示数据,字长为16位,其格式如下:其中第16位为符号位,数值表示范围是:- 32768X32767。 2指令格式 (1)算术逻辑指令 设计9条单字长算术逻辑指令,寻址方式采用寄存器直接寻址。其格式如下:其中OP-CODE为操作码,rs为源寄存器,rd为目的寄存器,并规定:OP-CODE011110001001101010111100
4、110111101111 指令CLRMOVADDSUBINCANDNOTRORROLrs或rd选定寄存器00Ax01Bx10Cx9条算术逻辑指令的名称、功能和具体格式见表1。(2)存储器访问及转移指令存储器的访问有两种,即存数和取数。它们都使用助记符MOV,但其操作码不同。转移 指令只有一种,即无条件转移(JMP)。指令格式如下:7 65 43 21 000MOP-CODErdD 其中OP-CODE为操作码,rd为寄存器。M为寻址模式,D随M的不同其定义也不相同,如下表 所示:1514 13 0 符号尾 数7 6 5 43 21 0OP-CODErsrdOP-CODE000110 指令说明写存
5、储器读存储器转移指令寻址模式M有效地址ED定义说 明00E=(PC)+1立即数立即寻址10E=D直接地址直接寻址11E=100H +D直接地址扩展直接寻址注:扩展直接寻址用于面包板上扩展的存储器的寻址。 (3)I/O指令 输入(IN)和输出(OUT)指令采用单字节指令,其格式如下:其中,当OP-CODE=0100且addr=10时,从“数据输入电路”中的开关组输入数据;当OP- CODE=0100且addr=01时,将数据送到“输出显示电路”中的数码管显示。 3指令系统 有14条基本指令,其中算术逻辑指令8条,访问内存指令和程序控制指令4条。输入输出指 令2条。表1列出了各条指令的格式、汇编符
6、号和指令功能。 表1 指令格式汇编符号指令的格式功 能MOV rd,rs1000 rs rdrsrd ADD rd,rs1001 rs rdrs+rdrd SUB rd,rs1010 rs rdrd-rsrdINC rd1011 rd rdrd+1rd AND rd,rs1100 rs rdrsrdrdNOT rd1101 rd rd/rdrdROR rd1110 rd rdrdROL rd1111 rd rdrd 00 10 00 rdMOV D,rd DrdD00 10 01 rdMOV rd, DDDrd00 00 01 rdMOV rd,DDDrd00 00 10 00JMP DDDP
7、CIN rd, KIN0100 10 rdKINrd OUT DISP,rd0100 01 rdrdDISP4设计微代码 微程序设计的关键技术之一是处理好每条微指令的下地址,以保证程序正确高效地进7 6 5 43 21 0OP-CODEaddrrd行。本系统采用分段编码的指令格式,采用断定方式确定下一条微指令的地址。图2 断定方式微程序控制部件示图每条微指令由 24 位组成,其控制位顺序如下:2 42 32 22 12 01 91 81 71 615 14 1312 11 109 8 7654321S 3S 2S 1S 0MC nW E1 A1 BF1F2F3uA5uA4uA3uA2uA1uA
8、0微程序控制器的原理图见图 3、图 4、图 5。图 3 控制存储器电路控制场 下地址场微指令寄存器 MIR微地址形成电路控存 CM微操作控制信号指令操作码状态条件微指令微地址图 4 微地址形成电路.图 5 微指令译码电路图 5 中 MS24MS16 对应于微指令的第 2416 位,S3S2S1S0MCn 为运算器的方式控制, WE 为外部器件的读写信号, 1表示写, 0表示读;控制总线上的 WR 为外部读写控制电路的输出,其控制电路为:1A、1B 用于选通外部器件,通常接至底板 IO 控制电路的 1A1B 端,四个输出Y0Y1Y2Y3 接外部器件的片选端。 (注:Y3 被系统占用,用于输入中断
9、,Y0Y1Y2 能被用户使用) 。I/O 控制电路由一片 74LS139 构成,用于为外部器件提供选通信号。其原理和逻辑关系如下图所示:图 6 I/O 控制电路输 入输 出1A1BY0Y1Y2Y3000111101011011101111110微指令中的 uA5-uA0 为 6 位的后续微地址。 、三个字段的编码方案如表2: 表2 、编码方案F1字段F2字段F3字段15 14 13选择12 11 10选择9 8 7选择0 0 0LRi0 0 0RAG0 0 0P10 0 1LOAD0 0 1ALU-G0 0 1AR0 1 0LDR20 1 0RCG0 1 0P30 1 1自定义0 1 1自定义
10、0 1 1自定义1 0 0LDR11 0 0RBG1 0 0P21 0 1LAR1 0 1PC-G1 0 1LPC1 1 0LDIR1 1 0299-G1 1 0P41 1 1无操作1 1 1无操作1 1 1无操作图 5 中 MS15MS13 对应于微指令中的 F1,经锁存译码后产生 6 个输出信号:LRi、LDR1、LDR2、LDIR、LOAD、LAR。其中 LDR1、LDR2 为运算器的两个锁存控制;LDIR 为指令寄存器的锁存控制;LRi 为寄存器堆的写控制,它与指令寄存器的第 0 位和第1 位共同决定对哪个寄存器进行写操作;LOAD 为程序计数器的置数控制,LAR 为地址寄存器的锁存控
11、制(见系统介绍中程序计数器和地址寄存器电路) 。以上 6 个输出信号均为1有效。图 5 中 MS12MS10 对应于微指令中的 F2,经锁存译码后产生 6 个输出信号:RAG、RBG、RCG、299-G、ALU-G、PC-G。其中 RAG、RBG、RCG 分别为寄存器Ax、Bx、Cx 的输出控制(见系统介绍中寄存器堆电路) ;299-G 为移位寄存器的输出控制;ALU-G 为运算器的输出控制;PC-G 为程序计数器的输出控制(见系统介绍中程序计数器和地址寄存器电路) 。以上信号均为0有效。移位运算实验电路结构如图 7 所示:图 7 移位运算器电路结构功能由 S1、S0、M 控制,具体功能如下表
12、: G-299S1S0MT4功 能000保持0100循环右移0101带进位循环右移0010循环左移0011带进位循环左移111置数(进位保持)0110置数(进位清零)0111置数(进位置 1)图 5 中 MS9MS7 对应于微指令中的 F3,经锁存译码后产生 6 个输出信号:P1、P2、P3、P4、AR、LPC。其中 P1、P2、P3、P4 位测试字,其功能是对机器指令进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支和循环运行;AR为运算器的进位输出控制;LPC 为程序计数器的时钟控制。以上信号均为1有效。设计三个控制操作微程序:存储器读操作(MRD):拨动清零开关CLR对地
13、址、指令寄存器清零后,指令译码输入CA1、CA2为“00”时,按“单步”键,可对RAM连续读操作。存储器写操作(MWE):拨动清零开关CLR对地址、指令寄存器清零后,指令译码输入CA1、CA2为“10”时,按“单步”键,可对RAM连续写操作。启动程序(RUN):拨动开关CLR对地址、指令寄存器清零后,指令译码输入CA1、CA2为“11”时,按“单步”键,即可转入到第01号“取指”微指令,启动程序运行。注:CA1、CA2由控制总线的E4、E5给出。键盘操作方式时由监控程序直接对E4、E5赋值,无需接线。开关方式时可将E4、E5接至控制开关CA1、CA2,由开关来控制。系统涉及到的微程序流程见图9
14、(图中各方框内为微指令所执行的操作,方框外的标号为该条微指令所处的八进制微地址)。控制操作为P4测试,它以CA1、CA2作为测试条件,出现了写机器指令、读机器指令和运行机器指令3路分支,占用3个固定微地址单元。当分支微地址单元固定后,剩下的其它地方就可以一条微指令占用控存一个微地址单元随意填写。图 8 指令译码器电路控制开关P4测试PCAR,PC1(D_INPUT)D_BUS LT1LT1 RAM00MWE(10)1474PCAR,PC1RAM D_BUS LT1LT1 LED1012730111MRD(00)RUN(11)图9 微程序流程图(1) 机器指令的执行过程如下:首先将指令在外存储器
15、的地址送上地址总线,然后将该地 址上的指令传送至指令寄存器,这就是“取指”过程。之后必须对操作码进行P1测试,根据 指令的译码将后续微地址中的某几位强制置位,使下一条微指令指向相应的微程序首地址, 这就是“译码”过程(其原理见图8)。然后才顺序执行该段微程序,这是真正的指令执行 过程。 在所有机器指令的执行过程中,“取指”和“译码”是必不可少的,而且微指令执行 的操作也是相同的,这些微指令称为公用微指令,对应于图9中01、02、75地址(8进制) 的微指令。75地址为“译码”微指令,该微指令的操作为P(1)测试,测试结果出现多路 分支。本实验用指令寄存器的前4位(I7-I4)作为测试条件,出现12路分支,