5.1 CPU的功能和基本结构

==问题:CPU需要提供哪些功能?对应功能需要有哪些结构?==

1.运算器

  • 专用数据通路方式:根据指令执行过程中的数据和地址流动方向安排连接线路
image-20260301201803081
  • 内部单总线方式:将所有寄存器的输入端和输出端都连接到一条公共的通路上。
image-20260301201834464

2.控制器

  • ==PC的值什么时候修改?==

    • 顺序执行时:取值周期结束后立即修改
    • 转移指令时:执行周期中修改(覆盖掉了取值周期结束后的+1)
    • 条件转移时:如果满足转移:在执行周期中修改;如果不满足转移:保持为取值周期结束后的+1。
  • ==PC的位数?==

    • 取决于:存储器容量 和 指令字长。
    • 如果用字节地址(8bit)表示指令地址,PC位数=存储器的地址长度
    • 如果用字地址(多少多少个字节凑一起)表示指令地址,PC位数 = 存储器的地址长度 - log₂(需要存储的指令的字节数)
      • 原因是:eg一个指令4字节,变长了,存储器放不下那么多个指令了,得减少一点。
      • 32 - log₂(4) = 32 - 2 = 30位。
  • ==“+1”:==

    • 1指的是一条指令的长度,并不一定是1。根据不同的指令长度确定(例如指令长度4字节,就应该+4)

image-20260301191139018

3.==CPU==

  • ==四大部分:ALU,寄存器,中断系统,CU控制单元==

  • 本章重点:CU

  • 用户可见寄存器:PSW,ACC,PC,通用寄存器

  • ==用户不可见寄存器:IR,MAR,MDR,暂存寄存器,累加寄存器ACC,移位寄存器IX==

image-20260301191456870

4.CPU(运算器+控制器)的功能

CPU 运算器 控制器
指令控制 对数据进行加工 取指令
操作控制 分析指令
时间控制 执行指令
数据加工 中断处理
中断处理