版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.,第6章 控制系统与CPU,控制器的功能与组成 控制方式与时序系统 CPU的总体结构 组合逻辑控制器设计 微程序控制器设计,.,6.1 控制器概述,指令执行的基本步骤 取指令 分析指令 执行指令,根据指令地址(PC提供),从存储器中取出所要执行的指令到指令寄存器IR。,对指令进行译码分析,确定指令应完成的操作,产生相应操作的控制电位来参与形成该指令功能所需要的全部微操作控制信号。 根据寻址方式的分析和指令功能要求,形成操作数的有效地址,并按此地址取出操作数据或形成转移地址。,根据操作控制信号和形成的有效地址,按一定的算法形成指令操作控制步序列,控制有关部件完成指令规定的功能。 一条指令执行结
2、束,若没有异常情况和特殊请求,则顺序取出并执行下一条指令。,.,启动,取指令 PC增量PC 分析指令,寻址?,计算有效地址,转移指令?,取操作数,执行指令,保存结果,转移地址PC,异常情况或特殊请求?,转去处理,N,Y,Y,N,Y,N,指令执行的一般过程,.,2. 控制器的基本功能,控制指令的正确执行 取指令、分析指令、执行指令 控制程序和数据的输入及结果的输出 异常情况和特殊请求的处理 中断、数据请求,.,需解决的一些问题,指令的流出控制(取指令),从主存中取出所要执行的指令。基本步骤如下: (PC) MAR,读主存 (PC)增量 PC (MDR) IR,.,分析指令(译码) 形成地址 操作
3、数地址的形成寻址方式 指令地址的形成顺序、转移 时序控制 计算机的解题过程是指令序列的执行过程(程序控制),是微操作(一些简单基本的操作)的执行过程(指令控制)。 有些微操作可以同时进行,有些必须按严格的时间顺序进行。因此必须对各个微操作在时间上加以控制,为各个微操作进行定时。,.,微操作控制 不同指令完成不同的功能,控制器必须对不同的指令在不同的时间,产生一组不同的控制信号,以控制计算机各部件完成不同的操作。所以,每一条指令都对应一组唯一的操作控制信号序列,控制其微操作序列的实现。,.,微操作控制信号形成部件,时序信号发生器,指令译码器ID,启停电路,控制台,脉冲源,中断机构,程序状态寄存器
4、,通用寄存器组,程序计数器PC,微操作控制信号 ,至MAR,至MAR或ALU,.,指令寄存器IR,3. 控制器的组成,地址形成部件,I/O状态信息,DB AB,.,4. 控制器的组成方式,主要指微操作控制信号形成部件的组成方式 组合逻辑型(硬联逻辑/硬布线逻辑) 优点速度快 缺点微操作信号发生器结构不规整,设计、调试、维修较困难,难以实现设计自动化。一旦控制部件构成之后,无法增加新的控制功能。,., 存储逻辑型微程序控制器,用存储逻辑来实现的,将微操作控制信号代码化,每条机器指令对应一段微程序,存于控制存储器中,微操作控制信号由微指令产生。 优点设计规整,调试、维修以及更改、扩充指令方便的优点
5、,易于实现自动化设计,已成为当前控制器的主流。 缺点由于它增加了一级控制存储器,所以指令的执行速度比组合逻辑控制器慢。,., 组合逻辑和存储逻辑结合型,PLA控制器,实际上也是一种组合逻辑控制器,但它的程序可以编制,某一微操作控制信号由PLA的某一输出函数产生。 PLA控制器是组合逻辑技术和存储逻辑技术结合的产物,它克服了两者的缺点,是一种较有前途的方法。,.,6.2 控制器的控制方式与时序系统,时序系统 控制器的心脏,为指令的执行提供各种定时信号。通常,设计时序系统主要是针对同步控制方式的。 指令周期与机器周期 指令周期完成一条指令所需的全部时间 取指令、分析指令、执行指令 机器周期(CPU
6、周期/基本周期) 指令周期中某一工作阶段(基本操作)所需的时间。在指令执行过程中,各机器周期相对独立。,.,不同指令的指令周期和机器周期,一般指令(加法),空操作/无条件转移,乘法指令,.,具有间接寻址的指令周期,.,每个机器周期设置一个周期状态触发器与之对应,机器运行于哪个周期,与其对应的周期状态触发器被置为“1”。 任何时刻都只能建立一个周期状态,因此同一时刻只能有一个周期状态触发器被置为“1”。 不同机器周期所占的时间可以不等。CPU内部操作速度快,而CPU访存所花时间较长,所以许多计算机系统往往以主存周期为基础来规定机器周期。,., 节拍,一个机器周期内要完成若干个微操作,这些微操作有
7、一定的先后次序。 因此在同步控制方式中,把一个机器周期等分成若干时间区间节拍,一个节拍对应一个电位信号,控制一个或几个微操作的执行。 一个节拍电位信号的宽度取决于CPU完成一个基本操作的时间。 节拍提供了一项基本操作所需的时间分段。,., 脉冲(定时脉冲),有些操作需要严格确定在哪一时刻进行;节拍的切换,也需要严格的同步定时,所以在一个节拍内需要设置一个或几个工作脉冲,用于寄存器的复位和接收数据等。 常见的设计是在每个节拍的末尾发一次工作脉冲,脉冲前沿用来打入/传送运算结果,脉冲后沿则实现周期切换。,.,周期、节拍、脉冲构成了三级时序系统。 图中包括两个机器周期M1、M2 每个周期包含四个节拍
8、W0W3 每个节拍内有一个脉冲P。,M1 M2 W0 W1 W2 W3 P,.,2. 控制方式,同步控制 异步控制 联合控制 同步控制方式 任何指令的运行或指令中各个微操作的执行,均由确定的具有统一基准时标的时序信号所控制。,.,典型的同步控制以微操作序列最长的指令和执行时间最长的微操作为标准,把一条指令执行过程划分为若干个相对独立的阶段(周期)或若干个时间区间(节拍),采用完全统一的周期(或节拍)控制各条指令的执行。 优点时序关系简单,控制方便 缺点浪费时间(比较简单的指令有很多节拍是不用的,处于等待),例:某系统有4条指令,对应的微操作序列分别为10、12、7、5,每条指令中最长的微操作时
9、间分别为2、1、4、6,则划分周期时,以微操作序列=12的指令为标准,划分节拍时,以时间=6的微操作为标准。,.,常用的同步控制方法,(1)采用中央控制与局部控制相结合的方法 中央控制:对节拍的统一控制 根据大多数指令的微操作序列情况,设置一个统一的节拍数,使大多数指令均能在统一节拍内完成。 局部控制:对节拍的延长控制 少数在统一节拍内不能完成的指令,采用延长节拍或增加节拍数,使之在延长节拍内完成,执行完毕再返回中央控制。,.,例:某计算机的指令通常用8个节拍完成,即8个中央节拍 W0W7,当某指令在8个节拍中不能完成时,就插入若干局部节拍W6*,之后再返回中央节拍 W7。,指令周期,.,(2
10、)采用不同的机器周期和延长节拍的方法,把一条指令执行过程划分为若干机器周期。执行不同指令选取不同的机器周期数。 在节拍安排上,每个周期划分为固定的节拍,每个节拍都可根据需要延长/增加。,例:在Intel 8088/8086的指令执行过程中有读写周期、内部周期等,其中读写周期为4个节拍,但若读写过程不能如期完成,可以延长若干个节拍。,.,(3)采用分散节拍的方法,分散节拍 运行不同指令时,需要多少节拍,时序部件就发生多少节拍。 优点可完全避免节拍轮空,提高指令运行速度 缺点使时序部件复杂化,还不能解决节拍内简单的微操作因等待所浪费的时间,., 异步控制方式,无统一的同步信号,采用问答方式进行时序
11、协调,将前一操作的回答信号作为下一操作的启动信号。 优点时间无浪费,效率高 异步控制方式不仅要区分不同指令对应的微操作序列长短,而且要区分每个微操作的繁简,每条指令、每个微操作需要多少时间就占用多少时间。 缺点设计复杂,使用设备多,., 联合控制方式,将同步控制和异步控制相结合 功能部件内部采用同步方式或以同步方式为主的控制方式; 功能部件之间采用异步方式。 现代计算机大多数都采用联合控制方式。,例:在微机系统中,CPU内部基本时序采用同步控制,当通过总线与主存或其他外设交换数据时,采用异步控制方式。,.,6.3 CPU的总体结构,CPU组成包含运算器和控制器。 CPU的主要功能 程序控制保证
12、程序按所要求的次序正确执行 操作控制产生每条指令所需的操作控制信号序列,送往有关部件,控制完成指令所规定的操作 时序控制对各微操作实施时间上的控制,使计算机有条不紊地连续自动工作 数据加工对数据进行算术/逻辑运算处理,.,1. CPU寄存器的设置,在CPU中一般都设置下列寄存器 指令寄存器 IR 程序计数器 PC 累加寄存器 AC 程序状态寄存器 PSR 地址寄存器 MAR 数据/缓冲寄存器 MDR/MBR 通用寄存器程序可以直接访问的多功能寄存器 暂存器程序不能直接访问,用于暂存操作数据或中间结果的寄存器。,.,2. 数据通路结构及指令流程分析,1) 数据通路 CPU内部信息传送的基本路径。
13、通常指运算器与寄存器之间的信息传输通道。 数据通路规定了各种信息的传送路径,它直接影响着指令执行步骤的安排。 指令流程的决定因素 (1) 总线结构(4) 寻址规则 (2) 数据通路(5) ALU功能 (3) 指令功能,.,2)指令流程分析 ADD(R1),R0 R1源操作数地址,R0目的地址 R1采用寄存器间接寻址,R0采用寄存器寻址。,PC,R1,+,内存,指令,XX,.,IROUT,单总线结构,(1)(PC)MAR,Read,PCY,(2)MMDRIR,(Y)+1Z,(3)(Z)PC,(4) (R1)MAR, Read,(5) MMDRY,(6)(Y)+(R0)Z,R1,(7)(Z) R0
14、,.,双总线模型机,指令系统 指令格式 双操作数指令,.,转移类指令 转移指令采用相对寻址:转移地址= (PC)+D D采用补码,进行运算时,需进行符号扩展 转子指令操作: (SP)-1SP,PC(SP),(PC)+DPC,., 指令系统,.,.,2. 寄存器 (16位),.,3. 寻址方式,.,除自减型寄存器间址不能使用PC外,其余寻址方式可以使用所有可编程寄存器。 自增型寄存器间址中 若Rn=SP,则(SP)+为弹出堆栈的寻址 若Rn=PC,则(PC)+为立即寻址,立即数在该指令的下一单元 自减型寄存器间址中 若Rn=SP,则-(SP)为压入堆栈的寻址,.,变址寻址中的变址值X,存放在指令
15、的下一单元。 需两次访存,第一次取指令,第二次取X。取X执行以下微操作序列: (PC)MAR,Read ;送X的地址,读X (PC)+1PC;PC增量 MMDRY;取X值到Y (Y)+(Rn)MAR ,Read ;形成有效地址,读操作数 变址寻址中,若Rn=PC,则为相对寻址,.,ADD (R1), R0,指令码 0001 001 001 010 000 功能(R0)+(R1)R0 ALUA+B,A+1,源地址,目的地址,指令功能,.,双总线结构,GON,(1)(PC)MAR,Read,(2)(PC)+1 PC,(3) MMDRIR,(4) (R1)MAR, Read,(5) MMDRY,(6
16、)(Y)+(R0) R0,发送总线,接收总线,GON,.,SUB X(R1), (R2)+,指令码 0010 100 001 001 010 功能(R2)-(R1)+X)(R2) ALUA+B,A-B,A+1,源地址,目的地址,指令功能,.,指令执行示意,PC,R1+X,-,内存,指令,源数1,X值,PC+1,源数2,+,R2,.,双总线结构,GON,发送总线,接收总线,(1)(PC)MAR,Read,(2)(PC)+1 PC,(3) MMDRIR,(4)(PC)MAR,Read,(5)(PC)+1 PC,(6) MMDRY,(7)(Y)+(R1)MAR,Read,(8) MMDRTEMP,(
17、9)(R2)MAR, Read,(10)(R2)+1R2,(11)MMDRY,(12)(Y)-(TEMP)MDR,(13)MDRM,Write,.,JC D,指令码 1011 XXXXXXXXXXXX 功能进位C=1, (PC)+位移(PC) ALUA+B,A+1,位移量,指令功能,.,双总线结构,GON,发送总线,接收总线,.,6.5 组合逻辑控制器的设计,基本原理 根据每条指令的操作序列列出每步操作所需的控制信号 对每个控制信号进行综合、归纳、化简,得到每个控制信号的逻辑表达式 F(指令、时序信号、状态条件) 用大量门电路构成的组合逻辑网络实现,.,2. 组合逻辑控制器的设计步骤,分析指令
18、的执行步骤,绘制指令操作流程图 确定指令执行的具体步骤,决定所需的控制命令 编排指令操作时间表 把各微操作具体落实到各机器周期的相应节拍和脉冲中,并以微操作控制信号的形式编排成一张表 进行微操作综合 对各微操作控制信号按其条件进行归纳综合,并进行适当的调整化简,得到比较合理的逻辑表达式,.,设计微操作控制信号形成部件 根据各个微操作控制信号的逻辑表达式,用硬件逻辑电路加以实现。 实现方法 根据逻辑表达式画出逻辑电路图,用组合逻辑网络实现 直接根据逻辑表达式用PLD器件如PLA、PAL、GAL等实现。,.,组合逻辑控制器的基本结构,控制信号函数:F(指令、时序信号、状态条件),控制信号形成电路
19、(组合逻辑网络),.,组合逻辑控制器设计例,某系统有4条指令MOV/ADD/SUB/INC 每条指令平均为4个机器周期T0T3 每个机器周期为4个节拍W0W3 每个节拍一个脉冲,若某控制信号X出现在MOV和ADD的第二周期T1的第三节拍W2,以及SUB和INC的第四周期T3的第一节拍W0,则,X=MOVT1W2+ADDT1W2+SUBT3W0+INCT4W0,.,6.6 微程序控制器设计,微程序控制的概述 例:在模型机上执行指令ADD (R0), R1 指令流程 控制信号序列 (PC)MAR, Read, (PC)YPCB, F=B, FMAR, Read, FY (Y)+1PC F=A+1,
20、 FPC (MDR)IRMDRB, F=B, FIR (R0)MAR, ReadR0B, F=B, FMAR, Read (MDR)YMDRB, F=B, FY (Y)+(R1)R1R1B, F=A+B, FR1,.,微程序控制的基本原理,存储把一条指令的微操作序列,以二进制编码字(微指令)的形式编制成程序(微程序),存放在一个存储器(控制存储器)中。 执行依次读取一条条微指令,产生一组组操作控制信号,完成一组组微操作,从而完成一条指令的功能。 每一条指令对应着一段微程序,执行相应的微程序,完成指令的功能。,.,微程序设计实质是将软件设计技术应用到硬件设计中。 优点应用灵活,控制规整,便于计算
21、机设计自动化,易于修改和扩充。,.,1)基本概念,微命令控制信号序列的最小单位,指直接作用于部件或控制门电路的控制命令。如PCB、F=B、FMAR等控制信号都称为微命令。 微操作由微命令控制实现的最基本的操作。如微操作(PC)MAR 、(MDR)IR等。 微指令控制完成一组微操作的二进制编码字,用以产生一组微命令。 微程序一系列微指令的有序集合称为微程序。,.,微周期从控制存储器中读取一条微指令并执行相应的微操作所需的时间,通常取一个时钟周期。 控制存储器(CM)存放微程序的存储器,也称为微程序存储器。,.,2)微程序控制器的模型及其工作过程,微指令寄存器,每个单元存放一条微指令代码,图中每条
22、横线表示一个单元,其中每个交叉点表示微指令的一位,有“”表示该位为1,无“”表示该位为0,存放从控存中取出的微指令 操作控制字段译码产生一组微命令或直接产生一组微命令 地址控制字段指示下条微指令地址或地址形成方式,产生起始微地址和后继微地址,保证微程序的连续执行,接收微地址形成电路送来的控存地址,对微地址寄存器中的微地址进行译码,找到被访问的控存单元 驱动控存单元进行读取操作,读取微指令并存放于微指令寄存器中,.,3)微程序执行过程(微程序控制器的工作过程),启动取指令微程序 (PC)MAR,读出机器指令IR,PC增量 根据IR中的指令码,通过微地址形成电路产生该指令的微程序的起始微地址,并送
23、入MAR中。 MAR中微地址经译码驱动,从被选的控存单元中取出一条微指令并送入IR。 微指令的操作控制字段经译码产生或直接产生一组微命令送往有关的功能部件。,.,微指令的地址控制字段及有关状态条件送往微地址形成电路,产生下条微指令地址。 循环,直到一条机器指令的微程序全部执行完毕。 循环,直到所有指令全部执行完毕。,.,4)微程序控制机器的两个层次,高级语言层(虚机器),汇编语言层(虚机器),操作系统层(虚机器),传统机器语言机器(实机器),微程序机器层(实机器),硬件操作时序(实机器),应用语言层(虚机器),第6级 第5级 第4级 第3级 第2级 第1级 第0级,软硬件交界面,使用机器语言的
24、程序员用机器指令编程序,完成某一任务。程序存放在主存储器中。,硬件设计者用微指令编微程序,用以完成一条机器指令的功能。微程序存放在控制存储器中。,.,5)微程序控制器说明,在组合逻辑控制器中,一条指令的功能是直接由硬件解释实现的;而在微程序控制器中,指令的功能是由微程序解释实现的。 微程序实质上定义了机器的指令系统。只要修改控存中的微程序,就可以修改机器的指令系统,在相同的硬件中实现不同的指令系统。 一条指令可能多次访问控存,所以控存的速度直接影响机器的速度,常由快速的ROM组成。,.,微程序控制器设计的关键,微指令的结构格式及编码方法 如何用一个二进制编码表示和产生各个微命令 微程序的寻址微
25、程序的顺序控制 同一机器指令中微指令之间的衔接 不同机器指令所对应的微程序之间的逻辑衔接 微指令执行方式 解决如何提高微指令的执行速度的问题,.,2. 微指令的编译方法,解决问题微指令的格式和译码 如何对微指令的操作控制字段进行编码来表示各个微命令 如何把编码译码成相应的微命令 设计微指令的结构格式时主要考虑的问题 如何有利于缩短微指令字长 如何有利于缩短微程序,减少所需的控存空间 如何有利于提高微程序执行速度,.,1)直接控制法(不译法),微指令操作控制字段的每一位都直接表示一个微命令,该位为“1”,表示执行这个微命令,为“0”表示不执行该微命令。 优点结构简单,并行性强,操作速度快 缺点微
26、指令字太长,信息效率低,例:某模型机中共有35个微命令,因此微指令的操作控制字段长度应为 。,35位,.,2)最短编码法,将所有的微命令进行统一编码,每条微指令只定义一个微命令。 若微命令总数为N,操作控制字段的长度为L,则 Llog2N 优点微指令字长大大缩短 缺点1)通过译码才能得到微命令 2)各微命令不能并行,使微程序很长,例:某模型机中共有35个微命令,因此微指令的操作控制字段长度应为 。,6位,.,3)字段直接编码法,将微指令操作控制字段划分为若干个子字段 子字段内的所有微命令统一编码最短编码 不同子字段表示不同的微命令直接控制,.,子字段的划分原则 互斥的微命令划分在同一字段内,相
27、容的微命令划分在不同字段内。 字段的划分应与数据通路结构相适应。 每个子字段留出一个编码状态表示本字段不发任何微命令。 每个子字段所定义的微命令数不宜太多。,.,例:某模型机的CPU内部结构图如下所示。假设每次仅有一个寄存器可接收数据,即CPR0、CPR1、CPR2互斥。 (1)用字段直接编码方法设计微指令的操作控制字段。 (2)写出下列微操作对应的微指令 (R0)+(R1)R1 2(R0)-(R1) R2,加法器,C0,A 选 择,R0A R1A R2A,B 选 择,R0,R1,R2,CPR0,CPR1,CPR2,ADD INC,分析: 互斥部分 移位器3控制互斥 加法器2控制互斥 A选择器
28、3控制互斥 B选择器6控制互斥 寄存器接收3控制互斥 相容部分 进位C0,互斥5部分都相容,2位 2位 2位 3位 2位,.,操作控制字段格式,00-直送 01-左移 10-右移,00-ADD 01-INC,00-R0A 01-R1A 10-R2A,00-CPR0 01-CPR1 10-CPR2,0-C0=0 1-C0=1, (R0)+(R1)R1,R0A,R1B,ADD,直送,CPR1,C0=0,操作控制字段 00 00 00 001 01 0, 2(R0)-(R1) R2,R0A,ADD,左移,CPR2,C0=1,操作控制字段 01 00 00 100 10 1,.,4)字段间接编码法,一
29、个字段的编码不能直接独立地定义微命令,必须与其它字段的编码联合,它的意义由另一字段的编码来定义。,.,5)常数源字段的设置,微指令字中通常还设置一个常数源字段,类似于指令字中的立即数,用来提供某些常数(置计数器初值、为某些数据提供修改量),配合形成微程序转移微地址等。,.,除上述编码方法外还有一些其它方法,如分类编码法(将机器指令根据操作类型分为几类,不同的指令可以采用不同的微指令格式)。 实际机器中,微指令往往采用混合编码方法,如有些位采用直接控制方法,有些字段采用字段直接编码或字段间接编码,有些位作为常数源字段。,.,3. 微程序的顺序控制方式,每一条指令对应一段微程序,不同指令的微程序存
30、放在控制存储器的不同存储区域内。 微程序顺序控制 微程序如何存放初始微地址的形成 微程序如何执行后继微地址的形成,(地址控制),即微程序的入口地址,指令所对应微程序的第一条微指令所在控制存储器单元的地址。,即下一条要执行微指令所在控制存储器单元的地址。,.,1)初始微地址的形成,每一条机器指令的执行,都必须首先进行取指令操作由取指令微程序,控制从主存中取出一条机器指令。 取指令微程序是公用的,一般安排在从0号控存单元或其它特定的控存单元开始。 机器指令从主存取到IR以后,要由机器指令操作码转换为该指令所对应的微程序入口地址,即形成初始微地址。,.,初始微地址的形成方式,一级功能转移 根据指令操
31、作码直接转移到相应微程序的入口 适用于当指令操作码的位置与位数均固定时,可直接用操作码作为低位微地址。,OP码,高位,入口微地址,由设计者指定,.,例:假设控存共32个单元,模型机有4条指令,取指微程序,一级功能转移,00:ADD,01:SUB,10:MOV,11:HLT,入口微地址,MAR42=001,00100,00101,00110,00111,., 二级功能转移,转移步骤 第一级按指令类型标志转移,区分出是哪一类指令(设类型标志在指令中位置和位数是固定的) 第二级按操作码区分出具体是哪条指令,转移到相应微程序入口 适用于机器指令的操作码的位数和位置不固定,.,取指微程序,一级功能转移,
32、二级功能转移,二级功能转移,二级功能转移,DR,ADD,SUB,单操作数,双操作数,MOV,二级功能转移示意,(按指令类型标志转移),(按操作码转移),., 用PLA电路实现功能转移,PLA的输入指令操作码 PLA的输出相应微程序入口地址 特别适用于变长度、变位置的操作码,转移速度快,.,例:I1、I2、I7 8条指令,其操作码分别为000、001、111,对应的微程序入口地址分别为020H、031H、146H。用PLA实现初始微地址的寻址。,与阵列,0 0 1,0 0 1 1 0 0 0 1,.,2)后继微地址的形成,微程序运行 初始微地址执行微指令形成后继微地址 后继微地址的形成方法 增量
33、方式 断定方式,., 增量方式,顺序执行时 后继微地址=现行微地址+增量(通常为1) 增设微程序计数器PC,(PC)+1PC 微程序控制器中可将MAR与PC合二为一 (MAR)+1MAR 转移或转子程序时 由微地址形成电路产生转移微地址 由微指令的地址控制字段产生转移微地址,.,增量方式下微指令格式,转移控制字段 规定地址的形成方式,转移地址字段 提供转移地址,.,CZ:结果为0标志 CC:进位标志 CT:循环计数器 RR:返回地址寄存器,.,微地址控制原理框图,0,1,., 断定方式,采用断定方式的后继微地址一般由两部分组成 非因变分量由设计者直接指定的部分,一般是微地址的高位部分。 因变分
34、量根据判定条件产生的部分,一般对应微地址的低位部分。 断定方式可以实现快速多路转移,但编制微程序时地址安排比较复杂,微程序执行顺序不直观。,在实际机器中,往往增量方式与断定方式混合使用。,.,例:某机的微指令格式为:,(A、B为判定条件),微地址高位,(MAR),若,MAR,00101,T1,T4,.,例 6.4 已知某计算机采用微程序控制方式,其控制存储器的容量为51232bit。微程序可以在整个控制存储器中实现转移,可控制微程序转移的测试条件有6个,采用直接控制,后继微指令地址采用断定方式,格式如下:,请说明微指令中3个字段分别应为多少位。,解:1)下条指令的微地址应当为_ 2)每个判定条
35、件占1位,则测试条件字段需_ 3)微操作编码_,9位,6位,17位,.,4. 微指令的执行方式,执行一条微指令的过程 将微指令从控制存储器中取出取微指令 执行微指令规定的微操作执行微指令 根据取后继微指令和执行现行微指令之间的时间关系,微指令有两种执行方式 串行执行 并行执行,.,1)串行执行方式,取微指令和执行微指令是顺序、串行执行的,一条微指令取出并执行完毕后,才能取下一条微指令。,.,2)并行执行方式,将取指令操作和执行微指令操作重叠起来。 取微指令控存 执行微指令数据通路 在执行本条微指令的同时预取下一条微指令。,.,假设取微指令时间比执行微指令短,因而将执行微指令时间作为微周期。,并
36、行方式执行速度比串行快,设备效率高,但控制也更加复杂。 微指令的预取可能会无效,如有时需在微周期末尾根据运算结果特征转移,若转移成功,预取的微指令无效。,.,5. 微程序设计方法,微指令格式的设计是微程序设计的主要部分它的设计和指令设计一样,除了要实现计算机的整个指令系统之外,还要考虑具体的数据通路、控存速度以及微程序编制等因素。 微指令格式通常可分为两大类 水平型微指令 垂直型微指令,.,1)水平型微指令与微程序设计,一次能定义并执行多个微命令的微指令。 格式 特点 微指令字较长(控存的横向容量大,几十几百位),使微程序编制困难、复杂,不易实现设计自动化,但编制的微程序短(控存的纵向容量小)
37、 一条微指令定义的微命令较多,并行能力强,效率高,微程序执行速度快。,.,微指令编码简单,一般采用直接控制和字段直接编码法,微命令与数据通路各控制点之间有比较直接的对应关系。,字段间接编码法、直接控制和字段直接编码的混合编码,都属于水平型微指令,.,2)垂直型微指令,类似于机器指令格式,在微指令中设置微操作码字段,一次只能控制信息从源部件到目的部件的一、两种信息传送过程。,例:某垂直型运算操作的微指令格式为:,R1 R2 RD,微指令功能:(R1)OP(R2)RD,.,例:某垂直型微程序转移微指令格式为: 微指令功能: 根据条件测试字段所指定的条件对微指令的执行状态进行测试。若满足条件,微程序
38、按指定的转移微地址转移。,.,垂直型微指令的特点,微指令字短(控存的横向容量少,1020位),微指令直观规整、易于编制微程序及实现设计自动化。但编制的微程序长(控存的纵向容量大)。 一条微指令定义的微命令少,微操作并行能力弱,效率较低,微程序执行速度较慢。 微指令编码复杂,微操作码字段需经译码产生微命令,微指令的各二进制位与数据通路的各控制点之间不存在直接对应关系,执行速度较慢。,.,3)毫微程序设计,设计思想:将水平和垂直两种微程序设计结合,微程序1,毫微程序1,解释,程序,解释,严格顺序的 垂直型微指令,无序的 水平型的毫微指令,并行能力不强,并行能力强,.,毫微程序控制器中有两个控制存储
39、器 微程序控存(CM)存放垂直微程序(横向容量小) 毫微程序控存(nCM)存放毫微程序(纵向容量小),一条微指令可完成自己的操作,还可给出一个nCM地址,以便调用一条毫微指令,每条毫微指令都不相同,也没有顺序关系,.,毫微程序的执行过程,执行一条指令时首先进入第一级微程序(垂直型微指令) 需要时可由它调用第二级微程序(水平型毫微程序)中的毫微指令,解释该微指令的操作 毫微指令执行完毕,再返回第一级微程序,.,毫微程序设计的优缺点,使用少量的控存达到高度的操作并行性。 垂直型微指令易编程,易实现微程序设计自动化。 微指令调用毫微指令,效率高,可充分利用数据通路。 毫微程序之间没有顺序关系,独立性
40、强,修改、增删毫微指令不会影响毫微程序的控制结构。 灵活性好,能通过修改垂直微程序方便地修改和扩充指令系统的功能,无需改变毫微程序,具有动态结构。 有时执行一条微指令需两次访问控存,影响速度。 增加了硬件成本。,.,6. 微程序控制器设计步骤,确定微指令格式和执行方式 采用水平微指令格式还是垂直微指令格式 微指令是串行方式执行还是并行方式执行 定义微命令集、确定微命令编码方式和微指令排序方式 根据机器指令的所有控制信号拟定微命令集 确定微命令编码方式和字段的划分 选择微指令排序方法(增量式、断定式等),.,编制微程序 列出机器指令的全部微命令节拍安排 按已定的微指令格式编制微程序,并对所有微程
41、序进行优化和代码化。 写入程序 将二进制表示的全部微程序写入控制存储器。,.,微程序控制方式的优缺点,用规整的存储逻辑代替了复杂的、不规整的硬连逻辑,简化了硬件结构,有利于设计自动化。 适宜作系列机的控制器,可以用比较简单的硬件结构实现较复杂的指令系统。 微程序控制的计算机在同一系列内,功能的增加主要表现为微程序的增加,即控制存储器容量的增加,其他硬件增加不多,性/价比相对较高。 在数据通路结构不变的前提下,易于修改扩充,灵活性、通用性强。 可靠性高,易于诊断与维护。,.,增加了从控存中读取微指令的时间,速度慢。 一条微指令的操作比一条机器指令所能定义的操作简单,因而可能会降低并行操作能力,影
42、响执行效率。,.,6.7 流水线处理技术,指令的执行方式指令间的衔接关系 顺序方式(串行) 重叠方式(并行),.,流水方式(并行) 把指令的执行过程划分成若干复杂程度相当,处理时间大致相等的子过程 每个子过程由一个独立的功能部件完成 通常每个功能部件后都有一个缓冲器/锁存器,保存本段流水的结果,供下段流水使用 同一时间,多个功能部件同时工作,例:以五段指令流水线为例解释指令执行,.,取指,译码,取数,执行,写回,指令流水,入口,出口,功能部件 取指部件 译码部件 取数部件 执行部件 写回部件,设每个功能部件执行功能操作的时间相等=t,则,.,2. 流水线的分类,按处理级别 操作部件级运算操作流
43、水线(浮点加法器) 指令级执行指令过程按流水线方式 处理机级宏流水线,多用于异构多处理机系统 按功能 单功能一种流水线只能完成一种固定功能 多功能流水线各段通过不同的连接方式实现不同的功能,.,按工作方式 静态流水线同一时间内只能以一种方式工作(单功能或多功能) 动态流水线同一时间内各功能部件以不同的方式连接,完成不同的功能(多功能) 按流水线结构 线性流水线流水线中无反馈回路 非线性流水线流水线中有反馈回路,.,3. 流水线的性能,吞吐率TP 单位时间内流水线能完成的指令数或输出结果 最大吞吐率TPMAX 流水线连续流动达到稳定状态后获得的吞吐率 实际吞吐率TP 完成n条指令的实际吞吐率,.,线性流水线时空图,建立时间:第一条指令输入到完成的时间 稳定时间:流水线各段都处于工作状态 排空时间:最后一条指令输入到完成的时间,.,线性流水线时空图,最大
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 盐斤收放保管工专项知识考试复习题库(附答案)
- 卫生专业技术资格考试儿科学(中级332)专业实践能力复习难点精析
- (初中)自主招生笔试题广东省深圳市备考难点详解
- 电工电子技术课件 4-1低压元器件
- 部编版五年级上册语文全套预习单(8单元)
- 农业种植项目农业科技成果转化与应用协议
- 线上广告2026年销售推广合作协议
- 销售策略2026年咨询协议
- 线上线下重要合作项目合同
- 混合云数据迁移与同步服务合同
- 煤矸石充填塌陷区复垦技术规程-编制说明
- Python少儿编程全套教学课件
- 国电南瑞员工手册
- 小学生女生健康教育课件
- 2023硅铁多元素含量的测定电感耦合等离子体原子发射光谱法
- 三江能源有限公司煤矿矿山地质环境保护与土地复垦方案
- 关于腹腔镜胆囊切除手术的护理配合
- 重体力劳动评估程序(RBA健康安全)
- GB/T 7702.3-1997煤质颗粒活性炭试验方法强度的测定
- GB/T 21380-2008行人反光标识夜间光度性能及测试方法
- 中国药典2005版一部
评论
0/150
提交评论