计算机组成结构-Lecture04

时间:2025-05-15

计算机组成结构

教师:傅均班级:计科1001/1002

4.3 高速缓冲存储器一、概述1. 问题的提出避免 CPU “空等” 现象

CPU 和主存(DRAM)的速度差异CPU 缓存容量小 速度高

主存容量大 速度低

程序访问的局部性原理

2. Cache 的工作原理(1) 主存和缓存的编址主存储器 主存块号 标记 Cache

4.3缓存块号

0 0 1字块 0 字块 1

字块 0字块 1

……

……

1

~2 -1n位 m位 主存块号 M块m

~字块 M-1 b位 块内地址

2c-1

~ ~c位

~ ~字块 C-1 b位

缓存块号 块内地址 C块

B个字

B个字

主存和缓存按块存储

块的大小相同

B 为块长

(2) 命中与未命中缓存共有 C 块 主存共有 M 块 M >> C 命中 主存块 调入 缓存 主存块与缓存块 建立 了对应关系

4.3

用 标记记录 与某缓存块建立了对应关系的 主存块号

未命中

主存块 未调入 缓存主存块与缓存块 未建立 对应关系

(3) Cache 的命中率CPU 欲访问的信息在 Cache 中的 比率 命中率 与 Cache 的 容量 与 块长 有关

4.3

一般每块可取 4 ~ 8 个字 块长取一个存取周期内从主存调出的信息长度 CRAY_1 IBM 370/168 16体交叉 4体交叉 块长取 16 个存储字 块长取 4 个存储字 (64位×4 = 256位)

(4) Cache –主存系统的效率效率 e 与 命中率 有关 访问 Cache 的时间 e= × 100% 平均访问时间

4.3

设 Cache 命中率 为 h,访问 Cache 的时间为 tc , 访问 主存 的时间为 tm tc × 100% 则 e= h × tc+ (1-h)× tm

3. Cache 的基本结构地址总线

4.3主存地址 块号 块内地址

由CPU完成访问主存 替换Cache

Cache Cache 替换机构 替换机构

可装进?

命中?

主存Cache 地址映射 变换机构

主访问主存装入Cache 是 是 Cache地址 直接通路 块号 块内地址

CPU

Cache存储体

Cache 存储体

数据总线

4. Cache 的 读写 操作读开始 CPU发出访问地址

4.3

命中?

否Cache满? 否 是

访问Cache 取出信息送CPU

访问主存 取出信息送CPU

将新的主存块 调入Cache中

执行替换算法 腾出空位

结束

4. Cache 的 读写 操作写Cache 和主存的一致性

4.3

写直达法(Write – through)写操作时数据既写入Cache又写入主存

写操作时间就是访问主存的时间,读操作时不 涉及对主存的写操作,更新策略比较容易实现

写回法(Write – back)写操作时只把数据写入 Cache 而不写入主存 当 Cache 数据被替换出去时才写回主存 写操作时间就是访问 Cache 的时间, 读操作 Cache 失效发生数据替换时, 被替换的块需写回主存,增加了 Cache 的复杂性

5. Cache 的改进(1) 增加 Cache 的级数片载(片内)Cache 片外 Cache

4.3

(2) 统一缓存和分立缓存指令 Cache 数据 Cache与主存结构有关 与指令执行的控制方式有关Pentium 8K

指令 Cache

是否流水8K 数据 Cache

PowerPC620

32K 指令 Cache

32K 数据 Cache

二、Cache – 主存的地址映射1. 直接映射i = j mod Ct位 Cache存储体 0 标记 * 1 标记字块 0 字块 1

4.3主存储体字块0 字块1

比较器(t位)

2c-1 标记 字块 2c-1 主存字 块标记 t位 Cache 字块 字块地址 内地址 c位 m位 b位

字块2c-1 字块2c 字块2c +1

=有效位=1? 是 命中否

≠ 主存地址

字块2c+1-1 字块2c+1 字块2m-1

… …

不命中

每个缓存块 i 可以和 若干 个 主存块 对应 每个主存块 j 只能和 一 个 缓存块 对应

2. 全相联映射Cache 存储器 m = t+c标记 字块0 字块1 …

4.3主存储器字块0 字块1 …

标记

标记主存地址

字块2c-1 字块2c-1 …

字块2m-1字块内地址

主存字块标记

m=t+c位

b位

主存 中的 任一块 可以映射到 缓存 中的 任一块

3. 组相联映射组 0 1

4.3主存储器字块0字块1 字块2c-r -1 字块2c-r 字块2c-r + 1 标记 标记 字块 1 字块 3

Cache 共 Q 组,每组内两块(r = 1)标记 标记 字块 0 字块 2

2 -1

c-r

标记 字块 2c-2 标记 字块 2c-1 主存地址

主存字块标记

组地址

字块内地址b位

q = c-r 位 s=t+r 位 m位

字块2c-r+1 字块2c-r+1

i = j mod Q

直接映射 全相联映射

字块2m-1

某一主存块 j 按模 Q 映射到 缓存 的第 i 组中的 任一块

三、替换算法1. 先进先出 ( FIFO )算法 2. 近期最少使用( LRU)算法 小结 成本高 不灵活直接某一 主存块 只能固定 映射到 某一 缓存块

4.3

全相联 某一 主存块 能 映射到 任一 缓存块 组相联 某一 主存块 只能 映射到 某一 缓存 组 中的 任一块

课后作业P19 习题 1、3、5、6、11 P38 习题 3

预习p41~66内容

…… 此处隐藏:327字,全部文档内容请下载后查看。喜欢就下载吧 ……
计算机组成结构-Lecture04.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219