视频加载失败

课程

3036 字
约 9 分钟

chapter-notes

计算机体系结构notes·更新于 2026-09-15

CH01 计算机系统基础知识

  • Amdahl定律
    • 加速比
  • CPU性能公式
    • CPI,IC,比例
  • 计算机组成和计算机体系结构等的区别

CH02 指令系统的设计

  • 哈夫曼编码
    • 平均码长,信息冗余量,熵(跟机器学习那个一样)
  • 24,37编码

  • MIPS指令

CH03 流水线技术

  • 通过时间和排空时间的定义
  • 流水线各段时间均等与不均等的计算性能
    • 吞吐率,加速比,效率
  • 五个阶段,三个相关
    • 数据相关,名相关,控制相关
  • 三种冲突
    • RAW, WAR, WAW
    • 解决方法
      • 延迟槽,减少分支延迟,预测分支成功/失败

CH05 指令级并行及其开发-硬件方法

指令动态调度

  • 相关概念
  • Tomasulo算法基本原理、基本思想
  • 算法的三个阶段(流出、执行、写回)
  • 基于Tomasulo算法的MIPS处理器浮点部件的基本结构的工作原理及相应指令分析
  • 保留站7个字段的含义及其对应指令的应用

动态分支预测技术

  • 几种方法:采用分支历史表BHT、分支目标缓冲器BTB、基于硬件的前瞻执行
  • 前瞻执行基本思想(ROB)与Tomasulo算法的联系与区别
  • 前瞻执行基本思想(ROB)的4个阶段:流出、执行、写结果、确认

动态调度

  • 指令乱序执行

  • 实现多配置

  • 每一条指令都要经过流水线的四段(流出、读数、执行、写回)

  • Tomasulo算法 保留站

    • 流出阶段:通过寄存器换名解决名相关(WAR和WAW相关)
    • 执行阶段:通过推迟方法解决RAW相关
  • 前瞻执行

    • 执行阶段检测RAW冲突

CH07 存储系统

  • 注意减少不命中 开销 和 不命中 的区别

第一章:计算机系统基础知识

计算机系统的实质

  • 确定计算机系统中软硬件的界面,界面之上是软件实现的功能,界面之下是硬件和固件实现的功能
  • 指令集结构:用硬件实现的指令集,软硬件之间的主要界面;

计算机系统设计的4个定量原理:如何优化并提高计算机性能

  • 以经常性事件为重点
  • Amdahl定律(理解原理并能进行简单计算)
  • CPU性能公式(三个参数:时钟周期时间、CPI、IC):理解不同方案性能的提高程度;
  • 程序的局部性原理

第二章:指令系统的设计

了解指令系统结构三种类型:堆栈结构、累加器结构、通用寄存器结构

哈夫曼编码基本思想

  • 缩短编码长度;
  • 理解并掌握指令操作码的优化(计算案例)

掌握并能灵活应用常用的MIPS指令

  • MIPS指令特点(浮点寄存器与整数寄存器)、数据寻址方式
  • MIPS三种指令格式:I类指令、R类指令、J类指令
  • MIPS指令操作分为四大类:Load、分支与跳转、…、…

第三章:流水线技术

流水线相关概念、分类

  • 部件级、处理机级及处理机间流水线
  • 单功能流水线与多功能流水线
  • 静态流水线与动态流水线
  • 线性流水线与非线性流水线
  • 顺序流水线与乱序流水线

掌握并应用流水线的性能指标

  • 各段时间均等与不均等的计算;
  • 吞吐率、加速比、效率
  • 静态与动态流水线分析举例

流水线的相关

  • 经典流水线的5个阶段及其作用
  • 相关的三种类型:数据相关、名相关、控制相关

流水线冲突

  • 三种:结构冲突、数据冲突、控制冲突——基本概念
  • 三种数据冲突:RAW、WAR、WAW
  • 控制冲突的三种软件解决方法:减少分支延迟、预测分支失败/成功、延迟槽技术

第四章:向量处理机

向量处理机概念

向量处理机+流水线=向量处理机

向量处理机的两种方式(横向水平和纵向垂直两种方式);

  • 二者的特点差别(数据相关、功能切换、适用场景)

提高向量处理的性能方法

  • 连接技术:加快向量指令的执行;
    • 两条向量指令占用功能流水线…寄存器的4种情况
      • 指令相关、功能部件冲突、源寄存器冲突、结果寄存器冲突
    • 在Cray-1是用连接技术进行…,如何分析是…情况的执行时间

第五章:指令级并行及其开发-硬件方法

指令级并行概念

  • 开发ILP的两种途径(资源重复,流水线技术);
  • 开发ILP的方法
    • 基于硬件的动态开发方法,基于软件的静态开发方法:

流水线研究的并行技术以及所克服的停顿

  • 流水线调度、循环展开、寄存器换名、指令动态调度、动态分支预测、瞻、多指令流出;

衡量流水线最高性能指标(CPI)

  • 实际CPI和理想CPI的关系;

指令动态调度

  • 相关概念
  • Tomasulo算法基本原理、基本思想
  • 算法的三个阶段(流出、执行、写回)
  • 基于Tomasulo算法的MIPS处理器浮点部件的基本结构的工作原理及相应指令分析
  • 保留站7个字段的含义及其对应指令的应用

动态分支预测技术

  • 几种方法:采用分支历史表BHT、分支目标缓冲器BTB、基于硬件的前瞻执行
  • 前瞻执行基本思想(ROB)与Tomasulo算法的联系与区别
  • 前瞻执行基本思想(ROB)的4个阶段:流出、执行、写记过、确认

多指令流出技术

  • 引入目的:提高CPI
  • 常用的技术:超流水线、超长指令字VLIW

第6章:指令级并行及其开发-软件方法

软件的静态调度

  • 循环展开的本质;
  • 全局指令调度引入的原因、目标
    • 分支结构的循环体需要在多个基本块间移动指令,称为“全局指令调度”
    • 目标:在保持原有数据相关和控制相关不变的前提下(保证结果正确),尽可能的能地缩短包含分支结构的代码段的总执行时间。
    • 全局指令调度基本思想:在循环体内的多个基本块间移动指令,扩大…频率较高的基本块的体积(放到延迟槽中)。优化执行效率高的…
  • 全局指令调度:踪迹调度、超块调度
  • 显示并行指令计算EPIC
    • 条件传输指令与谓词执行的简单应用…指令含义)

第7章:存储系统

理解Cache三种映射方式;

  • 两种并行查找算法:相联存储器和单体多字存储器+比较器;

写策略

  • 写回与直达法的区别

评价系统性能的间接指标

  • 平均访存指标,计算公式:平均访存时间=命中时间+不命中率×不命中开销
  • 程序执行时间CPU时间=(CPU执行周期数+存储器停顿周期数)×时钟周期时间

不命中开销=不命中周期数(停顿)×时钟周期时间

存储器停顿时钟周期数=访存次数×不命中率×不命中开销

降低不命中率

  • 三种类型的不命中
    • 强制性不命中(增加块大小、预取)、容量不命中(增加容量)、冲突不命中(提高相联度)
  • 8种降低不命中率优化策略
    • 增加Cache块大小、增加Cache的容量、提高相联度、伪相联Cache(列相联Cache)、硬件预期、编译器控制的预取、编译器优化、“牺牲”Cache

减少Cache不命中开销-5种

  • 采用二级Cache(增加一级Cache,常用的方法)
  • 让读不命中优先于写
  • 写缓冲合并
  • 请求字处理技术
  • 非阻塞Cache或非锁定Cache技术
Profile Image of the Author
Sonder
好想要技术
这是公告标题
这只是一个公告
分类
标签
站点信息
构建平台
GitHub Actions
博客版本
Firefly v6.16.7
文章许可
CC BY-NC-SA 4.0
文章目录