SRAM和DRAM
这一小节我们讲一下SRAM和DRAM的区别,了解一下栅极电容和双稳态触发器的差别,DRAM是怎么刷新的?DRAM的地址线复用技术。
1.存储元件不同导致的特性差异
SRAM芯片和DRAM芯片核心区别就是存储元不一样,DRA芯片使用栅极电容存储信息,SRAM使用双稳态触发器存储信息
1.1栅极电容vs双稳态触发器
栅极电容:
读出1:MOS管接通,电容放电,数据线上产生产生电流
读出0:MOS管接通后,数据线上没有电流
当电容放电的时候,信息会被破坏,是破坏性读出,读出之后应有重写操作,也称“再生”,这样读写速度回更慢,因为要重写
每个存储元制造成本更低,集成度更高(因为它结构简单),功耗低
DRAM是需要刷新的,具体的在后面会讲到
双稳态触发器(6个MOS管):
1:A高B低
0:A低B高
读出数据,触发器仍然是稳定的,是非破坏性读出,无需写入,读写速度会更快
每个存储元制造成本更高,集成度低,功耗大(因为它较为复杂)
SRAM是不需要刷新的
注意:DRAM和SRAM都是易失性存储器(断电之后信息消失),易失性存储器≠破坏性读出
2.DRAM的刷新
我们知道DRAM有电容,电容有电的时候,会存储电荷,但是时间过得久了,电荷就会消失,那这样的话信息就会造成误差。电容里面的电荷只能维持2ms,也就是说,即使不断电,2ms之后信息也会消失。
所以我们为了给电容充电保存信息,就需要在2ms之内刷新一次。
问题:
1.多久需要刷新一次? 刷新周期:一般为2ms
2.每次刷新多少存储单元? 以行为单元,每次刷新一行存储单元
——为什么要用行列地址? 减少选通线的数量
如果按照之前的存储器的简单模型,当要访问8位的地址,那么译码器就会有256根选通线连接各个存储单元,随着地址位数变大,选通线的数量也会变得很大很大,所以我们把存储单元存放从一维变成二维。
想要获取00000000的地址信息,0000传给行地址译码器,0000传给列地址译码器,每个译码器就只需要16根选通线就可以实现功能了
3.如何刷新? 有硬件支持,读出一行的信息后重新写入,占用1个读/写周期
4.在什么时候刷新? 有三种刷新方法
思路一:每次读写完都刷新一行
思路二:2ms内集中安排时间全部刷新
思路三:2ms内每行刷新1次即可
但是双稳态触发器就比较好,只要我们给双稳态触发器不断的供电,触发器的状态就不会改变,因此它不需要刷新
3.DRAM的地址线复用技术
DRAM的送行列地址是分两次送的(地址线复用技术),什么意思?地址线就是CPU传给译码器的路径,如果地址位数比较多的话,就可以分两次传送,而DRAM就是分两次送的。从而导致地址线、地址引脚减半
注意:"刷新”由存储器独立完成,不需要CPU控制;现在的主存通常采用SDRAM芯片