Skip to content

存储系统

存储器概述

技术指标:

  • 存取速度
    • 存取时间:完成一次读/写的时间
    • 存取周期:连续启动两次访问操作之间的最短时间间隔(略大于存取时间)
    • 存储器带宽:单位时间内存储器所能传输的信息量

边界对齐(32 位):

  • DW 起始字节地址最末 3 位为 000,地址是 8 的整数倍
  • W 起始字节地址最末 2 位为 00,地址是 4 的整数倍
  • 半字的起始字节地址最末 1 位为 0,地址是 2 的整数倍
  • 单字节不存在边界对齐问题

半导体存储器

CPU 理论上的最大寻址范围,由 MAR 和 MDR 的大小决定,为 \(2^{\text{MAR}} \times \text{MDR}\).

SRAM

image.png

DRAM

D1074AD9C1FF39C7A4FCF4F03033AA01.png

主存的组织及与 CPU 的连接

位扩展

扫描全能王 2024-06-23 11.58_1.jpg

字扩展

扫描全能王 2024-06-23 11.58_2.jpg

字位同时扩展

扫描全能王 2024-06-23 11.58_3.jpg

并行主存系统

方法:双端口存储器、单体多字存储器、多体交叉存储器

扫描全能王 2024-06-23 11.58_4.jpg

  • 高位交叉:
    • 相邻地址在同一存储体内
    • 不同存储体中的地址不相邻
  • 低位交叉:
    • 相邻地址在不同存储体内
    • 同一存储体中的地址不相邻

在低位交叉方式下,设存储模块的存储周期为 \(T\),总线传输周期及相应的处理时间延迟总和为 \(\tau\) ,交叉模块数为 \(m=2^k\) ,要实现流水线方式存取,应满足:\(T=m\tau\),连续读取 \(n\) 个字所需时间为 \(T+(n-1)\tau\)

扫描全能王 2024-06-23 11.58_5.jpg

Cache

映射方式

全相联映射:

扫描全能王 2024-06-23 11.58_6.jpg

直接相联映射:

扫描全能王 2024-06-23 11.58_7.jpg

组相联映射:

扫描全能王 2024-06-23 11.58_8.jpg

替换算法

  1. 先进先出算法
  2. 最不经常使用算法(LFU):被访问行的计数器 +1
  3. 近期最少使用算法(LRU):被访问行的计数器清零,其余 +1
  4. 随机替换算法:TLB 采用

写入策略

  1. 写回法(Write-Back, WB):此行被替换时才将脏数据写回主存
  2. 写穿法(Write-Through, WT):同时对 Cache 和主存进行修改

虚拟存储器

扫描全能王 2024-06-23 11.58_9.jpg

结合 Cache 的虚拟存储器访问流程:

扫描全能王 2024-06-23 12.58_1.jpg

利用 TLB 加速虚拟存储器地址转换:

转换旁路缓冲区(TLB):

  • 容量较小的 cache
  • 大多采用全相联或组相联方式
  • 随机替换算法
  • 扫描全能王 2024-06-23 12.58_2.jpg
  • TLB 表为快表,主存中的页表为慢表

扫描全能王 2024-06-23 12.58_3.jpg

扫描全能王 2024-06-23 12.58_4.jpg

扫描全能王 2024-06-23 12.58_5.jpg

CPU 访存过程:

扫描全能王 2024-06-23 12.58_6.jpg


Comments