硬盘缓存有什么用(固态硬盘的DRAM缓存什么用)

固态硬盘缓存有两种,一种是SLC缓存(看不见),利用TLC模拟SLC来加快写入速度;另一种就是存储极客今天要详细介绍的DRAM缓存(看得见)。

硬盘缓存有什么用(固态硬盘的DRAM缓存什么用)(1)

DRAM缓存并不是固态硬盘必须要有的元素,但它的存在对固态硬盘的性能有着重要影响。通常只有高端固态硬盘才会配备DRAM缓存,根据容量的不同有可能还会配备两颗缓存。下图左侧是铠侠RD10背面的DRAM缓存颗粒:

硬盘缓存有什么用(固态硬盘的DRAM缓存什么用)(2)

与机械硬盘不同的是,固态硬盘DRAM缓存的主要作用并不是缓冲读写数据:闪存读写速度本身已经很快了,不需要利用内存来进行数据缓存。

硬盘缓存有什么用(固态硬盘的DRAM缓存什么用)(3)

Flash ID测试工具可以检测固态硬盘的DRAM缓存容量以及运行频率。铠侠RD10 1000GB的DRAM缓存容量为1024MB(1GB),运行频率DDR4-1600。

硬盘缓存有什么用(固态硬盘的DRAM缓存什么用)(4)

通过AIDA64 Cache&Memory Benchmark可以对DDR4-1600的带宽有个大致的了解。由于PCIE带宽限制的存在,以及断电数据丢失的风险,固态硬盘不会大量使用DRAM作为写入缓存,而闪存的读取速度基本没有瓶颈,所以也无需DRAM进行缓存。

硬盘缓存有什么用(固态硬盘的DRAM缓存什么用)(5)

尽管名为"缓存",固态硬盘上的DRAM芯片却不直接缓存数据,其中存储的主要是名为"FTL"的闪存映射表,表达闪存单元物理地址同文件系统逻辑地址之间的关系。

硬盘缓存有什么用(固态硬盘的DRAM缓存什么用)(6)

铠侠的前身东芝存储在上世纪80年代发明的NAND闪存,具有写入前需要先擦除、擦除同读写单位不同等特点。最小读取和写入单位是Page页(当前BiCS 3D闪存中一个Page的大小为16KB)、最小擦除单位是Block块(当前BiCS 3D闪存中一个Block通常包含超过1000个Page)。

硬盘缓存有什么用(固态硬盘的DRAM缓存什么用)(7)

如果不设置FTL闪存映射表进行管理,固态硬盘势必不能同传统机械硬盘一样直接使用。所有固态硬盘都有FTL映射表,不同之处在于入门型号通常把表的主体放在闪存中,随用随取,效率较低。

硬盘缓存有什么用(固态硬盘的DRAM缓存什么用)(8)

而高端固态硬盘会把FTL映射表完整地放入DRAM缓存中,通常需要按照1GB:1MB的比例配置DRAM缓存。铠侠RD10 1000GB就配备了2颗512MB的DRAM缓存,合计1GB。有了DRAM缓存的帮助,固态硬盘的随机存取性能才能得到充分的保障。

硬盘缓存有什么用(固态硬盘的DRAM缓存什么用)(9)

目前有一些型号的NVMe固态硬盘为了在节省成本的同时获得"外置DRAM缓存"的名号,选择了不管何种容量都只配备256MB缓存的方式,这种情况下只能直接管理256GB的闪存空间,依然存在一些不足。所以除了观察固态硬盘是否搭载DRAM缓存芯片之外,大家还应通过芯片表面的编号查询它的具体容量,确保买到的是按照1GB:1MB完整配备DRAM缓存的高性能产品。

硬盘缓存有什么用(固态硬盘的DRAM缓存什么用)(10)

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页