no.5控制器

上传人:今*** 文档编号:105817784 上传时间:2019-10-13 格式:PPT 页数:70 大小:2.52MB
返回 下载 相关 举报
no.5控制器_第1页
第1页 / 共70页
no.5控制器_第2页
第2页 / 共70页
no.5控制器_第3页
第3页 / 共70页
no.5控制器_第4页
第4页 / 共70页
no.5控制器_第5页
第5页 / 共70页
点击查看更多>>
资源描述

《no.5控制器》由会员分享,可在线阅读,更多相关《no.5控制器(70页珍藏版)》请在金锄头文库上搜索。

1、计算机组成原理,第5章 控制器,第5章 控制器,学习内容: 第1节 基本概念 第2节 指令周期 第3节 硬连线控制器 第4节 微程序控制器 学习目标与要求: 掌握CPU的功能及组成方式 掌握控制器的控制方式 掌握组合逻辑控制器的工作原理和设计方法 掌握微程序控制器的工作原理和设计方法,5.1 基本概念,要使计算机系统完成具体的任务,就要各部件协调工作。CPU的功能就是控制计算机系统各部件协调地工作,具体可归结为以下四个方面: 1.指令控制 若要计算机解决某个问题,程序员就要编制解题程序,而程序是指令的有序集合。按照“存储程序控制”的概念,程序被装入主存后,计算机应能按其预先设定的要求有条不紊地

2、执行指令,方可完成具体的任务。因此,严格控制程序的执行顺序,是CPU的首要任务。,5.1 基本概念,2. 操作控制 一条指令的执行,要涉及计算机中的若干个部件。控制这些部件协同工作,要靠各种操作信号的有机配合。因此,CPU产生操作信号传送给被控部件,并能检测各个部件发送来的信号,是协调各个工作部件按指令要求完成规定任务的基础。 时序控制 要使计算机有条不紊地工作,对各种操作信号的产生时间、稳定时间、撤销时间及相互之间的关系都应有严格的要求。对操作信号施加时间上的控制,称为时序控制。只有严格的时序控制,才能保证各功能部件组合构成有机的计算机系统。,5.1 基本概念,3.数据加工 要完成具体的任务

3、,就不可避免地涉及数值数据的算术运算、逻辑变量的逻辑运算以及其他非数值数据(如字符、字符串)的处理。这些运算和处理,称为数据加工。数据加工处理是完成程序功能的基础,因此,它是CPU的根本任务。 4.异常处理和中断处理 对CPU内部出现的意外情况进行处理。 此外还具有存储器管理、总线管理、电源管理等扩展管理。,5.1 基本概念,CPU由运算器和控制器两大部件组成。 控制器 从内存中取指令,计算下一条指令在内存中的地址。 对指令进行译码,产生相应的操作控制信号。 控制指令执行的步骤和数据流动方向。 运算器 算术逻辑单元(ALU)、累加器、数据缓冲寄存器、寄存器组和状态寄存器组成,它是数据加工处理部

4、件。运算器接受控制器的命令完成具体的数据加工任务。运算器对累加器和数据缓冲寄存器的内容进行算术运算或逻辑运算,运算的结果保存到累加器中,并建立相应的状态标志存放到状态寄存器中。,5.1 基本概念,2.CPU 的寄存器 (1)指令寄存器(IR) 指令寄存器用来存放从存储器中取出的指令。当指令从主存取出暂存于指令寄存器之后,在执行指令的过程中,指令寄存器的内容不允许发生变化,以保证实现指令的全部功能。 (2)程序计数器(PC) 程序计数器又称指令计数器,用来存放正在执行的指令地址或接着要执行的下条指令地址。 对于顺序执行的情况,PC的内容应不断地增量(加“1”),以控制指令的顺序执行。这种加“1”

5、的功能,有些机器是程序计数器本身具有的,也有些机器是借助运算器来实现的。 在遇到需要改变程序执行顺序的情况时,将转移的目标地址送往PC,即可实现程序的转移。有些情况下除改变PC的内容外,还需要保留改变之前的内容,以便返回时使用。, 存储器数据寄存器(DR) 存储器数据寄存器用来暂时存放由主存储器读出的一条指令或一个数据字;反之,当向主存存入一条指令或一个数据字时,也暂时将它们存放在存储器数据寄存器中。 (4)存储器地址寄存器(MAR) 存储器地址寄存器用来保存当前CPU所访问的主存单元的地址。由于主存和CPU之间存在着操作速度上的差别,所以必须使用地址寄存器来保持地址信息,直到主存的读写操作完

6、成为止。 当CPU和主存进行信息交换,无论是CPU向主存存取数据时,还是CPU从主存中读出指令时,都要使用存储器地址寄存器和数据寄存器。, 状态寄存器(SR) 状态标志寄存器用来存放程序状态字(PSW)。程序状态字的各位表征程序和机器运行的状态,是参与控制程序执行的重要依据之一。它主要包括两部分内容:一是状态标志,如进位标志(C)、结果为零标志(Z)等,大多数指令的执行将会影响到这些标志位;二是控制标志,如中断标志、陷阱标志等。状态标志寄存器的位数往往等于机器字长,各类机器的状态标志寄存器的位数和设置位置不尽相同。,5.1 基本概念,数据通路:信息传送的基本路径。 CPU内部的数据通路通常是指

7、运算器与寄存器之间的信息传输通道。 数据通路结构直接影响着CPU内各种信息的传送路径。数据通路不同,指令执行过程的微操作序列的安排也不同,它将直接影响到微操作信号形成部件的设计。 数据通路的建立:总线结构和专用通路,指令译码/控制器,IR,PC,AR,DR,R0,Rn-1,Y,A L U,Z,存储器,地址总线,数据总线,控制信号,SR,总线,控制信号 单总线CPU结构中,控制信号可表示为: PCout,PCin.,寄存器的名字加下标表示,下标为in代表写操作,下标为out代表读操作。 专用通路结构中,数据通路是每个部件专用的,不需要进行输出控制。可以减少输出控制信号。 指令周期:从一条指令的启

8、动到下一条指令的启动的间隔时间。 取指阶段(取指令) 执行阶段(分析指令、执行指令) 机器周期:所有指令执行过程中的一个基准时间 时钟周期:时钟周期是控制计算机操作的最小单位时间,计算机的主频周期。,控制信号举例,PC,IR,AC,CU,时钟,ALU,控制信号,标志,控制 信号,取指周期,以 ADD X 为例,PC,IR,CU,1. 专用通路结构,PC,PC,PC,M D R,M A R,M D R,M A R,控制信号举例,1. 专用通路结构,ADD X 间址周期,M D R,M D R,M A R,控制信号举例,1. 专用通路结构,ADD X 执行周期,AC,ALU,M D R,M A R

9、,M D R,(1) ADD X 取指周期,PC,MDR,OP(IR),控制信号,控制信号,2. 采用 CPU 内部总线方式,MAR,MDR,IR,CU,(2) ADD X 间址周期,MDR,MDR,MDR,IR,MAR,(3) ADD X 执行周期,MDR,Z,AC,(AC)+(Y),MAR,MDR,Y,ALU,AC,Z,ALU,5.2 指令周期,CPU要执行的指令及处理的数据都以二进制代码的形式存放在主存中,从形式上看,数据和指令很难区别。然而,CPU却能区分出哪些是指令,哪些是数据,根据指令的操作要求对数据实现处理。 CPU之所以能够自动地识别指令和数据,又能自动地执行指令,是因为它能按

10、程序中的指令序列取指,并对指令进行译码、执行。CPU取指令、执行指令的序列如下图所示,即CPU在执行程序的过程中,先按程序计数器(PC)的值从主存中取得一条指令,然后译码、执行(执行过程包括从主存中取必要的数据)。紧接着又取下一条指令,译码、执行。依此重复,直至遇到停机指令。,CPU每进行一种操作,都需要时间的开销。因此,CPU取指令、译码、执行需要一定的时间,这一系列操作的时间称为指令周期,指令周期就是CPU从主存中取出一条指令到执行完这条指令所需的时间。不同的指令,所需要的操作不相同,有的复杂,有的简单,因此,它们的操作时间也不相同。例如,一条寄存器间址的数据传送指令的指令周期与一条从主存

11、取数指令的指令周期是不同的。,5.2 指令周期,5.2.1运算指令周期 一条运算指令的执行在专用数据通路需要四个阶段: 1.取指令 PC MAR PC+1 PC(计算下一条指令地址) DBUS MDR,MDR IR 2.指令译码及读取操作数 3.执行 4.写回,5.2.1运算指令周期,一条运算指令的执行在单总线需要六步: 1.送指令地址 PC MAR 2.计算下一条指令地址 PC+1 PC 3.读入指令 DBUS MDR,MDR IR 4.把一个操作数送入运算器。 5.把另一个操作数送入运算器 6.把结果送入指令的计算器,5.2.1运算指令周期,写出在单总线结构中,将R1和R2的数据相加,结果

12、送入R3的指令ADD R3,R1,R2的执行过程。 1.送指令地址 PC MAR 2.计算下一条指令地址 PC+1 PC 3.读入指令 DBUS MDR,MDR IR 4.把一个操作数送入运算器。R1 Y 5.把另一个操作数送入运算器。R2 +Y Z 6.把结果送入指令的计算器。Z R3,5.2 指令周期,5.2.2 访存指令周期 一条读存储器数据的指令的执行过程: 1.取指令 2.指令译码 3.计算地址 4.访存 5.写回,PC MAR PC+1 PC(计算下一条指令地址) DBUS MDR,MDR IR,5.2 指令周期,5.2.2 访存指令周期 一条写存储器数据的指令的执行过程: 1.取

13、指令 2.指令译码 3.计算地址 4.访存,PC MAR PC+1 PC(计算下一条指令地址) DBUS MDR,MDR IR,5.2.2 访存指令周期,写出在单总线的CPU结构中,执行读存储器数据到寄存器的指令LOADR1,mem的过程。 解:(1)PC MAR (2)PC+1 PC (3)DBUS MDR,MDR IR (4)IR(地址字段) MAR,读存储器 (5)DBUS MDR (6)MDR R1,5.2.2 访存指令周期,写出在单总线的CPU结构中,执行写存储器数据到寄存器的指令STORE R1,mem的过程。 解:(1)PC MAR (2)PC+1 PC (3)DBUS MDR,

14、MDR IR (4)IR(地址字段) MAR (5)R1 MDR,写存储器,5.2.3 控制指令周期,条件转移指令有三种安排方法: 1.条件码方法。 由ALU操作设置特定的位作为条件码,这个条件码放在专门的寄存器中。每条指令执行完成时将它的结果条件写入状态存储器,以便于下一条指令进行判断。 2.条件寄存器方法 将条件码放入通用寄存器中,测试带比较结果的任意通用寄存器。 3.比较与转移方法 比较操作是条件转移指令的一部分功能。 一条转移指令的操作过程是: 1.取指令 2.指令译码 3.更新指令地址,5.2.3 控制指令周期,相对转移的目标地址:指令中的地址码+PC 绝对转移的目标地址:指令中的地

15、址码 例写出在单总线结构的计算机中执行相对转移指令JMP offs时的操作步骤(offs是相对转移地址)。 解:(1)PC MAR (2)PC+1 PC (3)DBUS MDR,MDR IR (4)PC Y (5)Y+IR(地址码) Z (6)Z PC,试写出单总线的CPU结构中指令的执行步骤: (1)ADD R1,R2; R1+R2 R1 (2)ADD (R1),R2; (R1)+R2 (R1) (3)MOVE R1,R2; R1 R2 (4)MOVE mem1,mem2; (mem1) mem2 解:取指令操作都是一样的: PC MAR PC+1 PC DBUS MDR,MDR IR (1)R1 Y;Y+R2 Z;Z R1 (2)R1 MAR,读存储器;DBUS MDR;MDR Y;Y+R2 Z;Z MDR,写存储器,(3)MOVE R1,R2; R1 R2 R1 R2 (4)MOVE mem1,R2; (mem1) R2 IR(地址字段) MAR,读存储器;DBUS MDR; MDR MAR,读存储器;DBUS MDR;MDR R2,以单总线的CPU 数据通路结构为背景,试拟出加法指令 ADD R3,B(R2)的读取和执行流程。其中R3 表

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

当前位置:首页 > 高等教育 > 大学课件

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