资源预览内容
第1页 / 共222页
第2页 / 共222页
第3页 / 共222页
第4页 / 共222页
第5页 / 共222页
第6页 / 共222页
第7页 / 共222页
第8页 / 共222页
第9页 / 共222页
第10页 / 共222页
亲,该文档总共222页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第4章 中央处理器 本章主要讨论: 运算器 控制器 数据通路结构 与外部的连接 指令的执行过程,微 命令序列的形成 CPU逻辑组成 CPU工作原理 1 运算器 控制器 数据通路结构 与外部的连接 指令的执行过程,微 命令序列的形成 CPU逻辑组成 CPU工作原理 u CPU由哪些部件组成? u 各部件之间如何交换信息? u CPU如何建立与外部的连接? u CPU如何形成微命令序列, 来控制指令 的执行? 2 CPU的基本组成 l 运算部件组织和运算方法的实现 l 通过一个CPU模型,讨论CPU数据通路结 构和指令的执行过程. 1. 从寄存器传送级分析指令的分步执行 流程. 2. 从微操作控制级阐述寄存器传送的具 体实现. 3 4.1 概述 4.1.1 CPU的基本组成 通常,CPU包含运算部件、寄存器组、微命令 产生部件、时序系统等主要部件,这些部件由CPU内 部的总线连接起来,实现它们之间的信号交换。其中 运算部件和一部分寄存器属于传统运算器部分,另一 部分寄存器、微命令产生部件、时序系统等属于传统 控制器部分。 4 运算部件 寄存器 寄存器 控制部件 运算器控制器 运算器和一部分R 另一部分R 微命令产生部件 时序系统 由CPU内总线连接这 些部件. 5 运算部件 寄存器 寄存器 控制部件 运算器控制器 微型机: CPU集成运算器和控制器 大巨型计算机: 运算器仍需由多块芯片构成, 与控制器保持相对独立. 6 1. 运算部件 对数据进行加工处理。 (1)输入逻辑 (2)ALU (3)输出逻辑 移位器 ALU 选择器 通用寄 存器组 选择器 运算部件的档次: n 只有一个ALU n 一个ALU,配合时序控制 n 一个ALU,有定点乘除部件和浮点运算部件 n 设置多种运算部件 7 2. 寄存器组 寄存器:CPU在处理信息的过程中,用来暂时 存放各种信息。 (1)通用寄存器组 用户可通过编程访问的寄存器,在指令系 统中为它们分配了相应的编号。指令中以寄存 器号来指示。 通用寄存器通过编程,可以实现多种功能 ,如提供操作数,存放运算结果,用作地址指 针,作基址寄存器、变址寄存器等等。 8 独立结构 小型存储器结构 单口 双口 寄存器组构成形式 通用寄存器的命名可以是简单地取名为R0、 R1、R2等。也可以根据各寄存器的基本任务 来命名,如累加器AX、基址寄存器BX、计数寄 存器CX、数据寄存器DX等等。 9 (2)暂存器 暂存器对编程者来说是透明的,即在程序 中不会出现。 作用:暂时存放CPU处理过程中的临时信息, 避免破坏通用寄存器的内容。 例如,实现从内存的单元A传送数据到另一个 单元B。从单元A读出的数据先送到CPU中的 一个暂存器,然后再从暂存器送入单元B。 10 (3)指令寄存器IR 作用:用来存放当前正在执行的指令。控制 器根据其内容(操作码以及地址信息)产生 所需要的各种微命令。 为了提高计算机的处理速度,现代计算 机一般将指令寄存器扩充为指令队列(指令 栈)。形成了指令流水线处理方式. 指令流水线:一次预取多条指令,增加指令间 执行的衔接速度和并行处理能力。 11 (4)程序计数器PC 也叫指令计数器或指令指针。 作用:指示指令在存储器中的存放位置。 程序顺序执行时,每当从主存中取出一条指 令后,PC内容就自动增量计数(pc=pc+1), 指向下一条指令。 程序发生转移时,将转移地址送入PC,使 其指向转移目的地的指令地址。 12 (5)程序状态字寄存器PSW 作用:记录现行程序的运行状态和指示程序的 工作方式。 PSW包括特征状态位和方式控制位两部分。 特征位:进位位C、溢出位V、零值位Z、符号 位S、奇偶位P等。 方式控制位:跟踪位T、中断允许位I、程序优 先级字段、工作方式字段等。 13 (6)地址寄存器MAR 作用:CPU访问主存时,暂时存放所访问单元 地址。 CPU取指令时,先将PC的内容送入MAR,再 由MAR将指令的存放地址送往主存译码。 CPU存取数据时,将数据的存放地址先送到 MAR,再送往主存进行地址译码。 PCMARM,译码 数据存放地址MARM,译码 14 (7)数据缓冲寄存器MBR 作用:存放CPU与主存之间交换的数据。 由CPU写入主存的数据先送入MBR,主存 地址译码找到指定单元后,再将数据从MBR送 入到该单元。 数据MBR该单元 译码,寻址 写入 15 从主存中读出的数据,先送入MBR,然后 再送到指定的CPU内部某寄存器。 MAR和MBR是连接CPU与主存的桥梁,它们 可使CPU与主存之间的数据通路变得比较单一。 这两个寄存器不能编程访问,即对用户透明。 主存数据MBR某R 译码,寻址 读出 16 4.1.3 控制器分类 在计算机内部,程序的执行过程体现为信息 的传送,即在计算机中形成控制流和数据流。 这些信息的传送需要靠各种微命令来控制。 CPU中设置了微命令产生部件,它根据指令 提供的信息产生出各指令所需要的各种微命令 序列。 微命令产生部件可以是由一些组合逻辑电路组 成,也可以由专门的存储逻辑组成。它们分别对 应了组合逻辑控制方式和微程序控制方式。 17 一条指令的读取与执行,需要分步: 取指令 取源操作数 取目的操作数 执行运算操作 存放结果 每个阶段再分为若干步, 微命令也是分步产生 18 4. 时序系统 计算机能够有条不紊地自动执行程序,很 重要的一个原因就是它有一个提供精确时间信 号的时序系统。 时序系统产生计算机所需要的各种时间信 息,如周期、节拍、工作脉冲等。这些信号 的产生依据是一个频率稳定的振荡器,以及 计数分频器或倍频器。 19 CPU基本组成 (整体框架图) 5. CPU内部的数据通路结构 20 l CPU内部各部件之间需要传 送信息,如寄存器将操作数送到 ALU进行运算,ALU将结果送到寄 存器存放。如何将这些部件连接起 来,为信息提供通路?这就涉及 CPU内部的数据结构,这是CPU组 成的核心问题。 21 l 通常,内部较简单的CPU 中 ,只设置一组数据传送总线,用 来连接CPU内的寄存器与ALU部 件,在微处理器中常将这组总线 称为ALU总线。在较复杂的CPU 中,为了提高工作速度,可能设 置了几组数据总线,同时传送多 个数据。 22 l 有的CPU中还包含了用于控制 的存储逻辑部件、管理内存的地址 变换部件,这样除了数据线外,还 有传送地址信息的地址总线。 l 下面介绍几种典型的CPU数据通 路结构: 23 l(1)单组内总线、分立寄存器结构 l 早期的计算机就是采用此结构。其特点: la、采用分立寄存器,各寄存器有自己独立 的输入、输出端口; lb、一组单向数据总线连接寄存器和ALU, 使ALU成为内部数据传送通路的中心。 24 l 在此结构中,ALU通过移位器向内部总 线发送数据,而不是直接从内部总线接收数 据。各寄存器可从内部总线接收数据,但不 能直接向内部总线发送数据。 l 如果一个寄存器向另一个寄存器传数据 ,则只能将数据传到ALU,再由ALU、移位 器来完成。这样ALU的输入端可能汇集了多 个数据,就需要设置两个选择器,每次最多 可选择两个寄存器的内容,送入ALU进行运 算;或只选择一个寄存器的内容,经ALU送 到另一寄存器。 25 l ALU既是运算部件,又是CPU 内部数据传送通路的中心;各寄存 器的内容,是进行运算还是简单的 传送,都要通过ALU后再分配到目 的寄存器。 26 l(2)单组内总线、集成寄存器结构 l 为了提高寄存器的集成度,寄存 器组通常采用小型半导体存储器结构 ,一个存储单元相当一个寄存器,存 储单元的位数就是寄存器字长。用双 向数据总线连接寄存器与ALU,并在 ALU的输入端设置暂存器。 l 27 l 双向数据总线,使ALU既可向内总线 送运算结果,又可从内总线上接收数据; 各寄存器也能从内总线接收数据并向内总 线送数据。这样,ALU与寄存器、寄存器 间的数据传送均可在内总线上进行,简化 了数据传送通路的结构。 l 暂存器的作用是:由于内总线每次仅 提供一个操作数,而ALU也不具备暂存数 据的能力,因此在ALU的输入端设置暂存 器,存放由内总线送来的数据。 28 l(3)多组内总线结构 l 对于速度高的CPU,需要设置多 组数据总线,一个节拍中可以并行 地实现几种数据通路操作,即同时 将多个数据从几个来源地分别送到 各自的目的地。 29 l 现在的CPU结构都较复杂。 例如,设置指令栈(称为指令队 列),以便预取若干条指令;相 应的操作数栈;专用ROM(称 为控制存储器)以存放微程序, 用于存储管理的段地址运算和页 地址运算的多个运算部件;片内 高速Cache等。 30 特点: l 移位器只能向内部总线发送数据,不能直接从 内总线上接收数据 l 寄存器只能从内总线上接收数据,而不能直接 向内总线发送数据 l ALU既是运算部件,又是CPU内数据传送通 路的中心. 31 4.2.1 时序控制方式 l 我们知道:计算机在执行指令时是分步 进行的,因此在微命令的形成逻辑中引入了 时间标志-时序信号,这样,计算机的操作 能在不同的时间段中有序地完成。而操作是 受时序信号同步控制的。当然,计算机机中 也有一些操作,如系统总线上的一些数据传 送则不受时序信号同步控制。 l 通常,把时序信号分为同步控制和异步 控制两大类。 32 l1、同步控制方式 l 指用统一发出的时序信号对各项操 作进行同步控制。这里的时序信号就是 指具有周期、节拍、脉冲等信号。 l 在同步控制中,操作时间被划分为 许多长度固定的时间段,一个时间段就 是一个节拍(时钟周期)。每个时间周 期完成一步操作。不同的计算机有不同 的安排。 33 l 如CPU内部数据通路的一次传送操作 安排在一个时钟周期内完成,因而时钟 周期较短;而访问一次存储器的时间作 为一个时钟周期时间,则时钟周期较长 。 l 时钟周期是基本的时序单位,一旦 确定便固定不变,这就是同步控制方式 的主要特点。 l 34 l CPU根据统一的时钟周期为指 令的执行安排严格的时间表,各 操作必须按时间表执行,即在规 定的时钟周期内完成本步操作, 时钟周期一结束,本步操作也结 束,并开始下一步操作。各步操 作间的衔接由时钟周期自动切换 来控制。 35 l 有许多操作要求在约定的时刻同 步定时执行。例如加法运算中,由于进 位传递的延迟,加法器各位形成稳定的 结果需要一段时间,而将结果送入目的 寄存器的时刻则是严格定时的,这就 需要产生一种统一的同步打入(送入 )脉冲,在脉冲的上升沿时刻打入运 算结果。 36 l时钟周期提供加法运算的时间段。 l同步打入脉冲决定打入运算结果的时刻。 l在一个CPU中可能同时有几个数据传送操 作,如将寄存器R0的内容同时送入寄存器 、,一般需要将它们的打入脉冲同步定 时在同一时刻。 37 l 通常,在CPU内部有一组时序信号系统 ,产生统一的时序信号来控制CPU内部的各 项操作各部件之间的数据传送。 l在一个计算机系统中,主存、各外部设备都 有自己的时序系统,产生相应的时序信号控 制设备内的操作。这里就存在一个问题: l CPU、主存与外部设备之间的数据传送 怎样协调控制? 38 l 在同步控制方式中,一般由CPU提供 统一的时序信号来控制它们的操作。例如 :由CPU提供时钟周期,发出输入脉冲或 输出脉冲,在一个或多个时钟周期内完成 数据在总线上的传送,用输入脉冲或输出 脉冲对数据的接收进行定时。 39 l同步控制方式优点: l1、时序关系简单 l2、时序划分规整 l3、控制结构易于集中,设计方便。 l 所以,在CPU内部、主存、外设等均广泛 采用同步控制方式。 40 l同步控制方式缺点: l1、时间安排不合理。
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号