《《萝卜家园样板》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《萝卜家园样板》PPT课件.ppt(49页珍藏版)》请在三一办公上搜索。
1、样板,操作控制器时序产生器,RAM,ALU,时钟,状态反馈,取指控制,执行控制,PC+1,AC,DR,IR,ID,PC,AR,PSW,指令结束,译码或测试,0 AC,IR AR,IR AR,IR PCPC AR,CLA,ADD,STA,JMP,NOP,5.2.6 用方框图语言表示指令周期,5.3.1 时序信号的作用和体制,时序信号的作用:保证计算机能准确、迅速、有条 不紊地工作。,在微程序控制器中,时序信号比较简单,一般采用节拍电位节拍脉冲二级体制。就是说,它只有严格节拍电位,在节拍电位中又包含若干个节拍脉冲(时钟周期)。节拍电位表示一个CPU周期的时间,而节拍脉冲把一个CPU周期划分成几个较
2、小的时间间隔。根据需要,这些时间间隔可以相等,也可以不相等。,5.3 时序产生器和控制方式,5.3.2 时序信号产生器,时序信号产生器的功能是:用逻辑电路实现时序。,启停控制逻辑,节拍脉冲和读写时序译码逻辑,环形脉冲发生器,时钟脉冲源,IORQ,MREQ,RD,WR,T1,T2,T3,T4,IORQO,MREQO,RDO,WRO,T1O,T2O,T3O,T4O,IORQ,MREQ,RD,WR,停机,启动,时序信号产生器框图,由石英晶体振荡器和与非门组成的正反馈振荡电路组成。,作用产生一组有序的间隔相等或不 等的脉冲序列。,环形脉冲发生器的两种形式:,采用普通计数器:在节拍脉冲上带来毛刺。,循环
3、移位寄存器,1.时钟源,2.环形脉冲发生器,1,0,0,1,过100 ns之后,0,0,1,+5V,0,1,第二个脉冲来时,0,1,+5V,1,0,0,0,1,第三个脉冲来时,0,1,+5V,1,0,1,1,0,1,0,0,1,+5V,1,1,1,第四个脉冲来时,第五个脉冲来时,脉冲时钟源,Q,Q,C4,D,2,3,S,CLR,MREQO,MREQ,IORQ,RD,T1o,T2o,T3o,RDO,WEO,IORQO,T4o,WE,+5V,R,环形脉冲发生器与译码逻辑,1,0,样品,Q,Q,C1,D,Q,Q,C2,D,Q,Q,C3,D,0,0,0,3.节拍脉冲和读/写时序的译码,根据上图得到,其
4、译码电路逻辑可表示为:,T1o=C1*C2,T2o=C2*C2,T3o=C3,T4o=C1,根据上图,节拍电位与节拍脉冲时序关系如下:,读写时序信号的译码逻辑表达式为:,RD o=C2*RD,WE o=C3*WE,IORQ o=C2*IORQ,MREQ o=C2*MREQ,WE,1,2,3,4,5,6,7,8,9,10,C4,C3,C2,C1,MREQO,RD,RD,WE,T1,T2,T3,T4,节拍电位与节拍脉冲时序关系图,4.启停控制逻辑,机器一旦接通电源,就会自动产生原始的节拍脉冲信号T1OT4O,然而只有在启动机器运行的情况,才允许时序产生器发出CPU工作所需的节拍脉冲T1T4。,MR
5、EQO,RD,T1,T2,T3,RDO,WE,T4,WEO,MREQO,T2o,T3o,T4o,T1o,Q,Q,C1,D,T4o,启动,停机,CLR,启停控制逻辑,5.3.3 控制方式,机器指令的指令周期是由多个CPU周期组成。,控制方式有如下四种:,1.同步控制方式:在任何情况下,已定的指令在执行时所需的机器周期数和时钟周期数都是固定不变的,称为同步控制方式。,(1)采用完全统一的机器周期执行各种不同指令。,(2)采用不定长机器周期。将大多数操作安排在一个较短的机器周期内完成,对于某些时间紧张的操作,则采取延长机器周期的方法。,(3)中央控制与局部控制结合。,中央控制:将大部分指令安排在固定
6、的机器周期内完成。,局部控制:对少数复杂指令(乘、除、浮点运算)采用另外时序定时。,根据不同情况,同步控制方式可选取如下方案:,2.异步控制方式:每条指令周期可由多少不等的机器周期数组成。指令周期数和时针周期数不固定。,3.联合控制方式:同步控制和异步控制相结合的方式。方式1:大部分操作序列安排在固定的机器整齐中,对某些时间难以确定的操作,以执行部件的“回答”信号作为操作的结束。方式2:机器周期的节拍脉冲固定,但指令周期中的机器周期数不固定。,4.人工控制方式:为了调试机器和软件开发的需要,在计算机面板和内部设置一些开关或按键以进行人工控制。如RESET键,连续执行或单条指令执行的转换开关,符
7、合停机开关等。,微程序控制器同组合逻辑控制器相比较:,特点:具有规整性、灵活性、可维护性。,在计算机系统中,微程序设计是利用软件方法来设计硬件的一门技术。,微程序控制器的基本思想:,操作控制信号编成所谓的“微指令”,存放在ROM中。,运行时,一条条地读出这些微指令。,产生全机所需要的各种操作控制信号。,5.4 微程序控制器,5.4.1 微命令和微操作,一台数字计算机基本上可以划分为两大部分:,控制部件,执行部件,控制命令,反馈 测试,微指令:控制部件通过控制线向执行部件发出的各种 控制命令。,微操作:执行部件接受微命令后所进行的操作。,微操作,相斥性:同一个CPU周期不能并行执行 的微操作。,
8、相容性:同一个CPU周期可并行执行的 微操作。,CY,+,M,R1,R2,R3,X,4,6,8,5,7,9,1,2,3,Y,简单运算器数据通路图,DR,ALU,上图所示,是一个简单运算器模型,其中ALU为算术逻辑单元,R1、R2、R3为三个寄存器。CY为最高位触发器,有进位时该触发器状态为“1”。,微操作1、2、3是可以同时进行的,所以是相容性的微操作。另外,ALU的X输入微操作4、6、8分别与Y输入的5、7、9任意两个微操作,也都是相容性的。,ALU的操作(加、减、传送)在同一个CPU周期中只能选择一种,不能并行,所以以+、M(传送)三个微操作是互斥性的微操作。类似地,4、6、8三个微操作是
9、互斥性的,5、7、9三个微操作也是互斥性的。,LDR2,R1X,R2X,DRX,R1Y,R2Y,R3Y,LDR1,LDR3,RD,LDDR,+,M,-,LDIR,LDAR,PC+1,P1,直 接 地 址,P2,操作控制,操作控制,顺序控制,微指令基本格式,每一位表示一个微指令,当某一位为“1”时,表示发出微命令,若第2位为“1”时,表示发出LDD2的微命令。,在机器的一个CPU周期中,一组实现一定功能的微命令的组合,构成一条微指令。,5.4.2 微指令和微程序,微程序:一条指令的功能是由多条微指令组成的序列实现的。,节拍电位信号,节拍脉冲信号,“+”,LDR1,600ns,200,CPU周期,
10、LDR1,LDR2,LDR3,LDR1,LDR2,LDR3,T4,运算器操作时序与产生逻辑,5.4.3 微程序控制器原理框图,OP,控制存储器,地址译码,微地址寄存器,地址转移逻辑,微指令信号,状态条件,指令寄存器IR,微程序控制器组成原理框图,5.4.3 微程序控制器原理框图,微程序控制器组成原理框图,用来存放实现全部指令系统的微程序,它是一种只读存储器,微命令寄存器,地址转移逻辑,地址转移逻辑承担自动完成修改微地址的任务 如果微程序不出现分支,那么下一条微指令的地址就直接有微地址寄存器给出。当微程序出现分支时,意味着微程序出现条件转移。,微地址寄存器,控制存储器:它用来存放实现全部指令系统
11、的微程序,它是一种只读存储器。,微指令寄存器:它用来存放由控制存储器读出的一条微指令信息。其中微地址寄存器决定将要访问的下一条微指令的地址,而微指令寄存器则保存一条微指令的操作控制字段和判别测试字段的信息。,微指令周期:是指读出一条微指令并执行微指令的时间总和称为一个微指令周期。,地址转移逻辑:如果微程序不出现分支,那么下一条微指令的地址就直接有微地址寄存器给出。当微程序出现分支时,意味着微程序出现条件转移。,微地址:微指令由控制存储器读出后直接给出下一条微指令的地址,通常我们简称微地址。,例:BCD 码相加,已知:R1=a,R2=b,R3=6,若:a+b+R316 不做减6修正,1 1 1
12、1,1 0 0 1,1 0 0 0 1,大于16 不用修正,LDR2,R1X,R2X,DRX,R1Y,R2Y,R3Y,LDR1,LDR3,RD,LDDR,+,M,-,LDIR,LDAR,PC+1,P1,直 接 地 址,P2,第一条微指令,LDR2,R1X,R2X,DRX,R1Y,R2Y,R3Y,LDR1,LDR3,RD,LDDR,+,M,LDIR,LDAR,PC+1,P1,直 接 地 址,P2,第16位发出 LDAR 将PC内容送到地址寄存器AR,第13位 发出RD,第14位 发出LDDR,第15位 发出LDIR,将缓冲器中的“十进制加法”指令再送到IR,第17位 发出PC+1微指令,使程序计
13、数器加1,微指令的顺序控制字段指明下一条微指令的地址是0000,但由于判别字段中第18位为1,表明P1测试,因此0000不是下一条微指令的真正地址。P1测试的“状态条件”是指令寄存器的操作码字段,即用OP字段作为形成下一条微指令的地址,于是微地址寄存器的内容修改成1010。,指令寄存器OP 的操作码为1010为加法操作,第一条微指令,LDR2,R1X,R2X,DRX,R1Y,R2Y,R3Y,LDR1,LDR3,RD,LDDR,+,M,LDIR,LDAR,PC+1,P1,直 接 地 址,P2,操作控制部分发出四个微命令:R1 X,R2 Y,+,LDR2 完成 R1+R2 R1,微指令的顺序控制字
14、段指明下一条微指令的地址是0000,但由于判别字段测试P1和P2均为0,表示不进行测试,于是直接给出下一条微指令的地址为1001。,按照1010这个微地址读出的第二条微指令,第二条微指令,LDR2,R1X,R2X,DRX,R1Y,R2Y,R3Y,LDR1,LDR3,RD,LDDR,+,M,LDIR,LDAR,PC+1,P1,直 接 地 址,P2,操作控制部分发出四个微命令:R2 X,R3 Y,+,LDR2 完成 R2+R3 R2,微指令的顺序控制字段中由于判别字段P2 为1,表明进行P2 测试,测试的“状态条件”为进位位标志 Cy。,按照1001这个微地址读出的第三条微指令,第三条微指令,设定
15、:Cy=1 下一条微指令的地址是 0000,Cy=0 下一条微指令的地址是 0001。若:Cy=0 那么下一条微指令的地址是 0001。,LDR2,R1X,R2X,DRX,R1Y,R2Y,R3Y,LDR1,LDR3,RD,LDDR,+,M,LDIR,LDAR,PC+1,P1,直 接 地 址,P2,操作控制部分发出四个微命令:R2 X,R3 Y,LDR2 完成 R2 R3 R2,微指令的顺序控制部分直接给出 下一条微指令的地址为0000,按该地址取出的微指令是“取指”微指令。,按照0001这个微地址读出的第四条微指令,第四条微指令,若:第三条微指令进行测试 时 Cy=1 那么微地址仍保持为 00
16、00,将不执行第四条微指令而直接由第三条微指令转向公操作。,5.4.4 CPU周期与微指令周期的关系,微指令周期:等于读出微指令的时间加上执行该条,微指令的时间。,执行微指令,微指令周期,微指令,读,CPU周期,CPU周期,CPU周期与微指令周期的关系,1、一条机器指令对应一个微程序,这个微程序是由 若干条微指令序列组成的。,2、从指令与微指令,程序与微程序,地址与微地址的一一对应来看,前者与内存储器有关,后者与控制存储器有关。,3、指令周期中的每一个CPU周期对应着一条微指令。,5.4.6 机器指令 与 微指令 的 关系,要求:用二进制代码写出如下指令的微程序(1)“ADD R0,R1”(2
17、)“SUB R2,R2”(3)”MOV R2,R3”,(1)“ADD R0,R1”(2)“SUB R2,R2”(3)”MOV R2,R3”,测试,R2 SA,MOV,ADD,SUB,取指,R3 SA,R2 SB,SA-SB R3,0 SBSA+SB R3,SA+SB R1,MOV R2,R3 指令(R2)+(R3)R3,测试,R2 SA,MOV,ADD,SUB,取指,R3 SA,R2 SB,SA-SB R3,R0 SA,R1 SB,0 SBSA+SB R3,SA+SB R1,ADD R0,R1 指令 完成(R0)+(R1)R1,测试,R2 SA,MOV,ADD,SUB,取指,R3 SA,R2
18、SB,SA-SB R3,R0 SA,R1 SB,0 SBSA+SB R3,SA+SB R1,ADD R0,R1 指令 完成(R0)+(R1)R1,设计微指令结构应当追求的目标,5.5 微程序设计技术,(1)有利于缩短微指令字长度;,(2)有利于减小控制存储器的容量;,(3)有利于提高微程序的执行速度;,(4)有利于对微指令的修改;,(5)有利于微程序设计的灵活性。,学生,教师,5.5.1 微指令编码,微指令编码:对微指令中操作控制字段采用的表示方法。,通常有三种方法:,(1)直接表示法,特点:操作控制字段中的每一位代表一个微指令。,优点:简单直观,其输出直接用于控制。,缺点:微指令字较长,使控
19、制存储器容量较大。,顺序控制,顺序控制,译码,译码,译码,微指令,P1,P2,Pn,字段直接译码法,直接表示法、编码表示法、混合表示法,(2)编码表示法,编码表示法:把一组互斥性的微指令信号组成一个小组(即一个字段),然后通过小组译码器对每一个微命令信号进行译码,译码输出作为操作控制信号。,特点:可用较少的二进制信息位表示较多的微指令 信号。,优点:可使微指令字大大缩短。,缺点:由于增加了译码电路,使微程序的执行速 度变慢。,(3)混合表示法,把直接表示法与字段编码法相混合使用。,3:8 译 码,指令字段,微指令信号,5.5.2 微地址的形成方法,产生后继微地址有如下三种方法:,1.计数器方式
20、:,单。但多路并行转移功能较弱,速度较慢,灵活,性较差。,在顺序执行微指令时,后继微地址由现行微地址加上增量来产生。在非顺序执行微指令时,必须通过转移方式,使现行微指令执行后,转去执行指定后继微地址的下一条微指令。在这种方法中,微地址寄存器通常改为计数器。,为此,顺序执行的微指令序列就必须安排在控制存储器的连续单元中。,特点:微指令的顺序控制字段较短,微地址产生机构简,2.增量方式与断定方式结合:,微指令顺序控制部分分为:条件选择字段和转移地址字段。,MUX,PC,控制存储器CM,IR,外部条件,外部地址,转移地址,打入,条件选择,控制字段(可编码),3.多路转移方式:,多路转移:一条微指令具
21、有多个转移分支的能力称为多路转移。例如:“取指”微指令根据操作码OP产生多路微程序分支而形成多个微地址。在多路转移方式中,当微程序不产生分支时,后继微地址直接有微指令的顺序控制字段给出;当微程序产生分支时,有若干“后选”微地址可供选择:即按顺序控制字段的“判别测试”标志和“状态条件”信息来选择其中严格微地址。特点:能以较短的顺序控制字段配合,实现多路并行转移,灵活性好,速度快。但转移地址逻辑需要用组合逻辑方法设计。,5.5.3 微指令格式,微指令格式大体分为两大类:,1.水平型微指令:,水平型微指令的一般格式如下:,第一种是全水平型(不译码)微指令,第二种是字段译码法水平型微指令;,第三种是直
22、接和译码混合的水平型微指令,水平型微指令又分为三种:,水平型微指令,垂直型微指令,一次能定义并执行多个并行操作微命令的微指令,叫做水平型微指令。,2.垂直型微指令:微指令中设置微操作码字段,采用微操作码编译法,有微操作码规定微指令的功能,称为垂直型微指令。,(1)寄存器-寄存器传送指令,(2)运算控制指令,(3)访问主存微指令,(4)条件转移微指令,垂直型微指令 比 水平型微指令编码长,但执行一条指令的时间短,例:,(1)水平型微指令并行操作能力强,效率高,灵活性强;垂直型微指令则较差。,(2)水平型微指令执行一条指令的时间短;垂直型微指令执行的时间长。,(3)由水平型微指令解释指令的微程序,有微指令字较长而微程序短的特点;垂直型微指令则相反,微指令字比较短而微程序长。,(4)水平型微指令用户难以掌握;而垂直型微指令比较相似,相对来说,比较容易掌握。,5.5.4 动态微程序设计,程序设计技术有两种:,对应与一台计算机的机器指令只有一组微程序,而且这一组微程序设计好之后,一般无需改变而且也不好改变,这种微程序设计技术称为静态微程序设计。,1.静态微程序设计:,2.动态微程序设计:,当采用EPROM作为控制存储器时,还可以通过改变微指令和微程序来改变机器的指令系统,这种微程序设计技术称为动态微程序设计。,