《中央处理器白中英.ppt》由会员分享,可在线阅读,更多相关《中央处理器白中英.ppt(96页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、5.4 5.4 微程序控制器微程序控制器 5.4.1微程序控制原理微程序控制原理5.4.2微程序微程序设计设计技技术术 发展发展 微程序的概念和原理是由英国剑桥大学的微程序的概念和原理是由英国剑桥大学的MVWilkesMVWilkes教授于教授于19511951年在曼彻斯特大学计算机会议年在曼彻斯特大学计算机会议上首先提出来的,当时还没有合适的存放微程序的控制上首先提出来的,当时还没有合适的存放微程序的控制存储器的元件。存储器的元件。到到19641964年,年,IBMIBM公司在公司在IBM 360IBM 360系列机上成功地采用了系列机上成功地采用了微程序设计技术。微程序设计技术。2020世
2、纪世纪7070年代以来,由于年代以来,由于VLSIVLSI技术的技术的发展,推动了微程序设计技术的发展和应用。发展,推动了微程序设计技术的发展和应用。目前,目前,从大型机到小型机、微型机都普遍采用了微程序设计技从大型机到小型机、微型机都普遍采用了微程序设计技术。术。5.4.1 5.4.1 微程序控制原理微程序控制原理基本思想基本思想 仿照解题的方法,把操作控制信号编制成微指令,存放仿照解题的方法,把操作控制信号编制成微指令,存放到控制存储器里,运行时,从控存中取出微指令,产生指到控制存储器里,运行时,从控存中取出微指令,产生指令运行所需的操作控制信号。令运行所需的操作控制信号。从上述可以看出,
3、微程序设从上述可以看出,微程序设计技术是用软件方法来设计硬件的技术。计技术是用软件方法来设计硬件的技术。5.4.1 5.4.1 微程序控制原理微程序控制原理 根根据据每每条条指指令令执执行行的的阶阶段段性性,将将所所需需微微操操作作信信号号以以二二进进制制编编码码形形式式存存入入存存储储器器,按按序序依依次次读读出出执执行行,即即可可实现指令的功能。实现指令的功能。微命令微命令:控控制制部部件件(如如CU)通通过过控控制制线线向向执执行行部部件件(如如ALU、M、I/O等)发出的命令等)发出的命令。微操作微操作:执行部件接受微命令后所进行的操作。执行部件接受微命令后所进行的操作。1.1.微命令
4、和微操作微命令和微操作ALUDRYXM468123579R1R2R3Cy图图5.235.23简单运算器数据通路图简单运算器数据通路图相斥性微命令相斥性微命令 不能同时出现的微命令。不能同时出现的微命令。例如:例如:+,M。相容性微命令相容性微命令可能同时出现的微命令。可能同时出现的微命令。例如:图中的例如:图中的4,5。2.微指令和微程序微指令和微程序 微微指指令令:在在一一个个CPU周周期期中中,一一组组实实现现一一定定操操作作功能的微命令的组合。功能的微命令的组合。微指令的基本格式:微指令的基本格式:P字段字段下址字段下址字段操作控制操作控制顺序控制顺序控制图图5.20 5.20 微指令的
5、基本格式微指令的基本格式 操作控制字段操作控制字段用于产生微命令。用于产生微命令。顺序控制字段顺序控制字段用于确定下一条微指令的地址。用于确定下一条微指令的地址。操作控制字段中的每一位表示一个微命令。操作控制字段中的每一位表示一个微命令。12345678910 11 12 13 14 15 16 17 18 1920 21 22 23LDR1LDR2LDR3R1xR1yR2xR2yDRxR3yMRDLDDRLDIRLDARPC+1P1P2直接地址直接地址操作控制操作控制顺序控制顺序控制图图5.245.24微指令基本格式微指令基本格式例如:第例如:第1 1位位=1 1有微命令有微命令LDR10
6、0无微命令无微命令LDR1微命令微命令 微程序微程序:由微指令组成,用以实现指令功能的程序由微指令组成,用以实现指令功能的程序。微命令微命令微指令微指令微程序微程序机器指令系统机器指令系统组合组合组合组合组合组合 机器指令机器指令a微程序设计微程序设计用类似程序设计的方法,组织和控制机器内部信息的传送和互相的联系。用类似程序设计的方法,组织和控制机器内部信息的传送和互相的联系。b微程序设计任务微程序设计任务设计微指令,编制微程序设计微指令,编制微程序操作时序电位与脉冲的配合操作时序电位与脉冲的配合20ns60ns“”LDR1CPU周期节拍电位信号节拍脉冲信号图5.25运算器操作时序与产生逻辑T
7、4LDR1LDR2LDR3LDR1LDR2LDR3LDR1LDR3用于图5.23的1,2,3微指令。3.3.微程序控制器原理框图微程序控制器原理框图地址转移逻辑OP微地址寄存器地址译码控制存储器P字段控制字段微命令信号指令寄存器IR状态条件微指令寄存器图5.22微程序控制器组成原理框图地址转地址转移移逻辑逻辑OP微地址寄存器微地址寄存器地址译码地址译码控制存储器控制存储器P字段字段控制字段控制字段微命令信号微命令信号指令寄存器指令寄存器IR状态条件状态条件微指令微指令寄存器寄存器图图5.225.22微程序控制器组成原理框图微程序控制器组成原理框图(1)控制储存器)控制储存器CM存放实现机器指令
8、系统功能存放实现机器指令系统功能的微程序,由高速的微程序,由高速ROMROM构成。构成。*CM的字长就是微指令字长;的字长就是微指令字长;CM是控制器的一部分;是控制器的一部分;要求要求CM高速可靠。高速可靠。(2)微指令寄存器微指令寄存器MIR寄存现行微指令。寄存现行微指令。(3)地址转移逻辑地址转移逻辑按要求修改、形成下一条微指令的地址。按要求修改、形成下一条微指令的地址。(4)微地址寄存器微地址寄存器 AR 寄存访问寄存访问CMCM的微指令地址。的微指令地址。(4)微程序控制的计算机的工作过程微程序控制的计算机的工作过程 执执行行取取指指微微指指令令:依依(PC)从从内内存存读读出出指指
9、令令,由操作码经地址由操作码经地址转转移移逻逻辑辑形形成成执执行行该该指指令令 的的 微微 程程 序序 入入 口口 地地 址址AR;根据(根据(AR)从从CM中中读出微指令读出微指令MIR;操作控制字段(经译码)产操作控制字段(经译码)产生微命令,送各功能部件执行;生微命令,送各功能部件执行;由转移逻辑形成下一微地址由转移逻辑形成下一微地址AR,可见:可见:步骤步骤的循环过程就是微程序的执行过程。的循环过程就是微程序的执行过程。地址转地址转移移逻辑逻辑OP微地址寄存器微地址寄存器地址译码地址译码控制存储器控制存储器P字段字段控制字段控制字段微命令信号微命令信号指令寄存器指令寄存器IR状态条件状
10、态条件微指令微指令寄存器寄存器图图5.225.22微程序控制器组成原理框图微程序控制器组成原理框图我们举我们举“十进制加法十进制加法”指令为例,具体看一看微程序指令为例,具体看一看微程序控制的过程。控制的过程。十进制加法指令十进制加法指令十进制加法指令十进制加法指令功能:实现两个功能:实现两个BCD码十进制加法运算。码十进制加法运算。算法:算法:两个一位两个一位BCD码之和。码之和。大于大于9时,和数必须加时,和数必须加6修正,并产生十进制进位。修正,并产生十进制进位。不大于不大于9时,和数不必修正,且无十进制数的进位。时,和数不必修正,且无十进制数的进位。4 4.指令的微程序举例指令的微程序
11、举例十进制加法指令的微程序控制过程十进制加法指令的微程序控制过程 PCARABUSDBUSDRIR,PC+1P1(R1)(R2)R2(R2)(R3)R2P2(R2)(R3)R200000000RD10101001000000000001Cy0Cy1图图5.295.29十进制加法微程序流程图十进制加法微程序流程图1、执行、执行“取指取指”微指令,微指令,取出取出“十进制加法十进制加法”指指令令LDAR(MR16);(PC)ARRD(MR13);读内存读内存LDDR(MR14);指令指令DRLDIR(MR15);(DR)IRPC1(MR17);(PC)+1PCP1(MR18);允许用允许用OP作为
12、下一微地址,作为下一微地址,即微程序入口即微程序入口设十进制加法指令设十进制加法指令OP101012345678910 11 12 13 14 15 16 17 18 1920 21 22 23LDR1LDR2LDR3R1xR1yR2xR2yDRxR3yMRDLDDRLDIRLDARPC+1P1P2直接地址直接地址操作控制操作控制顺序控制顺序控制2、执行、执行“十进制加法十进制加法”指令的微程序指令的微程序PCARABUSDBUSDRIR,PC+1P1(R1)(R2)R2(R2)(R3)R2P2(R2)(R3)R200000000RD10101001000000000001Cy0Cy1图图5.
13、295.29十进制加法微程序流程图十进制加法微程序流程图(1)1010微指令微指令R1x,R2y,LDR2完成完成(R1)(R2)R2(2)1001微指令微指令R2x,R3y,LDR2(R3)(110)2完成完成(R2)(R3)R2P2测试测试CyCy0,1uAR0,0001为下一微地址为下一微地址Cy1,0000为下一微指令为下一微指令(3)()(Cy0),),0001微指令微指令R2x,R3y,LDR2完成完成(R2)(R3)R212345678910 11 12 13 14 15 16 17 18 1920 21 22 23LDR1LDR2LDR3R1xR1yR2xR2yDRxR3yMR
14、DLDDRLDIRLDARPC+1P1P2直接地址直接地址操作控制操作控制顺序控制顺序控制00000000000011111100000第二条微指令的二进制编码是第二条微指令的二进制编码是01010010010000000001001第三条微指令的二进制编码是第三条微指令的二进制编码是01000100110000000010000第四条微指令的二进制编码是第四条微指令的二进制编码是01000100100100000000000第第一条微指令的二进制编码是一条微指令的二进制编码是CY=1000000001010101010011001000100015.CPU周期与微指令周期的关系周期与微指令周
15、期的关系在串行方式的微程序控制器中在串行方式的微程序控制器中:微指令周期微指令周期=读出微指令的时间读出微指令的时间+执行该条微指令的时间执行该条微指令的时间下图示出了某小型机中下图示出了某小型机中CPU周期与微指令周期的时间关系:周期与微指令周期的时间关系:一个一个CPU周期为周期为0.8s,它包含四个等间隔的节拍它包含四个等间隔的节拍脉冲脉冲T1T4,每个脉冲宽度为每个脉冲宽度为200ns。用用T4作为读取作为读取微指令的时间,用微指令的时间,用T1+T2+T3时间作为执行微指令的时时间作为执行微指令的时间。间。例如,在前例如,在前600ns时间内运算器进行运算,在时间内运算器进行运算,在
16、600ns时时间的末尾运算器已经运算完毕,间的末尾运算器已经运算完毕,可用可用可用可用T T4上升沿将运算上升沿将运算上升沿将运算上升沿将运算结果打入某个寄存器。与此同时可用结果打入某个寄存器。与此同时可用结果打入某个寄存器。与此同时可用结果打入某个寄存器。与此同时可用T T4间隔读取下条间隔读取下条间隔读取下条间隔读取下条微指令微指令微指令微指令,经经200ns时间延迟,下条微指令又从只读存时间延迟,下条微指令又从只读存储器读出,并用储器读出,并用T1上升沿打入到微指令寄存器。如忽上升沿打入到微指令寄存器。如忽略触发器的翻转延迟,那么下条微指令的微命令信号略触发器的翻转延迟,那么下条微指令的
17、微命令信号就从就从T1上升沿起就开始有效,直到下一条微指令读出上升沿起就开始有效,直到下一条微指令读出后打入微指令寄存器为止。因此一条微指令的保持时后打入微指令寄存器为止。因此一条微指令的保持时间恰好是间恰好是0.8s,也就是一个也就是一个CPU周期的时间。周期的时间。6.机器指令与微指令的关系机器指令与微指令的关系【问】【问】:一会儿取机器指令,一会儿取微指令,它们之间到底一会儿取机器指令,一会儿取微指令,它们之间到底是什么关系是什么关系?【解】【解】:1.一条机器指令对应一个微程序,这个微程序是由若干条一条机器指令对应一个微程序,这个微程序是由若干条微指令序列组成的。因此,一条机器指令的功
18、能是由若干条微微指令序列组成的。因此,一条机器指令的功能是由若干条微指令组成的序列来实现的。简言之,一条机器指令所完成的指令组成的序列来实现的。简言之,一条机器指令所完成的操作划分成若干条微指令来完成,由微指令进行解释和执行。操作划分成若干条微指令来完成,由微指令进行解释和执行。2.从指令与微指令,程序与微程序,地址与微地址的一从指令与微指令,程序与微程序,地址与微地址的一一对应关系来看,一对应关系来看,前者与内存储器有关,后者与控制存储前者与内存储器有关,后者与控制存储前者与内存储器有关,后者与控制存储前者与内存储器有关,后者与控制存储器有关。器有关。器有关。器有关。3.我们在讲述本章我们在
19、讲述本章5.2节时,曾讲述了指令与机器周期节时,曾讲述了指令与机器周期概念,并归纳了五条典型指令的指令周期概念,并归纳了五条典型指令的指令周期,并演示了这五条并演示了这五条指令的微程序流程图,指令的微程序流程图,每一个每一个每一个每一个CPUCPU周期就对应一条微指令。周期就对应一条微指令。周期就对应一条微指令。周期就对应一条微指令。这就告诉我们如何设计微程序,也将使我们进一步体验到这就告诉我们如何设计微程序,也将使我们进一步体验到机器指令与微指令的关系。机器指令与微指令的关系。【例【例2】设某计算机运算器框图如图】设某计算机运算器框图如图(a)所示,其中所示,其中ALU为为16位位的加法器的
20、加法器(高电平工作高电平工作),SA,SB为为16位暂存器。位暂存器。4个通用寄存个通用寄存器由器由D触发器组成,触发器组成,Q端输出。端输出。4个通用寄存器由个通用寄存器由D触发器组成,触发器组成,Q端输出,其读、写控端输出,其读、写控制功能见下表制功能见下表机器采用串行微程序控制方式,其微指令周期见图(机器采用串行微程序控制方式,其微指令周期见图(b)。其中读其中读ROM是从控存中读出一条微指令时间,为是从控存中读出一条微指令时间,为1s;ALU工工作是加法器做加法运算,为作是加法器做加法运算,为500ns;m1是读寄存器时间,为是读寄存器时间,为500ns;m2是写寄存器的工作脉冲宽度,
21、为是写寄存器的工作脉冲宽度,为100ns。微指令字微指令字长长12位,微指令格式如下:位,微指令格式如下:RA0RA1WA0WA1RWLDSALDSBSB-ALUSB-ALUReset 0 1 2 3 4 5 6 7 8 9 10 11 0 1 2 3 4 5 6 7 8 9 10 11RA0RA1:读读R0-R3的选择控制的选择控制WA0WA1:写写R0-R3的选择控制的选择控制R:寄存器读命令寄存器读命令W:寄存器写命令寄存器写命令LDSA:打入打入SA的控制信号的控制信号LDSB:打入打入SB的控制信号的控制信号SB-ALU:传送传送SB的控制信号的控制信号SB-ALU:传送传送SB的控
22、制信号的控制信号,并使加法器最低位加并使加法器最低位加1.Reset:清暂存器清暂存器SB为零的信号为零的信号:一段微程序结束,转入取机器指令的控制信号:一段微程序结束,转入取机器指令的控制信号要求:用二进制代码写出如下指令的微程序:要求:用二进制代码写出如下指令的微程序:(1)“ADDR0,R1”指令,即指令,即(R0)+(R1)R1(2)“SUBR2,R3”指令,即指令,即(R3)-(R2)R3(3)“MOVR2,R3”指令,即指令,即(R2)(R3)先画出三条指令的微指令的微程序流程图,如下图所示。先画出三条指令的微指令的微程序流程图,如下图所示。根根据据给给定定的的微微指指令令周周期期
23、时时间间关关系系,完完成成ADDADD,SUBSUB指指令令的的执执行行动动作作需需要要3 3条条微微指指令令,MOVMOV指指令令只只需需2 2条条微微指指令令。用用二二进进制制代代码码写写出出的的三三条条指指令令的的微微程程序序列列于于下下表表中中,其其中中*表表示示代代码码随随意意设设置置(0(0或或1 1均可均可)。其其中中未未考考虑虑“取取指指周周期期”和和顺顺序序控控制制问问题题,也也即即微微程程序序仅仅考考虑虑“执执行行周周期期”,微微指指令令序序列列的的顺顺序序用用数数字字标标号号标标在在每每条条微微指指令令的的右右上上角角。每每一一框框表表示示一一条条微微指令。指令。(1)(
24、1)“ADD R0ADD R0,R1R1”指令,指令,即即(R0)+(R1)R1R0)+(R1)R1RA0RA1WA0WA1RWLDSALDSBSB-ALUSB-ALUReset1.1.定义微指令格式定义微指令格式2.2.写出微指令写出微指令RA0RA1WA0WA1RWLDSALDSBSB-ALUSB-ALUReset全部的微指令全部的微指令5.5.4.2 4.2 微程序设计技术微程序设计技术1设计微指令结构的目标:设计微指令结构的目标:q有利于缩短微指令字长度;有利于缩短微指令字长度;q有利于减少有利于减少CM的容量;的容量;q有利于提高微程序的执行速度;有利于提高微程序的执行速度;q有利于
25、微指令的修改;有利于微指令的修改;q有利于微程序设计的灵活性。有利于微程序设计的灵活性。1 1、微命令编码微命令编码就是对微指令中的操作控制字段采用的表示方法。就是对微指令中的操作控制字段采用的表示方法。(1 1)直接表示法(直接控制法,不译法)直接表示法(直接控制法,不译法)操作控制字段中的每一位表示一个微命令。操作控制字段中的每一位表示一个微命令。12345678910 11 12 13 14 15 16 17 18 1920 21 22 23LDR1LDR2LDR3R1xR1yR2xR2yDRxR3yMRDLDDRLDIRLDARPC+1P1P2直接地址直接地址操作控制操作控制顺序控制顺
26、序控制图图5.245.24微指令基本格式微指令基本格式优点:优点:简单,直观,快速。简单,直观,快速。缺点:缺点:微指令字太长,位信息利用率低。微指令字太长,位信息利用率低。直接表示法适用于微命令少的场合。直接表示法适用于微命令少的场合。例如:第例如:第1 1位位=1 1有微命令有微命令LDR10 0无微命令无微命令LDR1(2 2)编码表示法(字段编译法)编码表示法(字段编译法)将微命令分段编码,经简单译码产生微命令。将微命令分段编码,经简单译码产生微命令。优点:优点:微指令字长适中,译码器不庞大,能实现并行操作,速度较快。微指令字长适中,译码器不庞大,能实现并行操作,速度较快。字段直接编译
27、法(字段显式编译法)字段直接编译法(字段显式编译法)微命令由字段自身的编码确定。微命令由字段自身的编码确定。n个字段的微命令总数:个字段的微命令总数:2Xin(5.2)图图5.26 5.26 字段直接编译法字段直接编译法字段字段1字段字段2下一微地址下一微地址操作控制操作控制顺序控制顺序控制译译码码译译码码译译码码微命令微命令P1P2PnP字段字段式中:式中:Xi第第i个字段包含的个字段包含的二进制位数二进制位数n字段数字段数字段间接编译法(字段隐式编译法)字段间接编译法(字段隐式编译法)字段的含义需由字段自身的编码和另一字段或某特征字段的含义需由字段自身的编码和另一字段或某特征触发器的状态共
28、同确定。触发器的状态共同确定。好处:好处:可进一步缩短微指令字长可进一步缩短微指令字长图图5.275.27字段间接编译法字段间接编译法字段字段1字段字段2微命令微命令字段字段n01C22i1CPU用用 CH用用 分段原则:分段原则:.相互有一定关系又不能在同一微周期出现(相斥性)的相互有一定关系又不能在同一微周期出现(相斥性)的微命令可编在同一字段内;可能在同一微周期出现(相容性)微命令可编在同一字段内;可能在同一微周期出现(相容性)的微命令应编在不同的字段内;的微命令应编在不同的字段内;.分段应与数据通路的结构相适应,便于微命令设计,分段应与数据通路的结构相适应,便于微命令设计,修改,查找。
29、修改,查找。.每个字段的位数不能太多(每个字段的位数不能太多(24位)。位)。(3)混合表示法混合表示法把直接表示法和编码表示法相混合使用。把直接表示法和编码表示法相混合使用。一般每个小段还要留出一个状态,表示本字段不发出任一般每个小段还要留出一个状态,表示本字段不发出任何微命令。因此当某字段的长度为三位时,最多只能表示何微命令。因此当某字段的长度为三位时,最多只能表示七个互斥的微命令,通常用七个互斥的微命令,通常用000000表示不操作。表示不操作。2.微地址的形成方法微地址的形成方法入入口口地地址址:每每条条机机器器指指令令对对应应一一段段微微程程序序,当当公公用用的的取取指指微微程程序序
30、从从主主存存中中取取出出机机器器指指令令之之后后,由由机机器器指指令令的的操操作作码码字字段段指指出出各段微程序的入口地址。这是一种多分支各段微程序的入口地址。这是一种多分支(或多路转移或多路转移)的情况。的情况。入入口口地地址址形形成成:如如果果机机器器指指令令操操作作码码字字段段的的位位数数和和位位置置固固定定,可以直接使操作码与微程序入口地址的部分位相对应。可以直接使操作码与微程序入口地址的部分位相对应。微地址包括微程序的入口地址和后继地址。微地址包括微程序的入口地址和后继地址。微地址的形成方法:微地址的形成方法:计数器的方式计数器的方式 多路转移的方式多路转移的方式 1.1.1.1.计
31、数器方式计数器方式计数器方式计数器方式 在微程序控制器中设置一个微程序计数器在微程序控制器中设置一个微程序计数器MPCMPC,取代微地取代微地址寄存器。址寄存器。MPCMPC的作用类似的作用类似 PCPC。顺序执行顺序执行微指令微指令时,时,后继后继微地址由现行微地址加上一个增量来产生。微地址由现行微地址加上一个增量来产生。微地址由现行微地址加上一个增量来产生。微地址由现行微地址加上一个增量来产生。非顺序执行非顺序执行微指令微指令时,时,必须必须通过执行转移通过执行转移通过执行转移通过执行转移微指令,把一个新的微指令,把一个新的微指令,把一个新的微指令,把一个新的微地址送给微地址送给微地址送给
32、微地址送给MPCMPC。2 2、后继微地址形成方法、后继微地址形成方法 例例:执执行行某某指指令令的的微微程程序序有有8条条微微指指令令,设设这这8条条微微指指令令的的微微地地址址为为0011001000,0101101111,则则可可在在CM的的01001单元安排一条转移到单元安排一条转移到01011微指令的转移微指令。微指令的转移微指令。特特点点:控控制制字字段段较较短短,微微地地址址产产生生机机构构简简单单,但但微微指指令存放位置不灵活,微转移指令多时,执行速度较慢。令存放位置不灵活,微转移指令多时,执行速度较慢。计数器方式要求计数器方式要求 对于顺序执行的微指令序列必须安排在控制对于顺
33、序执行的微指令序列必须安排在控制存储器的连续单元中存储器的连续单元中.2.多路转移方式多路转移方式下址字段方式(断定方式)下址字段方式(断定方式)一条微指令具有多个转移分支的能力称为多路转移。在多一条微指令具有多个转移分支的能力称为多路转移。在多路转移方式中后继微地址的产生:路转移方式中后继微地址的产生:当微程序不产生分支时当微程序不产生分支时,后继微地址直接由微指令的顺序,后继微地址直接由微指令的顺序控制字段给出;控制字段给出;当微程序出现分支时当微程序出现分支时,有若干,有若干“后选后选”微地址可供选择:微地址可供选择:即按顺序控制字段的即按顺序控制字段的“判别测试判别测试”标志和标志和“
34、状态条件状态条件”信息来信息来选择其中一个微地址。选择其中一个微地址。“状态条件状态条件”有有n位标志,可实现微程序位标志,可实现微程序2的的n次方路转移,次方路转移,涉及微地址寄存器的涉及微地址寄存器的n位位。P字段下址字段操作控制顺序控制下址字段方式(断定方式)下址字段方式(断定方式)不转移时按下址字段从不转移时按下址字段从CM中取下一微指令。中取下一微指令。转移时(由判别标志和状态条件决定),由微地址形转移时(由判别标志和状态条件决定),由微地址形成电路产生下一微地址。成电路产生下一微地址。特点:特点:微指令存放位置灵活,不需微指令存放位置灵活,不需MPC。但增加了微指令的长度,微地址产
35、生机构较复杂。但增加了微指令的长度,微地址产生机构较复杂。OP10101011110100001010101111010000P1取指微指令微地址的设计微地址的设计当微地址的位数与当微地址的位数与OP码相同时码相同时微程序的入口地址微程序的入口地址=OP码码OP101010111101000000000010101100000011P1取指微指令取指微指令当微地址的位数与当微地址的位数与OP码不相同时,微地址的位数码不相同时,微地址的位数=8,OP=4位位微程序的入口地址与微程序的入口地址与OP码有关码有关OP码码0010111100110111【例【例5.1】设微地址寄存器有设微地址寄存器有
36、8位(位(A7A0),),“取指取指”微指令的微指令的微地址为微地址为00000000,修改微地址时可通过触发器的强置端,修改微地址时可通过触发器的强置端S将其置将其置1。现有三种情况:现有三种情况:(1)执执行行“取取指指”微微指指令令后后,微微程程序序按按IR的的OP字字段段(IR5IR2)进进行行16路分支;路分支;(2)执行条件转移指令的微程序时,按进位标志)执行条件转移指令的微程序时,按进位标志C的状态进行的状态进行2路分支;路分支;(3)执行控制台指令的微程序时,按)执行控制台指令的微程序时,按IR0,IR1的状态进行的状态进行4路分支。路分支。可可修修改改的的微微地地址址是是A7
37、A2,请请按按多多路路转转移移方方法法设设计计微微地地址址转转移移逻逻辑并画出逻辑电路图。辑并画出逻辑电路图。解:解:用用P1和和IR5IR2修改修改A5A2 用用P2和和C修改修改A2用用P3和和IR1,IR0修改修改A7,A6。设在微周期的设在微周期的T2打入微指令,打入微指令,T4修改微地址。修改微地址。【例【例5.1】设微地址寄存器有设微地址寄存器有8位(位(A7A0),),“取指取指”微指令的微地址为微指令的微地址为00000000,修改微地址时可,修改微地址时可通过触发器的强置端通过触发器的强置端S将其置将其置1。现有三种情况:(。现有三种情况:(1)执行)执行“取指取指”微指令后
38、,微程序按微指令后,微程序按IR的的OP字段(字段(IR5IR2)进行进行16路分支;(路分支;(2)执行条件转移指令的微程序时,按进位标志)执行条件转移指令的微程序时,按进位标志C的状态的状态进行进行2路分支;(路分支;(3)执行控制台指令的微程序时,按)执行控制台指令的微程序时,按IR0,IR1的状态进行的状态进行4路分支。可修改的微路分支。可修改的微地址是地址是A7A2,请按多路转移方法设计微地址转移逻辑并画出逻辑电路图。请按多路转移方法设计微地址转移逻辑并画出逻辑电路图。转移的逻辑式为:转移的逻辑式为:A7P3IR1T4A6P3IR0T4A5P1IR5T4A4P1IR4T4A3P1IR
39、3T4A2P1IR2T4P2CT4SETSETCLRCLRD DS SQ QQ QSETSETCLRCLRD DS SQ QQ QSETSETCLRCLRD DS SQ QQ QSETSETCLRCLRD DT T2 2ROMROM7 7T T4 4P P3 3IRIR1 1IRIR2 2IRIR0 0P P1 1P P2 2ROMROM6 6ROMROM2 2ROMROM0 0图图5.28 5.28 多路转移微地址修改逻辑多路转移微地址修改逻辑CPCPCPCPCPCPCPCPD DD DD DD DC CSETSETSETSETSETSETSETSETCLRCLRCLRCLRCLRCLRCL
40、RCLRuA7uA6uA2uA0ROM7 ROM0是控制存储器微指令中的下址字段(8位),在T2时打入(A7A0)5.5.5 5 硬连线控制器硬连线控制器 5.5.1 5.5.1 实现方法实现方法 通过逻辑电路直接连线而产生的,又称为组合逻通过逻辑电路直接连线而产生的,又称为组合逻辑控制方式辑控制方式 5.5.2 5.5.2 设计目标设计目标 使用最少元件(复杂的树形网络)使用最少元件(复杂的树形网络)速度最高速度最高5.5.3.5.5.3.逻辑思想逻辑思想微操作控制信号的产生微操作控制信号的产生在在微微程程序序控控制制器器中中,微微操操作作控控制制信信号号由由微微指指令令产产生生,并并且且可
41、以重复使用。可以重复使用。在在硬硬联联线线控控制制器器中中,某某一一微微操操作作控控制制信信号号由由布布尔尔代代数数表表达达式描述的输出函数产生。式描述的输出函数产生。5.5.3.5.5.3.逻辑思想逻辑思想 由门电路和触发器构成的复杂树形网络组成,由门电路和触发器构成的复杂树形网络组成,用以产生执行指令的一系列微操作信号。用以产生执行指令的一系列微操作信号。组合逻辑线路组合逻辑线路N节拍电位节拍电位/节拍脉冲发节拍脉冲发生器生器M1MiT1Tk k指令指令译码器译码器ID指令寄存器指令寄存器IRI1ImB1BjMC1MCn启动启动停止停止时钟时钟复位复位微操作控制信号微操作控制信号图图5.1
42、75.17组合逻辑控制器框图组合逻辑控制器框图1组合逻辑线路的组合逻辑线路的输入信号输入信号:(1)来自指令译码器的输出(来自指令译码器的输出()不同的指令操作码和寻址方式决定不同的指令操作码和寻址方式决定应执行的微操作。应执行的微操作。(2 2)来自时序发生器输出的)来自时序发生器输出的 节拍电位节拍电位/节拍脉冲(节拍脉冲()使微操作信号按时序要求产生。使微操作信号按时序要求产生。(3)结果反馈信息(结果反馈信息()受条件码(如受条件码(如N、O、C、Z等)影等)影 响的指令,因不同状态条件而产生不同响的指令,因不同状态条件而产生不同 的执行结果,即需不同的微操作信号。的执行结果,即需不同
43、的微操作信号。组合逻辑线路组合逻辑线路N节拍电位节拍电位/节拍脉节拍脉冲发生器冲发生器M1MiT1Tk k指令指令译码器译码器ID指令寄存器指令寄存器IRI1ImB1BjMC1MCn启动启动停止停止时钟时钟复位复位微操作控制信号微操作控制信号图图5.175.17组合逻辑控制器框图组合逻辑控制器框图2组合逻辑线路的组合逻辑线路的输出信号:输出信号:(微(微操作控制信号)操作控制信号)MCMC=f f()(5.1)()(5.1)图图5.175.17组合逻辑控制器框图组合逻辑控制器框图组合逻辑线路组合逻辑线路N节拍电位节拍电位/节拍脉冲发生节拍脉冲发生器器M1MiT1Tk k指令指令译码器译码器ID
44、指令寄存器指令寄存器IRI1ImB1BjMC1MCn启动启动停止停止时钟时钟复位复位微操作控制信号微操作控制信号(1 1)根据)根据CPU的结构,画出指令操作流程图;的结构,画出指令操作流程图;(2 2)编排指令操作时间表;)编排指令操作时间表;即把指令操作流程图中的微操作落实到不同的即把指令操作流程图中的微操作落实到不同的 CPU周期和节拍中。周期和节拍中。(3 3)综合化简微操作逻辑式,并画出控制电路。)综合化简微操作逻辑式,并画出控制电路。组合逻辑控制器的设计步骤组合逻辑控制器的设计步骤 为为了了防防止止遗遗漏漏,设设计计时时可可按按信信号号出出现现在在指指令令流流程程图图中中的的先先后
45、后次次序序书书写写,然然后后进进行行归归纳纳和和简简化化。要要特特别别注注意意控控制制信信号号是是电电位位有有效效还还是是脉脉冲冲有有效效,如如果果是脉冲有效,必须加入节拍脉冲信号进行相是脉冲有效,必须加入节拍脉冲信号进行相“与与”。根根据据微微操操作作时时间间表表,将将执执行行某某一一微微操操作作的的所所有有条条件件(哪哪条条指指令令、哪哪个个机机器器周周期期、哪哪个个节节拍拍和和脉脉冲冲)都都考考虑虑在在内内,加加以以分分类类组组合合,列列出出各各微微操操作作产产生的逻辑表达式,并加以化简。生的逻辑表达式,并加以化简。(1 1)根据)根据CPUCPU的结构,画出指令操作流程图的结构,画出指
46、令操作流程图指令流程图的进一步具体化。把每一条指令的微操作序列指令流程图的进一步具体化。把每一条指令的微操作序列分配到各个机器周期的各个时序节拍信号上。要求尽量多地分配到各个机器周期的各个时序节拍信号上。要求尽量多地安排公共操作,避免出现互斥。安排公共操作,避免出现互斥。2)安排微操作命令的操作时间表)安排微操作命令的操作时间表以微命令为依据,表示在哪个机器周期的哪以微命令为依据,表示在哪个机器周期的哪个节拍有哪些指令要求这些微命令。个节拍有哪些指令要求这些微命令。时序时序公共操作公共操作ADDSUBJMPT0LDPCPC+1T1LDARLDPCT2LDIR3)安排指令的微命令表)安排指令的微
47、命令表机器指令ADDSUBSTALDPCM1,T3PC+1M1,T4LDARLDIR+M3,T2所有微命令(4 4)进行微操作信号的综合)进行微操作信号的综合 当列出所有指令的微操作时间表之后,需要当列出所有指令的微操作时间表之后,需要对它们进行综合分析,把凡是要执行某一微操对它们进行综合分析,把凡是要执行某一微操作的所有条件作的所有条件(哪条指令、哪个机器周期、哪个哪条指令、哪个机器周期、哪个节拍和脉冲等节拍和脉冲等)都考虑在内,加以分类组合,列都考虑在内,加以分类组合,列出各微操作产生的逻辑表达式,然后加以简化,出各微操作产生的逻辑表达式,然后加以简化,使逻辑表达式更为合理。使逻辑表达式更
48、为合理。例例44图图5.325.32中五条指令的微操作控制信号举例。中五条指令的微操作控制信号举例。LDAR=M1LDAR=M1T2+M2(ADD+STA)T2+M2(ADD+STA)T2T2 LDDR=M1 LDDR=M1T3+M3(ADD+STA)T3+M3(ADD+STA)T3T3 LDIR=M1 LDIR=M1T4T4 LDPC=M1 LDPC=M1T4+JMPT4+JMPM2M2T4T4 RD=ADD RD=ADDM3M3 WE=STA WE=STAM3M3 其中其中M1M1、M2M2、M3M3是三个节拍电位信号;是三个节拍电位信号;T2T2、T3T3、T4T4为节为节拍脉冲信号;拍
49、脉冲信号;ADDADD、STASTA、JMPJMP是指令是指令OPOP字段译码器的输出字段译码器的输出信号。信号。(5 5)实现电路)实现电路 根据整理并化简的逻辑表达式组,可以用一系根据整理并化简的逻辑表达式组,可以用一系列组合逻辑电路加以实现,加根据逻辑表达式画列组合逻辑电路加以实现,加根据逻辑表达式画出逻辑电路图,用逻辑门电路的组合来实现之,出逻辑电路图,用逻辑门电路的组合来实现之,也可以直接根据逻辑表达式,用也可以直接根据逻辑表达式,用PLAPLA或其他逻辑或其他逻辑电路实现。电路实现。5.7.1并行性概念并行性概念 1并行性的含义并行性的含义 同同时时性性指两个或者两个以上事件在同一
50、指两个或者两个以上事件在同一时时刻刻发发生。生。并并发发性性指两个或者两个以上事件在同一指两个或者两个以上事件在同一时间间时间间隔内隔内发发生。生。5.5.7 7 流水流水CPUCPU5.5.2并行性概念并行性概念2 2并行处理技术的主要形式并行处理技术的主要形式(1)时间时间并行并行时间时间重叠重叠让让多个多个处处理理过过程在程在时间时间上相互上相互错错开,开,轮轮流重叠地使用流重叠地使用同一套硬件的各个部分,从而同一套硬件的各个部分,从而赢赢得高速度。得高速度。实现方式:实现方式:采用流水采用流水处处理部件。理部件。(2 2)空空间间并行并行资资源重复源重复例:奔例:奔腾腾CPU采用的超采