存储技术基本

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.
不按写分配的情况



地址为100存储单元不在cache中,不按写 分配,所以访问1和2都发生缺失; 地址为200的存储单元也不在内存中,访问 3发生读缺失,但是该单元会被取到cache 中,因此访问4命中; 访问5是写100内存地址,仍然发生缺失;
结论:4次缺失+1次命中

按写分配情况

对100和200两个内存单元的首次操作都发 生缺失,其所在块都同时被读到cache中, 故剩下的都是命中;


会造成多少次缺 失? 很没有道理的设 计;

多路组相联


设计思想:多个 缓存块绑定,提 升缓存块的使用 效率; 新的缓存地址12 到来,那么放置 的位置:
12 mod 4 = 0
多路组相联的优势

考虑同样的访存序列:

12,20,12,20

会造成多少次缺失?
全相联缓存

缓存块可以放置在缓存的任意位置,也即 整个缓存就是一个组; 优点:
存储技术概论
tfzhang@
存储访问中的局部性概念

缓存访问过程中的访问局部性:


缓存中的某些缓存块比其他的缓存块更频繁被 访问; 缓存块中的某些字比其他字更频繁地被访问;

内存中的访问局部性:

内存中的某些frame相比于其他的frame更频繁 地被访问;
针对内存的Pre-fetch概念

eDRAM(embedded DRAM) Phase Change Memory(PCM) Spin Transfer Torque RAM(STT-RAM)
Embedded DRAM

eDRAM的主要用途?为什么需要eDRAM?

作为多核的大容量片上缓存;

主要优点:

容易整合到硅片上,与处理器集成在一起; 密度大,相应地,容量也大;
缓存缺失的种类

缓存缺失:

访问某个缓存块时,该缓存块不在缓存中,造 成缺失;

缓存缺失的种类:

强制缺失:缓存块第一次被访问; 容量缺失:容量有限,不足以容纳所有缓存块; 冲突缺失:缓存块映射到同一块,冲突导致替 换,替换后导致缺失;
直接映射的不足

如下缓存块访问 地址序列:

12,20,12,20

缺点?

1. 空间利用不充分; 2. L1中的数据可能还有用;
排斥关系

数据要么在L1中,要么在L2中; 从mem取数据只放到L1中; L1替换的数据放到L2中;

优点:

空间利用充分;
不包含关系

数据有可能在L1和L2中,或者在其中之一; 从mem取数据同时放到L1和L2;
L2中的数据替换不涉 及对L1中的数据操作;
缓存块放置在哪里?

缓存块的位置取决于:

缓存块地址; 缓存的组织结构;
块地址 标志字段 索引字段

块内偏移
缓存的组织结构:


直接映射; 全相联映射; 组相联映射;
直接映射


右图是精简后的拥 有8个缓存块的缓 存, 新的缓存块,块地 址为12的话,那 么存放的位置为: 12 mod 8 = 4;

什么是pre-fetch?

预测缓存可能使用到的数据,提前将该数据从 内存中取到缓存;

为什么pre-fetch有效:

1. 内存的访问速度大大慢于缓存的访问速度; 2. 有些应用的内存访问呈现某种规律性;
Pre-fetch的优缺点

对于流媒体特别有效; 缺点也很明显;
DRAM基础

DRAM基本单元:
MTJ Iwrite1 VWL

一个隔离层:


改变Free Layer的方向来达(a) 到改变电阻值,从而改变 数据的存储值;
SL
SL
(b)
两者的主要优缺点

主要优点:

密度大,相应地,容量也大; 无漏电流,静态能耗低;

主要不足:

写速度慢,写能耗大,写次数有限;
存储层次

本课程研究的重点:

缓存; 内存;L1 Cac源自eL2 Cache物理内存(主存)
虚拟存储器(辅存)
缓存基本

缓存作为处理器和内存的中介,需要解决 的问题:


1. 块的放置:一个缓存块在缓存哪里? 2. 块的标志:如果找到它? 3. 块的替换:如果没有命中,哪个块应该被替 换? 4. 写时策略:写操作时会发生什么?
结论:2次缺失+3次命中;

缓存层次间的包含关系

考虑二层次的缓存系统:L1和L2; L1的数据是否包含在L2中?

包含关系; 不包含关系; 排斥关系;
包含关系(inclusive)

L1中的数据是L2数据的子集; 从mem取数据时,同时到L1和L2; 从L2替换数据时,L1中的数据也会被替换;

WL
BL C
一电容+一晶体管;
(a)
DRAM CHIP Bank1 Bank0

基本的组成结构:
Bank->Row; 存储在bank数据阵列中 的数据,以row的单位进 出;

(b)
address
add./control logic
row
command
row buffer I/O gating R W

主要不足:

电容中的电量丢失更快,需要进行更快的数据刷新, 因此refresh energy(数据刷新)更大;
PCM结构

PCM存储数据的机理:

Top Electrode GST Active Region
BL
通过改变自身内部晶体的 状态改变电阻大小,存储 数据; GST相应的会在两种状态之 间切换:晶态和非晶态。 当GST处于任一状态时,能 够持久的保持,所以存储 的数据时非易失的。GST在 两种状态时的阻值范围变 化非常大,达到数个数量 级,

那么会发生多少次缺失?
缓存写策略


写透(write through):信息同时被写到缓存 块和更低一级存储器中; 写回(write back):只将信息写入到缓存块, 只有缓存中的该信息块被替换时,才将信 息写入内存;
写缺失时的策略

写分配(write allocate):

发生写缺失时,内存块被读到缓存中,然后执 行前面的写命中时的策略; 仅修改低级存储器中的该数据块,不将该数据 块取到cache中;


缓存利用得更加充分; 数据块查找过程;

缺点:

缓存块的查找过程

缓存块地址一分为二:
块地址 标志字段 索引字段 块内偏移

索引字段:确定缓存块组; 标志字段:确定组中的缓存块;
缓存块查找过程举例
缓存的常见替换策略

前提:在组相联的情况下


随机策略; 最近最少使用(LRU)策略; 先进先出(FIFO)策略;
data
cell array
DRAM基础



漏电现象:通过电容的电压高低存储数据, 电容的电量随时间推移减少,影响存储数 据的正确性; Refresh:为了保证电容中电量稳定,需要 进行充电操作,也即数据刷新操作; Retention time:大致就等于电容中电压能 够维持的时间;
各种新型的存储器件
最近最少策略举例
假设两个组,每组4个缓存块; 假设初始组0为空, 访存地址序列为:

2, 4, 6, 8, 2, 10, 4, 6, 8,6

那么会发生多少次缺失?
FIFO策略举例
假设两个组,每组4个缓存块; 假设初始组0为空, 访存地址序列为:

2, 4, 6, 8, 2, 10, 4, 6, 8,6
Heater

WL Bottom Electrode (a)
(b)
STT-RAM结构

STT-RAM存储数据的机理:

两个铁磁层:

BL
BL
Free Layer; Reference Layer; MgO;
Free Layer MTJ MgO Reference Layer VWL
MTJ Iwrite0 /Iread

不写分配(non-write allocate):


上述两种策略的搭配:写回法一般与写分 配策略搭配;
写回策略缺失举例

一全相联映射cache,采用写回策略,刚开 始cache为空。有下面的5个存储操作:
Write mem[100]; 2. Write mem[100]; 3. Read mem[200]; 4. Write mem[200]; 5. Write mem[100]; 分别求写分配和不按写分配情况下的命中次数、 缺失次数?
相关文档
最新文档