1、2023-8-20 2011 第7版1第第 6 6 章章 控制系统与控制系统与CPU 2023-8-202本章学习内容 控制器的功能与组成控制器的功能与组成 控制方式与时序系统控制方式与时序系统 CPUCPU的总体结构的总体结构 组合逻辑控制器设计组合逻辑控制器设计 微程序控制器设计微程序控制器设计2023-8-2036.1 6.1 控制器概述控制器概述 控制器和运算器一起组成中央处理器,即控制器和运算器一起组成中央处理器,即CPU(Central Process Unit)。控制器的功能控制器的功能 根据事先编好并存放在存储器中的解题程根据事先编好并存放在存储器中的解题程序,控制各部件有条不
2、紊地、自动协调地序,控制各部件有条不紊地、自动协调地进行工作。进行工作。2023-8-204 控制器是计算机的指挥和控制中心,由控制器是计算机的指挥和控制中心,由它把计算机的运算器、存储器、它把计算机的运算器、存储器、I/O设备设备等联系成一个有机的系统,并根据各部等联系成一个有机的系统,并根据各部件具体要求,适时地发出各种控制命令,件具体要求,适时地发出各种控制命令,控制计算机各部件自动、协调地进行工控制计算机各部件自动、协调地进行工作。作。2023-8-205 计算机运行程序的基本过程:计算机运行程序的基本过程:1.1.取指令取指令 根据指令地址(由根据指令地址(由PCPC提供),从存储器
3、中取提供),从存储器中取出所要执行的指令出所要执行的指令6.1.1 6.1.1 指令执行的基本步骤指令执行的基本步骤 2023-8-2062.2.分析指令分析指令 对取出的指令进行译码分析。确定指对取出的指令进行译码分析。确定指令应完成的操作,产生相应操作的控制令应完成的操作,产生相应操作的控制电位,参与形成该指令功能所需要的全电位,参与形成该指令功能所需要的全部控制命令(微操作控制信号)。部控制命令(微操作控制信号)。根据寻址方式的分析和指令功能要求,根据寻址方式的分析和指令功能要求,形成操作数的有效地址,并按此地址取形成操作数的有效地址,并按此地址取出操作数据(运算型指令)或形成转移出操作
4、数据(运算型指令)或形成转移地址地址(转移类指令转移类指令),以实现程序转移。,以实现程序转移。2023-8-207 3.3.执行指令执行指令:根据指令分析所产生的操作控制信号和根据指令分析所产生的操作控制信号和形成的有效地址,按一定的算法形成指形成的有效地址,按一定的算法形成指令操作控制序列,控制有关部件完成指令操作控制序列,控制有关部件完成指令规定的功能。令规定的功能。一条指令执行结束,若没有异常情况和一条指令执行结束,若没有异常情况和特殊请求,则按程序顺序,再去取出并特殊请求,则按程序顺序,再去取出并执行下一条指令。执行下一条指令。2023-8-208控制器的任务控制器的任务 按取指令、
5、分析指令、执行指令这样的按取指令、分析指令、执行指令这样的步骤进行周而复始的控制过程,直到完步骤进行周而复始的控制过程,直到完成程序所规定的任务并停机为止。成程序所规定的任务并停机为止。2023-8-209指令指令ADD AADD A,R R7 7的执行过程的执行过程 PC A ALU ID PLA IR 控制信号 R0 R7 RF MAR+1 MEM MDR 取指令 分析(PC)+1 执行 存结果 取指令 CPU RAM 2023-8-2010程序的执行过程程序的执行过程 设有程序:设有程序:MOV AL,07H ADD AL,0AH MOV 20H,AL(1)指令长度均为指令长度均为2字节
6、,其中第一字节字节,其中第一字节为操作码部分,第二字节为形式地址部为操作码部分,第二字节为形式地址部分。分。(2)程序存放在以程序存放在以00H开始的区域内。开始的区域内。2023-8-2011程序执行过程演示程序执行过程演示2023-8-20126.1.2 6.1.2 控制器的基本功能控制器的基本功能 1 1控制指令的正确执行控制指令的正确执行 包括指令流出的控制,分析指令和执行指令的控包括指令流出的控制,分析指令和执行指令的控制,指令流向的控制。制,指令流向的控制。指令流出控制(对取指令的控制)指令流出控制(对取指令的控制)取指令时需进行的操作取指令时需进行的操作(PC)MAR(PC)MA
7、R,Read Read ;给出指令地址,并向;给出指令地址,并向MEMMEM发发 出读命令出读命令(MDR)IR (MDR)IR ;读出的指令经;读出的指令经MDRMDR存放到指存放到指 令寄存器令寄存器IRIR中中(PC)(PC)增量增量PC PC ;为取下一条指令作准备;为取下一条指令作准备2023-8-2013 分析指令和执行指令的控制分析指令和执行指令的控制 IRIR中的指令经指令译码器中的指令经指令译码器(ID)(ID)译码分析,确定译码分析,确定操作性质,判明寻址方式并形成操作数的有效操作性质,判明寻址方式并形成操作数的有效地址。地址。控制器根据分析的结果和形成的有效地址产生控制器
8、根据分析的结果和形成的有效地址产生相应的操作控制信号序列,控制有关的部件完相应的操作控制信号序列,控制有关的部件完成指令所规定的操作功能。成指令所规定的操作功能。例:设某指令的例:设某指令的IRIR1515IRIR121200000000时为时为MOVMOV指令,指令,则则 MOV MOV 的控制信号为:的控制信号为:12131415IRIRIRIRMOV2023-8-2014 指令流向的控制指令流向的控制 指令流向控制即下条指令地址的形成控制。指令流向控制即下条指令地址的形成控制。按指令序列顺序执行时,通过按指令序列顺序执行时,通过PCPC自动增量自动增量形成下条指令的地址。形成下条指令的地
9、址。当需要改变指令流向时,需改变程序计数当需要改变指令流向时,需改变程序计数器器PCPC中的内容。中的内容。转移指令的执行转移指令的执行:把形成的转向地址送入:把形成的转向地址送入PCPC;转子指令的执行转子指令的执行:把子程序入口地址送入:把子程序入口地址送入PCPC;中断处理中断处理:将中断服务程序入口地址送入:将中断服务程序入口地址送入PCPC。为了正确返回,转子和中断还需保留为了正确返回,转子和中断还需保留PCPC被改变被改变之前的内容之前的内容(即返回地址即返回地址)。2023-8-2015 2.2.控制程序和数据的输入及结果的输出控制程序和数据的输入及结果的输出 为完成某项任务而编
10、制的程序及所需数据,必须为完成某项任务而编制的程序及所需数据,必须通过某些输入设备预先存放在存储器中,运算结通过某些输入设备预先存放在存储器中,运算结果要用输出设备输出。所以必须由控制器统一指果要用输出设备输出。所以必须由控制器统一指挥,完成程序和数据的输入及结果的输出。挥,完成程序和数据的输入及结果的输出。3 3异常情况和特殊请求的处理异常情况和特殊请求的处理 机器在运行程序过程中,往往可能会遇到一些异机器在运行程序过程中,往往可能会遇到一些异常情况(如电源掉电、运算溢出等)或某些特殊常情况(如电源掉电、运算溢出等)或某些特殊请求(如打印机请求传送打印字符等)。这些异请求(如打印机请求传送打
11、印字符等)。这些异常和请求往往是事先无法预测的,控制器必须具常和请求往往是事先无法预测的,控制器必须具有检测和处理这些异常情况和特殊请求的功能。有检测和处理这些异常情况和特殊请求的功能。2023-8-2016 宏观上每条指令的执行过程均是宏观上每条指令的执行过程均是取指、取指、译码、执行译码、执行,但每条指令有不同的操作,但每条指令有不同的操作序列,需要在不同时间产生不同的控制序列,需要在不同时间产生不同的控制序列,并有严格的时序要求。控制器必序列,并有严格的时序要求。控制器必须根据不同指令产生不同的控制序列。须根据不同指令产生不同的控制序列。控制器在工作时,需要根据不同的指令、控制器在工作时
12、,需要根据不同的指令、不同的状态条件,在不同的时间,产生不同的状态条件,在不同的时间,产生不同的控制信号,控制计算机的各部件不同的控制信号,控制计算机的各部件自动、协调地进行工作。自动、协调地进行工作。2023-8-2017指指令令执执行行的的一一般般流流程程 开 始 取 指 令,PC 增 量 PC 分 析 指 令 取 操 作 数 计 算 地 址 执 行 转 移,转 向 地 址 PC 执 行 指 令,保 存 结 果 寻 址?转 移 指 令?异 常/中 断?转 去 处 理 Y Y Y N N N 2023-8-2018 6.1.3 6.1.3 控制器的组成控制器的组成 时序信号发生器 指令译码器
13、 地址形成部件 操作码 寻址方式 地址码 启停电路 程序状态寄存器 中断控制逻辑 控制台 脉冲源 I/O 状态信息 微操作控制信号 微操作控制信号形成部件 程序计数器 ALU 通用寄存器组 DB AB DB 指令寄存器 至 MAR或 ALU 至 MAR 增量 2023-8-2019 指令部件的主要功能是完成取指令和分析指令。指令部件的主要功能是完成取指令和分析指令。程序计数器程序计数器 PC(指令计数器、指令地址寄存(指令计数器、指令地址寄存器)器)PC用于保证程序按规定的序列正确运行,并提供用于保证程序按规定的序列正确运行,并提供将要执行指令的地址。将要执行指令的地址。由于由于PC可以指向主
14、存中任一单元的地址,因此它可以指向主存中任一单元的地址,因此它的位数应能表示主存的最大容量并与主存地址寄的位数应能表示主存的最大容量并与主存地址寄存器存器MAR的位数相同。的位数相同。1 1指令部件指令部件2023-8-2020 在在CPU中可以单独设置程序计数器,也可以指中可以单独设置程序计数器,也可以指定通用寄存器中的某一个作为定通用寄存器中的某一个作为PC使用。使用。程序顺序执行时的程序顺序执行时的PC增量可以通过增量可以通过PC本身的本身的计数逻辑实现,也可以由运算器的计数逻辑实现,也可以由运算器的ALU实现。实现。不同机器,实现方法可有所不同。不同机器,实现方法可有所不同。2023-
15、8-2021(2)(2)指令寄存器指令寄存器 IRIR 指令寄存器用于存放当前正在执行的指令。指令寄存器用于存放当前正在执行的指令。当指令从主存取出后,经当指令从主存取出后,经MDRMDR传送到指令寄存器传送到指令寄存器中,以便实现对一条指令执行的全部过程的控制。中,以便实现对一条指令执行的全部过程的控制。2023-8-2022(3)(3)指令译码器指令译码器 IDID 指令译码器是指令分析部件,对指令寄存器中指令译码器是指令分析部件,对指令寄存器中的指令操作码进行译码分析,产生相应操作的的指令操作码进行译码分析,产生相应操作的控制电位,提供给微操作控制信号形成部件。控制电位,提供给微操作控制
16、信号形成部件。对寻址方式字段进行译码分析,以控制操作数对寻址方式字段进行译码分析,以控制操作数有效地址的形成。有效地址的形成。(4)(4)地址形成部件地址形成部件 根据机器所规定的各种寻址方式,形成操作数根据机器所规定的各种寻址方式,形成操作数有效地址。有效地址。在一些微、小型机中,为简化硬件逻辑,通常在一些微、小型机中,为简化硬件逻辑,通常不设置专门的地址形成部件,而是借用运算器不设置专门的地址形成部件,而是借用运算器实现有效地址的计算。实现有效地址的计算。2023-8-20232 2时序控制部件时序控制部件 时序控制部件时序控制部件:用于产生一系列时序信号,为各:用于产生一系列时序信号,为
17、各个微操作定时,以保证各个微操作的执行顺序。个微操作定时,以保证各个微操作的执行顺序。从宏观从宏观(即程序控制即程序控制)上看,计算机的解题过程实上看,计算机的解题过程实质上是指令序列即一条条指令的执行过程。质上是指令序列即一条条指令的执行过程。从微观从微观(即指令控制即指令控制)上看,计算机的解题过程是上看,计算机的解题过程是微操作序列即一个个微操作序列即一个个(或一组组或一组组)微操作的执行过微操作的执行过程。程。微操作微操作:机器最简单的基本操作:机器最简单的基本操作 一条指令的执行过程可以分解为若干微操作。这一条指令的执行过程可以分解为若干微操作。这些微操作有着严格的时间顺序要求,不可
18、随意颠些微操作有着严格的时间顺序要求,不可随意颠倒。倒。2023-8-2024(1)(1)脉冲源脉冲源 脉冲源用于产生一定频率的主时钟脉冲。一般采脉冲源用于产生一定频率的主时钟脉冲。一般采用石英晶体振荡器作为脉冲源。计算机电源一接用石英晶体振荡器作为脉冲源。计算机电源一接通,脉冲源立即按规定频率给出时钟脉冲。通,脉冲源立即按规定频率给出时钟脉冲。(2)(2)启停电路启停电路 启停电路用于控制整个机器工作的启动与停止。启停电路用于控制整个机器工作的启动与停止。实际上是保证可靠地送出或封锁主时钟脉冲,控实际上是保证可靠地送出或封锁主时钟脉冲,控制时序信号的发生与停止。制时序信号的发生与停止。202
19、3-8-2025(3)(3)时序信号发生器时序信号发生器 时序信号发生器用于产生机器所需的各种时序时序信号发生器用于产生机器所需的各种时序信号,以便控制有关部件在不同的时间完成不信号,以便控制有关部件在不同的时间完成不同的微操作。同的微操作。不同的机器,有着不同的时序信号。在同步控不同的机器,有着不同的时序信号。在同步控制的机器中,一般包括周期、节拍、脉冲等三制的机器中,一般包括周期、节拍、脉冲等三级时序信号。级时序信号。2023-8-2026 微操作控制信号形成部件微操作控制信号形成部件:根据指令部件提供:根据指令部件提供的操作控制电位、时序部件所提供的各种时序的操作控制电位、时序部件所提供
20、的各种时序信号以及有关的状态条件,产生机器所需要的信号以及有关的状态条件,产生机器所需要的各种微操作控制信号。各种微操作控制信号。不同的指令,完成不同的功能,需要不同的微不同的指令,完成不同的功能,需要不同的微操作控制信号序列。每条指令都有自己对应的操作控制信号序列。每条指令都有自己对应的微操作序列。控制器必须根据不同的指令,在微操作序列。控制器必须根据不同的指令,在不同的时间,产生并发出不同的微操作控制信不同的时间,产生并发出不同的微操作控制信号,控制有关部件协调工作,完成指令所规定号,控制有关部件协调工作,完成指令所规定的任务。的任务。3 3微操作控制信号形成部件微操作控制信号形成部件20
21、23-8-20274 4中断控制逻辑(中断机构)中断控制逻辑(中断机构)用于实现异常情况和特殊请求的处理。用于实现异常情况和特殊请求的处理。2023-8-2028 程序状态寄存器程序状态寄存器:用于存放程序的工作状态:用于存放程序的工作状态(如管态、目态等如管态、目态等)和指令执行的结果特征和指令执行的结果特征(如如结果为零、结果溢出等结果为零、结果溢出等),把它所存放的内容,把它所存放的内容称为程序状态字称为程序状态字(PSW)(PSW)。PSWPSW表明了系统的基本表明了系统的基本状态,是控制程序执行的重要依据。不同的机状态,是控制程序执行的重要依据。不同的机器,器,PSWPSW的格式及内
22、容不完全相同。的格式及内容不完全相同。5 5程序状态寄存器程序状态寄存器 PSRPSR2023-8-2029 例:例:8086 CPU8086 CPU中的中的PSWPSW的格式的格式 CFCF:进位:进位 PFPF:奇偶:奇偶 AFAF:半进位:半进位 ZFZF:结果为:结果为0 SF0 SF:符号:符号 TFTF:单步:单步(陷阱陷阱)IFIF:中断允许:中断允许 DFDF:地址增:地址增/减量减量 OFOF:溢出:溢出1515141413131212111110109 98 87 76 65 54 43 32 21 10 0OFDFIFTFSFZFAFPFCF2023-8-2030 控制台
23、用于实现人与机器之间的通信联系,如控制台用于实现人与机器之间的通信联系,如启动或停止机器的运行、监视程序运行过程、启动或停止机器的运行、监视程序运行过程、对程序进行必要的修改或干预等。对程序进行必要的修改或干预等。早期有硬件控制台,用于设置地址和指令。现早期有硬件控制台,用于设置地址和指令。现在,在大型机中有软件控制台。通过控制台命在,在大型机中有软件控制台。通过控制台命令,控制机器的启停,干预机器的工作。令,控制机器的启停,干预机器的工作。6 6控制台控制台2023-8-2031 控制器的组成方式主要是指微操作控制信号形控制器的组成方式主要是指微操作控制信号形成部件采用何种组成方式产生微操作
24、控制信号。成部件采用何种组成方式产生微操作控制信号。根据产生微操作控制信号的方式不同,控制器根据产生微操作控制信号的方式不同,控制器可分为可分为组合逻辑型、存储逻辑型、组合逻辑与组合逻辑型、存储逻辑型、组合逻辑与存储逻辑结合型存储逻辑结合型三种,它们的根本区别在于微三种,它们的根本区别在于微操作信号发生器的实现方法不同,而控制器中操作信号发生器的实现方法不同,而控制器中的其他部分基本上是大同小异的。的其他部分基本上是大同小异的。6.1.4 6.1.4 控制器的组成方式控制器的组成方式2023-8-20321 1组合逻辑型组合逻辑型 组合逻辑组合逻辑控制器也称为控制器也称为硬联逻辑硬联逻辑或或硬
25、布线逻辑硬布线逻辑。组合逻辑控制器组合逻辑控制器是根据控制要求和状态,采用组是根据控制要求和状态,采用组合逻辑技术来实现的。其微操作信号发生器是由合逻辑技术来实现的。其微操作信号发生器是由门电路组成的复杂树形网络构成的。门电路组成的复杂树形网络构成的。组合逻辑组合逻辑控制器的设计目标:使用最少器件数和控制器的设计目标:使用最少器件数和取得最高操作速度。取得最高操作速度。优点:速度快。优点:速度快。巨型机和巨型机和RISCRISC机为了追求高速度机为了追求高速度采用组合逻辑控制器。采用组合逻辑控制器。缺点:微操作信号发生器结构不规整,设计、调缺点:微操作信号发生器结构不规整,设计、调试、维修较困
26、难,难以实现设计自动化。一旦控试、维修较困难,难以实现设计自动化。一旦控制部件构成之后,要想增加新的控制功能是不可制部件构成之后,要想增加新的控制功能是不可能的。能的。2023-8-20332 2存储逻辑型存储逻辑型 存储逻辑型存储逻辑型控制器称为控制器称为微程序控制器微程序控制器。它是采用。它是采用存储逻辑来实现的。存储逻辑来实现的。存储逻辑型存储逻辑型控制器的实现方法:控制器的实现方法:把微操作信号代码化,使每条机器指令转化成为把微操作信号代码化,使每条机器指令转化成为一段微程序存入控制存储器中。执行指令时,读一段微程序存入控制存储器中。执行指令时,读出控存中的微指令,由微指令产生微操作控
27、制信出控存中的微指令,由微指令产生微操作控制信号。号。优点:设计规整,调试、维修便利,更改、扩充优点:设计规整,调试、维修便利,更改、扩充指令方便,易于实现自动化设计。指令方便,易于实现自动化设计。缺点:由于增加了一级控制存储器,所以指令的缺点:由于增加了一级控制存储器,所以指令的执行速度比组合逻辑控制器慢。执行速度比组合逻辑控制器慢。2023-8-20343 3组合逻辑和存储逻辑结合型组合逻辑和存储逻辑结合型 组合逻辑和存储逻辑结合型控制器称为组合逻辑和存储逻辑结合型控制器称为PLAPLA控控制器。制器。PLAPLA控制器是吸收前两种的设计思想来实现的。控制器是吸收前两种的设计思想来实现的。
28、PLAPLA控制器实际上也是一种组合逻辑控制器,控制器实际上也是一种组合逻辑控制器,但它的输出程序可编的,某一微操作控制信号但它的输出程序可编的,某一微操作控制信号由由PLAPLA的某一输出函数产生。的某一输出函数产生。PLAPLA控制器是组合逻辑技术和存储逻辑技术结控制器是组合逻辑技术和存储逻辑技术结合的产物,它克服了两者的缺点,是一种较有合的产物,它克服了两者的缺点,是一种较有前途的方法。前途的方法。2023-8-2035 以上几种控制器的设计方法是以上几种控制器的设计方法是不同不同的,但产生的,但产生的微操作命令的功能是的微操作命令的功能是相同相同的,并且各个控制的,并且各个控制条件基本
29、上也是一致的,都是由时序电路、操条件基本上也是一致的,都是由时序电路、操作码译码信号,以及被控部件的反馈信息有机作码译码信号,以及被控部件的反馈信息有机配合而成的。配合而成的。从功能上看,这几种控制器只是微操作信号发从功能上看,这几种控制器只是微操作信号发生器的结构和原理不同,而外部的输入条件和生器的结构和原理不同,而外部的输入条件和输出结果几乎完全相同。输出结果几乎完全相同。2023-8-2036微操作信号发生器微操作信号发生器 指令译码器 ID 微操作控制信号 微操作控制信号发生器 时序信号 各部件状态反馈信号 译码输出 2023-8-2037 6.2 6.2 控制器的控制方式与时序系统控
30、制器的控制方式与时序系统 计算机执行指令的过程实际上是执行一系列的计算机执行指令的过程实际上是执行一系列的微操作的过程。每一条指令都对应着一个微操微操作的过程。每一条指令都对应着一个微操作序列,这些微操作中有些可以同时执行,有作序列,这些微操作中有些可以同时执行,有些则必须按严格的时间关系执行。些则必须按严格的时间关系执行。控制器的控制方式需解决的问题:控制器的控制方式需解决的问题:如何在时间上对各种微操作信号加以控制。如何在时间上对各种微操作信号加以控制。2023-8-20386.2.1 6.2.1 控制方式控制方式 常用的控制方式有同步控制、异步控制和联合控常用的控制方式有同步控制、异步控
31、制和联合控制。制。1 1同步控制方式同步控制方式 任何指令的运行或指令中各个微操作的执行,均任何指令的运行或指令中各个微操作的执行,均由确定的具有统一基准时标的时序信号所控制。由确定的具有统一基准时标的时序信号所控制。即所有的操作均由统一的时钟控制,在标准的时即所有的操作均由统一的时钟控制,在标准的时间内完成。间内完成。在在同步控制方式下,同步控制方式下,每个时序信号的结束就意味每个时序信号的结束就意味着安排完成的工作已经完成,随即开始执行后续着安排完成的工作已经完成,随即开始执行后续的微操作或自动转向下条指令的运行。的微操作或自动转向下条指令的运行。2023-8-2039 典型的同步控制方式
32、:典型的同步控制方式:以微操作序列最长的指令和执行时间最长的微以微操作序列最长的指令和执行时间最长的微操作为标准,把一条指令执行过程划分为若干操作为标准,把一条指令执行过程划分为若干个相对独立的阶段(称为周期)或若干个时间个相对独立的阶段(称为周期)或若干个时间区间(称为节拍),采用完全统一的周期(或区间(称为节拍),采用完全统一的周期(或节拍)控制各条指令的执行。节拍)控制各条指令的执行。优点优点:时序关系简单,控制方便:时序关系简单,控制方便 缺点缺点:浪费时间。:浪费时间。因为对比较简单的指令,将有很多节拍是不用因为对比较简单的指令,将有很多节拍是不用的,处于等待。所以,在实际应用中都不
33、采用的,处于等待。所以,在实际应用中都不采用这种典型的同步控制方式,而是采用某些折衷这种典型的同步控制方式,而是采用某些折衷的方案。的方案。2023-8-2040(1)(1)采用中央控制与局部控制相结合的方法采用中央控制与局部控制相结合的方法 中央控制中央控制:统一节拍的控制:统一节拍的控制 根据大多数指令的微操作序列的情况,设置一根据大多数指令的微操作序列的情况,设置一个统一的节拍数,使之大多数指令均能在统一个统一的节拍数,使之大多数指令均能在统一的节拍内完成。的节拍内完成。局部控制局部控制:在延长节拍内的控制:在延长节拍内的控制 对于少数在统一节拍内不能完成的指令,采用对于少数在统一节拍内
34、不能完成的指令,采用延长节拍或增加节拍数,使之在延长节拍内完延长节拍或增加节拍数,使之在延长节拍内完成,执行完毕再返回中央控制。成,执行完毕再返回中央控制。2023-8-2041 例:设某计算机的指令通常用例:设某计算机的指令通常用8 8个节拍完成,个节拍完成,即有即有8 8个中央节拍个中央节拍 W W7 7W W0 0,当某指令在,当某指令在8 8个节个节拍中不能完成时,就插入若干局部节拍拍中不能完成时,就插入若干局部节拍 W W6 6*,经过若干局部节拍经过若干局部节拍 W W6 6*后,再返回中央节拍后,再返回中央节拍 W W7 7。W0 W1 W2 W3 W4 W5 W6 W*6 W7
35、 W*6 W*6 指令周期 中央节拍 局部节拍 2023-8-2042(2)(2)采用不同的机器周期和延长节拍的方法采用不同的机器周期和延长节拍的方法 把一条指令执行过程划分为若干机器周期,如把一条指令执行过程划分为若干机器周期,如取指、取数、执行等周期。根据所执行指令的取指、取数、执行等周期。根据所执行指令的不同需要,选取不同的机器周期数。在节拍安不同需要,选取不同的机器周期数。在节拍安排上,每个周期划分为固定的节拍,每个节拍排上,每个周期划分为固定的节拍,每个节拍都可根据需要延长一个节拍。都可根据需要延长一个节拍。这种方法可以解决执行不同的指令所需时间不这种方法可以解决执行不同的指令所需时
36、间不统一问题。统一问题。在在Intel 8088 Intel 8088 的指令执行过程中有读写周期、的指令执行过程中有读写周期、内部周期等,其中读写周期为内部周期等,其中读写周期为4 4个节拍,但可个节拍,但可以延长若干个节拍。以延长若干个节拍。2023-8-2043(3)(3)采用分散节拍的方法采用分散节拍的方法 分散节拍分散节拍:运行不同指令时,需要多少节拍,:运行不同指令时,需要多少节拍,时序部件就发生多少节拍。时序部件就发生多少节拍。这种方法可完全避免节拍轮空,是提高指令运这种方法可完全避免节拍轮空,是提高指令运行速度的有效方法,但这种方法使时序部件复行速度的有效方法,但这种方法使时序
37、部件复杂化。同时还不能解决节拍内那些简单的微操杂化。同时还不能解决节拍内那些简单的微操作因等待所浪费的时间。作因等待所浪费的时间。2023-8-2044 2 2异步控制方式异步控制方式 没有统一的同步信号,采用问答方式进行时序协没有统一的同步信号,采用问答方式进行时序协调,将前一操作的回答信号作为下一操作的启动调,将前一操作的回答信号作为下一操作的启动信号。信号。异步控制方式异步控制方式不仅要区分不同指令对应的微操作不仅要区分不同指令对应的微操作序列的长短,而且要区分其中每个微操作的繁简,序列的长短,而且要区分其中每个微操作的繁简,每条指令、每个微操作需要多少时间就占用多少每条指令、每个微操作
38、需要多少时间就占用多少时间。时间。这种方式不再有统这种方式不再有统的周期、节拍,各个操作之的周期、节拍,各个操作之间采用应答方式衔接,前一操作完成后给出回答间采用应答方式衔接,前一操作完成后给出回答信号,启动下一个操作。信号,启动下一个操作。2023-8-2045数据数据间隔可变间隔可变发送准发送准备好备好数据已数据已接受接受 这种方式可根据每条指令的操作的实际需要而这种方式可根据每条指令的操作的实际需要而分配时间,所以没有时间上的浪费,效率高。分配时间,所以没有时间上的浪费,效率高。但设计复杂且费设备。但设计复杂且费设备。2023-8-20463 3联合控制方式联合控制方式 联合控制是联合控
39、制是将同步控制和异步控制相结合。将同步控制和异步控制相结合。联合控制方式联合控制方式的设计思想:的设计思想:在功能部件内部采用同步方式或以同步方式为在功能部件内部采用同步方式或以同步方式为主的控制方式;在功能部件之间采用异步方式。主的控制方式;在功能部件之间采用异步方式。通常对可以统一的微操作采用同步控制,对难通常对可以统一的微操作采用同步控制,对难以统一的微操作采用异步控制。以统一的微操作采用异步控制。2023-8-2047 例如,在微、小型机中,例如,在微、小型机中,CPU内部基本时序采内部基本时序采用同步控制方式,当用同步控制方式,当CPU通过总线与主存或其通过总线与主存或其它外设交换数
40、据时,转入异步控制。它外设交换数据时,转入异步控制。当当CPU访问外设时,只需给出起始信号,主存访问外设时,只需给出起始信号,主存或外部设备即按自己的时序信号去安排操作,或外部设备即按自己的时序信号去安排操作,一旦操作结束,则向一旦操作结束,则向CPU发结束信号,以便发结束信号,以便CPU再安排它的后继工作。再安排它的后继工作。2023-8-2048同步与异步时序的衔接关系同步与异步时序的衔接关系 当当CPUCPU要访主存时,在发读信号要访主存时,在发读信号READREAD同时发同时发“等待等待”信号,等待信号使时序由同步转入异信号,等待信号使时序由同步转入异步操作并冻结同步时序,使节拍间的相
41、位关系步操作并冻结同步时序,使节拍间的相位关系不再发生变化,直到存储器按自己速度操作结不再发生变化,直到存储器按自己速度操作结束,并向束,并向CPUCPU发回答信号发回答信号MOCMOC才解除对同步时序才解除对同步时序的冻结,机器回到同步时序按原时序关系继续的冻结,机器回到同步时序按原时序关系继续运行。运行。2023-8-2049 W0 W1 W2 W3 冻结 等待 READ MOC TCPU Ts TCPU 2023-8-2050 实际上现代计算机中几乎没有完全采用实际上现代计算机中几乎没有完全采用同步或完全采用异步的控制方式,大多同步或完全采用异步的控制方式,大多数都采用联合控制方式。数都
42、采用联合控制方式。2023-8-20516.2.2 6.2.2 时序系统时序系统 时序系统是控制器的心脏,由它为指令的执行提时序系统是控制器的心脏,由它为指令的执行提供各种定时信号。通常,设计时序系统主要是针供各种定时信号。通常,设计时序系统主要是针对对同步控制同步控制方式的。方式的。1 1指令周期与机器周期指令周期与机器周期 指令周期指令周期:从取指令、分析指令到执行完一条指:从取指令、分析指令到执行完一条指令所需的全部时间。令所需的全部时间。由于各种指令的操作功能不同,繁简程度不同,由于各种指令的操作功能不同,繁简程度不同,因此各种指令的指令周期也不尽相同。因此各种指令的指令周期也不尽相同
43、。2023-8-2052 机器周期机器周期(CPUCPU周期周期):指令周期中的某一工):指令周期中的某一工作阶段所需的时间。在指令执行过程中,各机作阶段所需的时间。在指令执行过程中,各机器周期相对独立。器周期相对独立。一条指令的指令周期由若干个机器周期所组成,一条指令的指令周期由若干个机器周期所组成,每个机器周期完成一个基本操作每个机器周期完成一个基本操作。所以机器周。所以机器周期也称为期也称为基本周期基本周期。一般机器的一般机器的CPUCPU周期有取指周期、取数周期、周期有取指周期、取数周期、执行周期,中断周期等。执行周期,中断周期等。2023-8-2053 每个机器周期设置一个周期状态触
44、发器与之对每个机器周期设置一个周期状态触发器与之对应,机器运行于哪个周期,与其对应的周期状应,机器运行于哪个周期,与其对应的周期状态触发器被置为态触发器被置为“1”。显然,机器运行的任何。显然,机器运行的任何时刻都只能建立一个周期状态,因此同一时刻时刻都只能建立一个周期状态,因此同一时刻只能有一个周期状态触发器被置为只能有一个周期状态触发器被置为“1”。不同工作周期所占的时间可以不等。由于不同工作周期所占的时间可以不等。由于CPU内部操作速度快,而内部操作速度快,而CPU访存所花时间较长,访存所花时间较长,所以许多计算机系统往往以所以许多计算机系统往往以主存周期主存周期为基础来为基础来规定规定
45、CPU周期,以便二者工作协调配合。周期,以便二者工作协调配合。2023-8-2054 把一个机器周期等分成若干个时间区间,每一把一个机器周期等分成若干个时间区间,每一时间区间称为一个时间区间称为一个节拍节拍。一个节拍对应一个电位信号,控制一个或几个一个节拍对应一个电位信号,控制一个或几个微操作的执行。微操作的执行。在一个机器周期内,要完成若干个微操作,这在一个机器周期内,要完成若干个微操作,这些微操作不但需要占用一定的时间,而且有一些微操作不但需要占用一定的时间,而且有一定的先后次序。因此,在同步控制方式中,基定的先后次序。因此,在同步控制方式中,基本的控制方法就是把一个机器周期等分成若干本的
46、控制方法就是把一个机器周期等分成若干个节拍,每一个节拍完成一步基本操作,如一个节拍,每一个节拍完成一步基本操作,如一次传送、一次加减运算等。次传送、一次加减运算等。一个节拍电位信号的宽度取决于一个节拍电位信号的宽度取决于CPUCPU完成一个完成一个基本操作的时间基本操作的时间。2 2节拍节拍2023-8-2055 节拍提供了一项基本操作所需的时间分段,节拍提供了一项基本操作所需的时间分段,但有的操作如打入寄存器,还需严格的定时脉但有的操作如打入寄存器,还需严格的定时脉冲,以确定在哪一时刻打入。节拍的切换,也冲,以确定在哪一时刻打入。节拍的切换,也需要严格的同步定时。需要严格的同步定时。所以在一
47、个节拍内,有所以在一个节拍内,有时还需要设置一个或几个工作脉冲,用于寄存时还需要设置一个或几个工作脉冲,用于寄存器的复位和接收数据等。器的复位和接收数据等。脉冲脉冲:一个节拍内设置的一个或几个工作脉冲。:一个节拍内设置的一个或几个工作脉冲。3.3.脉冲(定时脉冲)脉冲(定时脉冲)2023-8-2056 常见的设计是在每个节拍的末尾发一次工作脉常见的设计是在每个节拍的末尾发一次工作脉冲,脉冲前沿可用来打入运算结果(或传送),冲,脉冲前沿可用来打入运算结果(或传送),脉冲后沿则实现周期的切换。脉冲后沿则实现周期的切换。也有的计算机,在一个节拍中先后发出几个工也有的计算机,在一个节拍中先后发出几个工
48、作脉冲,有的脉冲位于节拍前端,可用作清除作脉冲,有的脉冲位于节拍前端,可用作清除脉冲;有的脉冲位于中部,用作控制外围设备脉冲;有的脉冲位于中部,用作控制外围设备的输入的输入/输出脉冲;有的脉冲位于尾部,前沿输出脉冲;有的脉冲位于尾部,前沿用作用作CPUCPU内部的打入,后沿实现周期切换。内部的打入,后沿实现周期切换。2023-8-2057 周期、节拍、脉冲构成了三级时序系统,它们周期、节拍、脉冲构成了三级时序系统,它们之间关系如下图所示。图中包括两个机器周期之间关系如下图所示。图中包括两个机器周期M M1 1、M M2 2,每个周期包含四个节拍,每个周期包含四个节拍W W0 0W W3 3,每
49、个,每个节拍内有一个脉冲节拍内有一个脉冲P P。W0 W1 W2 W3 M1 M2 P 2023-8-2058 微型机中常用的时序系统与上述三级时序系统微型机中常用的时序系统与上述三级时序系统有所不同,称之为时钟周期时序系统。有所不同,称之为时钟周期时序系统。下图所示的是一典型指令的基本时序,一个指下图所示的是一典型指令的基本时序,一个指令周期包含三个机器周期:取指周期、存储器令周期包含三个机器周期:取指周期、存储器读周期和存储器写周期,三个周期中分别包含读周期和存储器写周期,三个周期中分别包含4 4个、个、3 3个、个、3 3个时钟周期。个时钟周期。T1 T2 T3 T4 T1 T2 T3
50、T1 T2 T3 取指周期 存储器读周期 存储器写周期 指令周期 2023-8-20596.3 CPU6.3 CPU的总体结构的总体结构 CPUCPU即中央处理器,它包含运算器和控制器两个即中央处理器,它包含运算器和控制器两个部分。其功能为:部分。其功能为:程序控制程序控制:控制程序按所要求的次序正确执:控制程序按所要求的次序正确执行。行。操作控制操作控制:管理何时产生每条指令所需的操:管理何时产生每条指令所需的操作信号,送往有关部件,控制完成指令规定的作信号,送往有关部件,控制完成指令规定的操作。操作。时序控制时序控制:对各种操作实施时间上的定时,:对各种操作实施时间上的定时,使计算机有条不