电脑手机都用它:一文读懂DRAM、SRAM和Flash原理
DRAM、SRAM和Flash都属于存储器,DRAM通常被称为内存,也有些朋友会把手机中的Flash闪存误会成内存。SRAM的存在感相对较弱,但他却是CPU性能发挥的关键。DRAM、SRAM和Flash有何区别,它们是怎样工作的?
DRAM:动态随机存取存储器
DRAM的全称是Dynamic Random Access Memory,动态随机存取存储器。"随机存取"意味着CPU可以存取其中的的任意位置,而不像硬盘那样每次存取要以扇区为单位进行。
而"动态"是因为DRAM的工作采用电容原理,为了防止漏电引发数据错误,需要定时重复刷新。当电源中断后DRAM中的数据就会全部丢失,所以它属于"易失型"存储器。
SRAM:静态随机存取存储器
SRAM的存在感比较弱,因为多数时候它并不是像DRAM那样以内存条的形式直接展现在大家面前。CPU中集成的高速缓存就属于SRAM(Static Random-Access Memory,静态随机存取存储器)。在一些无DRAM缓存设计的固态硬盘(如东芝TR200)中,主控内会集成小容量的SRAM缓存。
SRAM存储单元是由6个晶体管制成的简单锁存器,无需刷新和回写就能保留数据,速度比DRAM更快。但由于集成度低,SRAM容量比DRAM小,成本比DRAM高,所以在大多数地方只能以较小的容量作为高速缓存使用。断电后SRAM中的数据也会丢失,同样属于"易失性"存储器。
Flash:闪存存储器
铠侠(原东芝存储)在上世纪80年代发明NAND型闪存。闪存可以在断电后持续保存数据,但是它无法随机存取,最小读写单元是Page页(早期为4KB,当前多为16KB),最小擦除单位是Block块(当前为16MB左右)。
闪存使用特殊的"浮栅层"(Floating Gate)来存储数据,氧化物层(Oxide Layer)的存在可防止浮栅层中电子流失,这是它能够在断电后继续保存数据的原因。
Flash闪存的1个存储单元存储多位数据,这是DRAM和SRAM都做不到的。根据浮栅层中电子的多少,每个存储单元可以表达1比特(SLC)、2比特(MLC)、3比特(TLC)或4比特(QLC)数据。
闪存的写入和擦除基于量子隧道效应,每个单元可以存储的数据越多,对跃迁到浮栅层的电子数量控制越严苛,写入速度也越慢,所以TLC的闪存性能优于QLC。
当前的3D闪存在结构上跟传统闪存又有所不同。3D闪存的单元排列从水平变更为立体的同时,闪存单元的结构也变为类似于圆柱形,Floating Gate浮栅也被Charge Trap电荷捕获结构代替。
新一代固态硬盘上已经用上96层堆叠技术的3D闪存,而下一代100+层堆叠的闪存也已完成研发并将很快进入量产阶段,在容量、性能和成本上取得新的进步。
总结:DRAM是内存(动态刷新,断电丢数据),SRAM是高速缓存(无需刷新,断电丢数据),Flash(无需刷新,断电不丢数据)通常作为硬盘。从容量上看SRAM<DRAM<Flash,从性能上看则正好反过来。DRAM和SRAM断电后数据会丢失,写入Flash闪存的数据则可以在断电后持续保留。
DRAMSLC缓存傻傻分不清?解读固态硬盘的“缓存”
在固态硬盘界提起"缓存"这个词的时候很容易一头雾水,存储极客简单给大家盘点下:外置DRAM缓存、SRAM缓存、SLC缓存。显然,这些名词说的并不是一回事儿,承担的作用也不相同。
有两种东西,都被叫做缓存:Cache和Buffer,前者在港台地区也被称为快取,后者则还有一个缓冲的名字。很多时候Cache和Buffer被混在一起说,也没有权威和统一的区分方式。小编简单地把Cache快取表述成为了加速应用而提前载入到快速存储区的数据,Buffer则是为了提高写入完成速度而设立的数据"暂存区"。
一旦有机会,Buffer的数据会被写入到闪存并清空。而Cache中的数据则有可能长期保存和维护。
DRAM芯片里装了些什么?
固态硬盘工作时,DRAM芯片中既有属于Cache快取的部分,也有属于Buffer缓冲的部分。
跟很多朋友想象的不同,固态硬盘的Cache快取的内容并不是电脑读写的"用户数据",而是固态硬盘为了兼容机械硬盘的工作方式而设立的FTL闪存转换层,简单来说FTL就是为了让固态硬盘能跟现有的操作系统所兼容。
固态硬盘也的确需要数据缓冲,但并不是单纯为了提高写入速度。闪存的最小写入单位是Page页,包括东芝BiCS闪存在内的当前大多数闪存页大小是16KB。在DRAM芯片中凑齐至少16KB数据然后再执行实际向闪存的写入,将零碎写入请求合并的操作使得固态硬盘更高效、更长寿。
SLC缓存是干嘛的?
SLC缓存是MLC、TLC或者QLC固态硬盘利用部分闪存空间模拟SLC的方式工作,以达到提速和延寿的效果。如果按照前文中的定义,SLC缓存的正确叫法应该是SLC缓冲。
为什么固态硬盘一定要有SLC缓冲?
我相信大多数人都认为这个问题的答案是:为了加速写入,尤其是顺序写入速度。其实这只是SLC缓冲的作用之一,毕竟固态硬盘用作移动硬盘的机会还是很低的,系统盘的读写是以随机读写为主。
引入SLC缓冲主要是为了降低闪存的写入难度。TLC闪存的一个单元拥有8种数据状态(表达3比特数据)、QLC闪存的一个单元拥有16种数据状态(表达4个比特数据)。要把数据一次性"刷"到TLC/QLC闪存单元中是比较困难的。模拟SLC可以简单快速的将写入数据先接纳下来,然后利用空闲时间释放到TLC/QLC形态。
当TLC/QLC模拟SLC方式写入时,其擦写次数也会相应提高,虽然不能达到等同SLC的水平,但也无需担心SLC缓冲机制会缩短固态硬盘的寿命。
无(DRAM)缓存的固态硬盘怎么工作?
固态硬盘的DRAM芯片主要是用来存储FTL闪存映射表的,这部分数据可以通过主控内集成小容量SRAM缓存并搭配NAND闪存交换来完成。在固件经过优化之后,无DRAM芯片的固态硬盘也可以发挥出理想的随机读写效能,譬如上图中的东芝TR200固态硬盘,在电脑配置足够的情况下,4K读取可以达到50MB/s以上。
完全没有DRAM缓存的固态硬盘:
TR200虽然没有外置DRAM芯片,但它所用的主控内集成了32MB容量的SRAM缓存。另外一种固态硬盘则是彻底消灭了DRAM芯片,比如东芝BG4就采用了NVMe协议当中的HMB特性,通过驱动程序直接向主机内存申请到一块专用空间,用来实现过去由固态硬盘板载DRAM芯片所承担的功能,可以说是一种非常巧妙的方式。
相关问答
dram和nand 的区别?1、DRAM(DynamicRandomAccessMemory),即动态随机存取存储器。DRAM只能将数据保持很短的时间。为了保持数据,DRAM使用电容存储,所以必须隔一段时间刷新(....
nand 与 dram 区别?DRAM(DynamicRandomAccessMemory),即动态随机存取存储器,最为常见的系统内存。DRAM只能将数据保持很短的时间。为了保持数据,DRAM使用电容存储,所以必...
非易失性内存横空出世后, DRAM和NAND 市场将面临怎样的挑战?非易失性内存目前其实不会挑战DRAM和NAND市场,Intel的Optane已经算是这个方向上的一种尝试了,但是代价也比较明显,Optane并不能取代DRAM,因为它的时钟频率还...
DRAM和nand 国内能生产吗?目前,中国已经具备了DRAM和NAND闪存的生产能力。一些国内企业,如长江存储、长光、联华电子等,已经开始大规模生产DRAM和NAND闪存芯片,并正在逐步提升生产工艺...
dram和 ssd区别?例如,168个常用存储条的存储容量通常为32兆、64兆和128兆。而DDRII3普遍为1GB到8GB。(2)存取速度(存储周期):即两个独立存取操作之间所需的最短时间,也称...
为什么三星能操纵 DRAM 、 NAND 、屏幕的价格没人能管得了?在过去的2017年,相信很多关注存储市场的朋友,都感觉到了闪存飞涨的无奈,DRAM和SSD从业者更是苦不堪言。但,大家回顾一下,闪存涨价的开端在哪里,拐点是在201...三...
什么叫 NAND 型内存?一般快闪记忆体可分为二大规格,一是NAND,一是NOR.简单的来说,NAND规格快闪记忆体像硬碟,以储存数据为主,又称为DataFlash,晶片容量大,目前主流容量已达...
dram 是内存条还是硬盘?DRAM是内存条,不是硬盘。DRAM是动态随机存取存储器的缩写,是一种常见的系统内存,用于临时存储数据和程序。它使用电容存储数据,需要隔一段时间刷新一次,否...
存储行业龙头排名?湾省新竹市科学园区。台湾积体电路制造股份有限公司,中文简称:台积电,英文简称:tsmc,属于半导体制造公司。成立于1987年,是全球第一家专业积体电路制造服务(...
内存和SSD的区别是什么?内存和硬盘存储是我们在电脑和手机上都会遇到的两个词汇,比如下面一款电脑选购时的选择界面:上面这款电脑,配备了16GB内存+256GBSSD。那么,内存和SSD分别是...