微程序控制器.ppt
- 文档编号:1737811
- 上传时间:2022-10-23
- 格式:PPT
- 页数:44
- 大小:391KB
微程序控制器.ppt
《微程序控制器.ppt》由会员分享,可在线阅读,更多相关《微程序控制器.ppt(44页珍藏版)》请在冰豆网上搜索。
,5.4微程序控制器,5.4.1微命令和微操作5.4.2微指令和微程序5.4.3微程序控制器原理框图5.4.4微程序举例5.4.5CPU周期与微指令周期的关系5.4.6机器指令与微指令的关系,微命令和微操作,微命令控制部件通过控制线向执行部件发出的各种控制命令。
微操作执行部件接受微命令后所进行的操作。
控制部件与执行部件通过控制线和反馈信息进行联系。
简单运算器数据通路,微指令和微程序,微指令在机器的一个CPU周期中,一组实现一定操作功能的微命令的组合。
微程序实现一条机器指令功能的许多条微指令组成的序列。
控制部件与执行部件通过控制线和反馈信息进行联系。
微程序控制器原理框图,微程序控制器原理框图,它主要由控制存储器、微指令寄存器和地址转移逻辑三大部分组成。
控制存储器控制存储器用来存放实现全部指令系统的微程序,它是一种只读存储器。
一旦微程序固化,机器运行时则只读不写。
其工作过程是:
每读出一条微指令,则执行这条微指令;接着又读出下一条微指令,又执行这一条微指令。
读出一条微指令并执行微指令的时间总和称为一个微指令周期。
通常,在串行方式的微程序控制器中,微指令周期就是只读存储器的工作周期。
控制存储器的字长就是微指令字的长度,其存储容量视机器指令系统而定,即取决于微程序的数量。
对控制存储器的要求是速度快,读出周期要短。
微指令寄存器,微指令寄存器用来存放由控制存储器读出的一条微指令信息。
其中微地址寄存器决定将要访问的下一条微指令的地址,而微命令寄存器则保存一条微指令的操作控制字段和判别测试字段的信息。
地址转移逻辑,在一般情况下,微指令由控制存储器读出后直接给出下一条微指令的地址,通常我们简称微地址,这个微地址信息就存放在微地址寄存器中。
如果微程序不出现分支,那么下一条微指令的地址就直接由微地址寄存器给出。
当微程序出现分支时,意味着微程序出现条件转移。
在这种情况下,通过判别测试字段P和执行部件的“状态条件”反馈信息,去修改微地址寄存器的内容,并按改好的内容去读下一条微指令。
地址转移逻辑就承担自动完成修改微地址的任务。
微程序举例,一条机器指令对应一个微程序。
十进制加法指令十进制加法指令的功能是用BCD码来完成十进制数的加法运算。
在十进制中,两数相加之和大于9时产生进位,用BCD码进行加法运算,当和数大于9时,必须进行加6修正。
00000000000011111100000010100100100000000010010100010011000000001000001000100100100000000000,CPU周期与微指令周期的关系,在串行方式的微程序控制器中:
微指令周期=读出微指令时间+执行该条微指令时间下图示出了某小型机中CPU周期与微指令周期的时间关系:
设某计算机运算器框图如图(a)所示,其中ALU为16位的加法器(高电平工作),SA,SB为16位暂存器。
4个通用寄存器由D触发器组成,Q端输出,其读、写控制功能见下表。
机器采用串行微程序控制方式,其微指令周期见图(b)。
其中读ROM是从控存中读出一条微指令时间,为1s;ALU工作是加法器做加法运算,为500ns;m1是读寄存器时间,为500ns;m2是写寄存器的工作脉冲宽度,为100ns。
微指令字长12位,微指令格式如下:
微程序控制器原理框图,5.4.2微程序设计技术,设计微指令应当追求的目标有利于缩短微指令的长度有利于缩小CM的容量有利于提高微程序的执行速度有利于对微指令的修改有利于提高微程序设计的灵活性,5.4.2微程序设计技术,微命令编码微地址的形成方法微指令格式动态微程序设计,编码表示法:
将操作控制字段分为若干个小段,每段内采用最短编码法,段与段之间采用直接控制法。
5.4.2微程序设计技术编码表示法特点:
可以避免互斥,使指令字大大缩短,但增加了译码电路,使微程序的执行速度减慢,微命令编码,对微指令中的操作控制字段采用的表示方法。
1.直接表示法其特点是操作控制字段中的每一位代表一个微命令。
这种方法的优点是简单直观,其输出直接用于控制。
缺点是微指令字较长,因而使控制存储器容量较大。
2.编码表示法编码表示法是把一组相斥性的微命令信号组成一个小组(即一个字段),然后通过小组(字段)译码器对每一个微命令信号进行译码,译码输出作为操作控制信号,其微指令结构如下图所示。
3.混合表示法这种方法是把直接表示法与字段编码法混合使用,以便能综合考虑指令字长、灵活性、执行微程序速度等方面的要求。
设某计算机运算器框图如图(a)所示,其中ALU为16位的加法器(高电平工作),SA,SB为16位暂存器。
4个通用寄存器由D触发器组成,Q端输出,其读、写控制功能见下表。
机器采用串行微程序控制方式,其微指令周期见图(b)。
其中读ROM是从控存中读出一条微指令时间,为1s;ALU工作是加法器做加法运算,为500ns;m1是读寄存器时间,为500ns;m2是写寄存器的工作脉冲宽度,为100ns。
微指令字长12位,微指令格式如下:
要求用二进制代码写出如下指令的微指令:
ADDR0,R1;(R0)+(R1)R1SUBR2,R3;(R3)-(R2)R3MOVR2,R3;(R2)(R3),某32位机共有微操作控制信号52个,构成5个相斥类的微命令组,各组分别包含4个、5个、8个、15个、和20个微命令。
已知可判定的外部条件有CY和ZF两个,微指令字长29位。
给出采用断定方式的水平型微指令格式控制存储器的容量应为多少?
解:
1.微指令的格式:
下址字段,8位,2.控存容量:
28X29=256X29,各控制字段应包含一种不发出命令的情况,条件测试字段中包含一种不转移的情况,微地址的形成方法,微指令执行的顺序控制问题,实际上是如何确定下一条微指令的地址问题。
通常,产生后继微地址有两种方法:
计数器方式多路转移方式,微地址形成方法,1.计数器方式这种方法同用程序计数器来产生机器指令地址的方法相类似。
在顺序执行微指令时,后继微地址现行微地址加上一个增量来产生;在非顺序执行微指令时,必须通过转移方式,使现行微指令执行后,转去执行指定后继微地址的下一条微指令。
在这种方法中,微地址寄存器通常改为计数器。
为此,顺序执行的微指令序列就必须安排在控制存储器的连续单元中。
计数器方式的基本特点是:
微指令的顺序控制字段较短,微地址产生机构简单。
但是多路并行转移功能较弱,速度较慢,灵活性较差。
2.多路转移方式(也称断定方式)在多路转移方式中,当微程序不产生分支时,后继微地直接由微指令的顺序控制字段给出;当微程序出现分支时,有若干“后选”微地址可供选择:
即按顺序控制字段的“判别测试”标志和“状态条件”信息来选择其中一个微地址。
“状态条件”有n位标志,可实现微程序2的n次方路转移,涉及微地址寄存器的n位。
多路转移方式的特点是:
能以较短的顺序控制字段配合,实现多路并行转移,灵活性好,速度较快,但转移地址逻辑需要用组合逻辑方法设计。
微地址形成方法,微地址寄存器有6位(A5-A0),当需要修改其内容时,可通过某一位触发器的强置端S将其置“1”。
现有三种情况:
(1)执行“取指”微指令后,微程序按IR的OP字段(IR3-IR0)进行16路分支;
(2)执行条件转移指令微程序时,按进位标志C的状态进行2路分支;(3)执行控制台指令微程序时,按IR4,IR5的状态进行4路分支。
请按多路转移方法设计微地址转移逻辑。
按所给设计条件,微程序有三种判别测试,分别为P1,P2,P3。
由于修改A5-A0内容具有很大灵活性,现分配如下:
(1)用P1和IR3-IR0修改A3-A0;
(2)用P2和C修改A0;(3)用P3和IR5,IR4修改A5,A4。
另外还要考虑时间因素T4(假设CPU周期最后一个节拍脉冲),故转移逻辑表达式如下:
A5=P3IR5T4A4=P3IR4T4A3=P1IR3T4A2=P1IR2T4A1=P1IR1T4A0=P1IR0T4+P2CT4由于从触发器强置端修改,故前5个表达式可用“与非”门实现,最后一个用“与或非”门实现。
机器指令与微指令的关系,一会儿取机器指令,一会儿取微指令,它们之间到底是什么关系?
1.一条机器指令对应一个微程序,这个微程序是由若干条微指令序列组成的。
因此,一条机器指令的功能是由若干条微指令组成的序列来实现的。
简言之,一条机器指令所完成的操作划分成若干条微指令来完成,由微指令进行解释和执行。
2.从指令与微指令,程序与微程序,地址与微地址的一一对应关系来看,前者与内存储器有关,后者与控制存储器有关。
3.指令与机器周期概念中归纳了五条典型指令的指令周期,并给出了这五条指令的微程序流程图,每一个CPU周期就对应一条微指令。
这就告诉我们如何设计微程序,也将使我们进一步体验到机器指令与微指令的关系。
微指令格式,微指令的编译方法是决定微指令格式的主要因素。
微指令的格式大体分成两类:
水平型微指令和垂直型微指令。
1.水平型微指令一次能定义并执行多个并行操作微命令的微指令,叫做水平型微指令。
其一般格式如下:
控制字段判别测试字段下地址字段按照控制字段的编码方法不同,水平型微指令又分为三种:
全水平型(不译法)微指令,字段译码法水平型微指令,以及直接和译码相混合的水平型微指令。
2.垂直型微指令微指令中设置微操作码字段,采用微操作码编译法,由微操作码规定微指令的功能,称为垂直型微指令。
其结构类似于机器指令的结构。
它有操作码,在一条微指令中只有12个微操作命令,每条微指令的功能简单,因此,实现一条机器指令的微程序要比水平型微指令编写的微程序长得多。
它是采用较长的微程序结构去换取较短的微指令结构。
垂直型微指令举例,寄存器寄存器传送微指令其功能是把源寄存器数据送目标寄存器。
1315位为微操作码(下同),源寄存器和目标寄存器编址各5位,可指定31个寄存器。
运算器控制微指令其功能是选择ALU的左、右两输入源信息,按ALU字段所指定的运算功能(8种操作)进行处理,并将结果送入暂存器中。
左、右输入源编址可指定31种信息源之一,垂直型微指令举例,水平型微指令与垂直型微指令的比较,
(1)水平型微指令并行操作能力强,效率高,灵活性强,垂直型微指令则较差。
(2)水平型微指令执行一条指令的时间短,垂直型微指令执行时间长。
(3)由水平型微指令解释指令的微程序,有微指令字较长而微程序短的特点。
垂直型微指令则相反。
(4)水平型微指令用户难以掌握,而垂直型微指令与指令比较相似,相对来说,比较容易掌握。
动态微程序设计,微程序设计技术有静态微程序设计和动态微程序设计之分。
1.静态微程序设计对应于一台计算机的机器指令只有一组微程序,而且这一组微程序设计好之后,一般无须改变而且也不好改变,这种微程序设计技术称为静态微程序设计。
2.动态微程序设计当采用EPROM作为控制存储器时,还可以通过改变微指令和微程序来改变机器的指令系统,这种微程序设计技术称为动态微程序设计。
采用动态微程序设计时,微指令和微程序可以根据需要加以改变,因而可在一台机器上实现不同类型的指令系统。
这种技术又称为仿真其他机器指令系统,以便扩大机器的功能。
假设某机器有128条指令,每条指令由4条微指令组成,其中有一条取微指令时所有指令公用的。
已知微指令字长为32位,估算控存容量。
(128X3+1)X32/8,已知某机采用微程序控制方式,控存容量为512X48位,微程序可在整个控存中实现转移,控制微程序转移的条件共4个,微指令采用水平格式,后继微指令地址采用断定方式。
问:
微指令3个字段分别应为多少位?
画出对应这种微指令格式的微程序控制器逻辑框图。
解:
假设判别测试字段中每一位作为一个判别标志,共4个转移条件,则该字段位4位;由于控存容量位512个字,下址字段应为9位(29=512);微命令字段为48-4-9=35位。
微程序控制器的设计,CPU的数据通路和组成指令系统指令格式画出指令周期的流程图控制方式微程序控制器的组成设计微指令的格式(字长、操作控制字段、顺序控制字段)控存容量计算,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微程序 控制器
![提示](https://static.bdocx.com/images/bang_tan.gif)