前言
随着制造工艺的不断进步,SSD(Solid State Drive)性能和容量不断突破,价格不断降低,迎来了快速的发展,目前已经是商用服务器、高性能存储服务中非常流行的存储介质。作为开发人员,需要了解SSD的基本原理,以便开发时能更好地发挥其优势,规避其劣势。本文章基于末尾所列参考文献整理而来。
目录
SSD简介
SSD诞生于上世纪70年代,最早的SSD使用RAM作为存储介质,但是RAM掉电后数据就会丢失,同时价格也特别贵。后来出现了基于闪存(Flash)的SSD,Flash掉电后数据不会丢失,因此Flash-SSD慢慢取代了RAM-SSD,但是此时HDD已经占据了大部分的市场。到本世纪初,随着制造工艺的不断进步,SDD迎来了长足的发展,同时HDD在工艺和技术上已经很难有突破性的进展,SSD在性能和容量上还在不断突破,相信在不久的将来,SSD在在线存储领域会取代HDD,成为软件定义存储(SDS)的主流设备。
闪存基础
SSD主要由SSD控制器,Flash存储阵列,板上DRAM(可选)以及跟HOST接口(SATA、SAS、PCIe等)组成。
Flash的基本存储单元是浮栅晶体管
,同时根据制造工艺分为NOR
型和NAND
型。NAND
容量大,按照Page进行读写,适合进行数据存储,基本上存储使用的SSD的Flash都是NAND
。
Flash的工作原理和场效应管类似都是利用电压控制源极和漏极之间的通断来工作的。
写操作
是在控制极加正电压,使电子通过绝缘层进入浮栅极。因此写操作无法将电子从浮栅极吸出,所以覆盖写入前必须擦除。
擦除(erase)操作
正好相反,是在衬底加正电压,把电子从浮栅极中吸出来。
读操作
给控制栅加读取电压,判断漏极-源极之间是否处于导通状态,进而可以判断浮置栅有没有存储电荷,进而判断该存储单元是1
还是0
。
