




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第六章第六章 中央处理部件中央处理部件CPUCPU6.1 6.1 计算机的硬件系统计算机的硬件系统6.2 6.2 控制器的组成控制器的组成6.3 6.3 微程序控制计算机的基本工作原理微程序控制计算机的基本工作原理6.4 6.4 微程序设计技术微程序设计技术6.5 6.5 硬布线控制的计算机硬布线控制的计算机6.6 6.6 控制器的控制方式控制器的控制方式6.7 6.7 流水线工作原理流水线工作原理6.8 CPU6.8 CPU举例举例6.9 6.9 计算机的加电及控制过程计算机的加电及控制过程 本章教学内容本章教学内容本章学习目标本章学习目标从两个方面来认识从两个方面来认识CPUCPU:CPU
2、CPU的逻辑组成的逻辑组成CPUCPU如何工作如何工作重点重点1.1.控制器的作用控制器的作用. .组成组成. .指令的执行过程指令的执行过程. .2.2.微程序控制器的工作原理微程序控制器的工作原理: :组成组成. .产生控制信号的方法产生控制信号的方法. .3.3.微程序控制器的一些基本概念微程序控制器的一些基本概念, ,与机器指令级的比较与机器指令级的比较. .4.4.微程序的微指令编码译码方法微程序的微指令编码译码方法. .5.5.产生后继微指令地址的方法产生后继微指令地址的方法. .6.6.微指令的格式微指令的格式: :水平和垂直型微指令水平和垂直型微指令. .7.7.硬布线控制器的
3、组成硬布线控制器的组成, ,控制信号的产生方法控制信号的产生方法, ,时序的作用和产生方法时序的作用和产生方法8.8.硬布线控制器的设计步骤和方法硬布线控制器的设计步骤和方法. .9.9.硬布线控制器与微程序控制器的比较硬布线控制器与微程序控制器的比较. .10.10.控制器的控制方式的含义与种类控制器的控制方式的含义与种类. .11.11.流水线工作原理流水线工作原理. .12.12.流水线的相关问题流水线的相关问题( (数据相关和程序相关数据相关和程序相关).).难点难点 对于指令执行过程的理解、微程序设计技术和控制器的设计方对于指令执行过程的理解、微程序设计技术和控制器的设计方法以及法以
4、及CPUCPU的构成的构成. .计算机组成:计算机组成:运算器、控制器、存储器、输入设备和输出设备运算器、控制器、存储器、输入设备和输出设备五大部件五大部件 微处理器微处理器: :运算器运算器+ +控制器控制器集成在一个芯片上,通常称之为中央处理部集成在一个芯片上,通常称之为中央处理部件件(CPU)(CPU)。 控制器的作用控制器的作用: :协调并控制计算机的各个部件执行程序的指令序列。协调并控制计算机的各个部件执行程序的指令序列。 计算机的工作过程计算机的工作过程: 加电加电产生产生resetreset信号信号执行程序执行程序停机停机停电。停电。 机器加电时机器加电时: (1 1)可以利用可
5、以利用resetreset信号将某值信号将某值( (例如全例如全 “0 0” ”) )置于程序计数器置于程序计数器PCPC中中,此即为开机后执行的第一条指令的地址,也就是固定程序入口地址,此即为开机后执行的第一条指令的地址,也就是固定程序入口地址 (2 2)也可以直接在指令寄存器中置入一条无条件转移指令)也可以直接在指令寄存器中置入一条无条件转移指令( (转移到固转移到固定程序入口定程序入口) ),然后开始执行程序。,然后开始执行程序。 固定程序固定程序: :先对计算机各部件进行测试,然后进入操作系统环境,先对计算机各部件进行测试,然后进入操作系统环境,等候操作员从键盘送入命令,或用鼠标器对显
6、示屏上的图标进行选择等候操作员从键盘送入命令,或用鼠标器对显示屏上的图标进行选择。( (一般放在一般放在ROMROM中中) ) 程序执行过程:程序执行过程:计算机从计算机从程序入口地址开始程序入口地址开始执行该程序的指令序执行该程序的指令序列,是不断地列,是不断地取指令、分析指令取指令、分析指令和和执行指令执行指令这样一个周而复始的过程这样一个周而复始的过程 实现原理:当前实现原理:当前正在执行的指令地址是放在控制器的程序计数器正在执行的指令地址是放在控制器的程序计数器(PC)(PC)中的。中的。6. 1 6. 1 计算机的硬件系统计算机的硬件系统一一Intel 80386Intel 8038
7、6微机系统微机系统 图图6 61 1是由是由Intel 80386Intel 80386微处理器等器件组成的微处理器等器件组成的微机系统,微机系统,Intel 80386Intel 80386是是3232位微处理器。位微处理器。Intel 80386 Intel 80386 微机系统框图微机系统框图是系统中主要的是系统中主要的处理、控制部件处理、控制部件机器加电时产生机器加电时产生resetreset信号,计算机信号,计算机各个部件处于初始状态。执行的第各个部件处于初始状态。执行的第1 1条指令的地址为条指令的地址为0FFFFFFF0H0FFFFFFF0H,为一条,为一条转移指令,转到引导程序
8、入口转移指令,转到引导程序入口。ClkClk是是clk2clk2的二分的二分频时钟信号频时钟信号8038680386通过总线与存储器和通过总线与存储器和I/OI/O设设备交换信息。对总线的使用需要备交换信息。对总线的使用需要总线控制逻辑来管理。总线控制逻辑来管理。快速设备通过快速设备通过DMADMA方式与主存方式与主存交换信息。交换信息。慢速设备通过中断方式慢速设备通过中断方式与主存交换信息。与主存交换信息。当当CPUCPU与主存交换信息时,由于速度与主存交换信息时,由于速度不匹配,不匹配,CPUCPU需要等待,需要等待,readyready信号信号是由存储器发出的,表明是由存储器发出的,表明
9、CPUCPU需要的需要的读写命令已完成。读写命令已完成。80287/38780287/387协处理器与协处理器与8038680386并行工作,扩并行工作,扩充了充了8038680386的指令系统,主要完成浮点运的指令系统,主要完成浮点运算和高精度整数运算,算和高精度整数运算,8038680386自动将取得自动将取得的协处理器指令传给的协处理器指令传给8038780387。二二 Intel 80386Intel 80386结构及外部连线结构及外部连线u8038680386包括:包括: 指令部件:指令部件:完成取指及指令译码功能;完成取指及指令译码功能; 执行部件:执行部件:包括包括ALUALU、
10、乘法部件、寄存器等;、乘法部件、寄存器等; 存储管理部件:存储管理部件:用来确定存储器地址。用来确定存储器地址。u8038680386微处理器芯片通过引出端与计算机的微处理器芯片通过引出端与计算机的其它部件连接。其它部件连接。各引出端的功能各引出端的功能如下:如下:ADS:地址状态信号,表示地址线、总线周期定义信号已有效,开始总线周期进行读写。NA:本次读/写操作虽未完成,允许送下一周期的地址和读写信息,使两次操作重叠。ready:当存储存储器或器或I/OI/O设备完设备完成操作后发出的成操作后发出的信号。信号。386386接到接到此信号后,结束此信号后,结束本周期。本周期。BS16:表示被访
11、问的存储器或I/O设备的数据传送宽度为16位。PEREQPEREQ:协处理器:协处理器请求请求386386在存储器在存储器与协处理器之间与协处理器之间传送一个数据。传送一个数据。BUSYBUSY:协处理器:协处理器忙,不能接收另忙,不能接收另一个指令。一个指令。ERROR:ERROR:协处理器协处理器出现了一个错误出现了一个错误主设备:占用总线的设主设备:占用总线的设备。从设备:与主设备备。从设备:与主设备通信的设备。通信的设备。 I/OI/O设备设备作主设备时,发出作主设备时,发出holdhold信号申请。当信号申请。当CPUCPU同意同意总线请求,可以释放总总线请求,可以释放总线,发线,发
12、hldahlda。其余引出。其余引出端均呈高阻状态。端均呈高阻状态。INTRINTR为中断请求信号为中断请求信号,NMI,NMI不可不可屏蔽中断请求信号屏蔽中断请求信号,RESET,RESET为总为总清或复位信号清或复位信号在在8038680386与存储器或与存储器或I IO O设备之间传送设备之间传送( (读写读写) )一个数据的时间称为总线周期。一个数据的时间称为总线周期。W WR#R#区分是写周期区分是写周期( (当当W WR#R#为为1 1时时) )还是读周期还是读周期( (当当W WR#R#为为0 0时时) )DC#表示是数据周期还是控制(取指)周期MIO#表示是访问存储器还是IO设
13、备LOCK#LOCK#为总线锁定信号,当它为低电位时,为总线锁定信号,当它为低电位时,不允许芯片外部的信号打断当前总线周期不允许芯片外部的信号打断当前总线周期的操作,即的操作,即CPUCPU不允许让出总线控制权。不允许让出总线控制权。6 62 2 控制器的组成控制器的组成一一. . 控制器的功能控制器的功能 计算机对信息进行处理计算机对信息进行处理( (或计算或计算) )是通过是通过程序的程序的执行执行而实现的,程序是完成某个确定算法的而实现的,程序是完成某个确定算法的指令指令序列序列,要要预先存放在存储器预先存放在存储器中中。控制器的作用控制器的作用: :控控制程序的执行制程序的执行,它必须
14、具有以下基本功能:,它必须具有以下基本功能: 1 1取指令取指令 当程序已在存储器中时,首先根据程序入口取出第一当程序已在存储器中时,首先根据程序入口取出第一条指令,为此要发出条指令,为此要发出指令地址及控制信号指令地址及控制信号。然后不断取。然后不断取出第出第2 2,3 3,条指令。条指令。 2 2分析指令分析指令 或叫解释指令、指令译码等。是对当前取得的指令进行分析,指出它要求作什么操作,并产生相应的操作控制命令,如果参与操作的数据在存储器中,还需要形成操作数地址。 3 3执行指令执行指令 根据分析指令时产生的根据分析指令时产生的“操作命令操作命令”和和“操作数操作数地址地址”形成相应的操
15、作控制信号序列形成相应的操作控制信号序列,通过通过CPUCPU及输入及输入输出设备的执行,实现每条指令的功能,其中还包括输出设备的执行,实现每条指令的功能,其中还包括对运算结果的处理以及下条指令地址的形成对运算结果的处理以及下条指令地址的形成。 计算机不断重复顺序执行上述三种基本操作:取计算机不断重复顺序执行上述三种基本操作:取指、分析、执行;再取指、再分析、再执行指、分析、执行;再取指、再分析、再执行,如,如此循环,直到遇到停机指令或外来的干预为止。此循环,直到遇到停机指令或外来的干预为止。部件或设备发出:部件或设备发出: (1)(1)“中断请求中断请求”信号信号 待待CPUCPU执行完当前
16、指令后,响应该请求,中止当前执行执行完当前指令后,响应该请求,中止当前执行的程序,转去执行中断程序。当处理完毕后,再返回原程序的程序,转去执行中断程序。当处理完毕后,再返回原程序继续运行下去。继续运行下去。 (2)DMA(2)DMA请求信号请求信号 等等CPUCPU完成当前机器周期操作后,暂停工作,让出总线完成当前机器周期操作后,暂停工作,让出总线给给I IO O设备,在完成设备,在完成I IO O设备与存储器之间的传送数据操作设备与存储器之间的传送数据操作后,后,CPUCPU从暂时中止的机器周期开始继续执行指令。从暂时中止的机器周期开始继续执行指令。4 4控制程序和数据的输入与结果输出控制程
17、序和数据的输入与结果输出根据程序的安排或人的干预,在适当的时候向输入输出设根据程序的安排或人的干预,在适当的时候向输入输出设备发出一些相应的命令来完成备发出一些相应的命令来完成I IO O功能,这实际上也是通过执功能,这实际上也是通过执行程序来完成的。行程序来完成的。5 5对异常情况和某些请求的处理对异常情况和某些请求的处理二二. . 控制器的组成控制器的组成1程序计数器程序计数器(PC)(PC)即指令地址寄存器。在某些计算机中用来存放即指令地址寄存器。在某些计算机中用来存放当前正在执行的指令地址;而在另一些计算机当前正在执行的指令地址;而在另一些计算机中则用来存放即将要执行的下一条指令地址;
18、中则用来存放即将要执行的下一条指令地址;而在有指令预取功能的计算机中,一般还需要而在有指令预取功能的计算机中,一般还需要增加一个程序计数器用来存放下一条要取出的增加一个程序计数器用来存放下一条要取出的指令地址。指令地址。2 2指令寄存器(指令寄存器(IRIR)用以存放当前正在执行的指令,以便在指令执用以存放当前正在执行的指令,以便在指令执行过程中,控制完成一条指令的全部功能。行过程中,控制完成一条指令的全部功能。3 3指令译码器或操作码译码器指令译码器或操作码译码器对指令寄存器中的操作码进行分析解释,产生对指令寄存器中的操作码进行分析解释,产生相应的控制信号。相应的控制信号。 4 4脉冲源及启
19、停线路脉冲源及启停线路脉冲源产生一定频率的脉冲信号作为整个机器的时钟脉冲脉冲源产生一定频率的脉冲信号作为整个机器的时钟脉冲,是机器周期和工作脉冲的基准信号,在机器刚加电时,是机器周期和工作脉冲的基准信号,在机器刚加电时,还应产生一个总清信号还应产生一个总清信号(reset)(reset)。启停线路保证可靠地送出或封锁时钟脉冲,控制时序信号启停线路保证可靠地送出或封锁时钟脉冲,控制时序信号的发生或停止,从而启动机器工作或使之停机。的发生或停止,从而启动机器工作或使之停机。5 5时序控制信号形成部件时序控制信号形成部件当机器启动后,在当机器启动后,在CLKCLK时钟作用下,根据当前正在执行的指时钟
20、作用下,根据当前正在执行的指令的需要,产生相应的时序控制信号,并根据被控功能部令的需要,产生相应的时序控制信号,并根据被控功能部件的反馈信号调整时序控制信号。件的反馈信号调整时序控制信号。 即指令地址寄存器。即指令地址寄存器。存放当前正在执行存放当前正在执行的指令地址或下一的指令地址或下一条指令地址。条指令地址。指 令 地 址 形 成指 令 地 址 形 成 : : (PC)+1-PC(PC)+1-PC。或。或: :转移指令修改其内转移指令修改其内容容用以存放当前正用以存放当前正在执行的指令在执行的指令对指令寄存器中对指令寄存器中的操作码进行分的操作码进行分析解释,产生相析解释,产生相应的控制信
21、号。应的控制信号。脉冲源产生一定频率的脉冲信号作脉冲源产生一定频率的脉冲信号作为整个机器的时钟脉冲,是机器周为整个机器的时钟脉冲,是机器周期和工作脉冲的期和工作脉冲的 基准信号。基准信号。根据当前正在执行的指令的需根据当前正在执行的指令的需要,产生相应的时序控制信号要,产生相应的时序控制信号1 1、控制器包括哪几个组成部分,各个部分的功能是什么?、控制器包括哪几个组成部分,各个部分的功能是什么?2 2、控制器需要向哪些逻辑电路发送控制信号?各发送哪些控控制器需要向哪些逻辑电路发送控制信号?各发送哪些控制信号?制信号?3 3、为简化控制器的工作原理,教材中做了哪几点假设?、为简化控制器的工作原理
22、,教材中做了哪几点假设?1.1.组成控制器的基本电路组成控制器的基本电路计算机中采用的电路,基本上分为两种类型。计算机中采用的电路,基本上分为两种类型。 一类是具有记忆功能的触一类是具有记忆功能的触发器以及由它组成的寄存器、发器以及由它组成的寄存器、计数器和存储单元等。计数器和存储单元等。 一类是没有记忆功能的门一类是没有记忆功能的门电路及由它组成的加法器、电路及由它组成的加法器、算术逻辑运算单元算术逻辑运算单元( (ALU)ALU)和各和各种逻辑电路等种逻辑电路等。三三. .指令执行过程指令执行过程2 2指令执行过程举例指令执行过程举例数据通路:数据通路:控制器组成控制器组成: :图图6.3
23、6.3 运算器组成运算器组成: :图6.6 中央处理器组成:中央处理器组成:图图6.86.8(1) ) 一条加法指令的执行过程一条加法指令的执行过程: : ( (时序图时序图) )指令格式指令格式: :操 作 码rs, rdrs1im m(或 disp)rsrs,rdrd,rsrs1 1为通用寄存器地址;为通用寄存器地址;imm(imm(或或disp)disp)为立即数为立即数( (或位移量或位移量) )。加法指令功能:加法指令功能:(rs)+(rs1)+disp- rd(rs)+(rs1)+disp- rd取指令取指令计算地址取数取数运算送结果运算送结果划分机器周期划分机器周期的原则的原则:
24、 :总线总线不冲突不冲突. .返回指令执行返回指令执行返回指令执行返回指令执行假设运算器的框图如图6.6所示。运算器由8个通用寄存器GR及一个算逻运算部件ALU组成,并有4个记忆运算结果状态的标志触发器N,Z,V和C。 N(负数): 当运算结果为负数时,置“1”,否则为“0”。Z(零): 当运算结果为零时,Z1,否则Z0。V(溢出): 当运算结果溢出时,V1,否则V0。C(进位): 当加法运算产生进位信号或减法运算产生借位信号时,C1,否则C0。返回指令执行返回指令执行返回指令执行返回指令执行返回指令执行返回指令执行取指令取指令: : PCABWR=0,M I O = 1 ;DBIR;PC+1
25、计算地址计算地址rslGR,(rsl) ALU,dispALU;“+” ;ALUAR返回指令执行返回指令执行返回指令执行返回指令执行取数取数: : AR ABWR=0MIO=1DB DR返回指令执行返回指令执行运算送结果运算送结果: : rs GR (rs) ALUDR ALU“+” :rd GRALU rd 置置N,Z,V,C返回指令执行返回指令执行取指令取指令: : PCABWR=0,M I O = 1 ;DBIR;PC+1计算地址计算地址rslGR,(rsl) ALU,dispALU;“+” ;ALUAR取数取数: : AR ABWR=0MIO=1DB DR运算送结果运算送结果: : r
26、s GR (rs) ALUDR ALU“+” :rd GRALU rd 置置N,Z,V,C(2)(2)条件转移指令的执行过程条件转移指令的执行过程 指令功能:指令功能:根据根据N N,Z Z,V V,C C的状态,决定的状态,决定是否转换。如转移条件成立,则转移到本条指是否转换。如转移条件成立,则转移到本条指令所指定的地址,否则顺序执行下一条指令。令所指定的地址,否则顺序执行下一条指令。 指令执行步骤:指令执行步骤: 从存储器取指令,送入指令寄存器,并从存储器取指令,送入指令寄存器,并进行操作码译码。进行操作码译码。 程序计数器加程序计数器加1 1,如不转移,即为下一条要执,如不转移,即为下一
27、条要执行的指令地址。行的指令地址。 本操作对所有指令都是相同的。本操作对所有指令都是相同的。 如转移条件成立,根据指令规定的寻如转移条件成立,根据指令规定的寻址方式计算有效地址,转移指令经常采用相对址方式计算有效地址,转移指令经常采用相对寻址方式,此时寻址方式,此时转移地址转移地址=PC+disp=PC+disp。此处此处PCPC是是指本条指令的地址,而在上一机器周期已执行指本条指令的地址,而在上一机器周期已执行PC+1PC+1操作,因此计算时应取原操作,因此计算时应取原PCPC值,或对运算值,或对运算进行适当修正。最后将转移地址送进行适当修正。最后将转移地址送PCPC。控制信号控制信号: :
28、PC ALUPC ALUdispALUdispALU “+ +” ALUPCALUPC 其他指令的控制信号也按同样方法分析,根据每条指令的功能确定所需的机器周期数,并得出每个机器周期所需要的控制信号,最后将所有的控制信号进行综合简化。 控制器的功能就是按每条指令的要求产每条指令的要求产生所需的控制信号生所需的控制信号。因此在设计控制器时要求系统设计师提供一个完整的无二义性的指令系统说明书。 产生控制信号一般有产生控制信号一般有微程序控制微程序控制和和硬布线硬布线控制控制两种方法。两种方法。6.3 6.3 微程序控制微程序控制计算机的基本工作原理计算机的基本工作原理一、基本概念一、基本概念1.1
29、.微操作微操作( (微命令微命令) ) 实现一条指令的功能按一定次序执行一系列基本操作,这实现一条指令的功能按一定次序执行一系列基本操作,这些基本操作称为些基本操作称为。 例如,前面讲到的加法指令,分成四步例如,前面讲到的加法指令,分成四步( (取指令、计算地址、取指令、计算地址、取数、加法运算取数、加法运算) )完成,每一步实现若干个微操作。完成,每一步实现若干个微操作。2.2.微指令微指令 由同时发出的控制信号所执行的一组微操作称为微指令,由同时发出的控制信号所执行的一组微操作称为微指令,它含控制命令它含控制命令( (信号信号) )与下一条执行的微指令地址。与下一条执行的微指令地址。 将一
30、条机器指令分成若干条微指令,按次序执行这些微将一条机器指令分成若干条微指令,按次序执行这些微指令,就可以实现指令的功能。指令,就可以实现指令的功能。 3.3.微程序微程序 执行一条机器指令所对应的多条微指令构成一段微程序。 如:加法指令“add rd/rs,immrs1”所对应的微程序由以下四条微指令组成一段微程序:取指微指令计算有效地址微指令取数微指令运算微指令(微程序段中各条微指令既可连续存储、也可分散存储)4 4、控制存储器、控制存储器 存放所有微程序的存储器。它可以用只读存储器实现存放所有微程序的存储器。它可以用只读存储器实现。5 5、微指令的格式微指令的格式控制字段控制字段下一条微指
31、令地址字段下一条微指令地址字段6 6、控制存储器的工作原理、控制存储器的工作原理依据从内存中读取的指令的操作码,找到与该条机依据从内存中读取的指令的操作码,找到与该条机器指令相对应的一段微程序的入口地址,并按下址字段提器指令相对应的一段微程序的入口地址,并按下址字段提供的微地址逐条从控制存储器中读出微指令,由控制字段供的微地址逐条从控制存储器中读出微指令,由控制字段提供的微命令控制计算机各功能部件工作(接收、输出、提供的微命令控制计算机各功能部件工作(接收、输出、执行算术或逻辑运算)执行算术或逻辑运算)。执行机器指令的实质是什么?执行机器指令的实质是什么? 执行一段微程序执行一段微程序二二.
32、. 实现微程序控制的基本原理实现微程序控制的基本原理1 1控制信号(控制信号(模型机:模型机:图图6.86.8)返回控制信号返回控制信号 以执行以执行一条加法指令一条加法指令为例,它由为例,它由四条微指令四条微指令解解释执行,一条微指令中的所有控制信号是同时发出释执行,一条微指令中的所有控制信号是同时发出的。每条微指令所需的控制信号如下:的。每条微指令所需的控制信号如下: (2)(2)计算地址微指令计算地址微指令 取两个源操作数取两个源操作数( (计算地址用计算地址用) ): rslGR(8)rslGR(8),(rsl) ALU(10)(rsl) ALU(10),dispALU(4)dispA
33、LU(4)。 加法运算加法运算:“+ +”(13)(13)。 有效地址送地址寄存器:有效地址送地址寄存器:ALUAR(19)ALUAR(19)。(1)(1)取指微指令取指微指令 指令地址送地址总线:指令地址送地址总线:PCAB(1)PCAB(1) 发访存控制命令,发访存控制命令,ADS(21)ADS(21),M MIO=1(22)IO=1(22), W WR=0(23)R=0(23)。从存储器取指令送数据总线。从存储器取指令送数据总线。 指令送指令寄存器:指令送指令寄存器:DBIR(5)DBIR(5) 程序计数器程序计数器+1+1:PC+1(3)PC+1(3) (3)(3)取数微指令取数微指令
34、 数据地址送地址总线:数据地址送地址总线:ARAB(20)ARAB(20)。 发访存控制命令:发访存控制命令:ADS(21)ADS(21),M MIO(22)IO(22),W WR(23)R(23)。由存储器将数据送数据总线由存储器将数据送数据总线DBDB。 数据送数据寄存器:数据送数据寄存器:DBDR(6)DBDR(6)(4)(4)加法运算和送结果微指令加法运算和送结果微指令 两源操作数送两源操作数送ALUALU:rsGR(9)rsGR(9),(rs) ALU(11)(rs) ALU(11);DRALU(12)DRALU(12)。 加法运算加法运算:“+ +”(13) (13) 送结果;送结
35、果;ALUGR(17)2.2.微指令如何产生控制信号微指令如何产生控制信号? ? 微指令最简单的组成形式: 将每个控制信号用一个控制将每个控制信号用一个控制位来表示,当该位为位来表示,当该位为“1 1”时,时,定义为有控制信号,当该位定义为有控制信号,当该位为为“0 0”时,没有控制信号。时,没有控制信号。W/R (W/R (写:写:1 1;读:;读:0)0)控制存储器容量为控制存储器容量为4K4K字,字,则每条微指令还需要则每条微指令还需要1212位位来表示下址。来表示下址。控制存储器控制存储器的容量取决于实现指令系的容量取决于实现指令系统所需的微程序长度。统所需的微程序长度。 图图6.96
36、.9为加法指令的四条微指令编码,每一小为加法指令的四条微指令编码,每一小格表示一位格表示一位( (二进制二进制) ),空格表示,空格表示0 0,第,第2424位到第位到第3535位为下址。位为下址。假设四条微指令的地址如下:假设四条微指令的地址如下:取指微指令:取指微指令:10001000Q Q计算有效地址微指令:计算有效地址微指令:10011001Q Q取数微指令:取数微指令:10021002Q Q计算并存数微指令:计算并存数微指令: 1003 1003Q Q3.微程序也可用微程序也可用流程图来表示流程图来表示方框:方框:表示微表示微指令指令右下角的右下角的数字:表数字:表示下址示下址上方的
37、数字:微指令上方的数字:微指令的地址的地址微程序控制器的基本工作原理:微程序控制器的基本工作原理: 当指令取入当指令取入IRIR中以后,中以后,根据操作码进行译码,根据操作码进行译码,得到相应指令的第一得到相应指令的第一条微指令的地址。条微指令的地址。指令译码部件可用指令译码部件可用只读存储器组成,只读存储器组成,将操作码作为只读将操作码作为只读存储器的输入地址,存储器的输入地址,该单元的内容即为该单元的内容即为相应的微指令在控相应的微指令在控制存储器中的地址。制存储器中的地址。据根控制存储器中的据根控制存储器中的地址从控制存储器取地址从控制存储器取出微指令,并将它存出微指令,并将它存放在微指
38、令寄存器中。放在微指令寄存器中。控制字段各位的输出控制字段各位的输出通过连接线直接与受通过连接线直接与受控制的门相连,于是控制的门相连,于是就提供了在本节所提就提供了在本节所提出的控制信号。出的控制信号。4 4微程序控制器微程序控制器时序时序控制控制信号信号形成形成部件部件三、时序信号及工作脉冲的形成三、时序信号及工作脉冲的形成1 1、请分析、请分析(P(P178178)图)图6.126.12中输出与输入波形之间的关系中输出与输入波形之间的关系结论:结论:CLKCLK2 2二分频得到二分频得到CLKCLKCLKCLK二分频二分频 得到得到T T1 1T T1 1反相反相 得到得到T T2 22
39、 2、时序图、时序图CLKTCLKCP22CLKTCPCLK211CLKCPCLKCP21两个工作脉冲的叠加信号两个工作脉冲的叠加信号T T2 2的末尾产的末尾产生一个生一个CPCP,用来保存计算用来保存计算结果或接收传结果或接收传送的数据及指送的数据及指令等。令等。T T1 1的末尾产的末尾产生另一个工作生另一个工作脉冲。脉冲。如何形成指令寄存器的输入所存脉冲如何形成指令寄存器的输入所存脉冲CP-IRCP-IR?控制位控制位DBDBIRIR为为“1 1”,采,采用与门,可形成用与门,可形成IRIR的打入脉冲的打入脉冲四电路配合中的常见问题四电路配合中的常见问题1 1、电路延迟引起的波形畸变电
40、路延迟引起的波形畸变 F/FF/F无无延迟延迟CLKCLK无无畸变畸变F/FF/F有延有延迟迟CLKCLK有有畸变畸变2 2、机器周期的确定、机器周期的确定 (1)机器周期 应大于等于一条微指令中执行时间最长的微操作。 主要考虑存储器访问时间和一次运算所需的时间。 (2)机器周期的延长 信号来自存储器,在T1为“0”时,封锁T1的翻转(插入等待脉冲),等待存储器访问的完成。当T2有,且无信号时,封锁CLK2信号(T的计数脉冲)。readyready当当T T2 2=1=1、ready=0ready=0时,电路图的输出是否有变化?时,电路图的输出是否有变化?当当T T2 2=1=1、ready=
41、1ready=1时,请分析下面电路图的输出是否有变时,请分析下面电路图的输出是否有变化?化?3、时钟脉冲时钟脉冲CLKCLK和工作脉冲和工作脉冲CPCP的标准性的标准性当满足当满足condcond条件时,才产条件时,才产生生CPCPB B和和CP-CCP-C信号。信号。CPCP脉冲不受控制,总是作用在触脉冲不受控制,总是作用在触发器上,但当条件不成立时,使发器上,但当条件不成立时,使触发器处于保持状态触发器处于保持状态, ,而当条件而当条件成立时,接受新状态。成立时,接受新状态。打入脉冲的同时性:在控制打入脉冲的机器中,总是尽量将总是尽量将CPCP信信号送到控制门的最后一级号送到控制门的最后一
42、级。以免延迟造成失真和不同步。五、五、微程序控制计算机的工作过程简单的总结微程序控制计算机的工作过程简单的总结1、机器加电后,首先由reset信号在PC内置入开机后执行的第一条指令的地址,同时在微指令寄存器内置入一条“取指”微指令,并将其他一些有关的状态位或寄存器置于初始状态。当电压达到稳定值后,自动启动机器工作,产生节拍电位T1,T2和CP。2、机器开始执行程序,不断地取出指令、分析指令、执行指令。程序可以存放在固定存储器中,也可以利用一小段引导程序(在固存中)将要执行的程序和数据从外部设备调入主存。3、实现各条指令的微程序是存放在微程序控制器中实现各条指令的微程序是存放在微程序控制器中的当
43、前正在执行的微指令从微程序控制器中取出后放在微指令寄存器中,由微指令的控制字段中的各位直接控制信息和数据的传送,并进行相应的处理。当遇到停机指令或外来停机命令时,应该待当前这条指令执行完再停机或至少在本机器周期结束时再停机。6.4 6.4 微程序设计技术微程序设计技术在实际进行微程序设计时,要考虑下面三个问题:在实际进行微程序设计时,要考虑下面三个问题: (1) (1)如何缩短微指令字长;如何缩短微指令字长; (2) (2)如何减少微程序长度;如何减少微程序长度; (3) (3)如何提高微程序的执行速度。如何提高微程序的执行速度。 一、微指令的编码一、微指令的编码-控制字段控制字段微指令的编码
44、,就是对微指令的控制字段采用的表示方法。微指令的编码,就是对微指令的控制字段采用的表示方法。1 1直接控制法直接控制法( (不译码法不译码法 ) ) 操作控制字段中的每一位代表一个微命令。操作控制字段中的每一位代表一个微命令。“1 1”有效,有效,“0 0”无效。无效。 优点:简单直观,输出直接用于控制优点:简单直观,输出直接用于控制 缺点:微指令字较长,因而使控制存储器容量较大。缺点:微指令字较长,因而使控制存储器容量较大。2 2字段直接编译法(使用较普遍)字段直接编译法(使用较普遍) 微周期:微周期:是一条微指令所需的执行时间。是一条微指令所需的执行时间。 如果有若干个如果有若干个( (一
45、组一组) )微命令,在每次选择使用它们的微微命令,在每次选择使用它们的微周期内,只有一个微命令起作用,那么这若干个微命令是周期内,只有一个微命令起作用,那么这若干个微命令是互互斥的斥的。 选择互斥的微命令入同组分组编码,用微命令译码器译选择互斥的微命令入同组分组编码,用微命令译码器译码控制。码控制。 如:如:PC-GPC-G、ALU-GALU-G、R0-GR0-G、R1-GR1-G、R2-GR2-G 例:字段长度为例:字段长度为3 3位时,最多只能表示位时,最多只能表示7 7个互斥的微命令,个互斥的微命令,通常代码通常代码000000表示不发微命令表示不发微命令。 字段长度字段长度n n与所能
46、表示的微命令数与所能表示的微命令数m m的关系:的关系:m=2m=2n n-1-1 优点:缩短了微指令长度。优点:缩短了微指令长度。 代价:在微指令寄存器的输出端,为该字段增加一个译代价:在微指令寄存器的输出端,为该字段增加一个译码器,该译码器的输出即为原来的微命令。码器,该译码器的输出即为原来的微命令。3 3、字段间接编译法、字段间接编译法 如果在字段直接编译法中,还规定一个字段的某些微命如果在字段直接编译法中,还规定一个字段的某些微命令,要兼由另一字段中的某些微命令来解释,称为令,要兼由另一字段中的某些微命令来解释,称为字段间字段间接编译法接编译法。优点:进一步减少了指令长度。优点:进一步
47、减少了指令长度。缺点:削弱微指令的并行控制能力。缺点:削弱微指令的并行控制能力。A A受受B B控制,控制,B B发发b b1 1微命令时,微命令时,字段字段A A发出发出a a1,11,1a a7,17,1中的中的一个微命令。一个微命令。B B发发b b2 2微命令时,微命令时,字段字段A A发出发出a a1 1, ,2 2a a7 7, ,2 2中中的一个微命令。的一个微命令。4.4.常数源字段常数源字段供设计者在填写微指令时作为要使用的常数供设计者在填写微指令时作为要使用的常数E E;参与其它控制字段的间接编码。参与其它控制字段的间接编码。适用于扩充定义零星、不常用的微操作。适用于扩充定
48、义零星、不常用的微操作。OCFESCF二、微程序流的控制微程序流的控制基本概念基本概念现行微指令现行微指令 : :当前正在执行的微指令。当前正在执行的微指令。现行微地址现行微地址: :现行微指令所在的控制存储器单元的地址。现行微指令所在的控制存储器单元的地址。后继微指令:后继微指令:下一条要执行的微指令。下一条要执行的微指令。后继微地址:后继微地址:后继微指令所在的控制存储器单元地址。后继微指令所在的控制存储器单元地址。微程序控制:微程序控制:当前微指令执行完毕后,产生后继微指令当前微指令执行完毕后,产生后继微指令的微地址的方法。的微地址的方法。1 1、产生后继微指令地址的几种方法、产生后继微
49、指令地址的几种方法 (1)(1)以增量方式产生后继微地址以增量方式产生后继微地址A A)微程序入口:微程序入口:首条微指令,由专门硬件电路产生首条微指令,由专门硬件电路产生B B)顺序执行:顺序执行:后继微地址现行微地址后继微地址现行微地址1 1C C)转移:转移:后继微地址现行微地址转移条件译码(相对转移量)后继微地址现行微地址转移条件译码(相对转移量)D D)由操作码产生后继地址由操作码产生后继地址优点:可使微指令的下址字优点:可使微指令的下址字段很短,仅起选择作用。段很短,仅起选择作用。缺点:微程序转移很不灵活,缺点:微程序转移很不灵活,使得微程序在控存中的物理使得微程序在控存中的物理空
50、间分配相当困难。空间分配相当困难。在图中,在图中,PCPC兼作控制兼作控制存储器的地址寄存器,输入存储器的地址寄存器,输入有四个来源。下址字段仅有有四个来源。下址字段仅有两位,其功能是选择三个输两位,其功能是选择三个输入源中的一个作为入源中的一个作为PCPC的输的输入,而微程序入口是由专门入,而微程序入口是由专门的硬件产生的,不受下址字的硬件产生的,不受下址字段控制。段控制。(2)(2)增量与下址字段结合产生后继微地址增量与下址字段结合产生后继微地址微指令的下址字段分成两部分:微指令的下址字段分成两部分: 转移控制字段转移控制字段BCFBCF和转移地址字段和转移地址字段BAFBAF, BCFB
51、CF控制转移条件,控制转移条件,BAFBAF控制转控制转移的目标地址。移的目标地址。 当条件成立时,微程序要转移,将当条件成立时,微程序要转移,将BAFBAF送送PCPC,否则顺序执行下一条微,否则顺序执行下一条微指令指令(PC+1)(PC+1)。 执行微程序条件转移时,决定转移与否的硬件条件有好几种。由执行微程序条件转移时,决定转移与否的硬件条件有好几种。由BCFBCF定定义的八个微命令见表义的八个微命令见表6 62 2。BCF=0BCF=0,顺序执,顺序执行微命令,行微命令,PC+IPC+I为后继微为后继微地址。地址。BCF=1BCF=1,条件转,条件转移微命令,当移微命令,当运算结果为运
52、算结果为0 0时,时,将将BAFBAF送送PCPC,否则否则PC+lPC+lPCPCBCF=2BCF=2,条件转,条件转移微命令,当移微命令,当运算结果溢出运算结果溢出时,将时,将BAFBAF送送PCPC,否则,否则, , PC+1+PCPC+1+PC。BCF=3BCF=3,无条件,无条件转移微命令,转移微命令,将将BAFBAF送送PCPC。BCF=4BCF=4;测试循环微命;测试循环微命令,假如令,假如CTCT0 0,表,表示需要继续执行循环示需要继续执行循环微命令,将循环人口微命令,将循环人口微地址从微地址从BAFBAF送送PCPC。假如假如CT=0CT=0,表示循环,表示循环结束,后继微
53、地址为结束,后继微地址为PC+1PC+1。本条微命令。本条微命令同时完成同时完成CTCT一一1 1操作。操作。BCF=5BCF=5,转微子程序微,转微子程序微命令,把微子程序人命令,把微子程序人口地址从口地址从BAFBAF送送PCPC,从而实现转移。在转从而实现转移。在转移之前要把该条微指移之前要把该条微指令的下一地址令的下一地址(PC+1)(PC+1)送人返回寄存器送人返回寄存器RRRR之之中。中。BCF=6BCF=6,返回微,返回微命令,把命令,把RRRR中中的返回微地址的返回微地址送人送人PCPC,从,从而实现从微子而实现从微子程序返回到原程序返回到原来的微程序来的微程序。BCF=7BC
54、F=7,操作码,操作码产生后继微地产生后继微地址的微命令,址的微命令,这是取指后,这是取指后,按现行指令执按现行指令执行的第一条微行的第一条微指令。指令。 BAFBAF的长度有两种情况:的长度有两种情况:与与PCPC的位数相等;的位数相等;可以从控制存储器的可以从控制存储器的任一单元取微指令。任一单元取微指令。 特点特点: :转移灵活,但增加了微指令的长度转移灵活,但增加了微指令的长度. .比比PCPC短;短;考虑到转移点在考虑到转移点在PCPC附近,或附近,或者在控制存储器的某区域内,所以由原来的者在控制存储器的某区域内,所以由原来的PCPC的若干位与的若干位与BAFBAF组合成转移微地址。
55、组合成转移微地址。 特点特点: :转移地址受到限制,但可缩短微指转移地址受到限制,但可缩短微指令长度。令长度。 (3)(3)多路转移方式多路转移方式 一一条微指令存在多个转移分支的情况称为条微指令存在多个转移分支的情况称为多路转移。多路转移。 后继微地址的产生条件:运算结果所置的标志位后继微地址的产生条件:运算结果所置的标志位N N、Z Z、V V、C C等,计数器状态,通据通路状态等,计数器状态,通据通路状态。 例例1:1:根据某些硬件状态来决定后继微地址根据某些硬件状态来决定后继微地址。根据根据一种状态一种状态( (非非0 0即即1)1)来决定微地址可以有两种情况,即来决定微地址可以有两种
56、情况,即两路转移两路转移;而根据而根据两种状态两种状态来决定微地址可以有四种情况,来决定微地址可以有四种情况,即即四路转移四路转移。四路转移涉及微地址的两位,一般就定在微地址的最后两四路转移涉及微地址的两位,一般就定在微地址的最后两位,也就是说当执行转移微指令时,根据条件可转移到四个位,也就是说当执行转移微指令时,根据条件可转移到四个微地址中的一个,这四个微地址的高位部分相等,仅是最低微地址中的一个,这四个微地址的高位部分相等,仅是最低两位不同。两位不同。优点优点: :实现多路转移可减少微程序的长度。实现多路转移可减少微程序的长度。 (4)(4)微中断微中断 微中断与程序中断的概念相似,当某一
57、条件满微中断与程序中断的概念相似,当某一条件满足时,发出微中断请求信号,足时,发出微中断请求信号,CPUCPU在完成现行指令在完成现行指令的微程序后响应该中断请求,进入微中断处理程序。的微程序后响应该中断请求,进入微中断处理程序。该微程序的入口地址该微程序的入口地址(硬件产生)(硬件产生)即为刚刚执行的即为刚刚执行的微程序的后继微地址。微程序的后继微地址。 2 2以以AM2900AM2900系列芯片构成的微程序系列芯片构成的微程序CPUCPU(自学)(自学) 设计人员在进行微程序设计时,已安排好微中断处理设计人员在进行微程序设计时,已安排好微中断处理程序在控制存储器的位置,因此该微程序段的入口
58、地址是程序在控制存储器的位置,因此该微程序段的入口地址是已知的。当已知的。当CPUCPU响应微中断请求时,由微中断程序的入口地响应微中断请求时,由微中断程序的入口地址。当中断处理完毕后,再返回到原来被中断的程序。这址。当中断处理完毕后,再返回到原来被中断的程序。这也是产生后继微地址的一种情况。也是产生后继微地址的一种情况。(1 1)CPUCPU结构图结构图 (2)MAP (2)MAP的功能是什么?的功能是什么?三、微指令的格式三、微指令的格式 微指令的格式大体上可分成两类:微指令的格式大体上可分成两类:水平型微指令和垂直型水平型微指令和垂直型微指令。微指令。 1. 1. 水平型微指令水平型微指
59、令 特点特点: :在一条微指令中定义并执行多个并行操作微命令。在一条微指令中定义并执行多个并行操作微命令。一般格式为:一般格式为: 控制字段判别测试字段下地址字段控制字段判别测试字段下地址字段 在实际应用中,直接控制法、字段编译法在实际应用中,直接控制法、字段编译法( (直接、间直接、间接编译法接编译法) )经常应用在同一条水平型微指令中。从速度经常应用在同一条水平型微指令中。从速度来看,直接控制法最快,字段编译法要经过译码,所以来看,直接控制法最快,字段编译法要经过译码,所以会增加一些延迟时间。会增加一些延迟时间。2. 2. 垂直型微指令垂直型微指令 在微指令中设置有在微指令中设置有微操作码
60、字段微操作码字段,采用微操,采用微操作码编译法,作码编译法,由微操作码规定微指令的功能由微操作码规定微指令的功能,称,称为垂直型微指令。为垂直型微指令。微操作码微操作码微操作数微操作数 特点:不强调实现微指令的并行控制功能,通常一特点:不强调实现微指令的并行控制功能,通常一条微指令只要求能控制实现一二种操作。这种微指令格条微指令只要求能控制实现一二种操作。这种微指令格式与指令相似;每条指令有一个操作码;每条微指令有式与指令相似;每条指令有一个操作码;每条微指令有一个微操作码一个微操作码。微指令的格式微指令的格式:例:指令字长例:指令字长1616位,微操作码位,微操作码3 3位,有八条微指令如下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 提前解除租赁合同履行时间(2025年版)
- 社会舆论监测与年度应对计划
- 2024年高中化学 第三章 烃的含氧衍生物 第二节 醛教学实录 新人教版选修5
- 六年级下册数学教案-总复习-数与代数-5.常见的量 北师大版
- 社团工作计划鼓励学生参与
- 制定公司市场推广策略的工作计划
- 总复习2024-2025学年三年级上册数学教案(北师大版)
- 熊猫西服美术课件
- 18 井冈翠竹(教案)-2024-2025学年统编版语文七年级下册标签标题
- 护工职业教育
- 中国各省市地图拼图模板
- 《电子探针显微分析》课件
- 2025年中考政治总复习:九年级上册道德与法治重点知识梳理汇编
- 仓储人员安全培训
- 2024届九省联考英语试题(含答案解析、MP3及录音稿)
- 3岁以下婴幼儿托育机构一日生活作息时间表、母乳和配方奶喂养操作流程、婴儿盥洗操作流程
- 小说买断合同范例
- 幼儿园绘本故事《三只小猪盖房子》教学课件全文
- 老年人谵妄护理
- 2023年国家林业和草原局直属事业单位招聘笔试真题
- 垃圾分类处理及综合利用项目可行性研究报告
评论
0/150
提交评论