• 约 6 分钟

计算机组成原理·中央处理器

数据通路的功能和基本结构

数据通路的功能

  • 数据通路
  • 数据通路的功能(数据交换)

数据通路的基本结构

  • CPU内部单总线方式
  • CPU内部多总线方式
  • 专用数据通路方式

控制器的功能和工作原理

控制器的结构和功能

硬布线控制器

微程序控制器

微程序控制的基本概念

  • 微命令与微操作
    • 机器指令
      • 微操作序列
    • 微命令
      • 控制序列中最小单位
    • 微操作
      • 与微命令一一对应
      • 微命令是微操作的控制信号
      • 微操作是微命令的执行过程
    • 相容性微命令
    • 互斥性微命令
  • 微指令与微周期
    • 微指令是若干微命令的集合
    • 微指令存放在控制存储器中
    • 控制存储器的地址称为微地址
    • 微指令包含两大部分信息
      • 操作控制字段(微操作码字段)
      • 顺序控制字段(微地址码字段)
    • 微周期
      • 执行一条微指令所需时间,通常微一个时钟周期
  • 主存储器和控制存储器
    • 主存
    • 控制存储器
      • 在CPU内部
      • 用ROM实现
  • 程序与微程序
    • 微程序是微指令的有序集合
  • μ\muPC和μ\muIR
    • 即CMAR和CMDR

微程序控制器组成和工作过程

  • 微程序控制器的基本组成
    • CM
    • CMDR
    • 微地址形成部件
    • CMAR
  • 微程序控制器的工作过程
  • 微程序和机器指令

微指令的编码方式

  • 直接编码
    • 每位都代表一个微命令
  • 字段直接编码
    • 分成小字段
    • 分段原则
      • 相容互斥
      • 小段位数
      • 000
    • 字段间接编码方式
      • 又称隐式编码

微指令的地址形成方式

  • 基本类型
    • 直接由微指令的下地址字段指出
      • 又称断定方式
    • 根据机器指令的操作码形成
  • 其他
    • 增量计数法
    • 标志判断
    • 测试网络
    • 硬件直接产生

微指令的格式

  • 水平型
  • 垂直型
  • 混合型

微程序控制单元的设计步骤

动态微程序设计和毫微程序设计

硬布线和微程序控制器的特点

CPU的功能和基本结构

CPU的功能

CPU的基本结构

  • 运算器
    • ALU
    • 暂存寄存器
    • ACC
    • 通用寄存器
    • PSW
    • 移位器
    • 计数器
  • 控制器
    • 基本功能
      • 微操作
    • 类型
      • 硬布线控制器
      • 微程序控制器
    • 组成
      • PC
      • IR
      • 指令译码器
      • MAR
      • MDA
      • 时序系统
      • 微操作信号发生器

指令流水线

指令流水线的基本概念

指令流水的定义

  • 指令执行的5个阶段
    • IF
    • ID
    • EX
    • MEM
    • WB
  • 流水线设计原则
  • 指令集应具备特征
    • 长度尽量一致
    • 格式尽量规整
    • Load/Store两条访存指令
    • 数据和指令在存储器中对齐存放

流水线的表示方法

  • 时空图

流水线的基本实现

  • 流水线的数据通路
  • 流水线的控制信号
  • 流水线的执行过程

流水线的冒险与处理

  • 结构冒险(结构相关/资源冲突)
    • 属于互斥问题
    • 解决方法
      • 暂停
      • 数据存储器和指令存储器分离
  • 数据冒险(数据相关/数据冲突)
    • 属于同步问题
    • 分类
      • RAW
      • WAR
      • WAW
    • 解决方法
      • 暂停
        • 硬件阻塞(stall)
        • 软件插入(NOP)
      • 设置相关专用通路
        • 数据旁路技术
      • 调整顺序
  • 控制冒险(控制相关/控制冲突)
    • 解决方法
      • 分支预测
      • 预取两个方向的指令
      • 加快和提前形成条件码
      • 提高转移方向的猜准率

流水线的性能指标

  • 吞吐率
  • 加速比

高级流水线技术

  • 超标量流水线技术(动态多发射)
  • 超长指令字技术(静态多发射)
  • 超流水线技术

多处理器的基本概念

SISD、SIMD、MIMD的基本概念

  • SISD
    • 一个处理器和一个存储器
  • SIMD
    • 一个指令控制部件、多个处理单元
    • 多个处理单元指令相同但数据不同
    • 一个指令流同时对多个数据流进行处理(数据级并行技术)
    • SIMD在使用for循环处理数组时最有效,在使用switch语句时效率最低
  • MISD
  • MIMD
    • 同时执行多条指令分别处理多个不同的数据(线程级或线程级以上并行技术)
    • 分类
      • 多计算机系统(消息传递MIMD)
        • 每个计算机有自己的存储器
        • 不同计算机通过消息传递进行数据传送
      • 多处理器系统(共享存储MIMD)
        • 共享存储多处理器
      • 向量处理器
        • 能够直接操作一维数组

硬件多线程的基本概念

  • 细粒度多线程
    • 一会儿发这朵花,一会儿发那朵
  • 粗粒度多线程
    • 一会儿发这朵花,这个发不出去就发另一朵
  • 同时多线程(SMT)
    • 一会儿发这些花儿,一会儿发那些花儿

多核处理器的基本概念

共享内存多处理器的基本概念

CISC和RISC的基本概念

CISC

主要特点 复杂 长度不固定 访存指令多 各种指令使用频率 各种指令执行时差 微程序 难以用优化编译生成高效目标代码

RISC

  • 主要特点

CISC和RISC的比较

林威
林威 咖味十足的软件工程师