上QQ阅读APP看书,第一时间看更新
2.3.2 DRAM刷新
DRAM通过在电容上保存电子的多少来记录“0”和“1”两个状态。但是,DRAM在读取内存单元时,内存单元中电容上的电子会随着时间推移逃逸,称为破坏性读出,这就要求 DRAM定期将内存单元里的数据读取后再写入,称为刷新(Refresh)操作。
破坏性读出的特性要求 DRAM 读操作之后需要将原有数据再次写入。在DRAM 中,数据在 DRAM 路中会通过读放大器将数据读取到行缓存中,此时原有 DRAM 行中的数据丢失。在读取完成之后,DRAM 需要从行缓存中将数据再次写入原有的 DRAM行,这个操作也被称为预充电(Pre-charge)。通过这个操作,在读取之后仍然在原有行中保留之前的数据。
DRAM 存储单元在一段时间内保存数据的能力被称为保持力(Retention)。为了能够正确保存数据,DRAM 通过刷新操作定期对 DRAM 行中的数据读取并重新写入。例如,在 DRAM单元的保持力基本都超过64 ms时,DRAM需要保证每一行在64 ms间隔内被刷新。
DRAM的刷新操作包括集中式刷新和分布式刷新,如图2.19所示。集中式刷新是每隔一段时间,停止内存的外部读/写操作,由内存控制器将内存行逐一刷新。这样的优点在于实现简单,缺点在于外部读写延迟大。分布式刷新是对内存所有行交替进行刷新操作和外部读/写操作,在刷新时间间隔内均匀分散。
图2.19 DRAM刷新示意