计算机组成原理第五章中央处理器[四]

上传人:我** 文档编号:116948023 上传时间:2019-11-17 格式:PPT 页数:77 大小:1.35MB
返回 下载 相关 举报
计算机组成原理第五章中央处理器[四]_第1页
第1页 / 共77页
计算机组成原理第五章中央处理器[四]_第2页
第2页 / 共77页
计算机组成原理第五章中央处理器[四]_第3页
第3页 / 共77页
计算机组成原理第五章中央处理器[四]_第4页
第4页 / 共77页
计算机组成原理第五章中央处理器[四]_第5页
第5页 / 共77页
点击查看更多>>
资源描述

《计算机组成原理第五章中央处理器[四]》由会员分享,可在线阅读,更多相关《计算机组成原理第五章中央处理器[四](77页珍藏版)》请在金锄头文库上搜索。

1、 5.5 微程序控制器(Microprogrammed Control) 鉴于组合逻辑控制器设计方法的两大缺点:(1)逻辑实 现复杂,(2)不易扩充和修改,1951年剑桥的Wilkes教授提出 微程序控制器的设计思想:将机器指令分解成若干基本的 微命令序列, 用二进制代码表示这些微命令,并编成微指令, 多条微指令再形成微程序,在制造CPU时固化在CPU中的一 个控制存储器(CM)中,执行一条机器指令时,CPU依此从 CM中取出微指令,从而产生微命令,因此又称为存储逻辑. 上述思想用一篇论文的形式提出,论文题为“The Best Way to Design an Automatic Calcul

2、ating Machine.”Proceedings,Manchester University Computer Inaugural Conference,July 1951 文中给出的设计方案叫做Wilkes模型。 5.5.1 微程序控制器的提出 由于需要快速和相对廉价的控制存储器(Control Memory),而当时的技术水平难以提供支持.1964年2月 ,Hill“Stored Logical Programming and Applications” Datamation, February 1964,对微程序的未来做了展望. 同年4月,采用微程序的IBM 360问世,至此,微程序

3、的各种 应用得到不断发展,作为应用之一的,就是微程序控制器. 5.5.2 基本概念(Basic Concepts) 微命令:即微操作控制信号,是构成控制信号序列的最小 单位,由控制器通过控制线向有关部件发出。 微操作:由微命令控制实现的最基本的操作。 关系:微命令是微操作的控制信号,而微操作是微命令 所控制的操作过程,二者一一对应,在计算内部实质上是 同一个信号。 微指令(Microinstructions):在机器的一个CPU周期中, 一组实现一定操作功能的微命令的组合,以编码的形式存 放在CM的一个单元中. 把一条机器指令中一个机器周期内的微命令信息放 在一条微指令中. 控制存储器中每个单

4、元存放一条微指令. 微命令字段: 可直接按位或通过译码提供微命令 微指令格式 微命令字段微地址字段 微操作控制字段 顺序控制字段 微地址字段:控制产生下一条微指令地址 机器指令与微指令、微程序的关系 机器指令是提供给使用者编程的基本单位,每一 条指令可完成一个独立的算术运算或逻辑运算操作. 一条机器指令对应一组微指令组成的微程序.可 见,一条机器指令对应多条微指令,而一条微指令可 为多个机器指令服务.关系如下图所示: 微程序(Microprogram) :由微指令组成的序列称为 微程序, 一条机器指令的功能由一段微程序来实现. 求 解 问 题 的 算 法 ADD R1,R2 STA M1 1

5、i i+1 m 主存 ADD指令 的微程序 STA指令 的微程序 控存(CM) 主存:用于存放程序和数据,在CPU外部,用RAM实现. 控存:用于存放微程序,在CPU内部,用ROM实现.控制存 储器的字长等于微指令的长度,其总容量取决于微指令的 字长和微程序的总长度. 机器语言程序 图5.25 机器语言程序与微程序关系示意图 例:已知某计算机有80条指令 ,平均每条指令由 12条微 指令组成,其中有一条取指微指令是所有指令共用的, 设微指令长度为32位,计算CM容量. 解:微指令所占的二进制位数=(12+7911) 32=88132 所以,CM容量可选1K32 另见教材P.210第6题. 注意

6、: 一条机器指令对应一段微程序,而任何一条机器指 令的取指阶段的操作都是相同的(公操作),所以,通常将公共 的部分提出来,编成一个共用微程序(取指微程序),放在控存 的开始位置. 微指令周期:读出微指令的时间+执行该微指 令的时间, 通常一个微指令周期与一个CPU周期 的时间相等. T1T2T3T4T1T2T3T4 读微指令 执行微指令微指令周期 CPU周期 图5.26 CPU周期与微指令周期的关系 相斥性微命令:不能同时或不能在同一个CPU周期内并 行执行的微命令; 相容性微命令:能同时或在同一个CPU周期内并行执行 的微命令. 例如: P166页双总线CPU结构图中,找相斥性微命令 (1)

7、 将数据送到内部总线的信号(XXo)是相斥的,如 DRo,PCo等; (2) 由内部总线接受数据的信号(XXin)是不存在相斥关系, 但由于两个寄存器同时获得同一数据的可能性不大,因此 算做相斥性命令; (3) 同一部件的同一类操作是互斥的,如对ALU的各种操 作+,-,对内存的读写操作R/W等. 5.5.3 微程序控制器的构成及工作原理 1、微控制器主要由控制存储器(CM)、微指令寄存器 (IR) 、微地址寄存器(AR)、微地址转移逻辑、译码与驱 动电路等几部分组成. 控制存储器(CM):存放实现全部指令系统的微指令, 它是一种ROM. CM的一行表示存放的是一条微指令, 列线输出微指令代码

8、,行列交叉处有黑点表示该位信息 为“1”,否则为“0”. 微指令寄存器(IR) :存放由控制存储器(CM)读出的一 条微指令,其字长与微指令字长相同.微指令通常分为 两大字段:操作控制字段与地址控制字段。操作控制 字段经译码或直接产生一组微命令,控制有关部件完 成微指令规定的微操作。地址控制字段指示下条微指 令地址的形成方式或直接给出下条微指令地址。 微地址寄存器(AR):存放要访问的下一条 微指令的地址. 微地址转移逻辑:不出现分支时, 微地址寄 存器直接给出下一条微指令的地址;当出现分 支时,则需要修改微地址寄存器的值,然后给 出下一条微指令的地址.地址转移逻辑自动完 成修改微地址的任务.

9、 译码与驱动电路:对微地址寄存器中的微地 址进行译码,找到被访问的控存单元并驱动 其进行读取操作。 微地址转移逻辑 微地址寄存器 地址 译码 驱动 IR MDR 译 码 微操作控制字段 顺序控制字段 . 控制存储器ROM 图5.27 Wilkes微程序控制器原理框图 微指令寄存器 微命令 指令操作码 主存RAM MAR PC PSR PSW (1) (2) (3) (4) (5) 从微程序控制器的组成框图可以看出:PC 、IR、PSR等与组合逻辑控制器并无区别, 它们的主要区别在于微操作控制信号形成 部件不同。 组合逻辑控制器中的复杂组合逻辑网络在 微程序控制其中被规整的存储逻辑所替代 。存储

10、逻辑包括存放微程序的控制存储器 及其相关的逻辑。 2、工作原理(上图中所标示的序号表示微程序控 制器的工作过程) (1)执行取指微指令或微程序。机器开始运行时,自动将 取指令微程序的入口微地址(一般为CM的0号单元)送到 微地址寄存器(AR),并从CM中读出相应的微指令送入 微指令寄存器(IR)。取指微程序中各个微命令使CPU访 问主存,将取出的机器指令送到指令寄存器IR,并修改 程序计数器的内容,为下条机器指令准备地址。 (2) IR中机器指令的操作码字段通过“微地址转移逻辑 ”产生与该机器指令功能对应的微程序的入口地址,并 送入微地址寄存器(AR) 。 (5)微地址寄存器中的顺序控制字段及

11、有关状态条件送往 “微地址转移逻辑”,产生下一条微指令的微地址,再读 取并执行下条微指令。如此循环,直到一条机器指令的微 程序全部执行完毕。 (6)执行完一条机器指令的微程序后,回到公用的“取机 器指令”微程序(即,回到CM的0号单元),继续第(1)步。 (3) AR中的微地址经译码、驱动,从被选的控制存储器 单元中取出一条微指令,送入微指令寄存器IR 。 (4) IR中的微操作控制字段经译码或直接产生一组微命令 ,并送往有关功能部件,控制其完成规定的微操作。 5.6 微程序设计技术 主要内容为微指令结构的设计: 微命令编码(微操作控制字段的设计) 微地址的形成(顺序控制字段的设计) 微指令格

12、式:水平型和垂直型微指令 微程序控制器设计的关键问题1)微命令的结构格式 及编码方法,即如何用一个二进制编码字表示各个微命令 ;(2)微程序顺序控制的方法,即如何解决不同机器指令 所对应的微程序的逻辑衔接,保证微程序的连续执行。 5.6.1 微命令编码 即对微指令中的微操作控制字段进行编码的方法。主 要应该考虑:如何有利于缩短微指令字长;如何有利于缩 短微程序;减少所需的控存空间;有利于提高微程序执行 速度。 1. 直接表示法(直接控制法、不译法) 将微指令操作控制字段的每个二进制位定义为一个 微命令,直接送往相应的控制点.选用或不选用某个微命 令时,只要将表示该微命令的对应位置设置成0或1即

13、可, 所以,微命令的产生不需要译码. 顺序控制字段操作控制字段 微操作控制信号 优点:简单直观,执行速度快;微命令的并行控制能力 强,编制的微程序短. 缺点:微指令字太长;空间不能充分利用. 2. 字段直接译码法 将微指令的控制字段分为若干个小字段,将一组互斥的 微命令放在一个字段内, 每种编码对应一种微命令.见下图: 译码译码译码 微命令微命令微命令 微操作控制字段顺序控制字段 v 特点:既缩短了指令字长,又有并行操作的高效率, 执行速度也较快.译码器有时间延迟. 分段原则 相斥性微命令分在同一段内,相容性微命令分在不同 段内; 划分的字段数,与需要并行发出的微命令个数有关, 若需要并行发出

14、8个微命令,就可以分为8段; 每个小段中包含的信息位不能太多,否则增加译码 线路的时间和复杂性. 每段的长度可以不等,与具体要求互斥的微命令个 数有关.如某类操作要求互斥的微命令由6个,则字段 安排3位即可.另外,一般每个小段还要留出一个状态, 表示本字段不发任何现行命令; 3. 混合表示法 以上两种的结合使用:将速度要求高,或与其他控制 信号都相容的微操作控制信号以直接方式表示,其他信号 以编码方式表示。便于综合考虑微指令字长、灵活性和执 行速度方面的要求。 字段1 字段2 字段n顺序控制字段 操作控制 译码译码 微命令 微命令 微命令 IR v例:某机采用微程序控制方式,微指令字长24位,

15、微指 令格式的控制部分为水平型编码;共有微命令30个,构成 4个相斥类,各包含5个、8个、14个和3个微命令。请设 计出微指令控制部分的具体格式。 解:按一般原则分段共4段,使用相应译码器。具体格式 见下图: X X X X X X X X X X X X X 3:8译码器4:16译码器 4:16译码器 2:4译码器 选5个微命令 选8个微命令 选14个微命令 选3个微命令 例:教材P.210第8题。 某机有8条微指令I1I8,每条微指令所包含的微命令 控制信号如下表所示。aj分别对应10种不同性质的微命 令信号。假设一条微指令的控制字段仅限8位,请安排微 指令的控制字段格式。 微指令 a b c d e f g h I j I1 I2 I3 I4 I5 I6 I7 I8 解答:e,f,h两两互斥;b,I,j也是两两互斥。 由此而设计符合要求的微指令控制字段格式如下 : X X X X X X X X 00:无操作 01:e 10:f 11:h 00:无操作 01:b 10:i 11:j 0:无操作 1:a 0:无操作 1:c 0:无操作 1:d 0:无操作 1:g 5.6.2 顺序控制字段的设计 顺序控制字段的作用,是解决微指令执行的顺序控制 问题,即,如何产生后继微指令地址。 首先,看如何

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号