第8周大课 控制器_第1页
第8周大课 控制器_第2页
第8周大课 控制器_第3页
第8周大课 控制器_第4页
第8周大课 控制器_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1/37计算机组成原理计算机组成原理指令级并行技术指令级并行技术2/37计算机组成原理计算机组成原理控制器概述控制器概述硬布线控制器硬布线控制器微程序控制器微程序控制器 3/37计算机组成原理计算机组成原理掌握控制器的工作原理掌握控制器的工作原理熟悉硬布线控制器和微程序控制器的机理熟悉硬布线控制器和微程序控制器的机理4/37计算机组成原理计算机组成原理4. 1 控制器概述控制器概述 (一)控制器的功能和基本组成(一)控制器的功能和基本组成 CU的功能是,通过对指令的分析(译码),按照一的功能是,通过对指令的分析(译码),按照一定的时序,根据当前处理器的状态(标志),向计算机定的时序,根据当前处

2、理器的状态(标志),向计算机的各个部件(包括控制器本身)发出控制命令的各个部件(包括控制器本身)发出控制命令/信号(即信号(即微命令微命令),部件接受微命令后进行的操作叫做),部件接受微命令后进行的操作叫做微操作微操作。 为了对微操作进行时序控制,处理器用时钟信号为了对微操作进行时序控制,处理器用时钟信号CLK来控制每一个微命令的产生。来控制每一个微命令的产生。 5/37计算机组成原理计算机组成原理4. 1 控制器概述控制器概述 (一)控制器的功能和基本组成(一)控制器的功能和基本组成PCC1时钟信号时钟信号(Clock, CLK) 控制信号产生器控制信号产生器CSG(Control Sign

3、al Generator)S0指令译码器指令译码器IDOPADID指令寄存器指令寄存器IRFR标志寄存器标志寄存器FR程序计数器程序计数器PCS1SnC2 C3控制信号控制信号 6/37计算机组成原理计算机组成原理4. 1 控制器概述控制器概述 (一)控制器的功能和基本组成(一)控制器的功能和基本组成 处理器每取出并执行一条指令所需的全部时间叫处理器每取出并执行一条指令所需的全部时间叫指令周期指令周期。 在一个指令周期内,处理器要完成的操作有在一个指令周期内,处理器要完成的操作有“取指取指”和和“执行执行”。“取指取指”是将一条指令从主存取入到处是将一条指令从主存取入到处理器中,理器中,“执行

4、执行”是对指令进行译码并完成其指定的操是对指令进行译码并完成其指定的操作。作。 这两个操作是有严格的时间顺序的,即先这两个操作是有严格的时间顺序的,即先“取指取指”后后“执行执行”。 (二)三级时序系统(二)三级时序系统7/37计算机组成原理计算机组成原理4. 1 控制器概述控制器概述 (一)控制器的功能和基本组成(一)控制器的功能和基本组成例如,例如,“取指取指”阶段,需要发出的微命令有:阶段,需要发出的微命令有: MAR (PC) R1 PC (PC)+1 MDRM(MAR) IR(MDR) 1. CUOP(IR) (二)三级时序系统(二)三级时序系统8/37计算机组成原理计算机组成原理4

5、. 1 控制器概述控制器概述 (一)控制器的功能和基本组成(一)控制器的功能和基本组成 以加法指令以加法指令ADD M(注:(注:源操作数在主存中,另源操作数在主存中,另一个一个操作数隐含存放在累加器操作数隐含存放在累加器AC中,相加结果仍存回中,相加结果仍存回AC)为例)为例,“执行执行”阶段,需要发出的微命令有:阶段,需要发出的微命令有: MARAD (IR) R1 MDRM(MAR) 1. AC(MDR)+(AC) (二)三级时序系统(二)三级时序系统9/37计算机组成原理计算机组成原理10/37计算机组成原理计算机组成原理4. 1 控制器概述控制器概述 (一)控制器的功能和基本组成(一

6、)控制器的功能和基本组成 不同指令的解释时间不尽相同。为了简化控制,它们不同指令的解释时间不尽相同。为了简化控制,它们一般都是被设计成节拍的某个整数倍一般都是被设计成节拍的某个整数倍基准周期,这个基基准周期,这个基准周期称为机器周期(或准周期称为机器周期(或CPU周期),它的长短取决于指周期),它的长短取决于指令的基本操作和器件的工作速度。令的基本操作和器件的工作速度。 整数倍数可以是整数倍数可以是1倍也可以是多倍。倍也可以是多倍。1倍时,称为单机倍时,称为单机器周期(简称器周期(简称“单周期单周期”)处理器。多倍时,称为多机器周)处理器。多倍时,称为多机器周期(简称期(简称“多周期多周期”)

7、处理器。)处理器。 (二)三级时序系统(二)三级时序系统11/37计算机组成原理计算机组成原理4. 1 控制器概述控制器概述 (一)控制器的功能和基本组成(一)控制器的功能和基本组成 “单周期单周期”处理器中,所有指令的指令周期都是相同的处理器中,所有指令的指令周期都是相同的,等于一个机器周期。指令周期的大小,取决于指令集中最,等于一个机器周期。指令周期的大小,取决于指令集中最复杂指令的执行时间。例如指令周期为复杂指令的执行时间。例如指令周期为9或或10个节拍。个节拍。 由于单周期处理器的效率很低,大多数处理器采用由于单周期处理器的效率很低,大多数处理器采用“多周期多周期”。最简单的多周期就是

8、两周期,即把。最简单的多周期就是两周期,即把“取指取指”所花所花的时间称为的时间称为“取指周期取指周期”,“执行执行”所花的时间称为所花的时间称为“执行执行周期周期”。取指周期和执行周期是等长。取指周期和执行周期是等长。 (二)三级时序系统(二)三级时序系统12/37计算机组成原理计算机组成原理4. 1 控制器概述控制器概述 (一)控制器的功能和基本组成(一)控制器的功能和基本组成 在多周期处理器中,机器周期就变成了所有指令执行在多周期处理器中,机器周期就变成了所有指令执行过程中的一个基准时间。那么,它的长度(即包含的节拍数过程中的一个基准时间。那么,它的长度(即包含的节拍数)应取多少呢?)应

9、取多少呢? (二)三级时序系统(二)三级时序系统 为了保证在一个机器周期至少能够完成一个指令的基为了保证在一个机器周期至少能够完成一个指令的基本操作,一般选取处理器访问一次主存的时间(也称总线周本操作,一般选取处理器访问一次主存的时间(也称总线周期)作为机器周期。期)作为机器周期。 一个标准的、同步总线的总线周期包含一个标准的、同步总线的总线周期包含4个节拍。个节拍。13/37计算机组成原理计算机组成原理4. 1 控制器概述控制器概述 (一)控制器的功能和基本组成(一)控制器的功能和基本组成 不同指令的功能不同,其指令周期也是不尽相同的。不同指令的功能不同,其指令周期也是不尽相同的。例如,例如

10、,JUMP指令和指令和NOP指令就没有执行周期。指令就没有执行周期。 (二)三级时序系统(二)三级时序系统 另外,采用间接寻址的指令,在取指周期之后,还有一另外,采用间接寻址的指令,在取指周期之后,还有一个访问主存,读取操作数地址的周期个访问主存,读取操作数地址的周期间址周期间址周期。 如果在指令执行的末尾,处理器检测到中断请求信号,如果在指令执行的末尾,处理器检测到中断请求信号,且当时处理器处于允许中断的状态,则处理器将在执行周期且当时处理器处于允许中断的状态,则处理器将在执行周期结束后进入结束后进入中断周期中断周期。14/37计算机组成原理计算机组成原理4. 1 控制器概述控制器概述 (一

11、)控制器的功能和基本组成(一)控制器的功能和基本组成 多周期处理器的多周期处理器的CU中应设置中应设置“指令执行阶段的标记指令执行阶段的标记” ,如,如 “FE”、“IND”、“EXE”和和“INT”分别是分别是“取取指周期指周期”、“间址周期间址周期”、“执行周期执行周期”和和“中断周期中断周期”的的状态标志。一个时刻,这些标志只能有一个为状态标志。一个时刻,这些标志只能有一个为“1”。 (二)三级时序系统(二)三级时序系统1FE1IND1EX1INTFEDINDDINTDCLKEXD15/37计算机组成原理计算机组成原理4. 1 控制器概述控制器概述 (一)控制器的功能和基本组成(一)控制

12、器的功能和基本组成“间址周期间址周期”需要发出的微命令有:需要发出的微命令有: MAR AD(IR) R1 MDRM(MAR) 1. MAR(MDR) (二)三级时序系统(二)三级时序系统16/37计算机组成原理计算机组成原理“中断周期中断周期” 需要发出的微命令有:需要发出的微命令有: MDR (PC) /保存断点保存断点PC中的值中的值 MAR(SP) SP (SP)+1 /到到“向上增长的空堆栈向上增长的空堆栈”中中 W 1 1. M(MAR) MDR MDR (PSW) /保存程序状态寄存器的值保存程序状态寄存器的值 MAR(SP) SP (SP)+1 W 1 M(MAR) MDR E

13、INT0 /关中断关中断 PC 中断向量地址中断向量地址 17/37计算机组成原理计算机组成原理 总之,一个机器周期包含了若干个节拍。在每一个节总之,一个机器周期包含了若干个节拍。在每一个节拍内,处理器可以同时执行一个或几个的微操作。拍内,处理器可以同时执行一个或几个的微操作。 指令周期、机器周期和节拍构成了控制器的三级时序指令周期、机器周期和节拍构成了控制器的三级时序系统系统。18/37计算机组成原理计算机组成原理控制器中控制器中“控制信号发生器控制信号发生器”的实现有两种方式:的实现有两种方式:n基于组合逻辑的硬联控制基于组合逻辑的硬联控制/硬布线控制硬布线控制 ( Hardwired C

14、ontrol)n基于存储逻辑的微程序控制基于存储逻辑的微程序控制 ( Microprogrammed Control )硬布线控制器硬布线控制器微程序控制器微程序控制器19/37计算机组成原理计算机组成原理4. 2 硬布线控制器硬布线控制器设计产生控制信号的组合逻辑电路的步骤是:设计产生控制信号的组合逻辑电路的步骤是:(1)写出指令周期中每个节拍内的应发出的微操作;)写出指令周期中每个节拍内的应发出的微操作;(2)列出所有控制信号的操作时间表;)列出所有控制信号的操作时间表;(3)根据时间表,写出每个控制信号的逻辑表达式;)根据时间表,写出每个控制信号的逻辑表达式;(4)根据逻辑表达式,设计组

15、合逻辑电路。)根据逻辑表达式,设计组合逻辑电路。20/37计算机组成原理计算机组成原理设计产生控制信号的组合逻辑电路的步骤是:设计产生控制信号的组合逻辑电路的步骤是:(1)写出指令周期中每个节拍内的应发出的微操作;)写出指令周期中每个节拍内的应发出的微操作; 安排控制信号,首先要严格遵循解释一条指令所要发安排控制信号,首先要严格遵循解释一条指令所要发出的出的/控制信号的先后顺序;控制信号的先后顺序; 其次,对于控制部件不同的控制信号,应安排在一个其次,对于控制部件不同的控制信号,应安排在一个节拍内发出,以缩短时间;节拍内发出,以缩短时间; 最后,对于一些占用时间短的微操作,其控制信号可最后,对

16、于一些占用时间短的微操作,其控制信号可以在一个节拍内,按照规定的先后顺序,依次发出。以在一个节拍内,按照规定的先后顺序,依次发出。4. 2 硬布线控制器硬布线控制器21/37计算机组成原理计算机组成原理1)取指周期的控制信号节拍安排)取指周期的控制信号节拍安排C1:MAR (PC),R1C2:MDRM(MAR)C3:PC (PC)+1C4:IR(MDR),CUOP(IR) 2)算术左移指令)算术左移指令“SHL”执行周期的控制信号节拍安排执行周期的控制信号节拍安排C1:C2:C3:C4:ACR(AC),AC0AC04. 2 硬布线控制器硬布线控制器22/37计算机组成原理计算机组成原理3)取数

17、指令)取数指令“LDA M”执行周期的控制信号节拍安排执行周期的控制信号节拍安排C1:MARAD(IR),R1C2:MDRM(MAR)C3:C4:AC (MDR) 4)存数指令)存数指令“STA M”执行周期的控制信号节拍安排执行周期的控制信号节拍安排C1:MARAD(IR) C2:MDRAC,W1 C3:C4:M(MAR) MDR4. 2 硬布线控制器硬布线控制器23/37计算机组成原理计算机组成原理5)无条件转移指令)无条件转移指令“JMP X”执行周期的控制信号节拍安排执行周期的控制信号节拍安排C1:MARAD(IR),R1C2:MDRM(MAR)C3:C4:PC (MDR) 6)为零转

18、移指令)为零转移指令“JZ X”执行周期的控制信号节拍安排执行周期的控制信号节拍安排C1:C2:C3:C4:PCZFAD(IR)+ ZF(PC) 4. 2 硬布线控制器硬布线控制器24/37计算机组成原理计算机组成原理7)加法指令)加法指令“ADD M”执行周期的控制信号节拍安排执行周期的控制信号节拍安排C1:MARAD(IR),R1C2:MDRM(MAR)C3:C4:AC (AC) + (MDR) 8)求补)求补/取反指令取反指令“COM”执行周期的控制信号节拍安排执行周期的控制信号节拍安排C1:C2:C3:C4:ACAC 4. 2 硬布线控制器硬布线控制器25/37计算机组成原理计算机组成

19、原理列出控制信号的操作时间表。表中,列出控制信号的操作时间表。表中,“1”表示发出控表示发出控制信号,制信号,“0”(省略填写)(省略填写) 表示不发出控制信号。表示不发出控制信号。周期周期标志标志节节拍拍控制信号控制信号SHLLDA MSTA MFE取指取指C1MAR (PC)111R1111C2MDRM(MAR)111C3PC (PC)+1111C4IR(MDR) 111CUOP(IR)1114. 2 硬布线控制器硬布线控制器26/37计算机组成原理计算机组成原理周期标志周期标志节拍节拍控制信号控制信号SHLLDA MSTA MEXE执行执行C1MARAD(IR) 1R11C2MDRM(M

20、AR)1MDRAC1W11C3C4ACR(AC)1AC0AC01AC (MDR)1M(MAR) MDR14. 2 硬布线控制器硬布线控制器27/37计算机组成原理计算机组成原理根据时间表,写出每个控制信号的逻辑表达式根据时间表,写出每个控制信号的逻辑表达式例如,例如,“MDRM(MAR)”的逻辑表达式为:的逻辑表达式为:FE C2(SHL+LDA M+ STA M+ JMP X +JZ X +COM)+ EXEC2(LDA M)= FE C2+ EXEC2(LDA M)= C2FE + EXE(LDA M)其中,其中,SHL、LDA M、STA M、JMP X、JZ X和和COM均均为指令译码

21、器的输出信号。为指令译码器的输出信号。4. 2 硬布线控制器硬布线控制器28/37计算机组成原理计算机组成原理 根据逻辑表达式,画出所有控制信号的组合逻辑电路根据逻辑表达式,画出所有控制信号的组合逻辑电路图。例如下图就是图。例如下图就是“MDRM(MAR)”的逻辑电路图。的逻辑电路图。&FE C2 EXE &LDA M &1MDRM(MAR) 4. 2 硬布线控制器硬布线控制器29/37计算机组成原理计算机组成原理4. 3 微程序控制器微程序控制器 在硬联控制中,不同的控制信号用不同的组合逻辑在硬联控制中,不同的控制信号用不同的组合逻辑电路来实时地生成。这种方法设计复杂、实现成本高。电路来实时

22、地生成。这种方法设计复杂、实现成本高。 既然每条指令需要发出的控制信号都是固定的,而既然每条指令需要发出的控制信号都是固定的,而且已经被分析出来、顺序安排在每个节拍中,那么把这且已经被分析出来、顺序安排在每个节拍中,那么把这些信息存储起来,在解释指令时调出来,直接发出控制些信息存储起来,在解释指令时调出来,直接发出控制信号不就可以了吗?信号不就可以了吗? 的确可以,这种被称为的确可以,这种被称为“微程序控制微程序控制”的方法,在的方法,在1951年就被英国剑桥大学的计算机教授年就被英国剑桥大学的计算机教授Wilkes提出来了(提出来了(所以所以“微程序控制微程序控制”也称也称“Wilkes模型

23、模型”) 。30/37计算机组成原理计算机组成原理微程序控制器的设计原理是:微程序控制器的设计原理是:依据指令的执行步骤中,每一个节拍需要发出的控依据指令的执行步骤中,每一个节拍需要发出的控制信号,编制微指令。一个节拍对应一条微指令。制信号,编制微指令。一个节拍对应一条微指令。把这些微指令编制成微程序。把这些微指令编制成微程序。1.在所有指令的微程序都编制完成后,将其存入控制在所有指令的微程序都编制完成后,将其存入控制器内部的专用只读存储器器内部的专用只读存储器ROM控制存储器(控制存储器(Control Memory, CM)中。)中。4. 3 微程序控制器微程序控制器31/37计算机组成原

24、理计算机组成原理微程序控制器的工作原理是:微程序控制器的工作原理是: 运行时,控制器按顺序从控制存储器(简称控存)运行时,控制器按顺序从控制存储器(简称控存)中读出某条指令对应微程序的微指令,逐拍、逐条送入中读出某条指令对应微程序的微指令,逐拍、逐条送入微指令寄存器微指令寄存器(IR)和译码器,译码后产生所需微命令和译码器,译码后产生所需微命令/控制信号,使相应部件执行所规定的操作,完成对该指控制信号,使相应部件执行所规定的操作,完成对该指令的解释。令的解释。 4. 3 微程序控制器微程序控制器32/37计算机组成原理计算机组成原理 微指令由微指令由“操作控制(控制命令)字段操作控制(控制命令)字段”和和“顺序控顺序控制字段制字段”组成。其中组成。其中“顺序控制字段顺序控制字段”用来在当前微指令用来在当前微指令执行结束后,确定下一条微指令的地址(简称执行结束后,确定下一条微指令的地址(简称“下地址下地址”)。)。 微程序控制器的组成,除了微程序控制器的组成,除了IR、PC、FR和时序系统和时序系统外,增加了控存、微指令寄存器、微指令地址转移逻辑电外,增加了控存、微指令寄存器、微指令地址转移逻辑电路以及微指令地址寄存器(路以及微指令地址寄存器(AR)等部件)等部件.4. 3 微程序控制器微程序控制器33/37计算机组成原理计算机组成原理微指令

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论