第7章控制器-2.ppt

上传人:本田雅阁 文档编号:2910907 上传时间:2019-06-04 格式:PPT 页数:52 大小:622.52KB
返回 下载 相关 举报
第7章控制器-2.ppt_第1页
第1页 / 共52页
第7章控制器-2.ppt_第2页
第2页 / 共52页
第7章控制器-2.ppt_第3页
第3页 / 共52页
第7章控制器-2.ppt_第4页
第4页 / 共52页
第7章控制器-2.ppt_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《第7章控制器-2.ppt》由会员分享,可在线阅读,更多相关《第7章控制器-2.ppt(52页珍藏版)》请在三一文库上搜索。

1、1,第七章 控制器,7.1 控制器的组成及指令的执行 7.2 控制方式和时序的产生 7.3 微程序控制器 7.4 微程序控制器及其微程序设计举例 7.5 硬布线控制器 7.6 流水线的基本原理 7.7 Pentium CPU 本章小结 作业,2,7.3 微程序控制器,一、基本概念 二、微程序控制器的基本工作原理 三、微程序控制器的组成 四、微程序控制原理举例 五、微程序设计技术,3,一、 基本概念,微操作:指令执行时必须完成的基本操作。例如,PCAR,PC+1 PC,RAMIR。 微命令:是组成微指令的最小单位,也就是控制微操作实现的控制信号。一般用于控制数据通路上门的打开/关闭,或者功能选择

2、。 微指令:是一组微命令的集合,用于完成一个功能相对完整的操作。 微程序:微指令的有序集合,用于实现机器指令的功能。,4,一、 基本概念,控制存储器:简称控存,用于存放所有指令的微程序,其中一个存储单元存放一条微指令。一般为ROM。 微地址:微指令在控存中的地址。 微周期:指从控存中取出并执行一条微指令所需要的时间,一般与一个机器周期相当。,5,二、微程序控制器的基本工作原理,一条机器指令由一段微程序来解释实现 。 微程序控制的计算机工作过程:,开机 上电,产生 Reset 信号,置PC为第一条指令的地址,置PC为取指令 微程序段的入口地址,取指令,分析指令,执行指令,执行取指令 微程序段,产

3、生该指令的微程序入口地址,执行该指令的微程序段,6,三、微程序控制器的组成,微程序控制器的组成框图,7,微程序控制器的构成部件,控制存储器:简称控存、CM,用于存放微程序,一般由ROM构成。 微地址寄存器:存放要访问的控存中的微指令的地址,又称AR 、CMAR。 微指令寄存器:存放从控存中读出的微指令本身,又称IR。其控制字段用于产生微操作控制信号,其下址则送至微地址形成电路,产生下一条微指令的地址。 微地址形成电路:用于产生下一条微指令的地址。包含了指令译码器, 微程序控制器中ID的作用是将指令寄存器中的操作码OP转换成该指令的微程序入口地址。,8,四、微程序控制原理举例,(一)模型计算机系

4、统结构 (二)模型计算机数据通路 (三)模型计算机控制信号 (四)微指令格式 (五)微程序设计举例,9,(一)模型计算机系统结构,10,(二)模型计算机数据通路,1、存储器读操作:分成两步: 送地址到总线,并打入地址寄存器AR; 发送存储器读信号M-R# =0,启动存储器读操作,并将读出的数据从总线上接收至目的部件(例如某通用寄存器或者暂存器DA1、DA2)。 例如:取指令操作 PCAR,PC+1; 发送M-R# =0 ,并RAMIR。,11,(二)模型计算机数据通路,2、存储器写操作:分成两步: 送地址到总线,并打入地址寄存器AR; 送数据到总线,并发送存储器写信号M-W# =0,启动存储器

5、写操作。 3、运算器的运算操作:分成三步: 送第一个数据到总线,并打入ALU暂存器DA1/DA2 送第二个数据到总线,且打入ALU暂存器DA2/DA1 发送运算器功能选择信号S3S0、M、Ci,控制ALU进行某种运算,并打开ALU输出三态门(ALU-B#=0),将总线上运算结果送目的部件。,12,(三)模型计算机控制信号,13,(三)模型计算机控制信号,14,(四)微指令格式,微指令的控制字段28位,一位表示一个微命令。 微指令的下址字段指出下一条微指令的地址,该模型机的控制存储器地址是7位,表示最多有128个单元,每个单元(28+7=35位)。,15,(五)微程序设计举例,微程序设计步骤:

6、根据数据通路,写出每条指令的执行过程,画出微程序流程图。 写出每条微指令所发出的微操作控制信号。 按照微指令格式,编写每条微指令的代码。 对照指令的执行流程图,分配微指令的地址 将写好的微指令按分配好的微地址装入控制存储器。,16,(五)微程序设计举例,假设存放在存储器中的二条指令内容为:,17,1、指令执行过程,ADD R0, 06H 取指令: M1 (送存储器地址):PCAR, PC+1 M2 (读存储器,指令译码): MEM IR,J1# 执行指令: M3(取源操作数送地址):PCAR, PC+1 M4(取源操作数读):MEM DA1 M5(取目的操作数): R0DA2 M6(计算并置结

7、果):DA1+DA2Rd,18,1、指令执行过程,JMP ADDR 取指令: M1 (送存储器地址):PCAR, PC+1 M2 (读存储器,指令译码):RAMIR, J1# 执行指令: M4(取操作数送地址):PCAR, PC+1 M5(取操作数读):RAM PC,19,2、指令执行时产生的微操作序列,20,3、指令的微程序代码:ADD,21,3、指令的微程序代码:JMP,22,4、为微指令分配微地址,01H,02H,20H,21H,07H,04H,05H,06H,23,五、微程序设计技术,采用微程序设计的目的: 缩短微指令字长; 减少控制存储器的容量; 微程序的执行速度; 易于微指令的修改

8、; 增加微程序设计的灵活性。 微指令由两部分构成: 控制字段:指出微指令的功能,表示要发送的微命令 下址字段:用于指出下一条微指令的地址。,24,五、微程序设计技术,(一)控制字段的编码方法 (二)下址字段的设计方法 (三)微指令格式的类型 (四)控制存储器和动态微程序设计 (五)毫微程序设计,25,(一)控制字段的编码方法,1、直接控制法:微指令的控制字段中,每一位代表一个微命令(控制信号),在设计微指令时,如果要发出某个微命令则将控制字段中对应位置有效信号,即打开对应控制门。 优点:无需译码,执行速度快;微程序较短。 缺点:微指令字长很长,占用控存容量大。 2、全译码方式:将所有的控制信号

9、进行编码,作为控制字段。在执行微指令时,译码产生各个微命令。 优点:微指令字长很短。 缺点:并行操作能力弱,微程序很长,执行速度慢,26,(一)控制字段的编码方法,3、字段直接编译法 :将控制字段分成若干段,每段通过编码/译码对应到各个控制信号。 优点:并行操作能力较强,字长较短 分段原则是:相斥性微命令分在同一字段内,相容性微命令分在不同字段内。前者可以提高信息位的利用率,缩短微指令字长;后者有利于实现并行操作,加快指令的执行速度。,相斥性微命令:指在同一个微周期中不可能同时出现的微命令。 相容性微命令:指在同一个微周期中可以同时出现的微命令,27,(一)控制字段的编码方法,4、字段间接编译

10、法 :某字段的编码含意,除了其本身的编码外,还需要由另一字段来加以解释。也就是说,某一字段所产生的微命令,是和另一字段的代码联合定义出来的。 优点:进一步缩短微指令字长 例如:模型机的微指令格式定义(24位),直接控制法,28,模型机微指令字段编码表,字段间接编译法,字段直接编译法,29,(二)下址字段的设计方法,微指令中下址字段的结构和后继微指令地址的形成方法有关,又称为微程序流的控制。 后继微指令地址获得方法有三种: 根据机器指令操作码产生该指令对应的微程序入口地址(通过指令译码散转); 由下址字段指出下一微地址,或顺序1; 根据上一条微指令执行结果来判断微指令转移还是顺序执行微指令,即实

11、现微程序分支。,30,(二)下址字段的设计方法,1、微程序入口地址的产生 2、后继微地址的产生 3、模型机微地址的产生举例,31,1、微程序入口地址的产生,根据机器指令的操作码转移到其对应的微程序入口地址,通常称为操作码映射。 这是一种多分支情况,也就是指令译码,通常采用以下两种方法来实现这种转移。 映射ROM:简称MAPROM,该ROM中存放的是指令的微程序入口地址。以指令的操作码为地址,访问该MAPROM单元,读出的内容即是该指令的微程序入口地址。 逻辑电路:以指令的操作码作为输入变量,通过组合逻辑电路,产生的输出变量即为指令的微程序入口地址。,32,2、后继微地址的产生,每条微指令执行完

12、毕,都必须根据要求产生后继微指令地址。方法有两种: (1)计数器方式:在微程序控制器单元中设置一个微程序计数器PC,用于保存后继微指令地址。 在顺序执行微指令时,后继微指令地址由现行微地址1(即PC 1)来产生。 遇到转移时,由微指令给出转移地址,使微程序按新的微地址顺序执行。 微指令格式:,33,(1)计数器方式,BAF:转移地址字段,用于给出微指令转移的部分微地址。BAF一般位数少,将它送到PC的若干低位或高位形成后继微地址。 BCF:转移控制字段,用来确定后继微地址是顺序执行还是条件转移。 当条件成立时,微程序转移,将BAF送PC;否则顺序执行下一条微指令(PC1)。 转移控制字段BCF

13、应当能够定义各种后继微地址来源。 假设,在微程序中有顺序执行、无条件转移、条件转移、测试循环、转微子程序和微子程序返回6种情况,再加上指令散转至相应的微程序入口地址,则转移控制字段BCF用3位编码上述7种情况。,优点是微指令字较短,便于编写微程序,后继微地址产生机构比较简单; 缺点是执行速度低,微程序在控制存储器中的物理分配不方便,需合理安派、调整,34,35,(2)判定方式(下址字段法),微指令格式:,微指令格式中必须设置一个下址字段,用来指明下一条要执行的微指令地址,所以也称为下址字段法。 当微程序不产生分支时,后继微指令地址直接由微指令的下址字段给出; 当微程序出现分支时,按判别测试字段

14、和状态条件通过逻辑电路来形成后继微地址。 由于每一条微指令至少都是一条无条件转移微指令,因此不必设置专门的转移微指令。,优点是可以实现快速多路分支,以提高微程序的执行速度,微程序在控制存储器的物理分配方便,微程序设计灵活; 缺点是微指令字长,形成后继微地址的结构比较复杂,36,37,3、模型机微地址的产生举例,模型机微程序控制器结构 模型机微程序入口地址的产生方法:逻辑电路 模型机后继微地址的产生方法:下址字段法 模型机后继微地址转移控制部件,38,举例:模型机微程序控制器结构,39,模型机微程序控制器结构,后继微地址的产生方法:下址字段法。 控存中的24位微码读出后,在T2节拍,高17位送微

15、指令寄存器IR保存并译码,低7位(下址字段)则送控存地址寄存器。 在T4节拍,由后继微地址转移控制部件发出微地址修改信号SE6#SE0#,对控存地址寄存器中保存的下址进行修改(SEi#=0,则1 MAi),作为后继微地址 后继微地址转移控制部件根据判别测试字段FUNC发出的转移控制信号J1J5,结合指令操作码OP及目前的运算结果状态FZ、FC,开关K2、K1状态和中断INT状态,来发送微地址修改信号SE6SE0,以决定如何修改下址字段所提供的微地址,产生后继微地址。,40,模型机后继微地址转移控制部件,41,模型机后继微地址转移控制逻辑(J1),J1#=0时,根据指令的操作码(OP)I7I4进

16、行散转,产生该条指令的微程序入口地址。散转规则: 当I7I6=11时(即指令格式三的指令),则SE5#=0,即1MA5,并且: 若I5=1,则SE3#=0,即1MA3; 若I4=1,则SE2#=0,即1MA2; 若I3=1,则SE1#=0,即1MA1; 若I2=1,则SE0#=0,即1MA0; 当I7I611时(即指令格式一和格式二的指令) ,则: 若I7=1,则SE3#=0,即1MA3; 若I6=1,则SE2#=0,即1MA2; 若I5=1,则SE1#=0,即1MA1; 若I4=1,则SE0#=0,即1MA0;,42,模型机后继微地址转移控制逻辑(J2#),当J2#=0时,根据指令操作码I3

17、I2进行散转,转移至相应指令的微程序段。 主要应用于格式二的机器指令,即含寻址方式码(MOD)的格式。该指令格式中, I7I6为第一操作码,通常是指令格式二的特征码,I5I4为寻址方式码(MOD),I3I2为指令的第二操作码,用于区分格式二的四条指令。 在这些指令的微程序实现中,通常首先根据I7I4进行J1散转,转移至相应的寻址方式微程序段(主要功能是计算有效地址EA);然后进行第二次的J2散转,转移至不同的机器指令的微程序段(实现指令的功能)。 散转规则: I3=1时,则SE1#=0,即1MA1; I2=1时,则SE0#=0,即1MA0;,43,模型机微地址转移控制逻辑(J3#、J4#、J5

18、#),J3#=0时,根据开关K2、K1状态进行转移;主要应用于控制台操作指令。散转规则: KB=0时,则SE1#=0,即1MA1; KA=0时,则SE0#=0,即1MA0; J4#=0时,根据条件FC或FZ进行转移;主要应用于条件转移指令JZC或JZ或JC。散转规则: FC=1时,则SE1#=0,即1MA1; FZ=1时,则SE0#=0,即1MA0; J5#=0时,根据中断请求信号INT是否有效,确定转移。散转规则: INT=1时,则SE5#=0,即1MA5;,44,模型机微地址转移控制逻辑举例,以第六章所介绍的模型机指令系统(P185)为例,写出所有机器指令的J1散转的微程序入口地址。假设取

19、指令微程序中进行J1散转的微指令的下址字段为10H0010000B。,45,模型机微地址转移控制逻辑举例,对于指令格式二的四条指令,通过J1散转到寻址方式的微程序入口地址后,各自计算有效地址EA;之后均进行二次的J2散转,假设进行J2散转的微指令的下址字段为40H1000000B,则格式二的四条指令的微程序入口地址为:,46,(三)微指令格式的类型,不同的计算机有不同的微指令格式,但一般分为水平型微指令和垂直型微指令两种类型。 (1)水平型微指令 微指令字采用长格式,也就是控制字段采用直接控制法和字段直接编码法,使一条微指令能控制数据通路中多个功能部件并行操作。 水平型微指令的优点是:一条微指

20、令可同时发送多个微命令,微指令执行效率高,速度快,较灵活,并行操作能力强;水平型微指令构成的微程序较短。它的主要缺点是:微指令字长较长,明显地增加了控制存储器的横向容量。,47,(三)微指令格式的类型,(2)垂直型微指令 控制字段采用完全编码的方法,将一套微命令代码化构成微指令。就像计算机机器指令一样,它由微操作码、源地址和目标地址以及其他附带信息构成 垂直型微指令和机器指令一样分成多种类型的微指令,所有微指令构成一个微指令系统。 主要特点:微指令字采用短格式,每条微指令只能控制一二个微操作,并行控制能力差。但由于微指令和机器指令格式相类似,对于用户来说,垂直型微指令比较直观,容易掌握和便于使

21、用。微指令字短,减少了横向控制存储器的容量;但微程序长,影响了执行的速度。,48,(四)控制存储器和动态微程序设计,控制存储器:一般由ROM构成,因为指令系统一般是固定的,微程序是解释执行指令的,因此微程序一般也是固定的,所以使用只读存储器来存放微程序。 动态微程序设计:在一台微程序控制的计算机中,假如能根据用户的要求改变微程序,那么这台机器就具有动态微程序设计功能。 具有动态微程序设计功能的控制器的CM必须是可改写的存储器,如RAM或者E2PROM。 动态微程序设计可以通过修改微程序来实现不同的指令系统,或者实现指令系统的扩充或调整。 动态微程序设计的目的是使计算机能更灵活、更有效地适应于各

22、种不同的应用场合。,49,(五)毫微程序设计,将垂直型微指令设计和水平型微指令设计结合起来,采用两级微程序来实现指令系统: 第一级为垂直微程序:用来解释机器指令,称为微程序并存放在称为微程序存储器的控存(一级控存)中。 第二级为水平微程序,用来解释垂直微指令,并产生相应微命令,实现数据通路的控制。由于它是解释微程序的微程序,所以称为毫微程序,存放在称为毫微程序存储器的控存(二级控存)中。 毫微程序设计使得微程序流的控制和微命令发出完全分离,微程序流控制由微程序级实现(垂直型微指令),而微命令则由毫微程序产生(水平型微指令)。,50,毫微程序控制器结构,返回,51,作业,P243: 1,2,3,4,6 9,10,11,12,13,15,16,17,18,52,The End !,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1