第7章 控制器-4_第1页
第7章 控制器-4_第2页
第7章 控制器-4_第3页
第7章 控制器-4_第4页
第7章 控制器-4_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、四、微程序控制方式下模型机的设计实例四、微程序控制方式下模型机的设计实例 指令格式指令格式1 微指令格式微指令格式2 指令译码器指令译码器 3 微程序控制器微程序控制器 4111 1、指令格式、指令格式格式一:一般指令格式格式一:一般指令格式 OPOP指令操作码,指令操作码,4 4位,用于对位,用于对1212条指令进行编码。条指令进行编码。SRSR源寄存器号,源寄存器号,2 2位,用于选择位,用于选择4 4个通用寄存器。个通用寄存器。DRDR目的寄存器目的寄存器号,号,2 2位,用于位,用于选择选择4 4个通用寄存器。个通用寄存器。DATADATA指令第二字节,可选。可以是立即数指令第二字节,

2、可选。可以是立即数/ /直接寻址直接寻址/ /间接寻址间接寻址/ /偏移量偏移量/ /形式地址。形式地址。 221 1、指令格式、指令格式OPOP1 1第一指令操作码,第一指令操作码,2 2位,是带寻址方式的指令(位,是带寻址方式的指令(4 4条)条)的特征位,与的特征位,与MODMOD一起使用。一起使用。MODMOD寻址方式码,寻址方式码,2 2位,用于对位,用于对4 4种寻址方式编码。例如直种寻址方式编码。例如直接接/ /间接间接/ /变址变址/ /相对寻址。相对寻址。OPOP2 2第二指令操作码,第二指令操作码,2 2位,是位,是4 4条带寻址方式码的指令本条带寻址方式码的指令本身的编码

3、。身的编码。DRDR目的寄存器号,目的寄存器号,2 2位,用于选择位,用于选择4 4个通用寄存器个通用寄存器。ADDR/DISP/XADDR/DISP/X直接直接/ /间接地址间接地址/ /偏移量偏移量/ /形式形式地址地址/ /立即数。立即数。 格式格式2 2:带寻址方式码的指令格式:带寻址方式码的指令格式 31 1、指令格式、指令格式格式格式3 3:三字节指令:三字节指令指令格式为双存储器地址指令,即指令的两个操作数均指令格式为双存储器地址指令,即指令的两个操作数均在存储器中。其余格式同在存储器中。其余格式同。 441 1、指令格式、指令格式OPOP操作指令码,操作指令码,4 4位,是单寄

4、存器指令(位,是单寄存器指令(1616条)条)的操作码。的操作码。DRDR源寄存器号或目的源寄存器号或目的寄存器号,寄存器号,2 2位,用于选择位,用于选择4 4个通用寄存器个通用寄存器。ADDR/DISP/XADDR/DISP/X直接直接/ /间接地址间接地址/ /偏移量偏移量/ /形式地址形式地址/ /立即数。立即数。 格式格式4 4:操作码扩展指令格式:操作码扩展指令格式 55微程序控制方式下模型机的框图微程序控制方式下模型机的框图667用开关单元的用开关单元的CLR开关将程序计数器开关将程序计数器 PC、控存地址寄存器、控存地址寄存器和微指令寄存器和微指令寄存器 清零,使程序从清零,使

5、程序从0地址单元中取指令。地址单元中取指令。8微指令从控存微指令从控存0000地址开始执行,经过微程序控制器使在地址开始执行,经过微程序控制器使在0000微微地址的微指令执行的地址的微指令执行的T T2 2时刻发控制信号,时刻发控制信号,T T3 3时刻将程序计数器时刻将程序计数器的内容送入地址寄存器。的内容送入地址寄存器。9由由0101微地址的微指令发出微地址的微指令发出M-RM-R、B-IRB-IR信号,将地址寄存器信号,将地址寄存器ARAR所所寻址的指令从寄存器中取出送总线,并送入指令寄存器寻址的指令从寄存器中取出送总线,并送入指令寄存器IRIR。10从控制寄存器中取出该指令的第一条微指

6、令到微指令寄存器从控制寄存器中取出该指令的第一条微指令到微指令寄存器IRIR发出控制信号,并由该指令的下地址字段发出控制信号,并由该指令的下地址字段MA6MA6 MA0,MA0,经微地经微地址寄存器再到控制寄存器取下一条微指令。址寄存器再到控制寄存器取下一条微指令。11从控制寄存器中取出该指令的第一条微指令到微指令寄存器从控制寄存器中取出该指令的第一条微指令到微指令寄存器IRIR发出控制信号,并由该指令的下地址字段发出控制信号,并由该指令的下地址字段MA6MA6 MA0,MA0,经微地经微地址寄存器再到控制寄存器取下一条微指令。址寄存器再到控制寄存器取下一条微指令。2 2、微指令格式、微指令格

7、式微指令字段编码表 模型机微指令格式 12122 2、微指令格式、微指令格式微指令字段编码表 模型机微指令格式 1313M13M8M13M8采用直采用直接控制法接控制法BTOBTO和和OTBOTB采用直接采用直接编译法编译法2 2、微指令格式、微指令格式微指令字段编码表 模型机微指令格式 1414FUNCFUNC和和FSFS一一起采用字段起采用字段间接变异法间接变异法下址为下址为7 7位位2 2、微指令格式、微指令格式微指令字段编码表 模型机微指令格式 1515 299-B299-B是移位是移位器的装入信号器的装入信号 B-SPB-SP是堆栈寄是堆栈寄存器(默认存器(默认R3R3)的数据装入信

8、的数据装入信号号 CyCnCyCn是带进位是带进位运算控制信号运算控制信号 CyNCnCyNCn是不带是不带进位运算控制进位运算控制信号信号2 2、微指令格式、微指令格式微指令字段编码表 模型机微指令格式 1616微地址形成电路支持微地址形成电路支持5 5种转移方式:种转移方式:uJ J1 1、J J2 2是指令操作码是指令操作码译码译码uJ J3 3根据控制台开关根据控制台开关K K1 1和和K K2 2的状态进行转移的状态进行转移uJ J4 4根据状态转移标志根据状态转移标志FCFC和和FZFZ进行转移进行转移uJ J5 5根据中断请求信号根据中断请求信号INTINT是否有效来确定是否有效

9、来确定是否转移。是否转移。3 3、指令译码器、指令译码器 指令译码及后继微地址的转移控制逻指令译码及后继微地址的转移控制逻辑辑 173 3、指令译码器、指令译码器 v 微程序的后继微地址的控制原理总结如下:微程序的后继微地址的控制原理总结如下:J J1 1# =0# =0时,根据机器指令的操作码(时,根据机器指令的操作码(OPOP)I I7 7II4 4进行散进行散转,产生该条指令的微程序入口地址,散转微地址确转,产生该条指令的微程序入口地址,散转微地址确定如下:定如下: 若若I I7 7=1=1且且I I6 6=1=1,则,则1MA1MA5 5,否则,否则MAMA5 5不变;不变; 若若I

10、I7 7 I I6 6= 10 = 10 或或I I7 7 I I6 6 I I5 5=111=111,则,则1MA1MA3 3,否则,否则MAMA3 3不不变;变; 若若I I7 7 I I6 6= 01= 01或或I I7 7 I I6 6 I I4 4= 111= 111,则,则1MA1MA2 2,否则,否则MAMA2 2不不变;变; 若若I I7 7 I I6 6 I I5 5=001=001或或011011或或101101,或,或I I7 7 I I6 6 I I3 3 = 111 = 111,则,则1MA1MA1 1,否则,否则MAMA1 1不变;不变; 若若I I7 7 I I6

11、 6 I I4 4 = 001 = 001或或011011或或101101,或,或I I7 7 I I6 6 I I2 2 = 111 = 111,则,则 1MA1MA0 0,否则,否则MAMA0 0不变;不变;183 3、指令译码器、指令译码器 v 微程序的后继微地址的控制原理总结如下:微程序的后继微地址的控制原理总结如下:J J2 2# =0# =0时,根据机器指令码时,根据机器指令码I I3 3I I2 2进行译码,转移进行译码,转移至相应指令的微程序段,主要应用于含寻址方式至相应指令的微程序段,主要应用于含寻址方式码(码(MODMOD)的机器指令,在这些指令中,)的机器指令,在这些指令

12、中,I I5 5I I4 4为寻为寻址方式码(址方式码(MODMOD),),I I7 7I I6 6和和I I3 3I I2 2为操作码为操作码OPOP: 若若I I3 3=1=1,则,则1MA1MA1 1,否则,否则MAMA1 1不变;不变; 若若I I2 2=1=1,则,则1MA1MA0 0,否则,否则MAMA0 0不变;不变; J J3 3# =0# =0时,根据时,根据开关开关K K2 2、K K1 1状态进行转移;主要状态进行转移;主要应用于控制台操作指令。应用于控制台操作指令。若若K K2 2 =0 =0,则,则1MA1MA1 1,否则,否则MAMA1 1不变;不变; 若若K K1

13、 1 =0 =0,则,则1MA1MA0 0,否则,否则MAMA0 0不变;不变;193 3、指令译码器、指令译码器 v 微程序的后继微地址的控制原理总结微程序的后继微地址的控制原理总结如下:如下:J J4 4# =0# =0时,时, 根据根据条件条件FCFC或或FZFZ进行转移;进行转移;主要应用于条件转移指令主要应用于条件转移指令JZCJZC或或JZJZ或或JCJC。 若若FC =1FC =1,则,则1MA1MA1 1,否则,否则MAMA1 1不变;不变; 若若FZ =1FZ =1,则,则1MA1MA0 0,否则,否则MAMA0 0不变;不变; J J5 5# =0# =0时,根据时,根据中

14、断请求信号中断请求信号INTINT是否有是否有效,确定转移。效,确定转移。若若INT=1INT=1,则,则1MA1MA5 5,否则,否则MAMA5 5不变。不变。204 4、微程序控制器、微程序控制器 微程序控制器的逻辑框图微程序控制器的逻辑框图 指令寄存器指令寄存器IRIR 指令译码(后继微地指令译码(后继微地址转移控制电路)址转移控制电路) 控制存储器控制存储器CMCMv 只读,能存放只读,能存放2424位的位的微指令。高微指令。高1717位送位送IRIR保存并译码,低保存并译码,低7 7位(下址字段)则送位(下址字段)则送后继微地址转移控制后继微地址转移控制逻辑产生后继微地址。逻辑产生后

15、继微地址。清零开关控制存储器CLR控存地址寄存器( 微地址寄存器)SE6 SE0微地址CLR指令译码(后继微地址转移控制电路 )指令寄存器IRJ1J5时钟及转移条件微指令转移控制字段 7 位三态缓冲器MA6-MA07位微指令的下址微指令位2417 位 BTOOTB FUNC FS= 0微指令寄存器 IR ( 17 位 ) CLRCLK6位3位3位3位7位7位7位B-DA1B-SPM23-M21M20-M18SR-BSP-BS3S0 M CiFUNC FS= 13位7位M17-M15M14M-W CyNCnM13-M8J1J5微操作控制信号214 4、微程序控制器、微程序控制器 微程序控制器的逻

16、辑框图微程序控制器的逻辑框图 指令寄存器指令寄存器IRIR 指令译码(后继微地指令译码(后继微地址转移控制电路)址转移控制电路) 控制存储器控制存储器CMCMv 只读,能存放只读,能存放2424位的位的微指令。高微指令。高1717位送位送IRIR保存并译码,低保存并译码,低7 7位(下址字段)则送位(下址字段)则送后继微地址转移控制后继微地址转移控制逻辑产生后继微地址。逻辑产生后继微地址。清零开关控制存储器CLR控存地址寄存器( 微地址寄存器)SE6 SE0微地址CLR指令译码(后继微地址转移控制电路 )指令寄存器IRJ1J5时钟及转移条件微指令转移控制字段 7 位三态缓冲器MA6-MA07位

17、微指令的下址微指令位2417 位 BTOOTB FUNC FS= 0微指令寄存器 IR ( 17 位 ) CLRCLK6位3位3位3位7位7位7位B-DA1B-SPM23-M21M20-M18SR-BSP-BS3S0 M CiFUNC FS= 13位7位M17-M15M14M-W CyNCnM13-M8J1J5微操作控制信号22五、模型机微程序设计五、模型机微程序设计 1.1. 自行设计模型机及其新指令的微程序段自行设计模型机及其新指令的微程序段设计的步骤为:设计的步骤为: 设计实验模型机的结构和数据通路;设计实验模型机的结构和数据通路; 设计指令的功能、格式(包括指令码)及设计指令的功能、格

18、式(包括指令码)及寻址方式;寻址方式; 在以上的基础上,编写微程序流程图;在以上的基础上,编写微程序流程图; 根据指令码和转移方式根据指令码和转移方式J1#J1#J5#J5#,分配微,分配微地址及下址字段。地址及下址字段。 根据微指令格式,编写微指令代码;根据微指令格式,编写微指令代码; 23五、模型机微程序设计五、模型机微程序设计2.2. 微程序流程图的编写微程序流程图的编写 机器指令的功能由微程序完成,一条机器机器指令的功能由微程序完成,一条机器指令对应着一段微程序。指令对应着一段微程序。每条指令的微程序都包含三部分:每条指令的微程序都包含三部分:取指令取指令微程序段微程序段、根据操作码转

19、移至微程序入口、根据操作码转移至微程序入口的微指令、该的微指令、该机器指令的独立微程序段机器指令的独立微程序段。但是每一条指令的前两部分都相同,称作但是每一条指令的前两部分都相同,称作公共操作,不同的是第三部分的独立微程公共操作,不同的是第三部分的独立微程序段,取决于该机器指令的寻址方式和功序段,取决于该机器指令的寻址方式和功能,用于实现指令规定的特殊功能。能,用于实现指令规定的特殊功能。 24五、模型机微程序设计五、模型机微程序设计2.2. 微程序流程图的编写微程序流程图的编写 每条微指令可以实现总线上的一个数据传送(例如每条微指令可以实现总线上的一个数据传送(例如PCARPCAR),或者进

20、行运算器的一个运算(例如),或者进行运算器的一个运算(例如DA1+DA2DRDA1+DA2DR),或者启动存储器的一个读),或者启动存储器的一个读/ /写写(例如(例如RAMDRRAMDR)。)。按照每条机器指令的功能,可以将各种操作归纳为按照每条机器指令的功能,可以将各种操作归纳为以下两种:以下两种:a)a) 通用寄存器之间的传送操作:源寄存器数据送通用寄存器之间的传送操作:源寄存器数据送总线,而目的寄存器从总线上接收数据。总线,而目的寄存器从总线上接收数据。b)b) 存储器读、写访问操作和运算器的运算操作。存储器读、写访问操作和运算器的运算操作。25五、模型机微程序设计五、模型机微程序设计

21、2.2. 微程序流程图的编写微程序流程图的编写 对于带寻址方式码对于带寻址方式码MODMOD的指令,由于其指令的指令,由于其指令格式不同(格式不同(I I5 5I I4 4为寻址方式码为寻址方式码MODMOD,I I7 7I I6 6和和I I3 3I I2 2为指令操作码为指令操作码OPOP),这种指令的微程),这种指令的微程序段至少经过两个转移:序段至少经过两个转移:第一次为第一次为J J1 1转移转移,根据,根据I I5 5I I4 4所提供的寻所提供的寻址方式编码分辨出寻址方式,并进入该址方式编码分辨出寻址方式,并进入该寻址方式计算有效地址的微程序入口寻址方式计算有效地址的微程序入口第

22、二次为第二次为J J2 2转移转移,根据,根据I I3 3I I2 2分辨出指令分辨出指令并转入其微程序入口实现其功能。并转入其微程序入口实现其功能。 26五、模型机微程序设计五、模型机微程序设计2.2. 微程序流程图的编写微程序流程图的编写 编写指令的微程序流程图时,不仅数据通编写指令的微程序流程图时,不仅数据通路要可行,还要考虑微码编写是否可行。路要可行,还要考虑微码编写是否可行。 对于同一条指令,可能存在不同的微程序对于同一条指令,可能存在不同的微程序流程图,但均能实现指令的功能。流程图,但均能实现指令的功能。27五、模型机微程序设计五、模型机微程序设计3.3. 微地址及下址字段的分配微

23、地址及下址字段的分配 在指令系统中的所有指令的微程序流程图编制在指令系统中的所有指令的微程序流程图编制完成后,首先要分配每条机器指令的微程序入完成后,首先要分配每条机器指令的微程序入口地址。步骤如下:口地址。步骤如下:a)a) 确定发送确定发送J1# J1# 信号的那条微指令的下址字段信号的那条微指令的下址字段b)b) 确定指令的操作码确定指令的操作码 c)c) 根据根据J1# J1# 转移的规则确定每条指令的微程序转移的规则确定每条指令的微程序入口地址。入口地址。 如果微程序流程图中还有如果微程序流程图中还有J2#J2#、J3#J3#、J4#J4#、J5# J5# 转移,则接下来必须确定它们

24、的各分支的入口转移,则接下来必须确定它们的各分支的入口微地址微地址 28五、模型机微程序设计五、模型机微程序设计3.3. 微地址及下址字段的分配微地址及下址字段的分配 在确定了有特殊要求的微指令的固定地址后,在确定了有特殊要求的微指令的固定地址后,对于其它的顺序执行的微指令,只需直接按对于其它的顺序执行的微指令,只需直接按前后顺序随意编排微地址,只要微地址不重前后顺序随意编排微地址,只要微地址不重复即可。复即可。 每条指令的微程序段的最后一条微指令的下每条指令的微程序段的最后一条微指令的下址字段一定是取指令微程序段的首地址。址字段一定是取指令微程序段的首地址。29五、模型机微程序设计五、模型机

25、微程序设计4.4.微指令代码的编写微指令代码的编写 v 根据写好的微程序流程图,参照数据通根据写好的微程序流程图,参照数据通路,首先排列出每条微指令必须发送的路,首先排列出每条微指令必须发送的微操作控制信号,然后,对照微指令格微操作控制信号,然后,对照微指令格式,写出这些微操作控制信号对应的微式,写出这些微操作控制信号对应的微代码。代码。30五、模型机微程序设计五、模型机微程序设计5.5. 微程序设计举例微程序设计举例v 假设模型机指令系统有5条机器指令 3131五、模型机微程序设计五、模型机微程序设计5.5. 微程序设计举例微程序设计举例v 根据指令的功能,设计每一条指令的微程序 3232五

26、、模型机微程序设计五、模型机微程序设计5.5. 微程序设计举例微程序设计举例v 根据微程序流程图中根据微程序流程图中每个微指令框所表示每个微指令框所表示的微指令功能,写出的微指令功能,写出每条微指令每条微指令;将机器;将机器指令码装入主存,微指令码装入主存,微指令编码装入控制存指令编码装入控制存储器;当执行机器指储器;当执行机器指令时,机器会按照微令时,机器会按照微程序控制器的原理,程序控制器的原理,完成指令的执行。完成指令的执行。33六、微程序控制器与硬布线控制器的比较六、微程序控制器与硬布线控制器的比较 1.1. 它们的根本区别在于它们的根本区别在于微操作控制信号的产生微操作控制信号的产生

27、方法不同方法不同:v 微程序控制器事先将编写好的微代码放入微程序控制器事先将编写好的微代码放入控制存储器,执行过程中需要时再从控存控制存储器,执行过程中需要时再从控存中读取并送出的;中读取并送出的;v 硬布线控制器由组合逻辑电路产生微操作硬布线控制器由组合逻辑电路产生微操作控制信号。控制信号。2.2. 从电路的规整性来说,微程序控制器电路相从电路的规整性来说,微程序控制器电路相对规整,而硬布线控制器电路设计较为繁琐、对规整,而硬布线控制器电路设计较为繁琐、不规整。不规整。3.3. 从指令系统的易扩充性来说,微程序控制器从指令系统的易扩充性来说,微程序控制器易修改和扩充,而硬布线控制器不易修改和

28、易修改和扩充,而硬布线控制器不易修改和扩充。扩充。34六、微程序控制器与硬布线控制器的比较六、微程序控制器与硬布线控制器的比较 4.4. 微程序控制器执行指令的速度相对硬布线控制微程序控制器执行指令的速度相对硬布线控制器慢,因为前者需要读控存、微指令译码、发器慢,因为前者需要读控存、微指令译码、发送微操作控制信号来完成一个送微操作控制信号来完成一个CPUCPU周期(机器周期(机器周期),而后者经过一些门电路的延迟,即可周期),而后者经过一些门电路的延迟,即可产生微操作控制信号,所以更利于硬布线控制产生微操作控制信号,所以更利于硬布线控制器的器的CPUCPU提高主频。提高主频。5.5. 微程序控制器早先多应用于微程序控制器早先多应用于CISCCISC系统,硬布线系统,硬布线控制器多应用于控制器多应用于RISCRISC系统。在现代的系统。在现代的RISCRISC系统系统中,绝大多数指令为简单指令,均用硬布线方中,绝大多数指令为简单指令,均用硬布线方式实现;少数复杂指令则使用微程序实现。而式实现;少数复杂指令则使用微程序实现。而在现代的在现代的CISCCISC系统中,譬如系统中,譬如IntelIntel微处理器,微处理器,也将一些原先采用微程序实现的指令,改用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论