中央处理器
1.概述
功能
- 程序控制:控制程序中指令执行的顺序。
- 操作控制:产生指令执行所需的操作控制信号,以控制执行部件运行。
- 时序控制:控制每个操作控制信号的开始和持续时间。
- 数据加工:对数据进行运算,在相关部件间传送。
- 中断处理:及时响应内部异常和外部中断请求。
组成
CPU主要由运算器和控制器组成。现代CPU增加了其他单元。
下图为CPU的基本组成。
CPU主要寄存器
- 程序计数器(PC):保存将要执行的指令字节地址。
- 地址寄存器(AR):保存CPU访问主存的单元地址。非必需。
- 数据寄存器(DR):存放主存中读取的数据或准备写入主存的数据。非必需。
- 指令寄存器(IR):保存当前正在执行的指令。
- 通用寄存器组(GR):这些寄存器的功能有多种用途。在x86中为
EAX,EBX···
等。 - 程序状态字寄存器(PSW/PSR):保存算术运算、逻辑运算、测试等指令设立的各种条件标志。还可用于保存中断和系统工作的状态信息。非必需。
操作控制器
时序产生器
2.指令周期
一般流程
由控制器根据程序对应的机器指令序列逐条执行指令。
指令周期
一条指令从取出到完成所需要的时间。
不同阶段
- 取指周期:CPU以PC的内容为地址从主存中取出指令,并计算后续指令的地址。
- 译码周期/取操作数周期:对指令寄存器的指令字进行指令译码。
- 执行周期:对已取出操作数进行加工处理。
- 写回周期:将运算结果写回到寄存器或存储器。
3.数据通路
根据性质分成:
数据处理单元:由组合逻辑电路构成,输出只与当前输入有关,负责对数据进行加工处理。
状态存储单元:带有存储功能的单元,如存储器和寄存器。包含输入端、写使能控制端、时钟输入端和输出端。
数据通路模型:
单总线数据通路
CPU中的运算器、控制器、寄存器堆等核心部件均通过一条内部的公共总线连接。
同一时刻只有一个部件向总线输出数据。
数据传输只能分时使用总线。
专用通路结构数据通路
各功能部件之间均基于专用的数据传输通路连接。
各通路中的数据可并行传输,控制较总线结构要简单。
4.时序与控制
中央处理器的时序
传统三级时序:状态周期、节拍点位、节拍脉冲。
- 节拍电位变化的时刻决定了控制信号产生的时刻
- 节拍电位的长度决定控制信号的持续时间
- 脉冲跳变时刻决定寄存器,存储器锁存时刻
- 为满足寄存器的定时机制,正确写入数据,节拍电位变化时刻应该和脉冲跳变时刻错开
现代时序︰只有时钟周期,指令执行过程是时钟驱动的状态机。
控制方式
同步控制方式:选取部件中最长操作时间作为统一的时间间隔进行时序同步。
异步控制方式:系统不设立统一的时间间隔标准,各部件设置各自的时序系统,分别实现各自的时序控制,主要采用异步应答通信机制实现。
联合控制方式:将同步控制与异步控制相结合,对大多数需要节拍数相近的指令,采用同步控制;而对少数需要节拍数多的指令或节拍数不固定的指令,采用异步控制。
时序发生器
功能:输入时钟脉冲信号,指令译码信号、反馈信号持续不断的产生状态周期电位和节拍电位,操作控制器利用这些周期、节拍电位信号对操作控制信号进行时序的调制,生成控制信号序列。
5.硬布线控制器
直接由各种类型的逻辑门电路和触发器构成,内部结构复杂但速度较快。