刷新的过程实质上是先将原存信息读出,再由刷新放大器形成原信息并重新写入的再生过程
根据这个特点,可以估计刷新电路执行趟耗费的时间大致和访存时间相当
刷新放大器及读放大器均起此作用
由于存储单元被访问是随机的,有可能某些存储单元长期得不到访问,不进行存储器的读/写操作,其存储单元内的原信息将会慢慢消失。
为此,必须采用定时刷新的方法,它规定在一定的时间内,对动态 RAM 的全部基本单元电路必作一次刷新,一般取 2 ms,这个时间称为刷新周期,又称 再生周期。
刷新是 一行行进行的
刷新周期内,由专用的刷新电路来完成 对基本单元电路的逐行刷新,才能 保证动态RAM内的信息不丢失。刷新操作不依赖于芯片最近是否被访问过(只要DRAM芯片上有数据,就要刷新维护,以便随时取用)
为了便于描述:
通常有三种方式刷新:集中刷新、分散刷新和异步刷新。
集中刷新是在规定的一个 刷新周期内,对 全部存储单元集中一段时间逐行进行刷新,此刻必须停止读/写操作。
例如,对 128× 128 矩阵的存储芯片A进行刷新时,
由于在这 64 us 时间内不能进行读/′写操作,故称为“死时间”,又称访存“死区”,

分散刷新:把对每行的刷新分散到各个工作周期中。
这样,一个存储器的系统工作周期(分为两部分:
这种刷新方式增加了系统的 存取周期,如存储芯片的存取周期为 0.5us,则系统的存取周期为 1us。
分散刷新的优点是没有死区;
缺点是加长了 系统的存取周期,降低了整机的速度

t c = t M + t R t_{c}=t_{M}+t_{R} tc=tM+tR
t c 表 示 新 的 系 统 存 取 周 期 ; t M 表 示 读 写 或 维 护 操 作 时 间 ; t R 表 示 刷 新 操 作 时 间 t_{c}表示新的系统存取周期;t_{M}表示读写或维护操作时间;t_{R}表示刷新操作时间 tc表示新的系统存取周期;tM表示读写或维护操作时间;tR表示刷新操作时间
异步刷新是前两种方法的结合,它既可缩短“死时间”,又能充分利用最大刷新间隔为 2ms 的特点。
具体做法是将刷新周期2000us除以存储芯片A的行数n
这样可以避免使 CPU 连续等待过长的时间,而且减少了刷新次数,从根本上提高了整机的工作效率。
异步刷新是前两种方式的结合,它既可缩短“死时间”,又充分利用最大刷新间隔为 2 ms 的特点
每行刷新的所需时间仍为 0.5 us这样,刷新一行只停止一个存取周期,但 对每行来说,刷新间隔时间仍 2ms.而死时间缩短为 0.5 us。

DRAM 的刷新需注意以下问题:
刷新 对CPU是透明的,即刷新 不依赖于外部的访问(刷新不占用 cpu 资源,但是会在 DRAM 刷新的时候阻碍 cpu 对存储的访问);
动态 RAM 的刷新单位是行,因此刷新操作时仅需要行地址;
刷新操作类似于读操作,但又有所不同。
刷新时不需要选片,即整个存储器中的所有芯片同时被刷新。
An asynchronous DRAM chip has power connections,
There are four active-low (有效低电平)control signals:
RAS, the Row Address Strobe.
CAS, the Column Address Strobe.
WE, Write Enable.
OE, Output Enable.
This interface provides direct control of internal timing.
When RAS is driven low, a CAS cycle must not be attempted until the sense amplifiers have sensed the memory state, and RAS must not be returned high until the storage cells have been refreshed.
When RAS is driven high, it must be held high long enough for precharging to complete.
Although the DRAM is asynchronous, the signals are typically generated by a clocked memory controller, which limits their timing to multiples of the controller’s clock cycle.(限制为控制器时钟周期的倍数)
半导体存储芯片采用超大规模集成电路制造工艺,在一个芯片内集成具有记忆功能的存储矩阵、译码驱动电路和读/写电路等
译码驱动能把 地址总线送来的 地址信号翻译成 对应存储单元的选择信号,该信号 在读/写电路的配合下完成对被选中单元的读/写操作。
读/写电路包括读出放大器和写入电路,用来完成读/写操作。
地址总线﹑数据总线和 控制总线与外部连接。数据线的位数与芯片容量 有关,地址线和数据线的位数 共同反映存储芯片的容量。
地址线是单向输入的,其 位数与芯片容量 有关。数据线是双向的(有的芯片可用 成对出现的数据线分别作为输入或输出),位数与芯片可读出或写入的数据位数有关。控制线
读/写控制线与 片选线,两种。片选线用来选择存储芯片。读/写控制线共用 1 根(如芯片2114) ,有的分用两根(如 6264) ;片选线用1根(如芯片2114) ,有的用 2 根(如 6264)。32 片 16 Kx1 位的存储芯片组成
此处将存储体芯片也称为模块
高位交叉编址
低位交叉编址
模 块 号 i = 单 元 地 址 / m 模块号i=单元地址/m 模块号i=单元地址/m
地址为 0 , m , ⋯ ( k − 1 ) m 0,m,\cdots{(k-1)m} 0,m,⋯(k−1)m(等差数列)的存储单元位于同一个模块 M 0 M_0 M0
cpu每次访问一个存储体(多模块中的一个)
从开始访问到结束对某个模块的访问需要的时间为存取周期 T c , 简 记 为 T T_c,简记为T Tc,简记为T
而将访问到的数据通过数据总线从存储器传输到cpu(MDR)中需要的时间,即传输周期为 T r , 简 称 为 r T_r,简称为r Tr,简称为r
假设
T=200ns;(每个存储体的存取周期)
r=50ns,(cpu经过时间r的延迟后,启动下个模块的访问)
从各个存储模块返回读取结果的角度看
它们间隔不能够比总线传输周期r小(总线的分时特性)
同时由于每个存储体的性能一样(存取周期一样)
又考虑到cpu可能对同一个模块的多次访问,那么第二次访问到来之前必须保证前一次的访问任务结束
也就是说,第二次访问同一个模块 M i M_i Mi的时间距离第一次的时间间隔至少为存取周期 T c T_c Tc
模块字长等于数据总线的宽度
cpu对m=4体交叉存储器的访问可以是流水的
假设访问第一个存储体的时间点是0
cpu将它要读取的单元告诉给存储器后,有存储器的控制电路将数据传输给CPU
时间过了200+50ns,cpu取得第一个数据(包括传输时间)