https://www.likecs.com/show-204642182.html#sc=1621
https://www.likecs.com/show-204642182.html#sc=1621
动态随机存储器(DRAM)具有速度快、密度高、成本低的优势,被广泛应用于计算机的主存.DRAM采用电容作为存储单元,电容电荷的多少表示数字"0"或"1".由于存在漏电现象,电容里的电荷会缓慢流失,造成数据丢失.为保证数据正确性,DRAM采用周期性的刷新操作,在数据丢失前,把数据读出然后重新写入存储单元.刷新操作会阻碍正常访存的执行,造成性能上的开销;同时刷新操作会消耗额外的功耗,带来功耗上的开销.刷新的开销与DRAM密度相关。随着内存容量需求的增加,DRAM占系统整体功耗的比例可达40%。
从顶层到Rank,Chip,Bank,Sub-array,MAT,Cell。一个Chip内部包含有多个Bank,每个bank包含有独立的行地址译码器(row decoder)和感应放大器(sense amplifier)。一般认为,Bank 是DRAM完成独立操作的最小单元。继续往下划分又分为Sub-array,MAT,Cell,具体介绍可参加参考文献一。重点是知道每个存储单元由一个电容和一个晶体管组成,电容的电荷多少表示数字‘1’或‘0’,晶体管的栅极与字线(Wordline)相连,字线控制晶体管的导通,晶体管的漏极与位线(bitline)相连,导通时由位线表示单元里存储的数据。
JEDEC要求在常温下每64ms(高温下为32ms)刷新一遍所有DRAM存储单元。这是一项相当耗时的操作。为避免每64ms出现一次大的停顿,这一过程被分为8192个较小的刷新操作。在每个操作中,计算机的存储器控制器向DRAM芯片发送刷新命令。在接收到指令后,芯片将刷新其单元总数的1/8192。计算一下: 64ms / 8192 = 7812.5 ns或7.81μs。简化DRAM控制器设计,DRAM控制器只需要在每个刷新周期向每个Rank发送8192个刷新。根据自身密度决定刷新行数,DRAM控制器发送2个刷新命令之间的间隔为刷新周期的1/8192,定义为TREF1;DRAM芯片执行一个刷新命令的时间取决于DRAM芯片的密度,定义为TREC.因此每个间隔内需要刷新的行数增多,刷新所占的时间比例不断增大。以4Gb DDR3 DRAM 为例,要求在300ns内完成对64行(8个Bank,每个Bank刷新8行)的刷新操作。单行刷新的延迟大约为50ns,在300ns完成对64行的刷新操作,只能通过并行方式实现,并行单行刷新所消耗的叠加电流必须在DRAM容许范围内。
典型的内存芯片用于刷新的时间占其运行时间的很大一部分——介于0.4%到5%之间。此外,存储器芯片功耗是典型计算机功耗中的一大部分,并且大部分功耗都用于执行刷新。
一个bank内多行并行刷新,实现在TRFC刷新64行的操作。
DRAM读周期:为了使芯片能正确地接收行、列地址并实现读操作,各信号的时间关系应符合下面的要求:行地址必须在RAS#信号有效之前送到芯片的地址输入端;CAS#信号应滞后RAS#一段时间,并滞后于列地址送到芯片地址输入端的时间;RAS#、CAS#应有足够的宽度;WE#信号为高,并在CAS#有效之前建立。
DRAM写周期:1、WE#信号为低,并在信号CAS#有效之前建立。2、数据必须在CAS#有效之前出现在DIN端。
例如:对64✖64的矩阵刷新,存取周期是0.5us,刷新1行的时间为0.5μs(刷新时间是等于存取周期的。因为刷新的过程与一次存取相同,只是没有在总线上输入输出。存取周期>真正用于存取的时间,因为存取周期内、存取操作结束后仍然需要一些时间来更改状态。刷新周期为2ms(占4000个存取周期)。则集中刷新共需0.5✖64=32us(占64个存取周期),在这段时间内存只用来刷新,阻塞一切存取操作,其余3968个存取周期用来读/写或维持信息。
这64个存取周期称为“死时间”,所占的比率64/4000*100%=1.6%称为死时间率。
这种方式的优点是速度高,缺点是死时间长。
例如:对64*64的矩阵刷新,存取周期是0.5us,则读写周为0.5us。
刷新周期为:64*1us=64us<2ms , 在2ms丢失电荷前就会及时补充。
优点是没有死时间了,缺点是速度慢。无异于加长了存取周期,会使系统运行速度降低,刷新操作也过于频繁。
例如:对64*64的矩阵刷新,存取周期为0.5us。
要使每行能在2ms内刷新一次,即每隔 (2ms/64us) 刷新一行,也就是对这一行来说,下一次对它进行刷新的间隔,期间要经过64次内存刷新周期才又轮得到它。
每行刷新的时间仍为0.5us,刷新一行只停止一个存取周期,但对每行来说,刷新间隔在2ms以内,死时间缩短为0.5us。
【1】崔泽汉, 陈明宇. 大容量DRAM的刷新开销问题及优化技术综述[J]. 计算机研究与发展, 2016, 53(2):416-430.
【2】JEDEC:Joint Electron Device Engineering Council. http://www.jedec.org 固态技术学会
【4】DRAM(动态)存储器
【5】刷新周期