《控制单元的设计课件.ppt》由会员分享,可在线阅读,更多相关《控制单元的设计课件.ppt(71页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、控制单元的设计第1页,此课件共71页哦10.1 10.1 组合逻辑设计组合逻辑设计一、组合逻辑控制单元框图一、组合逻辑控制单元框图1.1.CU 外特性外特性IR节节拍拍发发生生器器CUT0T1TnCLK(机器主频)(机器主频)标志标志0 12n-1C0C1Cn操作码译码操作码译码n 位操作码位操作码节节拍拍发发生生器器第2页,此课件共71页哦 2.2.节拍信号节拍信号CLKT0T1T2T3时钟周期时钟周期机器周期机器周期机器周期机器周期T0T1T2T3T0T1T2T3第3页,此课件共71页哦 二、微操作的节拍安排二、微操作的节拍安排假设采用假设采用 同步控制方式同步控制方式CPU 内部结构采用
2、非总线方式内部结构采用非总线方式一个一个 机器周期机器周期 内有内有33个节拍(时钟周期)个节拍(时钟周期)PCIRACCU时时钟钟ALUC1C2C5C9C0C10C3C7C4C6C12C11C8控制信号控制信号标志标志控制控制信号信号 M D R M A R第4页,此课件共71页哦 1.1.安排微操作时序的原则安排微操作时序的原则原则一原则一微操作的微操作的 先后顺序不得先后顺序不得 随意随意 更改更改原则二原则二被控对象不同被控对象不同 的微操作的微操作尽量安排在尽量安排在一个节拍一个节拍 内完成内完成原则三原则三占用占用 时间较短时间较短 的微操作的微操作尽量尽量 安排在安排在 一个节拍
3、一个节拍 内完成内完成并并允许有先后顺序允许有先后顺序第5页,此课件共71页哦2.2.取指周期取指周期 微操作的微操作的 节拍安排节拍安排PC MARM(MAR)MDRMDR IR(PC)+1 PC原则二原则二原则二原则二原则三原则三3.3.间址周期间址周期 微操作的微操作的 节拍安排节拍安排M(MAR)MDRMDR Ad(IR)T0T1T2T0T1T21 ROP(IR)IDAd(IR)MAR1 R第6页,此课件共71页哦4.4.执行周期执行周期 微操作的微操作的 节拍安排节拍安排 CLA COM SHRT0T1T2T0T1T2T0T1T2AC0 AC0L(AC)R(AC)0 ACAC AC第
4、7页,此课件共71页哦 CSL STP ADD X STA XR(AC)L(AC)AC0 ACnT0T1T20 GT0T1T2T0T1T2T0T1T2Ad(IR)MARM(MAR)MDR(AC)+(MDR)ACAd(IR)MARAC MDRMDR M(MAR)1 R1 W第8页,此课件共71页哦 LDA X JMP X BAN XT0T1T2Ad(IR)MARM(MAR)MDRMDR ACT0T1T2T0T1T2Ad(IR)PC1 RA0 Ad(IR)+A0 PC PC第9页,此课件共71页哦5.5.中断周期中断周期 微操作的微操作的 节拍安排节拍安排T0T1T20 MARPC MDRMDR
5、M(MAR)硬件关中断硬件关中断向量地址向量地址 PC中断隐指令完成中断隐指令完成1 W第10页,此课件共71页哦例例 10.1 设设 CPU中各部件及其相互连接关系如图中各部件及其相互连接关系如图 10.1 所示。图中所示。图中 W 是写控制标志,是写控制标志,R是读控制标是读控制标志,志,R1 和和R2 是暂存器。是暂存器。第11页,此课件共71页哦(1)假设要求在取指周期由)假设要求在取指周期由ALU 完成完成(PC)+1PC 的操作(即的操作(即ALU 可以对它的一个可以对它的一个 源操作数完成源操作数完成加加 1 的运算)。要求以最少的节拍写出取指周期全部的运算)。要求以最少的节拍写
6、出取指周期全部微操作命令及节拍安排。微操作命令及节拍安排。(2)写出指令)写出指令“ADD#”(#为立即寻址特征,隐含为立即寻址特征,隐含的操作数在的操作数在ACC 中)在执行阶中)在执行阶段所需的微操作命令及节拍安排。段所需的微操作命令及节拍安排。第12页,此课件共71页哦 解解:(1)由于)由于(PC)+1PC 需由需由ALU 完成,因此完成,因此PC 的值的值可作为可作为ALU 的一个源操作数,靠控制的一个源操作数,靠控制ALU 做做1 运运算得到算得到(PC)+1,结果送至与,结果送至与ALU 输出端相连的输出端相连的R2 ,然后再送至,然后再送至PC。此题的关键是要此题的关键是要考虑
7、总线冲突考虑总线冲突的问题,故取指周期的问题,故取指周期的微操作命令及节拍安排如下:的微操作命令及节拍安排如下:T0 PCBusMAR,1R ;PC 通过总线送通过总线送MAR T1 M(MAR)MDR,(PC)BusALU+1R2 ;PC 通过总线送通过总线送ALU 完成完成(PC)+1R2 T2 MDRBusIR,;MDR 通过总线送通过总线送IR OP(IR)微操作命令形成部件微操作命令形成部件 T3 R2BusPC ;R2 通过总线送通过总线送PC 第13页,此课件共71页哦(2)立即寻址的加法指令执行周期的微操作命令及节拍)立即寻址的加法指令执行周期的微操作命令及节拍安排如下:安排如
8、下:T0 Ad(IR)BusR1 ;立即数;立即数R1 T1 (ACC)+(R1)ALUR2 ;ACC 通过总线送通过总线送ALU T2 R2 BusACC ;结果通过总线送;结果通过总线送ACC 第14页,此课件共71页哦 例例 10.2 设设CPU 内部结构如图内部结构如图10.1 所示,且所示,且PC 有自动有自动加加 1 功能。此外还有功能。此外还有B、C、D、E、H、L 六个寄存六个寄存器(图中未画),它们各自的输入端和输出端都器(图中未画),它们各自的输入端和输出端都与内部总线与内部总线Bus 相连,并分别受控制信号控制。要求相连,并分别受控制信号控制。要求写出完成下列指令组合逻辑
9、控制单元所发出的微操作命写出完成下列指令组合逻辑控制单元所发出的微操作命令及节拍安排。令及节拍安排。(1)ADD B,C ;(B)(C)B (2)SUB E,H ;(E)(H)E 寄存器间接寻址寄存器间接寻址(3)STA mem ;ACC(mem)存储器间接寻址存储器间接寻址 第15页,此课件共71页哦(1)完成)完成“ADD B,C”指令所需的微操作命令及节拍安排指令所需的微操作命令及节拍安排 取指周期取指周期 T0 PCBusMAR,1R T1 M(MAR)MDR,(PC)+1PC T2 MDRBusIR,OP(IR)微操作命令形成部件微操作命令形成部件 执行周期执行周期 T0 CBusR
10、1 T1(B)+(R1)ALUR2 ;B 通过总线送通过总线送ALU T2 R2BusB 第16页,此课件共71页哦(2)完成)完成“SUB E,H”指令所需的微操作命令及节拍安指令所需的微操作命令及节拍安排排 取指周期取指周期 T0 PCBusMAR,1R T1 M(MAR)MDR,(PC)+1PC T2 MDRBusIR,OP(IR)微操作命令形成部件微操作命令形成部件 间址周期间址周期 T0 HBusMAR,1R T1 M(MAR)MDR 执行周期执行周期 T0 MDRBusR1 T1 (E)(R1)ALUR2 ;E 通过总线送通过总线送ALU T2 R2 BusE 第17页,此课件共7
11、1页哦(3)完成)完成“STA mem”指令所需的微操作命令及指令所需的微操作命令及节拍安排节拍安排 取指周期取指周期 T0 PCBusMAR,1R T1 M(MAR)MDR,(PC)+1PC T2 MDRBusIR,OP(IR)微操作命令形成部件微操作命令形成部件 间址周期间址周期 T0 Ad(IR)BusMAR,1R T1 M(MAR)MDR 执行周期执行周期 T0 MDRBusMAR,1W T1 ACCBusMDR T2 MDRM(MAR)第18页,此课件共71页哦例例 10.3 设寄存器均为设寄存器均为 16 位,实现补码位,实现补码Booth 算法的算法的运算器框图图运算器框图图 1
12、0.2 所示。其中寄存所示。其中寄存 器器 A、X 最高最高2位位A0、A1和和X0、X1为符号位,寄存器为符号位,寄存器 Q0最高位最高位 Q0为符号位,最末位为符号位,最末位 Q15为附加位。假设上条指令的为附加位。假设上条指令的运行结果存于运行结果存于A(即为被乘数)中。(即为被乘数)中。(1)若)若CU 为组合逻辑控制,且采用中央和局部控为组合逻辑控制,且采用中央和局部控制相结合的办法,写出完成制相结合的办法,写出完成“MUL”(为主存地为主存地址)指令的全部微操作命令及节拍安排。址)指令的全部微操作命令及节拍安排。(2)指出哪些节拍属于中央控制节拍,哪些节拍属于局)指出哪些节拍属于中
13、央控制节拍,哪些节拍属于局部控制节拍,局部控制最多需几拍部控制节拍,局部控制最多需几拍?第19页,此课件共71页哦0 A n+1n+2 位加法器位加法器控控 制制 门门0 X n+10 Q n n+1移位和加移位和加控制逻辑控制逻辑计数器计数器 CGM00,110110右移右移第20页,此课件共71页哦(1)取指阶段)取指阶段 T0 PCMAR,1R T1 M(MAR)MDR,(PC)+1PC T2 MDRIR,OP(IR)ID 第21页,此课件共71页哦执行阶段执行阶段 乘法开始前要将被乘数由乘法开始前要将被乘数由 AX,并将乘数从主存,并将乘数从主存 单元取单元取出送至出送至 Q 寄存器。
14、因寄存器。因 Q15(最末位)为附加位,还必(最末位)为附加位,还必须须0Q15,并将,并将A 清清 0。上述这些操作可安排在中央控。上述这些操作可安排在中央控制节拍内完成。乘法过程的重复加操作受制节拍内完成。乘法过程的重复加操作受 Q 寄存器末两寄存器末两位位 Q14、Q15 控制,重复移位操作在两个串接的寄存器控制,重复移位操作在两个串接的寄存器A/Q 中完成,这两种操作可安排在局部控制节拍内完成。具体安排中完成,这两种操作可安排在局部控制节拍内完成。具体安排如下:如下:T0 Ad(IR)MAR,1R,AX T1 M(MAR)MDR,0Q15,0A T2 MDRQ014 (Q 寄存器仅取一
15、位符号位)寄存器仅取一位符号位)T0*Q14Q15(A+X)+Q14Q15(A+X+1)+Q14Q15A+Q14Q15AA T1*L(A/Q)R(A/Q)(A/Q 算术右移一位)算术右移一位)第22页,此课件共71页哦(2)中央控制节拍包括取指阶段所有节拍和执行)中央控制节拍包括取指阶段所有节拍和执行阶段的阶段的 T0、T1、T2 3 个节拍,完成取指令和取个节拍,完成取指令和取操作数及乘法运算前的准备工作。局部控制节拍操作数及乘法运算前的准备工作。局部控制节拍是执行阶段的是执行阶段的 T0*和和 T1*节拍,节拍,其中其中 T0*为重复加操作,受为重复加操作,受Q 寄存器末两位寄存器末两位Q
16、14Q15 控制,最多执行控制,最多执行 15 次;次;T1*为移位操作,为移位操作,共执行共执行 14 次。次。第23页,此课件共71页哦T2T1T0 FE取指取指 JMPLDASTAADDCOMCLA微操作命令信号微操作命令信号状态状态条件条件节拍节拍工作工作周期周期标记标记PC MAR1 RM(MAR)MDR (PC)+1 PCMDR IROP(IR)ID1 IND1 EXII1111111111111111111111111111111111111111111111三、组合逻辑设计步骤三、组合逻辑设计步骤1.1.列出操作时间列出操作时间表表第24页,此课件共71页哦T2T1T0 IND
17、 间址间址JMPLDASTAADDCOMCLA微操作命令信号微操作命令信号状态状态条件条件节拍节拍工作工作周期周期标记标记Ad(IR)MAR1 RM(MAR)MDR MDR Ad(IR)1 EXIND11111111111111111111第25页,此课件共71页哦T2T1T0 EX执行执行 JMPLDASTAADDCOMCLA微操作命令信号微操作命令信号状态状态条件条件节拍节拍工作工作周期周期标记标记Ad(IR)MAR1 RM(MAR)MDR AC MDR(AC)+(MDR)ACMDR M(MAR)MDR AC0 AC1 W1111111111111第26页,此课件共71页哦2.2.写出微操
18、作命令的最简表达写出微操作命令的最简表达式式=FE T1+IND T1(ADD+STA+LDA+JMP+BAN)+EX T1(ADD+LDA)M(MAR)MDR=T1 FE+IND(ADD+STA+LDA+JMP+BAN)+EX(ADD+LDA)第27页,此课件共71页哦3.3.画出逻辑图画出逻辑图特点特点 思路清晰,简单明了思路清晰,简单明了 庞杂,调试困难,修改困难庞杂,调试困难,修改困难 速度快速度快&11&1FEINDEXLDAADDJMPBANSTAT1M(MAR)MDR(RISC)&第28页,此课件共71页哦CU采采用用组组合合逻逻辑辑设设计计,因因微微操操作作控控制制信信号号全全
19、部部由由硬硬件件产产生生,所所以以速速度度快快,可可用用于于构构成成高高速速的的RISC机机和和巨巨型型机。它的缺点:机。它的缺点:(1)逻辑实现复杂)逻辑实现复杂(2)不易扩展和修改。)不易扩展和修改。采采用用微微程程序序设设计计方方法法可可克克服服上上述述缺缺点点。它它是是利利用用程程序序设设计计及及存存储储逻逻辑辑的的概概念念,称称为为微微程程序序设设计计技技术术。它它解解决决了了设设计计的的规规整整性性问问题题,它它将将不不规规则则的的微微操操作作命命令令变变成成了了有有规律的微程序,使控制单元的设计更科学合理。规律的微程序,使控制单元的设计更科学合理。存存储储逻逻辑辑又又解解决决了了
20、不不可可修修改改问问题题,简简化化了了控控制制器器的的设设计计任务,即不易出错成本又较低;缺点是操作速度比较低。任务,即不易出错成本又较低;缺点是操作速度比较低。10.2 10.2 微程序设计微程序设计第29页,此课件共71页哦一、微程序设计思想的产生一、微程序设计思想的产生19511951英国剑桥大学教授英国剑桥大学教授Wilkes完成完成一条机器指令一条机器指令微操作命令微操作命令11微操作命令微操作命令22微操作命令微操作命令 n微指令微指令1110100000微指令微指令 n微程序微程序00010010存储逻辑存储逻辑一条机器指令对应一个微程序一条机器指令对应一个微程序存入存入 ROM
21、第30页,此课件共71页哦1、微程序控制概念、微程序控制概念n一条指令的处理包含许多微操作序列一条指令的处理包含许多微操作序列 n这些操作可以归结为信息传递、运算这些操作可以归结为信息传递、运算 n将这些操作所需要的控制信号以多条微指令表示将这些操作所需要的控制信号以多条微指令表示 n执行一条微指令就给出一组微操作控制信号执行一条微指令就给出一组微操作控制信号 n执行一条指令也就是执行一段由多条微指令组成的微执行一条指令也就是执行一段由多条微指令组成的微程序程序 二、微程序控制单元框图及工作原理二、微程序控制单元框图及工作原理第31页,此课件共71页哦程序程序微指令微指令微程序微程序第32页,
22、此课件共71页哦微程序控制器微程序控制器基本概念基本概念程序机器指令机器指令1机器指令机器指令2机器指令机器指令i机器指令机器指令n.微指令微指令2微指令微指令1微指令微指令i微指令微指令n.微程序第33页,此课件共71页哦2.机器指令对应的微程序机器指令对应的微程序M+1MM+2P+1KK+2PP+2K+1取指周期微程序取指周期微程序对应对应 LDA 操作的微程序操作的微程序对应对应 STA 操作的微程序操作的微程序间址周期微程序间址周期微程序中断周期微程序中断周期微程序第34页,此课件共71页哦3.微程序控制单元的基本框微程序控制单元的基本框图图 微地址微地址 形成部件形成部件顺序逻辑顺序
23、逻辑CMAR地址译码地址译码控制存储器控制存储器标志标志CLK下地址下地址CMDR至至 CPU 内部和系统总线的控制信号内部和系统总线的控制信号 OPIR顺序控制顺序控制操作控制操作控制微指令基本格式微指令基本格式第35页,此课件共71页哦M+1MM+2P+1KK+2PP+2K+1取指周期取指周期 微程序微程序对应对应 LDA 操作的微程序操作的微程序对应对应 STA 操作的微程序操作的微程序间址周期间址周期 微程序微程序中断周期中断周期 微程序微程序M+1M+2P+1P+2K+1K+2MM转执行周期微程序转执行周期微程序转取指周期微程序转取指周期微程序第36页,此课件共71页哦4.工作原理工
24、作原理LDA XADD YSTA Z主存主存STP用用户户程程序序控存控存M+1MM+2P+1QQ+2PP+2Q+1取指周期取指周期 微程序微程序对应对应 LDA 操操作的微程序作的微程序对应对应 ADD 操操作的微程序作的微程序Q+1Q+2MM+1M+2P+1P+2M对应对应 STA 操操作的微程序作的微程序K+1K+2MKK+2K+1第37页,此课件共71页哦(1)取指周期取指周期 将取指周期微程序首地址将取指周期微程序首地址 M CMAR;取第一条微指令,取第一条微指令,CM(CMAR)CMDR;产生微操作命令,产生微操作命令,PC MAR,1 R;形成下一条微指令地址,形成下一条微指令
25、地址,M+1 CMAR;取第二条微指令,取第二条微指令,CM(CMAR)CMDR;产生微操作命令产生微操作命令,M(MAR)MDR,(PC)+1 PC;形成下一条微指令地址,形成下一条微指令地址,M+2 CMAR;如此进行下去,至到取出最后一条微指令并发出微操作如此进行下去,至到取出最后一条微指令并发出微操作命令命令,此时,此时,LDA X 指令取至指令取至IR。第38页,此课件共71页哦(2)执行周期执行周期 形成形成LDA X 指令微程序首地址指令微程序首地址 P CMAR;取第一条微指令,取第一条微指令,CM(CMAR)CMDR;产生微操作命令,产生微操作命令,Ad(IR)MAR,1 R
26、;形成下一条微指令地址,形成下一条微指令地址,P+1 CMAR;取第二条微指令,取第二条微指令,CM(CMAR)CMDR;产生微操作命令,产生微操作命令,M(MAR)MDR;形成下一条微指令地址,形成下一条微指令地址,P+2 CMAR;如此进行下去,至到取出最后一条微指令并发出微操作如此进行下去,至到取出最后一条微指令并发出微操作命令命令,此时,此时,LDA X 指令执行结束。指令执行结束。如此循环取指周期和执行周期,至到执行完如此循环取指周期和执行周期,至到执行完STP指令,此指令,此程序运行结束。程序运行结束。第39页,此课件共71页哦三、微命令的编码方式三、微命令的编码方式 主要解决微指
27、令的操作控制字段的格式安排,主要解决微指令的操作控制字段的格式安排,常用的方法主要有三种。常用的方法主要有三种。1.直接编码方式直接编码方式 思想:思想:微操作控制字段的每一位表示一个微命微操作控制字段的每一位表示一个微命令,令,0 0表示无效,表示无效,1 1表示有效表示有效。示意图:示意图:特点:特点:简单直观,速度快,但微指令字长较长,简单直观,速度快,但微指令字长较长,适用于结构较简单的机器。适用于结构较简单的机器。顺序控制字段顺序控制字段微操作控制信号微操作控制信号第40页,此课件共71页哦 思想:思想:将微操作控制字段分为若干小字段,把一组互斥微将微操作控制字段分为若干小字段,把一
28、组互斥微命令组织在一起,用一个小字段编码表示,将相容的微命令安命令组织在一起,用一个小字段编码表示,将相容的微命令安排在不同字段内。在某一时刻,每个字段通过译码产生一条微排在不同字段内。在某一时刻,每个字段通过译码产生一条微命令,不同字段可以发出多条微命令。命令,不同字段可以发出多条微命令。能有效压缩微指令的长度,但由于译码稍影响速度能有效压缩微指令的长度,但由于译码稍影响速度注意:为每个字段分配编码时,应考虑无操作的情况,注意:为每个字段分配编码时,应考虑无操作的情况,即即n位通常仅能安排位通常仅能安排2n-1个微命令。个微命令。2.字段直接编码方式字段直接编码方式 微操作(微命令)间的关系
29、:微操作(微命令)间的关系:相容和互斥。相容和互斥。相容:相容:能同时(并行)执行的微操作;能同时(并行)执行的微操作;互斥:互斥:不能同时执行的微操作。不能同时执行的微操作。第41页,此课件共71页哦译码译码译码译码译码译码下地址下地址操作控制操作控制控制信号控制信号第42页,此课件共71页哦3.字段间接编码方式字段间接编码方式字段字段 1字段字段 2译码译码译码译码译码译码操作控制操作控制控制信号控制信号字段字段 n下地址下地址控制信号控制信号隐式编码隐式编码这种方式一个字段的某些微命令还需要由另个一个字这种方式一个字段的某些微命令还需要由另个一个字段中的某些微命令来解释,由于不是靠字段直
30、接译码段中的某些微命令来解释,由于不是靠字段直接译码发出微命令,故称为字段间接编码,又称隐式编码。发出微命令,故称为字段间接编码,又称隐式编码。第43页,此课件共71页哦4.混合编码方式混合编码方式 当分段直接编码方式中某些小字段的位数少到只有当分段直接编码方式中某些小字段的位数少到只有一位时,就可认为是一位时,就可认为是直接编码方式和字段直接编码方式的直接编码方式和字段直接编码方式的混合编码方式。混合编码方式。特点:特点:可改善分段直接编码方式的灵活性和执行速度。可改善分段直接编码方式的灵活性和执行速度。第44页,此课件共71页哦 例例 10.4 某机的微指令格式中,共有某机的微指令格式中,
31、共有 8 个控制字段,个控制字段,每个字段可分别激活每个字段可分别激活 5、8、3、16、1、7、25、4 种控制信号。分别采用直接编码和字段直接编码方式种控制信号。分别采用直接编码和字段直接编码方式设计微指令的操作控制字段,并说明两种方式的操作设计微指令的操作控制字段,并说明两种方式的操作控制字段各取几位。控制字段各取几位。第45页,此课件共71页哦 解:(解:(1)采用直接编码方式,微指令的操作控制字)采用直接编码方式,微指令的操作控制字段的总位数等于控制信号数。即段的总位数等于控制信号数。即 5+8+3+16+1+7+25+4=69 (2)采用字段直接编码方式,需要的控制位少。根)采用字
32、段直接编码方式,需要的控制位少。根据题目给出的据题目给出的10 个控制字段及各段可激活的控制信个控制字段及各段可激活的控制信号数,再加上每个控制字段至少要留一个码字表号数,再加上每个控制字段至少要留一个码字表示不激活任何一条控制线,即微指令的示不激活任何一条控制线,即微指令的8 个控制字个控制字段分别需给出段分别需给出 6、9、4、17、2、8、26、5 种状态,种状态,对应对应 3、4、2、5、1、3、5、3 位。故微指令的操位。故微指令的操作控制字段的总位数为:作控制字段的总位数为:3+4+2+5+1+3+5+3=26 第46页,此课件共71页哦四、微指令序列地址的形成四、微指令序列地址的
33、形成1.直接由微指令的直接由微指令的 下地址字段下地址字段 指出指出2.根据机器指令的根据机器指令的 操作码操作码 形成形成3.增量计数器增量计数器4.分支转移分支转移(CMAR)+1 CMAR 转移地址转移地址操作控制字段操作控制字段 转移方式转移方式转移方式转移方式指明判别条件指明判别条件转移地址转移地址指明转移成功后的去向指明转移成功后的去向第47页,此课件共71页哦5.通过测试网络通过测试网络6.由硬件产生微程序入口地址由硬件产生微程序入口地址第一条微指令地址第一条微指令地址由专门由专门 硬件硬件 产生产生中断周期中断周期由由 硬件硬件 产生产生 中断周期微程序首地址中断周期微程序首地
34、址非测试地址非测试地址 h测试地址测试地址 l测试网络测试网络测试源测试源微指令地址微指令地址CMDR操作控制操作控制顺序控制顺序控制HL第48页,此课件共71页哦7.后续微指令地址形成方式原理图后续微指令地址形成方式原理图地址地址选择选择+1CMAR地址译码地址译码下地址下地址转移方式转移方式CMDR控制存储器控制存储器控制信号控制信号 分支分支 逻辑逻辑标志标志微程序入口微程序入口OPIR 微地址微地址 形成部件形成部件 多路选择多路选择第49页,此课件共71页哦n水平型微指令:水平型微指令:一次能定义并执行多个并行操作微命一次能定义并执行多个并行操作微命令的微指令,叫做水平型微指令。令的
35、微指令,叫做水平型微指令。n基本特征:基本特征:n微指令字较长微指令字较长n一条微指令能控制数据通路中多个功能部件并行操作。一条微指令能控制数据通路中多个功能部件并行操作。n微命令的编码简单,尽可能使微命令与控制门之间具有微命令的编码简单,尽可能使微命令与控制门之间具有直接对应关系。直接对应关系。格式如下:格式如下:控控 制制 字字 段段判别测试字段判别测试字段下地址字段下地址字段五、微指令格式五、微指令格式第50页,此课件共71页哦n垂直型微指令:垂直型微指令:在微指令中设置微操作码字段,在微指令中设置微操作码字段,采用为操作码编译法,由操作码规定为微指令的功能,在采用为操作码编译法,由操作
36、码规定为微指令的功能,在一条微指令中只有一、两个微操作命令称为垂直型微指令。一条微指令中只有一、两个微操作命令称为垂直型微指令。n基本特征:基本特征:n微指令字短。微指令字短。n微指令的并行操作能力有限,一条微指令只能控制数据通路中微指令的并行操作能力有限,一条微指令只能控制数据通路中的一、两个信息传送。的一、两个信息传送。n微指令编码比较复杂,全部微命令组成一个微操作码字段,经过微指令编码比较复杂,全部微命令组成一个微操作码字段,经过完全译码,微指令的各个二进制位与数据通路的各个控制点之间完全译码,微指令的各个二进制位与数据通路的各个控制点之间完全不存在直接对应关系。完全不存在直接对应关系。
37、第51页,此课件共71页哦000原寄存器目的寄存器其他001左输入源编址右输入源编址ALU010寄存器编址存储器编址读写其他011测试条件寄存器数据传送型寄存器数据传送型运算控制型运算控制型访问主存型访问主存型条件转移型条件转移型第52页,此课件共71页哦(3)水平型与垂直型微指令比较)水平型与垂直型微指令比较n水平型微指令并行操作能力强,效率高,灵活性强水平型微指令并行操作能力强,效率高,灵活性强 n水平型微指令执行一条指令的时间短水平型微指令执行一条指令的时间短 n由水平型微指令指令的微程序,有微指令字较长,由水平型微指令指令的微程序,有微指令字较长,微程序短,垂直型号字长短,微程序长。微
38、程序短,垂直型号字长短,微程序长。n水平型不便于用户掌握,垂直型与指令相似,易于掌握。水平型不便于用户掌握,垂直型与指令相似,易于掌握。第53页,此课件共71页哦例例 10.5 某微程序控制器中,采用水平型直接控制某微程序控制器中,采用水平型直接控制(编码)方式的微指令格式,后续微指令地址由(编码)方式的微指令格式,后续微指令地址由微指令的下地址字段给出。已知机器共有微指令的下地址字段给出。已知机器共有 28 个个微命令,微命令,6 个互斥的可判定的外部条件,控制存储个互斥的可判定的外部条件,控制存储器的容量为器的容量为512 40 位。试设计其微指令格式,位。试设计其微指令格式,并说明理由。
39、并说明理由。第54页,此课件共71页哦 解:水平型微指令由操作控制字段,判别测试字段和下解:水平型微指令由操作控制字段,判别测试字段和下地址字段三部分构成。因为微指令采用直接控制(编地址字段三部分构成。因为微指令采用直接控制(编码)方式,所以其操作控制字段的位数等于微命令数,码)方式,所以其操作控制字段的位数等于微命令数,为为28 位。又由于后续微指令地址由下地址字段位。又由于后续微指令地址由下地址字段给出,故其下地址字段的位数可根据控制存储器给出,故其下地址字段的位数可根据控制存储器的容量(的容量(512 40 位)定为位)定为9 位。当微程序出现分位。当微程序出现分支时,后续微指令地址的形
40、成取决于状态条件,支时,后续微指令地址的形成取决于状态条件,6 个个互斥的可判定外部条件,可以编码成互斥的可判定外部条件,可以编码成3 位状态位。位状态位。非分支时的后续微指令地址由微指令的下地址非分支时的后续微指令地址由微指令的下地址 字字段直接给出。段直接给出。第55页,此课件共71页哦 例例 10.6 某机共有某机共有 52 个微操作控制信号,构成个微操作控制信号,构成 5 个个相斥类的微命令组,各组分别包含相斥类的微命令组,各组分别包含 5、8、2、15、22 个微命令。已知可判定的外部条件有两个,微指个微命令。已知可判定的外部条件有两个,微指令字长令字长28 位。位。(1)按水平型微
41、指令格式设计微指令,要求微指)按水平型微指令格式设计微指令,要求微指令的下地址字段直接给出后续微指令地址。令的下地址字段直接给出后续微指令地址。(2)指出控制存储器的容量。)指出控制存储器的容量。第56页,此课件共71页哦(1)根据)根据 5 个相斥类的微命令组,各组分别包含个相斥类的微命令组,各组分别包含 5、8、2、15、22 个微命令,考虑到每组必须增加个微命令,考虑到每组必须增加一种不发命令的情况,条件测试字段应包含一种一种不发命令的情况,条件测试字段应包含一种不转移的情况,则不转移的情况,则 5 个控制字段分别需给出个控制字段分别需给出 6、9、3、16、23 种状态,对应种状态,对
42、应 3、4、2、4、5 位(共位(共 18 位),条件测试字段取位),条件测试字段取2 位。根据微指令位。根据微指令字长为字长为28 位,则下地址字段取位,则下地址字段取28182=8 位,位,其微指令格式如图其微指令格式如图(2)根据下地址字段为)根据下地址字段为8 位,微指令字长为位,微指令字长为28 位,位,得控制存储器的容量为得控制存储器的容量为256 28 位。位。第57页,此课件共71页哦六、静态微程序设计和动态微程序设计六、静态微程序设计和动态微程序设计静态静态微程序无须改变,采用微程序无须改变,采用 ROM动态动态通过通过 改变微指令改变微指令 和和 微程序微程序 改变机器指令
43、,改变机器指令,有利于仿真,采用有利于仿真,采用 EPROM七、毫微程序设计七、毫微程序设计1.毫微程序设计的基本概念毫微程序设计的基本概念微程序设计微程序设计用用 微程序解释机器指令微程序解释机器指令毫微程序设计毫微程序设计用用 毫微程序解释微程序毫微程序解释微程序毫微指令与微指令毫微指令与微指令 的关系好比的关系好比 微指令与机器指令微指令与机器指令 的关系的关系第58页,此课件共71页哦2.毫微程序控制存储器的基本组成毫微程序控制存储器的基本组成 控制存储器控制存储器 (微程序)(微程序)CMAR1MOPOP转移地址转移地址垂直型垂直型微指令微指令IR+1CMDR1CMAR2 控制存储器
44、控制存储器(毫微程序)(毫微程序)水平型微指令水平型微指令控制信号控制信号CMDR2第59页,此课件共71页哦八、串行微程序控制和并行微程序控制八、串行微程序控制和并行微程序控制取第取第 i+1 条微指令条微指令执行第执行第 i 条微指令条微指令取第取第 i 条微指令条微指令执行第执行第 i+1 条微指令条微指令执行第执行第 i 条微指令条微指令取第取第 i 条微指令条微指令取第取第 i+1 条微指令条微指令 执行第执行第 i+1 条微指令条微指令取第取第 i+2 条微指令条微指令 执行第执行第 i+2 条微指令条微指令串行串行 微程序控制微程序控制并行并行 微程序控制微程序控制第60页,此课
45、件共71页哦还需考虑还需考虑 如何读出如何读出 这这33条微指令条微指令?1.1.写出对应机器指令的微操作及节拍安排写出对应机器指令的微操作及节拍安排假设假设 CPU 结构与组合逻辑相同结构与组合逻辑相同(1)取指阶段微操作分析取指阶段微操作分析T0T1T2PC MARM(MAR)MDR(PC)+1 PCMDR IROP(IR)微地址形成部件微地址形成部件九、微程序设计举例九、微程序设计举例1 R若一个若一个 T 内安排一条微指令内安排一条微指令则取指操作需则取指操作需 33条微指令条微指令33条微指令条微指令Ad(CMDR)CMAROP(IR)微地址形成部件微地址形成部件 CMAR第61页,
46、此课件共71页哦(2)(2)取指阶段的微操作及节拍安排取指阶段的微操作及节拍安排考虑到需要考虑到需要 形成后续微指令的地址形成后续微指令的地址T0T1T2T3T4T51R(PC)+1PCOP(IR)微地址形成部件微地址形成部件MARPCCMARAd(CMDR)MDRM(MAR)CMARAd(CMDR)IRMDRCMAROP(IR)微地址形成部件微地址形成部件第62页,此课件共71页哦(3)(3)执行阶段的微操作及节拍安排执行阶段的微操作及节拍安排考虑到需形成后续微指令的地址考虑到需形成后续微指令的地址取指微程序的入口地址取指微程序的入口地址 M由微指令下地址字段指出由微指令下地址字段指出非访存
47、指令非访存指令 CLA 指令指令T0T1 COM 指令指令T0T1Ad(CMDR)CMARACACCMARAd(CMDR)AC0第63页,此课件共71页哦 CSL 指令指令T0T1 STP 指令指令T1Ad(CMDR)CMARAC0ACnT0CMARAd(CMDR)G0L(AC)R(AC)SHR 指令指令T0T1AC0AC0R(AC)L(AC)CMARAd(CMDR)第64页,此课件共71页哦访存指令访存指令 ADD 指令指令T0T1T2T3T4T5Ad(IR)MARAd(CMDR)CMARM(MAR)MDRAd(CMDR)CMAR(AC)+(MDR)ACAd(CMDR)CMAR1R STA
48、指令指令T0T1T2T3T4T5Ad(IR)MARAd(CMDR)CMARACMDRAd(CMDR)CMARMDRM(MAR)Ad(CMDR)CMAR1W第65页,此课件共71页哦 LDA 指令指令T0T1T2T3T4T5Ad(IR)MARAd(CMDR)CMARM(MAR)MDRAd(CMDR)CMARMDRACAd(CMDR)CMAR1R第66页,此课件共71页哦全部微操作全部微操作 20个个微指令微指令 38条条转移类指令转移类指令 JMP 指令指令T0T1Ad(IR)PCAd(CMDR)CMAR BAN 指令指令T0T1Ad(CMDR)CMARA0 Ad(IR)+A0 (PC)PC第6
49、7页,此课件共71页哦2.2.确定微指令格式确定微指令格式(1)(1)微指令的编码方式微指令的编码方式(2)(2)后续微指令的地址形成方式后续微指令的地址形成方式采用直接控制采用直接控制由机器指令的操作码通过微地址形成部件形成由机器指令的操作码通过微地址形成部件形成由微指令的下地址字段直接给出由微指令的下地址字段直接给出(3)(3)微指令字长微指令字长由由 2020 个微操作个微操作确定确定 操作控制字段操作控制字段最少最少 2020 位位由由 3838 条微指令条微指令确定微指令的确定微指令的 下地址字段下地址字段 为为 6 6 位位微指令字长微指令字长可取可取 2020662626 位位第
50、68页,此课件共71页哦(4)(4)微指令字长的确定微指令字长的确定1 条条18 条条38 条微指令中有条微指令中有 19 条条是关于后续微指令地址是关于后续微指令地址CMARAd(CMDR)CMAR其中其中若用若用 Ad(CMDR)直接送控存地址线直接送控存地址线则则 省去了输至省去了输至 CMAR 的时间,省去了的时间,省去了 CMAR同理同理OP(IR)微地址形成部件微地址形成部件 控存地址线控存地址线可省去可省去1919条微指令,条微指令,22个微操作个微操作 38 19 19 下地址字段最少取下地址字段最少取 5 位位 20 2 18操作控制字段最少取操作控制字段最少取 18 位位C