有两种东西,都被叫做缓存: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芯片所承担的功能,可以说是一种非常奥妙的办法。