SlideShare a Scribd company logo
1 of 55
CPU 林楠 办公室: 408 办公电话: 0371-63887293 电子邮件: [email_address] 《 计算机组成原理 》 第八章  CPU 的结构与功能( 最难 ) (含 第八章 + 第四篇) 系 统 总 线 存储器  运算器  控制器  接口与通信  输入 / 输出设备 Cache
中央处理器这一章是重点和难点,组成原理考试几乎必考的章节。 第八章  CPU 的结构与功能 识记 指令流水线 1.  指令流水线的基本概念 2.  超标量流水和动态流水线的基本概念 这主要是选择题的考点。 熟练掌握 控制器的功能和工作原理 1.  硬布线控制器 2.  微程序控制器 微程序、微指令和微命令;微指令格式;微命令的编码方式;微地址的形成方式 这又是一个综合应用题点,可以考查的微程序控制器相关的原理;还可以在选择题中出现两种不同控制器的对比。 掌握 数据通路的功能和基本结构 熟练掌握 指令的执行过程 这里可以出现综合应用题,结合微指令的考点考查一条指令执行的各个步骤。 掌握 CPU 的功能和基本结构
通过本章的学习,我们应在 CPU 一级上建立起 整机要领 。 它包含两个方面: 1 ) CPU 的逻辑组成: 内部有哪些部件,以 数据通路 为核心的总体结构,与外部的连接。 2 ) CPU 如何工作: 即如何分时形成 控制命令 序列,以执行指令程序。 第八章  CPU 的结构与功能
8.1  CPU 的基本功能与组成( 8.1 ) 8.2  时序系统和控制方式( 8.2 8.3 9 ) 8.3  组合逻辑设计( 10 ) 8.4  微程序设计( 10 ) 第八章  CPU 的结构与功能
8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) Cache (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4  多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成
当我们使用计算机解决某个问题时,我们首先必须为它 编写程序 。 程序 是 一个指令序列 ,它告诉计算机执行什么操作,到哪里找操作数。 一旦把程序装入主存,就由 计算机 自动完成取出指令 和 执行指令 。 用来完成此工作的部件为 中央处理器 ,简称 CPU , CPU 是机器指令的解释和执行机构,是计算机的核心部件。      CPU 对整个计算机系统的运行是极其重要的,    指令控制    操作控制    时间控制    数据加工  8.1.1 CPU 的基本功能 它具有四方面 的基本功能:
CPU 四方面的基本功能:  指令控制: 解决程序的 顺序控制 问题。 程序是一个指令序列,这些指令的相互顺序不能任意改变, 必须严格按程序规定的顺序进行。  操作控制: 一条指令的功能往往是由若干个操作信号的组合来实现, 因此, CPU 管理并产生由内存取出的每条指令的操作信号, 把各种操作信号送往相应的部件 ,从而控制这些部件按指 令的要求进行工作。  时间控制: 解决各种操作 执行时间上的定时 问题。 在计算机中,各种指令的操作信号以及一条指令的整个执行 过程都受到时间的严格定时。 数据加工: 数据加工就是 对操作数进行算术运算 和 逻辑运算 。 8.1.1 CPU 的基本功能
8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) Cache (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4  多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成
CPU 的三大基本部分: 运算器 、 Cache 和 控制器 。        8.1.2 CPU 的基本组成 系 统 总 线 存储器  运算器  控制器  接口与通信  输入 / 输出设备 Cache  CPU
8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) Cache (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4  多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成 运算器  控制器  Cache  CPU
8.1.2 CPU 的基本组成—— 1 )运算器 包括: ALU 算术 / 逻辑单元 , 阵列乘除器, 寄存器组 (数据寄存器,累加器等) 多路转换器(选择门), 数据总线(内部总线) 等逻辑构成。 移位门 ALU 选择门 A 选择门 B 通用 寄存器 数据总线 数据总线 定点运算器的基本结构框图 定点运算器 是数据的加工处理部件, 是 CPU 的重要组成部分。 相对控制器而言,运算器 接受控制器的命令 进行操作 , 运算器 所完成的全部操作都是 由 控制器 发出的控制信号 来指挥。 运算器是执行部件, 执行所有的算术与逻辑运算。
8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) Cache (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4  多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成 运算器  控制器  Cache  CPU
为了弥补主存速度的不足,在 CPU 与 主存 之间设置一个  高速小容量的缓冲存储器 ,称 高速缓存( Cache ), 主要由 SRAM 组成。 其工作原理如下: CPU Cache 主存 DRAM 主存地址 字 块 我们利用程序运行的局部性特点,把 CPU 正在访问和即将访问的若干程序块和数据块从主存调入高速缓存中,使 CPU 大部分从高速缓存中读取指令和存取数据,极大地提高了 CPU 的访问速度。 8.1.2 CPU 的基本组成—— 2 ) Cache
8.1.2 CPU 的基本组成—— 2 ) Cache 映象 :其物理意义就是位置的对应关系, 将主存地址变成 Cache 地址 。 常见的映象方式主要有三种: 1 )直接映象 2 )全相联映象 3 )组相联映象 CPU Cache 主存 DRAM 地址总线 相联 存储表 命中 未命中 数据总线
8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) Cache (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4  多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成 运算器  控制器  Cache  CPU
控制器的基本结构 功能分析: 全机 指挥 机构,怎么去指挥呢?   执行方式 有如下三种: 1 )按规定的操作去执行; 2 )自动地去执行 3 )有秩序地去执行 下面,我们具体看一下各种执行方式。 8.1.2 CPU 的基本组成—— 3 )控制器 控制器 是计算机发布命令的“决策机构”,协调指挥整个计算机系统。
1 )按规定的操作去执行(规定的操作在指令中!) 取出指令 分析指令 执行指令 存放? 设指令寄存器 IR Instruction Register 分析就是译码过程-> 设置操作码译码器 就指令的执行过程而言 产生相应的控制信号,加在不同的硬部件上 8.1.2 CPU 的基本组成—— 3 )控制器
2 )自动地去执行 设置程序计数器 PC Program Counter 顺序 转移 PC 存放程序的首地址, 执行一条后, PC 自动加 1 地址寄存器 地址寄存器送 PC (在新的地址上继续顺序执行) 8.1.2 CPU 的基本组成—— 3 )控制器
3 )有秩序去执行 指前一个操作结束,才进行下一个操作。 如何判断前一操作结束呢? 通过定时系统  ->  设置相应的时序线路 8.1.2 CPU 的基本组成—— 3 )控制器
控制器的基本结构: 由 指令寄存器 、 指令译码器 、 操作控制器、 时序产生器、 程序计数器 PC 组成, 它的主要功能描述: 1 )从内存中取出一条指令,并指出下一条指令在内存中的地址;  2 )对指令进行译码或测试,并产生相应的操作控制信号,以便启动规 定的动作; 3 )指挥并控制 CPU 与内存、输入 / 输出设备之间数据流动的方向。 8.1.2 CPU 的基本组成—— 3 )控制器
CPU 的逻辑结构 ,[object Object],[object Object],[object Object],[object Object],[object Object],8.1.2 CPU 的基本组成—— 3 )控制器 控制器 运算器 操作码 数据缓冲寄存器 地址寄存器,从结构上属于主存,但是封装到 CPU 里了
控制器 就是根据 指令操作码 和 时序信号 ,产生各种 操作控制信号 。  根据设计方法不同, 控制器 分为 组合逻辑型 、 存储逻辑型 。 ( 1 ) 组合逻辑控制器: 采用 硬布线逻辑 技术来实现 ( 2 ) 微程序控制器: 采用 存储逻辑 技术来实现 8.1.2 CPU 的基本组成—— 3 )控制器    组合逻辑控制器 设计,产生专门固定时序的控制信号的逻辑电路,因此逻辑电路以 使用最少元件 和 取得最高操作速度 为设计目标。其逻辑电路是由 门电路 和 触发器 构成的复杂树形逻辑网络,故称为 硬布线控制器 。 一旦控制部件构成,除非重新设计和物理上对它重新布线,否则不能增加新的控制功能。 因此,早期的 硬件布线控制器 被 微程序控制器所取代 。但随着超大规模集成电路( VLSI )的发展, 硬布线逻辑设计思想又得到重视 。
( 1 )组合逻辑控制器: 采用 硬布线逻辑 技术来实现; 所有的控制信号 全部由硬件实现 ,速度快, 但修改比较困难,修改一处,影响一大片。 目前一些巨型机和 RISC 机,为了追求高速采用组合逻辑控制器。 程序计数器 PC 译码 地址形成部件 操作码 地址码 指令寄存器 IR +1 送主存或 运算器 状态字寄存器 PSW 来自主存 I/O 状态 控制台信息 程序运行状态 时 序 信 号 微指令序列(传送到各部件的控制端) 8.1.2 CPU 的基本组成—— 3 )控制器 微操作 信号发生器
( 2 )微程序控制器: 是采用 存储逻辑 来实现。 微程序设计是利用软件方法来设计硬件的一门技术,它 把 微操作信号 代码化 ,把 一条机器指令 转化为 一段微程序, 并存入一专门的存储器 ( 控制存储器 )中,微操作控制信号由 微指令 产生。 优点: 设计规整、修改方便、便于扩充指令,如果一条指令执行有错, 只要修改那条指令的微程序就可以,不影响其他指令,但速度慢 控制存储器  ROM (存放微程序) 译码 微地址寄存器 微操作控制字段 顺序控制字段 微指令寄存器 IR 微地址 形成电路 运行 状态 指令 代码 微指令序列 顺序 控制 方式 微地址给定部分 指令寄存器 状态寄存器 8.1.2 CPU 的基本组成—— 3 )控制器
RISC 与 CISC 的 CPU 采用不同的控制器技术 8.1.2 CPU 的基本组成—— 3 )控制器 RISC 机器 的三个基本要素是: (1) 一个有限的简单指令集, (2)CPU 配备大量的通用寄存器, (3) 强调指令流水线的优化。 较长 较短 软件系统开发时间 绝大多数为组合逻辑控制 绝大多数为微程序控制 控制器实现方式 较长 较短 程序源代码长度 较容易 很难 优化编译实现 绝大多数在一个周期内完成 相差很大 各种指令执行时间 相差不大 相差很大 各种指令使用频率 只有 LOAD/STORE 指令 不加限制 可访存指令 等长 不固定 指令字长 一般小于 4 一般大于 4 寻址方式 一般小于 4 一般大于 4 指令格式 一般小于 100 一般大于 200 指令数目 简单,精简 复杂,庞大 指令系统 RISC CISC 比较内容
组合逻辑控制器的设计步骤 (前三步骤非常重要) 步骤一  拟定指令系统 (逻辑依据) 步骤二  确定总体结构 (空间安排) 设置哪些部件,确定数据通路 步骤三  拟定时序系统 (时间安排) 选定时序系统作为协调各部件工作的手段(周期–节拍–脉冲) 即把一条指令的执行过程分为若干个阶段,一个阶段为一个周期 一个阶段一个名字(取指周期, 源周期,目的周期,执行周期) 步骤四  拟定指令流程图 在节拍电位的配合下,将一条指令的执行步骤按时间顺序用流程图 形式表示出来(它是采用时序计数器设计控制器的关键一步) 步骤五  编制操作时间表 将指令流程中规定的操作落实到由哪个部件完成,在什么时间完成 步骤六  进行微操作的组合、化简 根据操作时间表,将产生同一微操作的条件用“或”连接组合成原始 表达式,利用逻辑化简,获得最简单的逻辑表达式。 步骤七  结合现有的元件,适当变换逻辑表达式,设计逻辑电路图。 8.1.2 CPU 的基本组成—— 3 )控制器
8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) CACHE (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4  多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成
计算机工作呈现出 控制流 和 数据流 两个信息流, 寄存器 是暂时存放这些信息的部件。 各种计算机的 CPU 可能有多种不同的寄存器,但是在 CPU 中至少要有 六类主要的寄存器 。(有的用于 处理 ,有的用于 控制) 1 )、 累加寄存器( AC ) 2 )、 状态寄存器( PSW ) 3 )、 指令寄存器( IR ) 4 )、 程序计数器( PC ) 5 )、 地址寄存器( MAR )   6 )、 数据缓冲寄存器( MDR ) 这些寄存器用来暂存一个 机器字 。根据需要,可以扩充其数目。 8.1.3   CPU 的主要寄存器
一、用于处理的寄存器 1 、通用寄存器组 是 一组可编程访问的 、 具有多种功能的 寄存器。 它们自身的逻辑往往比较简单统一,甚至是小规模存储器的一些单元,但通过编程与运算部件的配合,可指定其实现多种功能,如存放操作数 运算结果 ,或用作 基址寄存器 ,或用作 变址寄存器 ,或用作 计数器 等,因此称为通用寄存器。 通用寄存器在指令中是可访问的。 例如: ADD AX , BX 2 、暂存器 是一些 用户不能直接访问的 寄存器,用来暂存信息。 暂存器在指令中是不可访问的,对用户来说,是透明的。 8.1.3   CPU 的主要寄存器
举例:累加寄存器 AC 是 一个通用寄存器 。 功能: 当运算器的算术逻辑单元( ALU )执行算术或逻辑运算时, 累加器为 ALU 提供一个工作区 。 累加器 暂时存放 ALU 运算的结果 。 显然, 运算器中至少要有一个累加寄存器 。 目前 CPU 中的累加寄存器, 多达 16 个, 32 个,甚至更多 。 当使用多个累加器时,就变成通用寄存器堆结构,其中任何一个可存放 源操作数,也可存放结果操作数。 在这种情况下,需要在指令格式中对寄存器号加以编址。 8.1.3   CPU 的主要寄存器
8.1.3   CPU 的主要寄存器
8.1.3   CPU 的主要寄存器 二、用于控制的寄存器 1 )指令寄存器( IR ) 指令寄存器用来保存 当前正在执行 的 一条指令 。 在指令执行过程中,指令寄存器内容不发生变化,以保证实现指令的全部功能。 当执行一条指令时,先把它从 内存 取到 数据缓冲寄存器 中,然后再传至 指令寄存器 。为了提高指令间的衔接速度,大多数计算机将指令寄存器扩充为指令队列 ( 指令栈 ) ,允许预取若干条指令。 指令由 操作码 和 地址码 组成。 为了执行给定的指令,必须对 操作码 进行 译码测试 ,以便识别所要求的操作。 指令译码器 就是做这项工作的。 指令寄存器 中 操作码字段的输出 就是 指令译码器的输入 。 操作码经 译码后 ,即可向 操作控制器 发出具体操作的特定信号。
8.1.3   CPU 的主要寄存器
2 )、程序计数器( PC )(  =   指令计数器  =   指令指针 IP  )    为保证程序自动按顺序执行, CPU 必须确定下一条指令的地址。 程序计数器 正是起到这种作用,所以又称为 指令计数器 。 在程序开始执行前,必须将它的起始地址(即程序第一条指令所 在内存单元地址)送入 PC 。 当执行指令时, CPU 自动修改 PC 内容,使其总是保存将要执行的 下一条指令的地址。由于大多数指令都是按顺序来执行的,所以修改的 过程通常只是简单的 PC 加 1 。    当遇到 转移指令 (如  JMP 指令)时,后继指令的地址必须从转移 指令的地址段中得到,从而修改 PC 内容。 因此 程序计数器 的结构应当具有 寄存 和 计数 两种功能。 8.1.3   CPU 的主要寄存器
8.1.3   CPU 的主要寄存器 PC←PC+1
3 )、条件码寄存器( PSW ) CPU 执行程序,一方面取决于编程时的程序流向与有关意图, 另一方面取决于程序实际执行的状态。 计算机设置一条件码寄存器, 存放上次指令执行的状态 。      例如: 8086 的状态标志寄存器 16 位。其中   运算结果进位标志 (CF) , 运算结果溢出标志 (OF) , 运算结果为零标 志 (ZF) , 运算结果为负标志 (SF) 等等。 这些标志位通常分别由  1 位触发器 保存。   状态寄存器是一个由 各种状态条件标志拼凑而成 的寄存器。  8.1.3   CPU 的主要寄存器
8.1.3   CPU 的主要寄存器
三、用作主存接口的寄存器 当 CPU 访问主存时,先送出地址码,然后送出数据(写)或接收 数据(读),为此设置 数据缓冲寄存器 和 地址寄存器 。 8.1.3   CPU 的主要寄存器 存储器基本结构: 存储体 地址译码器 地址寄存器 数据缓冲寄存器 读写控制线路 注意: 这两个寄存器从结构上属于主存,但是封装到 CPU 里了。 内存的封装
1 )、地址寄存器( MAR )      地址寄存器保存 CPU 当前访问的内存单元地址 。 由于在内存和 CPU 之间存在着操作速度上的差别,所以必须使 用地址寄存器来保持地址信息, 直到内存的读 / 写操作完成 为止 。 如果把外围设备的 设备地址 比作内存单元地址,那么 CPU 和外 围设备交换信息时,同样使用地址寄存器和数据缓冲寄存器。 读指令时, CPU 先将程序计数器 PC 的内容(指令所在的存储单 元的地址)送地址寄存器,再按此地址访问主存。 8.1.3   CPU 的主要寄存器
8.1.3   CPU 的主要寄存器
2 )、数据缓冲寄存器( MDR )   数据缓冲寄存器用来 暂时存放 由内存储器 读出或写入 存储器的 一条指令 或 一个数据字 ;   缓冲寄存器的作用是 :  ( 1 )作为 CPU 和内存、外部设备之间数据传送的中转站; ( 2 )补偿 CPU 和内存、外围设备之间在操作速度上的差别;  8.1.3   CPU 的主要寄存器 注意:地址寄存器与数据寄存器是透明的, 不能编程直接访问。
8.1.3   CPU 的主要寄存器
CPU 中至少有六类寄存器 8.1.3   CPU 的主要寄存器
8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) Cache (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4  多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成
  为了在算机系统中增加多媒体数据的获取功能、压缩解压功能、 实时处理功能、多媒体数据的 I/O 与通信功能,在 计算机系统结构 领 域需要做三方面的改进: 第一、选择专用芯片和专用插卡来扩充功能, 如:声卡、视频卡、网卡、内接或外接调制解调器。 第二、改善总线结构和性能 , 如:加宽系统总线,提高时钟速率。 第三、将一些重要的多媒体技术融合到  CPU 芯片 或 设计全新的多媒体 CPU 芯片 。 8.1.4  多媒体 CPU
   MMX 是一种 多媒体扩展结构技术 ,它极大提高了计算机在多媒体和通信应用方面的功能。 带有 MMX 技术的 CPU 特别适合于数据量很大的图形、图像数据处理,从而使三维图形、图画、运动图像为目标的 MPEG 视频、音乐合成、语音识别、虚拟现实等数据处理的速度有了很大提高 。    MMX 技术集成到新一代 Pentium CPU 时,主要体现在:   ①采用 4 种新的数据类型, ② 使用 8 个 64  位宽的 MMX 寄存器, ③ 增设 57 条新指令。 8.1.4  多媒体 CPU
8.1  CPU 的基本功能与组成( 8.1 ) 8.2  时序系统和控制方式( 8.2 8.3 9 ) 8.3  组合逻辑设计( 10 ) 8.4  微程序设计( 10 ) 第八章  CPU 的结构与功能 时序系统 是 控制器 的 心脏 , 其功能是为指令的执行提供各种 定时信号 。 (一条指令分不同执行阶段即周期 - 节拍 - 脉冲) 组合逻辑控制器的设计步骤 (前三步骤) 步骤一  拟定指令系统 (逻辑依据,讲过了) 步骤二  确定总体结构 (空间安排,刚讲过) 步骤三  拟定时序系统 (时间安排,该讲了……)
8.2 、时序系统和控制方式 8.2.1  指令周期 1 )指令周期的基本概念 2 )指令周期的分析举例 3 )指令周期的数据流 8.2.2  指令流水 8.2.3   多级时序系统 8.2.4   时序控制方式
计算机自动工作,是因为 CPU 从存放程序的内存里取出一条指令并执行这条指令;紧接着又取指令,执行指令……,如此周而复始,除非遇到停机指令,否则将一直循环继续下去。 1 )指令周期的基本概念 
1 )指令周期 :从 取指 开始 , 到 执行完该指令 的 时间总和 。 (不同的指令,指令周期不同) 例如: 乘法指令比加法指令费时,间接寻址比直接寻址费时。 2 )机器周期   =  CPU 周期 :由于 CPU 内部操作速度快,访存速度慢, 所以往往以内存工作周期为基础来规定 CPU 周期,以便两者协调。 (一个 CPU 周期  =  从内存读取一条指令字的最短时间) 一般一个 指令周期 包含 两个或多个机器周期 。 为标志 CPU 工作在哪个周期,每个周期设置一个 周期状态触发器 , CPU 进入此周期,该触发器为 1 ,否则为 0 。  1 )指令周期的基本概念 
3 )时钟周期    =  节拍脉冲  =  T 周期  (  =  微机主频的倒数 ) 一个基本操作包括多个微操作,即一个机器周期内要完成许多个微 操作,每个微操作需要一定的时间,于是将一个机器周期分成若干 个 相等时间段 ,每一时间段完成一个或两个微操作,每个时间段对 应一个 节拍信号 。 一个机器周期包含若干个时钟周期。 时钟周期 是计算机中最基本的(不能再分的)时间单位, 它是由计算机的 主频 决定的。  T = 1 /  主频 比如: IMB-PC 的主频是 300MHz ,一个时钟周期就是 3.3ns , 1 )指令周期的基本概念 
例如: 机器的主频是 16M ,平均每条指令的执行时间为 2 个机器周期, 每个机器周期由 2 个时钟周期组成, 求机器平均指令执行速度 MIPS ( Million Instructions Per Second 一秒钟机器执行多少条指令) 解: 1  指令周期  = 2  机器周期  = 2*2  时钟周期 1  时钟周期  = 1/  主频  = 1 / 16M 1  指令周期  = 4 * 1/16 M = ¼ M 机器速度  = 1 /  指令周期  = 4MIPS 即:机器一秒钟能执行 4M 条指令。 1 )指令周期的基本概念 
例如: 机器的主频是 200MHz ,平均每条指令执行时间为 2.5 个 CPU 周期, 每个机器周期由 2 个时钟周期组成, 求 1 )该机平均指令执行速度 MIPS 2 )若主频不变,但每条指令平均包括 5 个 CPU 周期,每个 CPU 周 期又包括 4 个时钟周期,求机平均指令执行速度 MIPS , 并分析原因,给出结论? 解: 1 )  1  指令周期  = 2.5 CPU 周期  = 2.5*2  时钟周期 1  时钟周期  = 1 /  主频  = 1 / 200M 1  指令周期  = 5 * 1/200 M = 1/40 M 机器速度  = 1 /  指令周期  = 40MIPS 2 )  1  指令周期  = 5 CPU 周期  = 5*4  时钟周期 1  时钟周期  = 1 /  主频  = 1 / 200M 1  指令周期  = 20 * 1/200 M = 1/10 M 机器速度  = 1 /  指令周期  = 10MIPS 分析:指令的复杂程度会影响指令的平均执行速度。 1 )指令周期的基本概念 
例如: 一个完整的指令周期包括哪些 CPU 工作周期? 答: 一条完整的指令周期包括: 取指周期 间址周期 执行周期 中断周期 其中取指周期、执行周期是每条指令都必须有的。 间址周期,只有间址寻址的指令才有。 中断周期,只有在条件满足时才有。 1 )指令周期的基本概念 
复习与作业 复习章节: 第 8 章  CPU 的结构和功能 8.1 、 CPU 的结构 8.2 、指令周期 作业: P370  1 、 2

More Related Content

What's hot (19)

Cpu
CpuCpu
Cpu
 
Ch04
Ch04Ch04
Ch04
 
Cpu執行過程與步驟
Cpu執行過程與步驟Cpu執行過程與步驟
Cpu執行過程與步驟
 
01. Bios Introduction
01. Bios Introduction01. Bios Introduction
01. Bios Introduction
 
作業系統祕笈(張逸)
作業系統祕笈(張逸)作業系統祕笈(張逸)
作業系統祕笈(張逸)
 
01. BIOS introduction
01. BIOS introduction01. BIOS introduction
01. BIOS introduction
 
第1章
第1章第1章
第1章
 
20 cpu04
20 cpu0420 cpu04
20 cpu04
 
Windows引导过程
Windows引导过程Windows引导过程
Windows引导过程
 
作業系統
作業系統作業系統
作業系統
 
0513 深入Windows Server 2008 系統核心
0513 深入Windows Server 2008  系統核心0513 深入Windows Server 2008  系統核心
0513 深入Windows Server 2008 系統核心
 
Cent os
Cent osCent os
Cent os
 
H wand os
H wand osH wand os
H wand os
 
作業系統 作業
作業系統 作業作業系統 作業
作業系統 作業
 
OpenRISC whsap
OpenRISC whsapOpenRISC whsap
OpenRISC whsap
 
Java多线程技术
Java多线程技术Java多线程技术
Java多线程技术
 
Plc3
Plc3Plc3
Plc3
 
Ch2 2
Ch2 2Ch2 2
Ch2 2
 
作業系統
作業系統作業系統
作業系統
 

Viewers also liked (16)

02 计算机的逻辑部件01
02 计算机的逻辑部件0102 计算机的逻辑部件01
02 计算机的逻辑部件01
 
21 总线
21 总线21 总线
21 总线
 
Slide show for blog
Slide show for blogSlide show for blog
Slide show for blog
 
10 存储系统02
10 存储系统0210 存储系统02
10 存储系统02
 
计算机组成原理题
计算机组成原理题计算机组成原理题
计算机组成原理题
 
07 计算机的运算方法04
07 计算机的运算方法0407 计算机的运算方法04
07 计算机的运算方法04
 
Event Venues
Event VenuesEvent Venues
Event Venues
 
06 计算机的运算方法03
06 计算机的运算方法0306 计算机的运算方法03
06 计算机的运算方法03
 
08 计算机的运算方法05
08 计算机的运算方法0508 计算机的运算方法05
08 计算机的运算方法05
 
04 计算机的运算方法01
04 计算机的运算方法0104 计算机的运算方法01
04 计算机的运算方法01
 
09 存储系统01
09 存储系统0109 存储系统01
09 存储系统01
 
05 计算机的运算方法02
05 计算机的运算方法0205 计算机的运算方法02
05 计算机的运算方法02
 
Talking power point jennifer garcia
Talking power point jennifer garciaTalking power point jennifer garcia
Talking power point jennifer garcia
 
Fuentes de las obligaciones
Fuentes de las obligacionesFuentes de las obligaciones
Fuentes de las obligaciones
 
01 课程介绍与计算机系统概述
01 课程介绍与计算机系统概述01 课程介绍与计算机系统概述
01 课程介绍与计算机系统概述
 
03 计算机的逻辑部件02
03 计算机的逻辑部件0203 计算机的逻辑部件02
03 计算机的逻辑部件02
 

Similar to 17 cpu01 (20)

Godson x86
Godson x86Godson x86
Godson x86
 
H wand os
H wand osH wand os
H wand os
 
C N Cϵͳṹ Ʒ
C N Cϵͳṹ ƷC N Cϵͳṹ Ʒ
C N Cϵͳṹ Ʒ
 
CNC系统结构及控制方法
CNC系统结构及控制方法CNC系统结构及控制方法
CNC系统结构及控制方法
 
系統程式 -- 第 10 章
系統程式 -- 第 10 章系統程式 -- 第 10 章
系統程式 -- 第 10 章
 
Ch2 80x86计算机组织结构
Ch2 80x86计算机组织结构Ch2 80x86计算机组织结构
Ch2 80x86计算机组织结构
 
Sql优化
Sql优化Sql优化
Sql优化
 
MySQL新技术探索与实践
MySQL新技术探索与实践MySQL新技术探索与实践
MySQL新技术探索与实践
 
腾讯大讲堂19 系统优化的方向
腾讯大讲堂19 系统优化的方向腾讯大讲堂19 系统优化的方向
腾讯大讲堂19 系统优化的方向
 
腾讯大讲堂19 系统优化的方向
腾讯大讲堂19 系统优化的方向腾讯大讲堂19 系统优化的方向
腾讯大讲堂19 系统优化的方向
 
Erlang Optimize
Erlang OptimizeErlang Optimize
Erlang Optimize
 
腾讯大讲堂19 系统优化的方向
腾讯大讲堂19 系统优化的方向腾讯大讲堂19 系统优化的方向
腾讯大讲堂19 系统优化的方向
 
Heartbeat v2 安装和配置原理
Heartbeat v2 安装和配置原理Heartbeat v2 安装和配置原理
Heartbeat v2 安装和配置原理
 
MySQL调优
MySQL调优MySQL调优
MySQL调优
 
computer organization
computer organization computer organization
computer organization
 
Linux性能监控cpu内存io网络
Linux性能监控cpu内存io网络Linux性能监控cpu内存io网络
Linux性能监控cpu内存io网络
 
Inside Erlang Vm II
Inside Erlang Vm IIInside Erlang Vm II
Inside Erlang Vm II
 
Cuda基本介绍
Cuda基本介绍Cuda基本介绍
Cuda基本介绍
 
海量日志分析系统实践,Dba
海量日志分析系统实践,Dba海量日志分析系统实践,Dba
海量日志分析系统实践,Dba
 
Step7
Step7Step7
Step7
 

Recently uploaded

1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂
1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂
1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂
PUAXINYEEMoe
 
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
PUAXINYEEMoe
 
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
michaelell902
 

Recently uploaded (9)

1.🎉成绩单,你的成绩! 💡🔥每个人都有自己的成绩单,它记录着我们努力的成果。但有时候,看着这些数字,却发现它们好像在嘲笑我?别担心,让我来告诉你们怎么改...
1.🎉成绩单,你的成绩! 💡🔥每个人都有自己的成绩单,它记录着我们努力的成果。但有时候,看着这些数字,却发现它们好像在嘲笑我?别担心,让我来告诉你们怎么改...1.🎉成绩单,你的成绩! 💡🔥每个人都有自己的成绩单,它记录着我们努力的成果。但有时候,看着这些数字,却发现它们好像在嘲笑我?别担心,让我来告诉你们怎么改...
1.🎉成绩单,你的成绩! 💡🔥每个人都有自己的成绩单,它记录着我们努力的成果。但有时候,看着这些数字,却发现它们好像在嘲笑我?别担心,让我来告诉你们怎么改...
 
1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...
1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...
1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...
 
taibif_資料標準概念介紹_20240509_20240509_20340509.pdf
taibif_資料標準概念介紹_20240509_20240509_20340509.pdftaibif_資料標準概念介紹_20240509_20240509_20340509.pdf
taibif_資料標準概念介紹_20240509_20240509_20340509.pdf
 
1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂
1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂
1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂
 
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
 
啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx
啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx
啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx
 
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
 
Math Chapter3-教學PPT第03單元形體關係、體積與表面積Grade Six
Math Chapter3-教學PPT第03單元形體關係、體積與表面積Grade SixMath Chapter3-教學PPT第03單元形體關係、體積與表面積Grade Six
Math Chapter3-教學PPT第03單元形體關係、體積與表面積Grade Six
 
taibif_開放資料流程-清理資料01-通則_20240509_20240509.pdf
taibif_開放資料流程-清理資料01-通則_20240509_20240509.pdftaibif_開放資料流程-清理資料01-通則_20240509_20240509.pdf
taibif_開放資料流程-清理資料01-通則_20240509_20240509.pdf
 

17 cpu01

  • 1. CPU 林楠 办公室: 408 办公电话: 0371-63887293 电子邮件: [email_address] 《 计算机组成原理 》 第八章 CPU 的结构与功能( 最难 ) (含 第八章 + 第四篇) 系 统 总 线 存储器 运算器 控制器 接口与通信 输入 / 输出设备 Cache
  • 2. 中央处理器这一章是重点和难点,组成原理考试几乎必考的章节。 第八章 CPU 的结构与功能 识记 指令流水线 1.  指令流水线的基本概念 2.  超标量流水和动态流水线的基本概念 这主要是选择题的考点。 熟练掌握 控制器的功能和工作原理 1. 硬布线控制器 2. 微程序控制器 微程序、微指令和微命令;微指令格式;微命令的编码方式;微地址的形成方式 这又是一个综合应用题点,可以考查的微程序控制器相关的原理;还可以在选择题中出现两种不同控制器的对比。 掌握 数据通路的功能和基本结构 熟练掌握 指令的执行过程 这里可以出现综合应用题,结合微指令的考点考查一条指令执行的各个步骤。 掌握 CPU 的功能和基本结构
  • 3. 通过本章的学习,我们应在 CPU 一级上建立起 整机要领 。 它包含两个方面: 1 ) CPU 的逻辑组成: 内部有哪些部件,以 数据通路 为核心的总体结构,与外部的连接。 2 ) CPU 如何工作: 即如何分时形成 控制命令 序列,以执行指令程序。 第八章 CPU 的结构与功能
  • 4. 8.1 CPU 的基本功能与组成( 8.1 ) 8.2 时序系统和控制方式( 8.2 8.3 9 ) 8.3 组合逻辑设计( 10 ) 8.4 微程序设计( 10 ) 第八章 CPU 的结构与功能
  • 5. 8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) Cache (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4 多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成
  • 6. 当我们使用计算机解决某个问题时,我们首先必须为它 编写程序 。 程序 是 一个指令序列 ,它告诉计算机执行什么操作,到哪里找操作数。 一旦把程序装入主存,就由 计算机 自动完成取出指令 和 执行指令 。 用来完成此工作的部件为 中央处理器 ,简称 CPU , CPU 是机器指令的解释和执行机构,是计算机的核心部件。      CPU 对整个计算机系统的运行是极其重要的,  指令控制 操作控制 时间控制 数据加工 8.1.1 CPU 的基本功能 它具有四方面 的基本功能:
  • 7. CPU 四方面的基本功能:  指令控制: 解决程序的 顺序控制 问题。 程序是一个指令序列,这些指令的相互顺序不能任意改变, 必须严格按程序规定的顺序进行。 操作控制: 一条指令的功能往往是由若干个操作信号的组合来实现, 因此, CPU 管理并产生由内存取出的每条指令的操作信号, 把各种操作信号送往相应的部件 ,从而控制这些部件按指 令的要求进行工作。  时间控制: 解决各种操作 执行时间上的定时 问题。 在计算机中,各种指令的操作信号以及一条指令的整个执行 过程都受到时间的严格定时。 数据加工: 数据加工就是 对操作数进行算术运算 和 逻辑运算 。 8.1.1 CPU 的基本功能
  • 8. 8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) Cache (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4 多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成
  • 9. CPU 的三大基本部分: 运算器 、 Cache 和 控制器 。      8.1.2 CPU 的基本组成 系 统 总 线 存储器 运算器 控制器 接口与通信 输入 / 输出设备 Cache CPU
  • 10. 8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) Cache (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4 多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成 运算器 控制器 Cache CPU
  • 11. 8.1.2 CPU 的基本组成—— 1 )运算器 包括: ALU 算术 / 逻辑单元 , 阵列乘除器, 寄存器组 (数据寄存器,累加器等) 多路转换器(选择门), 数据总线(内部总线) 等逻辑构成。 移位门 ALU 选择门 A 选择门 B 通用 寄存器 数据总线 数据总线 定点运算器的基本结构框图 定点运算器 是数据的加工处理部件, 是 CPU 的重要组成部分。 相对控制器而言,运算器 接受控制器的命令 进行操作 , 运算器 所完成的全部操作都是 由 控制器 发出的控制信号 来指挥。 运算器是执行部件, 执行所有的算术与逻辑运算。
  • 12. 8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) Cache (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4 多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成 运算器 控制器 Cache CPU
  • 13. 为了弥补主存速度的不足,在 CPU 与 主存 之间设置一个 高速小容量的缓冲存储器 ,称 高速缓存( Cache ), 主要由 SRAM 组成。 其工作原理如下: CPU Cache 主存 DRAM 主存地址 字 块 我们利用程序运行的局部性特点,把 CPU 正在访问和即将访问的若干程序块和数据块从主存调入高速缓存中,使 CPU 大部分从高速缓存中读取指令和存取数据,极大地提高了 CPU 的访问速度。 8.1.2 CPU 的基本组成—— 2 ) Cache
  • 14. 8.1.2 CPU 的基本组成—— 2 ) Cache 映象 :其物理意义就是位置的对应关系, 将主存地址变成 Cache 地址 。 常见的映象方式主要有三种: 1 )直接映象 2 )全相联映象 3 )组相联映象 CPU Cache 主存 DRAM 地址总线 相联 存储表 命中 未命中 数据总线
  • 15. 8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) Cache (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4 多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成 运算器 控制器 Cache CPU
  • 16. 控制器的基本结构 功能分析: 全机 指挥 机构,怎么去指挥呢? 执行方式 有如下三种: 1 )按规定的操作去执行; 2 )自动地去执行 3 )有秩序地去执行 下面,我们具体看一下各种执行方式。 8.1.2 CPU 的基本组成—— 3 )控制器 控制器 是计算机发布命令的“决策机构”,协调指挥整个计算机系统。
  • 17. 1 )按规定的操作去执行(规定的操作在指令中!) 取出指令 分析指令 执行指令 存放? 设指令寄存器 IR Instruction Register 分析就是译码过程-> 设置操作码译码器 就指令的执行过程而言 产生相应的控制信号,加在不同的硬部件上 8.1.2 CPU 的基本组成—— 3 )控制器
  • 18. 2 )自动地去执行 设置程序计数器 PC Program Counter 顺序 转移 PC 存放程序的首地址, 执行一条后, PC 自动加 1 地址寄存器 地址寄存器送 PC (在新的地址上继续顺序执行) 8.1.2 CPU 的基本组成—— 3 )控制器
  • 19. 3 )有秩序去执行 指前一个操作结束,才进行下一个操作。 如何判断前一操作结束呢? 通过定时系统 -> 设置相应的时序线路 8.1.2 CPU 的基本组成—— 3 )控制器
  • 20. 控制器的基本结构: 由 指令寄存器 、 指令译码器 、 操作控制器、 时序产生器、 程序计数器 PC 组成, 它的主要功能描述: 1 )从内存中取出一条指令,并指出下一条指令在内存中的地址;  2 )对指令进行译码或测试,并产生相应的操作控制信号,以便启动规 定的动作; 3 )指挥并控制 CPU 与内存、输入 / 输出设备之间数据流动的方向。 8.1.2 CPU 的基本组成—— 3 )控制器
  • 21.
  • 22. 控制器 就是根据 指令操作码 和 时序信号 ,产生各种 操作控制信号 。 根据设计方法不同, 控制器 分为 组合逻辑型 、 存储逻辑型 。 ( 1 ) 组合逻辑控制器: 采用 硬布线逻辑 技术来实现 ( 2 ) 微程序控制器: 采用 存储逻辑 技术来实现 8.1.2 CPU 的基本组成—— 3 )控制器    组合逻辑控制器 设计,产生专门固定时序的控制信号的逻辑电路,因此逻辑电路以 使用最少元件 和 取得最高操作速度 为设计目标。其逻辑电路是由 门电路 和 触发器 构成的复杂树形逻辑网络,故称为 硬布线控制器 。 一旦控制部件构成,除非重新设计和物理上对它重新布线,否则不能增加新的控制功能。 因此,早期的 硬件布线控制器 被 微程序控制器所取代 。但随着超大规模集成电路( VLSI )的发展, 硬布线逻辑设计思想又得到重视 。
  • 23. ( 1 )组合逻辑控制器: 采用 硬布线逻辑 技术来实现; 所有的控制信号 全部由硬件实现 ,速度快, 但修改比较困难,修改一处,影响一大片。 目前一些巨型机和 RISC 机,为了追求高速采用组合逻辑控制器。 程序计数器 PC 译码 地址形成部件 操作码 地址码 指令寄存器 IR +1 送主存或 运算器 状态字寄存器 PSW 来自主存 I/O 状态 控制台信息 程序运行状态 时 序 信 号 微指令序列(传送到各部件的控制端) 8.1.2 CPU 的基本组成—— 3 )控制器 微操作 信号发生器
  • 24. ( 2 )微程序控制器: 是采用 存储逻辑 来实现。 微程序设计是利用软件方法来设计硬件的一门技术,它 把 微操作信号 代码化 ,把 一条机器指令 转化为 一段微程序, 并存入一专门的存储器 ( 控制存储器 )中,微操作控制信号由 微指令 产生。 优点: 设计规整、修改方便、便于扩充指令,如果一条指令执行有错, 只要修改那条指令的微程序就可以,不影响其他指令,但速度慢 控制存储器 ROM (存放微程序) 译码 微地址寄存器 微操作控制字段 顺序控制字段 微指令寄存器 IR 微地址 形成电路 运行 状态 指令 代码 微指令序列 顺序 控制 方式 微地址给定部分 指令寄存器 状态寄存器 8.1.2 CPU 的基本组成—— 3 )控制器
  • 25. RISC 与 CISC 的 CPU 采用不同的控制器技术 8.1.2 CPU 的基本组成—— 3 )控制器 RISC 机器 的三个基本要素是: (1) 一个有限的简单指令集, (2)CPU 配备大量的通用寄存器, (3) 强调指令流水线的优化。 较长 较短 软件系统开发时间 绝大多数为组合逻辑控制 绝大多数为微程序控制 控制器实现方式 较长 较短 程序源代码长度 较容易 很难 优化编译实现 绝大多数在一个周期内完成 相差很大 各种指令执行时间 相差不大 相差很大 各种指令使用频率 只有 LOAD/STORE 指令 不加限制 可访存指令 等长 不固定 指令字长 一般小于 4 一般大于 4 寻址方式 一般小于 4 一般大于 4 指令格式 一般小于 100 一般大于 200 指令数目 简单,精简 复杂,庞大 指令系统 RISC CISC 比较内容
  • 26. 组合逻辑控制器的设计步骤 (前三步骤非常重要) 步骤一 拟定指令系统 (逻辑依据) 步骤二 确定总体结构 (空间安排) 设置哪些部件,确定数据通路 步骤三 拟定时序系统 (时间安排) 选定时序系统作为协调各部件工作的手段(周期–节拍–脉冲) 即把一条指令的执行过程分为若干个阶段,一个阶段为一个周期 一个阶段一个名字(取指周期, 源周期,目的周期,执行周期) 步骤四 拟定指令流程图 在节拍电位的配合下,将一条指令的执行步骤按时间顺序用流程图 形式表示出来(它是采用时序计数器设计控制器的关键一步) 步骤五 编制操作时间表 将指令流程中规定的操作落实到由哪个部件完成,在什么时间完成 步骤六 进行微操作的组合、化简 根据操作时间表,将产生同一微操作的条件用“或”连接组合成原始 表达式,利用逻辑化简,获得最简单的逻辑表达式。 步骤七 结合现有的元件,适当变换逻辑表达式,设计逻辑电路图。 8.1.2 CPU 的基本组成—— 3 )控制器
  • 27. 8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) CACHE (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4 多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成
  • 28. 计算机工作呈现出 控制流 和 数据流 两个信息流, 寄存器 是暂时存放这些信息的部件。 各种计算机的 CPU 可能有多种不同的寄存器,但是在 CPU 中至少要有 六类主要的寄存器 。(有的用于 处理 ,有的用于 控制) 1 )、 累加寄存器( AC ) 2 )、 状态寄存器( PSW ) 3 )、 指令寄存器( IR ) 4 )、 程序计数器( PC ) 5 )、 地址寄存器( MAR ) 6 )、 数据缓冲寄存器( MDR ) 这些寄存器用来暂存一个 机器字 。根据需要,可以扩充其数目。 8.1.3   CPU 的主要寄存器
  • 29. 一、用于处理的寄存器 1 、通用寄存器组 是 一组可编程访问的 、 具有多种功能的 寄存器。 它们自身的逻辑往往比较简单统一,甚至是小规模存储器的一些单元,但通过编程与运算部件的配合,可指定其实现多种功能,如存放操作数 运算结果 ,或用作 基址寄存器 ,或用作 变址寄存器 ,或用作 计数器 等,因此称为通用寄存器。 通用寄存器在指令中是可访问的。 例如: ADD AX , BX 2 、暂存器 是一些 用户不能直接访问的 寄存器,用来暂存信息。 暂存器在指令中是不可访问的,对用户来说,是透明的。 8.1.3   CPU 的主要寄存器
  • 30. 举例:累加寄存器 AC 是 一个通用寄存器 。 功能: 当运算器的算术逻辑单元( ALU )执行算术或逻辑运算时, 累加器为 ALU 提供一个工作区 。 累加器 暂时存放 ALU 运算的结果 。 显然, 运算器中至少要有一个累加寄存器 。 目前 CPU 中的累加寄存器, 多达 16 个, 32 个,甚至更多 。 当使用多个累加器时,就变成通用寄存器堆结构,其中任何一个可存放 源操作数,也可存放结果操作数。 在这种情况下,需要在指令格式中对寄存器号加以编址。 8.1.3   CPU 的主要寄存器
  • 31. 8.1.3   CPU 的主要寄存器
  • 32. 8.1.3   CPU 的主要寄存器 二、用于控制的寄存器 1 )指令寄存器( IR ) 指令寄存器用来保存 当前正在执行 的 一条指令 。 在指令执行过程中,指令寄存器内容不发生变化,以保证实现指令的全部功能。 当执行一条指令时,先把它从 内存 取到 数据缓冲寄存器 中,然后再传至 指令寄存器 。为了提高指令间的衔接速度,大多数计算机将指令寄存器扩充为指令队列 ( 指令栈 ) ,允许预取若干条指令。 指令由 操作码 和 地址码 组成。 为了执行给定的指令,必须对 操作码 进行 译码测试 ,以便识别所要求的操作。 指令译码器 就是做这项工作的。 指令寄存器 中 操作码字段的输出 就是 指令译码器的输入 。 操作码经 译码后 ,即可向 操作控制器 发出具体操作的特定信号。
  • 33. 8.1.3   CPU 的主要寄存器
  • 34. 2 )、程序计数器( PC )( = 指令计数器 = 指令指针 IP )   为保证程序自动按顺序执行, CPU 必须确定下一条指令的地址。 程序计数器 正是起到这种作用,所以又称为 指令计数器 。 在程序开始执行前,必须将它的起始地址(即程序第一条指令所 在内存单元地址)送入 PC 。 当执行指令时, CPU 自动修改 PC 内容,使其总是保存将要执行的 下一条指令的地址。由于大多数指令都是按顺序来执行的,所以修改的 过程通常只是简单的 PC 加 1 。   当遇到 转移指令 (如 JMP 指令)时,后继指令的地址必须从转移 指令的地址段中得到,从而修改 PC 内容。 因此 程序计数器 的结构应当具有 寄存 和 计数 两种功能。 8.1.3   CPU 的主要寄存器
  • 35. 8.1.3   CPU 的主要寄存器 PC←PC+1
  • 36. 3 )、条件码寄存器( PSW ) CPU 执行程序,一方面取决于编程时的程序流向与有关意图, 另一方面取决于程序实际执行的状态。 计算机设置一条件码寄存器, 存放上次指令执行的状态 。    例如: 8086 的状态标志寄存器 16 位。其中 运算结果进位标志 (CF) , 运算结果溢出标志 (OF) , 运算结果为零标 志 (ZF) , 运算结果为负标志 (SF) 等等。 这些标志位通常分别由 1 位触发器 保存。 状态寄存器是一个由 各种状态条件标志拼凑而成 的寄存器。 8.1.3   CPU 的主要寄存器
  • 37. 8.1.3   CPU 的主要寄存器
  • 38. 三、用作主存接口的寄存器 当 CPU 访问主存时,先送出地址码,然后送出数据(写)或接收 数据(读),为此设置 数据缓冲寄存器 和 地址寄存器 。 8.1.3   CPU 的主要寄存器 存储器基本结构: 存储体 地址译码器 地址寄存器 数据缓冲寄存器 读写控制线路 注意: 这两个寄存器从结构上属于主存,但是封装到 CPU 里了。 内存的封装
  • 39. 1 )、地址寄存器( MAR )    地址寄存器保存 CPU 当前访问的内存单元地址 。 由于在内存和 CPU 之间存在着操作速度上的差别,所以必须使 用地址寄存器来保持地址信息, 直到内存的读 / 写操作完成 为止 。 如果把外围设备的 设备地址 比作内存单元地址,那么 CPU 和外 围设备交换信息时,同样使用地址寄存器和数据缓冲寄存器。 读指令时, CPU 先将程序计数器 PC 的内容(指令所在的存储单 元的地址)送地址寄存器,再按此地址访问主存。 8.1.3   CPU 的主要寄存器
  • 40. 8.1.3   CPU 的主要寄存器
  • 41. 2 )、数据缓冲寄存器( MDR )   数据缓冲寄存器用来 暂时存放 由内存储器 读出或写入 存储器的 一条指令 或 一个数据字 ;   缓冲寄存器的作用是 : ( 1 )作为 CPU 和内存、外部设备之间数据传送的中转站; ( 2 )补偿 CPU 和内存、外围设备之间在操作速度上的差别;  8.1.3   CPU 的主要寄存器 注意:地址寄存器与数据寄存器是透明的, 不能编程直接访问。
  • 42. 8.1.3   CPU 的主要寄存器
  • 43. CPU 中至少有六类寄存器 8.1.3   CPU 的主要寄存器
  • 44. 8.1.1 CPU 的基本功能 8.1.2 CPU 的基本组成 1 )运算器(讲过) 2 ) Cache (讲过) 3 )控制器(重点) 8.1.3 CPU 的主要寄存器 8.1.4 多媒体 CPU (扩展) 8.1 、 CPU 的基本功能和组成
  • 45.   为了在算机系统中增加多媒体数据的获取功能、压缩解压功能、 实时处理功能、多媒体数据的 I/O 与通信功能,在 计算机系统结构 领 域需要做三方面的改进: 第一、选择专用芯片和专用插卡来扩充功能, 如:声卡、视频卡、网卡、内接或外接调制解调器。 第二、改善总线结构和性能 , 如:加宽系统总线,提高时钟速率。 第三、将一些重要的多媒体技术融合到 CPU 芯片 或 设计全新的多媒体 CPU 芯片 。 8.1.4 多媒体 CPU
  • 46.    MMX 是一种 多媒体扩展结构技术 ,它极大提高了计算机在多媒体和通信应用方面的功能。 带有 MMX 技术的 CPU 特别适合于数据量很大的图形、图像数据处理,从而使三维图形、图画、运动图像为目标的 MPEG 视频、音乐合成、语音识别、虚拟现实等数据处理的速度有了很大提高 。   MMX 技术集成到新一代 Pentium CPU 时,主要体现在:   ①采用 4 种新的数据类型, ② 使用 8 个 64 位宽的 MMX 寄存器, ③ 增设 57 条新指令。 8.1.4 多媒体 CPU
  • 47. 8.1 CPU 的基本功能与组成( 8.1 ) 8.2 时序系统和控制方式( 8.2 8.3 9 ) 8.3 组合逻辑设计( 10 ) 8.4 微程序设计( 10 ) 第八章 CPU 的结构与功能 时序系统 是 控制器 的 心脏 , 其功能是为指令的执行提供各种 定时信号 。 (一条指令分不同执行阶段即周期 - 节拍 - 脉冲) 组合逻辑控制器的设计步骤 (前三步骤) 步骤一 拟定指令系统 (逻辑依据,讲过了) 步骤二 确定总体结构 (空间安排,刚讲过) 步骤三 拟定时序系统 (时间安排,该讲了……)
  • 48. 8.2 、时序系统和控制方式 8.2.1 指令周期 1 )指令周期的基本概念 2 )指令周期的分析举例 3 )指令周期的数据流 8.2.2 指令流水 8.2.3  多级时序系统 8.2.4  时序控制方式
  • 50. 1 )指令周期 :从 取指 开始 , 到 执行完该指令 的 时间总和 。 (不同的指令,指令周期不同) 例如: 乘法指令比加法指令费时,间接寻址比直接寻址费时。 2 )机器周期   = CPU 周期 :由于 CPU 内部操作速度快,访存速度慢, 所以往往以内存工作周期为基础来规定 CPU 周期,以便两者协调。 (一个 CPU 周期 = 从内存读取一条指令字的最短时间) 一般一个 指令周期 包含 两个或多个机器周期 。 为标志 CPU 工作在哪个周期,每个周期设置一个 周期状态触发器 , CPU 进入此周期,该触发器为 1 ,否则为 0 。 1 )指令周期的基本概念 
  • 51. 3 )时钟周期   = 节拍脉冲 = T 周期 ( = 微机主频的倒数 ) 一个基本操作包括多个微操作,即一个机器周期内要完成许多个微 操作,每个微操作需要一定的时间,于是将一个机器周期分成若干 个 相等时间段 ,每一时间段完成一个或两个微操作,每个时间段对 应一个 节拍信号 。 一个机器周期包含若干个时钟周期。 时钟周期 是计算机中最基本的(不能再分的)时间单位, 它是由计算机的 主频 决定的。 T = 1 / 主频 比如: IMB-PC 的主频是 300MHz ,一个时钟周期就是 3.3ns , 1 )指令周期的基本概念 
  • 52. 例如: 机器的主频是 16M ,平均每条指令的执行时间为 2 个机器周期, 每个机器周期由 2 个时钟周期组成, 求机器平均指令执行速度 MIPS ( Million Instructions Per Second 一秒钟机器执行多少条指令) 解: 1 指令周期 = 2 机器周期 = 2*2 时钟周期 1 时钟周期 = 1/ 主频 = 1 / 16M 1 指令周期 = 4 * 1/16 M = ¼ M 机器速度 = 1 / 指令周期 = 4MIPS 即:机器一秒钟能执行 4M 条指令。 1 )指令周期的基本概念 
  • 53. 例如: 机器的主频是 200MHz ,平均每条指令执行时间为 2.5 个 CPU 周期, 每个机器周期由 2 个时钟周期组成, 求 1 )该机平均指令执行速度 MIPS 2 )若主频不变,但每条指令平均包括 5 个 CPU 周期,每个 CPU 周 期又包括 4 个时钟周期,求机平均指令执行速度 MIPS , 并分析原因,给出结论? 解: 1 ) 1 指令周期 = 2.5 CPU 周期 = 2.5*2 时钟周期 1 时钟周期 = 1 / 主频 = 1 / 200M 1 指令周期 = 5 * 1/200 M = 1/40 M 机器速度 = 1 / 指令周期 = 40MIPS 2 ) 1 指令周期 = 5 CPU 周期 = 5*4 时钟周期 1 时钟周期 = 1 / 主频 = 1 / 200M 1 指令周期 = 20 * 1/200 M = 1/10 M 机器速度 = 1 / 指令周期 = 10MIPS 分析:指令的复杂程度会影响指令的平均执行速度。 1 )指令周期的基本概念 
  • 54. 例如: 一个完整的指令周期包括哪些 CPU 工作周期? 答: 一条完整的指令周期包括: 取指周期 间址周期 执行周期 中断周期 其中取指周期、执行周期是每条指令都必须有的。 间址周期,只有间址寻址的指令才有。 中断周期,只有在条件满足时才有。 1 )指令周期的基本概念 
  • 55. 复习与作业 复习章节: 第 8 章 CPU 的结构和功能 8.1 、 CPU 的结构 8.2 、指令周期 作业: P370 1 、 2