计算机组成第6章_2

上传人:206****923 文档编号:88913421 上传时间:2019-05-13 格式:PPT 页数:68 大小:2.26MB
返回 下载 相关 举报
计算机组成第6章_2_第1页
第1页 / 共68页
计算机组成第6章_2_第2页
第2页 / 共68页
计算机组成第6章_2_第3页
第3页 / 共68页
计算机组成第6章_2_第4页
第4页 / 共68页
计算机组成第6章_2_第5页
第5页 / 共68页
点击查看更多>>
资源描述

《计算机组成第6章_2》由会员分享,可在线阅读,更多相关《计算机组成第6章_2(68页珍藏版)》请在金锄头文库上搜索。

1、1,计算机组成原理教学课件 王 诚 教授 清华大学计算机系 2009年10月,2,6、微程序控制器,6-1 微程序控制器的基本组成 程序计数器 PC 存放指令地址,有 增量 或 接收新值的功能 指令寄存器 IR 存放指令内容:包括指令操作码与操作数地址两部分 微指令下地址逻辑 形成并提供出读控制存储器要使用的微指令的地址,其作用与硬连线控制器的节拍发生器有些类同。 控制存储器和微指令寄存器 控制存储器用于保存由全部微指令构成的微程序,读控制存储器得到的微指令将首先存入微指令寄存器,之后才能送到各被控制部件,这一部分的作用与硬连线控制器的控制信号产生部件有些类同。,3,微程序控制器基本组成框图,

2、控制存储器 (存放微程序),微指令字,微指令寄存器,下地址逻辑,控存地址,下地址字段,微命令字段,指令寄存器 IR,程序计数器 PC,影射,指令操作码,条件信号,Clock,微命令 (控制信号),4,微程序控制器的基础知识,用多条微指令“解释执行”每条机器指令的执行过程。一条微指令控制各部件执行指令的一个执行步骤应完成的功能,执行一条微指令所用的时间被称为一个微周期,相当于硬连线控制器的一个节拍时间。 微指令需要具备如下两项功能: 提供机器指令的一个执行步骤所需要的控制信号 (微命令),以控制各部件执行该步骤的操作功能; 提供下一条待用微指令的地址,以便自动有序地读出后续的一条微指令,解决指令

3、各执行步骤之间正确的衔接关系。为此微指令中要有两部分信息。 全部微指令的集合构成一台计算机的完整的微程序,保存在控制存储器中。,5,微程序控制器的运行原理,用“解释执行”每条机器指令的执行过程多条微指令组成 一个(段) 微程序,解释执行所有指令的全部微程序保存在控制存储器中,该存储器用 ROM 芯片实现,仅提供读操作功能。读控制存储器需要用微指令的地址,如何提供得到这个地址的相关信息和实际值是微程序设计的重要工作。 从控制存储器读出来的是一条微指令,包括微命令字段和微指令下地址信息字段两部分,读出的微指令将经过微指令寄存器送到被控制部件实现控制,以确保把本条微指令的控制过程与读出下一条微指令的

4、操作在时间上重叠起来,提高微程序的运行效率。,6,微程序控制器的组成与运行原理,微指令中的微命令字段用于控制计算机各部件的执行功能和动作过程,因此又可以被划分为多个子字段,各子字段用于不同的部件、不同的执行功能、不同的数据选择等,有多种的划分和组合方式。 微指令中的下地址信息字段用于提供形成下一条微指令地址的信息,每条微指令中都要有这段信息。因为读控存经常不是按微指令在控存中的存放次序顺序进行,还要用专门的硬件 (下地址逻辑)快速得到微指令地址,需要在下地址字段给出必要的信息。 在机器指令的程序中,顺序执行的概率要高得多,只在不是顺序执行时才需要提供指令地址。 下面会详细对这两个字段的内容组成

5、进行解释。,7,6-2 微指令下地址字段与指令执行步骤,用多条微指令“解释执行”每条机器指令的执行过程,每条微指令对应指令的一个操作步骤。指令之间、指令执行步骤之间的衔接关系要通过微程序控制器中的下地址逻辑部件来解决。 取指操作公用于所有指令,每条指令都从取指开始,一条指令执行结束后,将自动进入下一条指令的取值过程,以确保指令之间的连续运行。 取出指令后,要找到解释这条指令执行过程的微程序段,可用指令的操作码映射出这个微程序段的首地址,用其读控存就有了首条微指令的内容,其下地址字段中有得到再下一条微指令地址的信息,为继续读出下一条微指令做好了准备,以确保指令执行步骤之间正确的衔接关系。 指令执

6、行步骤的衔接关系表现为读取微指令的次序,下地址逻辑部件用于解决这个次序关系。,8,微指令下地址字段与指令执行步骤,指令执行步骤的衔接关系表现为读取微指令的次序,下地址逻辑部件用于解决这个次序关系,因此下地址字段的内容和每条 (段) 微指令在控制存储器中的位置有关。怎样分配每条微指令到控制存储器的一个存储单元中是很有学问的,它会影响到控存的存储容量(字数,减少所用的控存字数是设计的目标之一。 有效办法是尽量找出多条指令所使用的内容完全相同的微指令, 并只安排一条供这多条指令分时共享,条件是通过合理地安排相关微指令的下地址的内容使其成为可能。而在硬连线控制器中,原理上每条指令的每一个执行步骤都会在

7、指令流程表中占一个横行,通常不会出现内容全相同的多个横行。,9,把微程序安排到控制存储器中,最简单的原理性办法 取指用的微指令 按指令操作码分支 解释 指令0 的微程序 解释 指令1 的微程序 解释 指令n 的微程序 检查中断请求的微程序 响应中断请求的微程序,无,有,适当优化设计 找出多条指令用到的相同内容的微指令或微程序段, 归并为一条共用,减少控存字数; 设计更好的下地址信息组成,提供尽可能多的微指令衔接方式; 用不同的微命令字段控制不同的对象,提高各部件并行运行能力,通过译码产生互斥命令,缩短微指令字长。,顺序方式,功能分支,条件转移,无条件转移,无 条 件 转 移,10,下地址的形成

8、方式和必要信息,有多种得到下条微指令地址的方式: 顺序执行时,下地址为本条微指令地址1; 无条件转移时,可以在微指令的下地址字段直接给出这一转移地址; 条件转移时,按条件选择顺序执行或转向某一地址,下地址字段要给出转移条件和微转移地址; 多路转移时,下地址要从多个微指令地址中选择; 微子程序调用与返回,要使用到微堆栈; 根据指令操作码分支时,一般通过专门硬件映射指令操作码为该指令对应的微程序入口地址实现。 综上所述,需要在下地址字段中提供得到下地址的方式,用到的微转移判断条件,微指令的地址值等信息,要和下地址逻辑的硬件线路组成相吻合。,11,8 位微下地址字段可以访问 256个字 的控存空间

9、,用于直接给出下一条微指令的地址,如微指令的转移地址 等,微指令中的下地址字段的信息,例如可以分成 3 个子字段,总共提供 16位 的信息,4 位的形成下地址方式编码可以给出 16种 选择,如顺序执行、条件转移、微子程序调用与返回、从某一固定地址开始、循环执行与结束、按照指令操作码进行功能分支 等。,4 位的转移条件可给出 16种 不同的条件或组合,用于指出微指令转移所依据的条件,为真则转移、否则顺序执行,微指令字的下地址字段有多种组织方案,各有长短,,12,微命令字段用于向计算机各个部件提供它们运行所需要的控制信号,这些信号的组成是由被控制部件 (运算器、存储器和 IO 接口、总线等) 运行

10、需求决定的。以教学计算机为例,同样的指令系统,类同的执行部件组成,会要求微程序控制器与硬连线控制器二者提供基本相同的控制信号。对控制器部件本身的控制则有很大不同,硬连线控制器主要是控制节拍发生器的状态转换,微程序控制器主要表现为控制微指令的下地址逻辑线路。 微命令字段的信息位数可能较多,又有不同的使用要求,相应的就有多种处理和组合这些控制信号的方案,适当减少微指令字长、提高微指令并发控制能力是需要重点解决的问题之一。,6-3 微指令中微命令字段的内容,13,直接控制法 直接用微指令字的一位作一个控制信号,简单且速度快,但会使微指令字变得很长。,微指令格式和字段划分设计,微指令字,下地址字段,微

11、命令字段,控制信号,常数源字段 有点类似于指令中的立即数字段,位数不多,提供一个常数值,用来控制微程序循环次数等。,常数值,14,微指令格式和字段划分设计,微指令字,控制信号,下地址字段,微命令字段,字段直接编译法 把互斥的控制信号分在一组加以编码,经译码器给出控制信号,确保互斥,速度会稍慢,但可大大减短微指令字长度。,译 码 器,字段间接编译法 微命令的一个字段的某些微命令还受另一字段制约,是对直接译码的一种改进,可进一步缩短微指令字长度。,15,微程序控制器特点,采用 ROM 存储控制信号 可扩展性好,系列机的兼容性易实现 容易实现复杂的指令系统 性能比较低 并行性不太好 主要用在 CIS

12、C 中,16,组合逻辑与微程序控制器比较,相同点 完成相同的控制功能,控制信号基本相同 组成部分都有程序计数器 PC,指令寄存器 IR 都分成几个步骤完成一条指令的具体功能 不同点 控制信号生成方式不同 组合逻辑:由组合逻辑电路直接给出所需要的控制信号 微程序: 需要的控制信号是从控制存储器中读出来的,并经过一个微指令寄存器送到被控制部件 指令步骤标记实现方式不同 组合逻辑:节拍发生器状态指明指令执行步骤 微程序: 通过微指令的地址来解决指令执行步骤 性能和设计实现难度不同 组合逻辑:优点是运行速度快,缺点是设计与实现复杂 微程序: 缺点是运行速度慢,优点是设计与实现简单,17,控制 存储器,

13、映射,IR,PC,接口 输出 设备,主存 储器,运算器 部件,下地址逻辑,启停,地址寄存器,数据总线,地址总线,控制总线,.,控制条件,微指令寄存器,主振,选用微程序控制器的教学机组成,接口 输入 设备,微命令,下地址,18,7、指令的执行过程与控制,冯. 诺依曼结构的计算机,即存储程序计算机,设置内存,存放程序和数据,在程序运行之前存入。 执行程序: 正确从程序首地址开始; 正确分步地执行每一条指令, 还要形成下条待执行指令的地址; 并保证自动地连续执行指令, 直到结束程序的最后一条指令。 从主存储器读来一条指令,分析指令,按指令的功能要求完成执行过程,本条指令完成后自动开始下一条指令的执行

14、过程,由硬件本身完成。,19,当前的RISC系统中,流行的做法是把一条指令的执行过程划分为如下的 5 个阶段,是由指令的功能和计算机硬件结构共同决定的,有内在的逻辑关系。 读取指令 (IF),从存储器读来指令并形成下邻指令地址 指令译码 (ID),指令译码,读寄存器堆为 ALU准备数据 执行运算 (EXE),ALU 执行数据运算或计算存储器地址 存储器读写 (MEM),完成存储器的读操作或者写操作 写回 (WB),写ALU的结果或存储器读出数据到寄存器堆 从如何为不同指令安排这几个步骤,几个步骤如何衔接考虑,大体有 3 种可行方案,各自都对计算机的内部结构、部件设置及其控制方式有着不同要求。,

15、指令的执行步骤,20,计算机一条指令的执行时间被称为指令周期,一个CPU时钟时间被称为 CPU周期 (在某些计算机中,还可再把一个CPU周期区分为几个更小的步骤,称其为节拍)。执行每条指令平均使用的 CPU周期个数 被称为 CPI。 全部指令都选用相同执行时间完成的系统被称为单周期CPU,指令周期取决于用时最长的指令,例如每条指令都用 5个步骤的时间完成,控制各部件运行的信号在整个指令周期不变化,因此每个部件在一个指令周期中只能执行一项操作,系统性能和资源利用率很低,原理正确但不实用。,指令执行步骤-单周期CPU,21,计算机一条指令的执行时间被称为指令周期,一个CPU时钟时间被称为CPU周期

16、。 依据不同指令各自的功能需求为其选择不等的执行步骤的系统被称为多周期CPU ,控制各部件运行的控制信号随着指令执行步骤改变,同一个部件可以在不同的执行步骤完成不同的操作,系统性能和资源利用率更高。相邻指令可以完全串行执行,也可能部分时间重叠,更实用。,CPU时钟,CPI 4,指令执行步骤-多周期CPU,22,全部指令都是选用5个步骤完成,执行时间相同,但相邻指令的执行并不是完全串行的,执行时间有所重叠,例如每结束指令的一个执行步骤就启动下条指令,这被称为指令流水线技术, 所有部件都高速运行,尖峰速度每个 CPU时钟 执行一条指令,系统性能和资源利用率更高,显著地提高系统的性能价格比,但计算机

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

当前位置:首页 > 中学教育 > 其它中学文档

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