CPU结构与功能¶
概述¶
CPU(Central Processing Unit,中央处理器)是计算机的核心部件,负责执行指令、处理数据和控制计算机各部件协调工作。理解CPU的结构和功能对于深入理解计算机系统至关重要。
CPU的基本结构¶
1. 运算器 (ALU)¶
运算器负责执行各种算术运算和逻辑运算。
主要组成:
- 算术逻辑单元(ALU): 执行算术和逻辑运算
- 通用寄存器: 暂存操作数和运算结果
- 暂存寄存器: 暂存中间结果
- 移位器: 实现移位操作
- 状态寄存器(PSW): 保存运算结果的状态标志
主要功能:
- 算术运算: 加、减、乘、除
- 逻辑运算: 与、或、非、异或
- 移位操作: 左移、右移、循环移位
- 比较操作: 大于、小于、等于
2. 控制器 (CU)¶
控制器负责指挥和协调计算机各部件工作。
主要组成:
- 程序计数器(PC): 存放下条指令的地址
- 指令寄存器(IR): 存放当前执行的指令
- 指令译码器: 对指令操作码译码
- 地址形成部件: 形成操作数有效地址
- 时序发生器: 产生时序控制信号
- 微操作控制部件: 产生各种控制信号
主要功能:
- 取指令: 从存储器取出指令
- 分析指令: 对指令译码
- 执行指令: 发出控制信号执行指令
- 控制程序执行流程
3. 寄存器组¶
寄存器是CPU内部的高速存储单元,用于暂存数据、地址和状态信息。
寄存器分类:
用户可见寄存器¶
- 通用寄存器: 存放操作数和运算结果
- 数据寄存器: 专门存放数据
- 地址寄存器: 专门存放地址
- 条件码寄存器: 存放状态标志
控制和状态寄存器¶
- 程序计数器(PC): 下条指令地址
- 指令寄存器(IR): 当前指令
- 存储器地址寄存器(MAR): 存储器地址
- 存储器数据寄存器(MDR): 存储器数据
- 程序状态字寄存器(PSW): 状态标志
CPU的主要功能¶
1. 指令控制¶
控制程序的执行顺序,确保指令按正确的顺序执行。
功能:
- 取指令
- 分析指令
- 执行指令
- 处理转移指令
2. 操作控制¶
根据指令要求,产生各种控制信号,控制各部件完成相应操作。
控制信号类型:
- 寄存器控制信号: 控制寄存器的读写
- 存储器控制信号: 控制存储器的读写
- 运算器控制信号: 控制运算器的操作
- 总线控制信号: 控制数据传送
3. 时序控制¶
对各种操作进行时间控制,确保操作按正确的时序执行。
时序信号:
- 指令周期: 执行一条指令的时间
- 机器周期: 完成一个基本操作的时间
- 时钟周期: 最小的时间单位
4. 数据加工¶
对数据进行算术运算和逻辑运算。
运算类型:
- 算术运算: 加、减、乘、除
- 逻辑运算: 与、或、非、异或
- 移位操作: 左移、右移
- 比较操作: 大于、小于、等于
5. 中断处理¶
处理各种中断请求,实现CPU与外设的并行工作。
中断类型:
- 硬件中断: 外设请求
- 软件中断: 系统调用
- 异常中断: 程序错误
CPU的工作原理¶
1. 取指令¶
| Text Only | |
|---|---|
2. 分析指令¶
3. 执行指令¶
根据操作码和地址码,发出相应的控制信号,完成指令功能。
4. 循环执行¶
重复上述过程,直到程序结束。
CPU的性能指标¶
1. 主频¶
CPU的时钟频率,单位为Hz。
- 主频 = 1 / 时钟周期
- 主频越高,CPU速度越快
2. 字长¶
CPU一次能处理的二进制数据的位数。
- 常见字长: 32位、64位
- 字长越长,处理能力越强
3. CPI (Cycles Per Instruction)¶
执行一条指令所需的平均时钟周期数。
- CPI = 总时钟周期数 / 指令数
- CPI越小,执行效率越高
4. MIPS (Million Instructions Per Second)¶
每秒执行的百万指令数。
- MIPS = 指令数 / (执行时间 × 10^6)
- MIPS = 主频 / CPI
5. FLOPS (Floating-point Operations Per Second)¶
每秒执行的浮点运算次数。
- MFLOPS: 百万次浮点运算/秒
- GFLOPS: 十亿次浮点运算/秒
- TFLOPS: 万亿次浮点运算/秒
CPU的发展趋势¶
1. 多核技术¶
- 单芯片多处理器(CMP)
- 提高并行处理能力
- 降低功耗
2. 超线程技术¶
- 一个物理核心模拟多个逻辑核心
- 提高资源利用率
- 提高吞吐率
3. 乱序执行¶
- 动态调度指令执行顺序
- 提高指令级并行性
- 减少流水线停顿
4. 分支预测¶
- 预测转移指令的方向
- 减少控制冲突
- 提高流水线效率
5. 缓存优化¶
- 多级缓存结构
- 缓存预取
- 缓存替换算法优化