本章总览
(6.1) 中央处理器的功能与组成
(6.1.1) CPU 的功能
附:运算器和控制器的任务
附:运算器的基本结构
专用数据通路进行信号管理
(6.1.2) CPU中的主要寄存器(register)
1. 通用寄存器
- 作用
- 存放原始数据和运算结果。
- 减少cpu访问存储器的次数,提高运算速度。
- 举例:累加寄存器Acc
- 在进行加法运算时,现将一个操作数暂时存放在
Acc中,再从主存中取出另一个操作数,所得结果送回Acc中。 - 运算器中至少要有一个
Acc。
- 在进行加法运算时,现将一个操作数暂时存放在
2. 专用寄存器
cpu至少要有以下5个专用的寄存器。
程序计数器
- 作用:存放正在执行的指令地址或接着要执行的下条指令地址。
指令寄存器
- 作用:存放从存储器中取出的指令。
- 在指令执行过程中,为保证实现指令的全部功能,指令寄存器的内容暂时不能发生变化。
存储器数据寄存器
- 作用:暂时存放由主存
读出/写入的一条指令或一个数据字。
存储器地址寄存器
- 作用:保存当前cpu所访问的主存单元的地址。(因主存和CPU的访问速度有差别)
状态标志寄存器
- 作用:存放程序状态字(
PSW);状态字有2部分组成:- 状态标志;如进位标志、结果为零标志。
- 控制标志;如中断标志、陷阱标志。
(6.1.3) CPU 的组成
- 组成:控制器和运算器
- 功能:
- 控制器:
- 存主存中取出一条指令,并指出下一条指令在主存中的位置。
- 对指令进行译码或测试,产生相应的操作控制信号,以便启动规定的动作。
- 指挥并控制cpu、主存、输入输出设备之间的数据流动方向。
- 运算器:
- 执行算术运算
- 执行逻辑运算,进行逻辑测试。
- 控制器:
(6.1.4) CPU 的主要技术参数
1. 字长
- 定义:单位时间内同时处理二进制数据的位数。
- 按字长分类的cpu:8、16、32、64位cpu。
2. 内部工作频率
- 定义:也叫做主频,表示在cpu内
数字脉冲信号振荡的速度,是cpu性能的体现之一。
3. 外部工作频率
- 内频 = 外频 * 倍频
4. 前端总线频率
- 定义:影响cpu与内存之间的数据传输量
- 前端总线作用:cpu与外界交换数据的最主要通道,主要连接主存、显卡等数据吞吐率高的部件。
数据带宽 = 总线频率 * 数据位宽 / 8
5. QPI 数据传输速率
6. 片内 Cache 的容量
7. 工作电压
正常工作的电压越低,功耗越少。
8. 地址总线宽度
- 定义:决定了cpu可访问的最大物理地址空间。
- 32位地址线,可寻址的最大容量为
2^32 = 4096MB = 4GB - 44位 对应
2^44 = 16TB
- 32位地址线,可寻址的最大容量为
9. 数据总线宽度
- 定义:决定了cpu与外部Cache、主存以及输入输出设备之间进行一次数据传输的信息量。
- 如果数据总线为32位,每次最多可读写主存中的32位;
10. 制造工艺
可描述为线宽,指芯片内电路之间的距离。越小越好。
(6.2) 控制器的组成和实现方法
(6.2.1) 控制器的基本组成
1. 指令部件
2. 时序部件
时序部件能产生一定的时序信号,以保证机器的各功能部件有节奏的进行信息传送、加工及信息存储。包括一下部件
脉冲源
启停控制逻辑
节拍信号发生器
3. 微操作信号发生器
它是控制器的核心;一条指令的取出和执行可分解成很多最基本的(不可再分割)微操作。微操作信号发生器也称为控制单元CU
4. 中断控制逻辑
6.1/6.2总结
(6.2.2) 控制器的硬件实现方法
控制器分为组合逻辑型、存储逻辑型、组合逻辑型与存储逻辑结合型。
1. 组合逻辑型
- 优点:速度快
- 缺点:cu的结构不规则,使得设计、调试、维修难。
2. 存储逻辑型
也叫微程序控制器
- 优点:设计规则
3. 组合逻辑和存储逻辑结合型
可称为可编程逻辑阵列。
(6.3) 时序系统与控制方式
(6.3.1) 时序系统
时序系统的功能是为指令的执行提供各种定时信号。
1. 指令周期和机器周期
- 指令周期:从取指令、分析指令到执行该指令所需的时间。
- 机器周期(cpu周期):每个机器周期完成1个指令周期中的一个基本操作。
- 一般组成:取指周期、取数周期(寻址周期)、执行周期和中断周期。
指令周期 = i * 机器周期
2. 节拍
- 定义:一个机器周期内又包含多个时钟周期(节拍、T周期),时钟周期是cpu操作的最基本单位。
附:指令周期的数据流
取指周期
间址周期
中断周期
2. 指令执行方案
(6.3.2) 控制方式
控制方法可分为3种
1. 同步控制方式
以最复杂的操作时间作为统一的时间间隔标准。
2. 异步控制方式
可变时序控制方式,
3. 联合控制方式
6.3 总结
(6.4) 微程序控制原理
(6.4.1) 微程序控制的基本概念
1. 微程序技术概述
微程序设计技术的实质是将程序设计的技术和存储技术相结合。
- 将微操作控制信号按一定规则进行信息编码,形成字(微指令),再把这些微指令按时间先后排列构成微程序。存放在一个只读的控制存储器中。
2. 基本术语
微命令和微操作
- 微命令:将控制部件向执行部件发出的各种控制命令叫做微命令。它是构成控制序列的最小单位。(开/关某个控制门的电位信号)
- 微操作:微操作是微命令的执行过程。是计算机中最基本的不可再分的操作。
微指令和位地址
- 微指令:指控存储器中的一个单元的内容,即控制字。多个微命令构成微指令。至少包含以下两部分信息。
- 操作控制字段(微操作码):用以产生某一个操作所需的个微操作控制信号。
- 顺讯控制字段(微地址码字段),用以控制产生下一条要执行的微指令地址。
- 分类:
- 垂直型:每条垂直型微指令可完成一个基本微操作。
- 水平型:每条垂直型微指令可并行完成多个微操作。
- 微地址:存放微指令的控制存储器的单元地址。
微周期
从控制存储器CM中读出并执行一条微指令所需的时间称为微周期。
微程序
- 微程序:多个微指令的有序集合。等价于机器指令。
- 程序:由多个顺序指令构成,用于完成特定的功能。
(6.4.2) 微指令编码法
1. 直接编码法
2. 最短编码法
将所有微命令统一编码,没条微指令令只定义一个微命令。
- 操作控制字段的长度
L >= log2N(以2为底,微命令总数N为对数)
缺点:微命令数和译码器数量成正相关,不能很好的利用机器的并行性。
3. 字段编码法
例题
(6.4.3) 微程序控制器的组成和工作过程
1. 微程序控制器的基本组成
控制存储器(CM)
作为cpu的核心部件来存放微程序。用ROM实现
微指令寄存器
存放从CM中取出的微指令,它的位数同微指令字长相等。
微地址形成器
用来产生初始微地址和后继微地址,以保证微指令的连续执行。
微地址寄存器
接受微地址形成器送来的微地址,为在CM中读取微指令做准备。
2. 微程序控制器的工作过程
3. 机器指令对应的微程序
一条机器指令对应一个微程序。若指令系统具有n种机器指令则控制存储器中的微程序至少有n+1种。(1:公共的取址微程序)
(6.4.4) 微程序入口地址的形参
1. 一级功能转换
(6.4.5) 后继地址的形成
(6.4.4) 微程序设计
1. 微程序设计方法
水平型指令及水平型微程序设计
- 水平型指令:每条垂直型微指令可并行完成多个微操作。
- 优点:
- 缺点:增加了控存的横向容量。
垂直型指令及垂直型微程序设计
- 垂直型指令:每条垂直型微指令可完成一个基本微操作。
- 缺点:执行一条机器指令所需的微指令数多,且执行时间长。
混合型微指令
2. 微指令的运行方式
串行方式
取指令和执行指令是顺序执行的
并行方式
取指令和执行指令在不同的部件中进行。
(6.5) 控制单元的设计
硬布线与微程序的比较
硬布线也叫组合逻辑型控制器设计,可参考 (6.2.2)
至此总结
(6.6) 流水线技术
有以下几种控制指令的执行的方式:
- 顺序控制:各条机器指令之间顺序串行执行。
- 特点:控制简单,速度慢,机器各部件的利用率低。
- 重叠控制
- 先行控制
- 流水线控制
(6.6.1) 重叠控制
假定每个阶段的执行时间为t,则指令的运行要3t时间
重叠控制是:一次重叠方式需要增加一个指令缓存器,在执行第K条指令时,寄存所取出的第K+1条指令。
执行时间为:3*t + (n-1)*t = (2+n)t
前两种控制方法的总结 + 流水线的表示方法
前两种控制方法的总结
流水线的表示方法
(6.6.2) 先行控制原理
先行控制:取指阶段可合并到分析指令阶段中,指令的运行就变为分析和执行两个阶段。
(6.6.3) 流水工作原理
流水技术基于重叠的先行控制发展起来的。
1. 流水线
流水线将一个较复杂的处理过程分成m个复杂程度和处理时间相当的子过程,每个子过程由一个独立的功能部件来完成,处理对象在各子过程连成的线路上连续流动。
这样,一条指令的执行过程分成取指令、指令移码、取操作数和执行的4个子过程。
假如执行一条指令的时间为T,则流水线充满后,每隔T/4就完成了一条指令的执行。