SSD根本架构与工作原理

打印 上一主题 下一主题

主题 582|帖子 582|积分 1746

SSD的核心由一个或多核心的CPU控制器、DRAM缓存以及多个NAND闪存芯片构成。CPU控制器负责管理所有读写操作,并通过DRAM缓存存储映射表等元数据,以加快寻址过程。



NAND闪存则是数据存储的实际介质,其构造布局从大到小依次为通道(包含多个封装)、Die、Plane、Block和Page。


读写操作流程

SSD的读写操作遵照NAND闪存的根本特性,即写入前需擦除(Erase-before-write),操作单位不对称(读/编程操作在Page级别,而擦除操作在Block级别),且具有有限的历久性和数据保持性。




  • 读取(Read):数据从NAND闪存的Page传输到SSD控制器的页面缓冲区,再传输至主机,耽误tR。
  • 写(Program):数据从主机写入页面缓冲区,再编程到NAND闪存的Page中,耗时tPROG。
  • 擦除(Erase):整个Block的数据被清除,tERASE通常需要毫秒(ms)级别。
SSD常见写入步骤:

写入过程中,host写入数据给到缓存,再由缓存下刷到NAND存储,需要留意的是写入数据后的垃圾回收GC。




  • 写入命令与地址:SSD控制器向NAND闪存发送写命令和相应的页地址。
  • 数据传输:数据通过I/O线从主机或SSD的缓存传输到NAND闪存的页面缓冲区。这个过程中,数据先暂存在缓冲区,随后批量写入存储单元。
  • 数据编程:NAND闪存内部的接口电路将缓冲区中的数据编程到存储单元中。此过程通常需要几百微秒。
  • 状态期待与确认:写入期间,SSD控制器会定期查询NAND的状态寄存器,期待写入操作完成的指示。
  • ECC编码与校验:在数据写入之前,根据SSD设计,会对数据举行ECC编码,以防止未来读取时的错误。写入后,可能会通过读回数据并对比原始数据举行校验。
  • GC(垃圾回收)和 Wear-Leveling:恒久使用中,SSD控制器还需管理垃圾回收和磨损均衡,以维护性能和延长SSD寿命,但这通常不在单次读写操作流程内直接体现。
SSD常见读取步骤:

读取过程中,host发送数据读取哀求,数据从NAND读取,这个过程可能会有因为NAND读取非常发送Read Retry。




  • 命令发送:主机向SSD的控制器发送读取命令,通常陪同着要读取的页地址信息。
  • 地址传输:紧接着,页地址通过命令/地址总线传送给NAND闪存控制器。在某些NAND架构中,地址传输可能分为行地址和列地址两个阶段。
  • 读取命令确认:控制器发送一个确认读取命令到NAND芯片,以确保NAND准备举行读取操作。
  • NAND操作:NAND闪存芯片接收到命令和地址后,开始从指定的物理页中读取数据。数据首先被加载到NAND芯片内部的页面缓冲区。
  • 数据传输:一旦数据准备就绪,NAND芯片通过I/O线将数据传输到SSD控制器。此时,NAND芯片会处于忙碌状态,直到数据传输完成。
  • 状态检查:在数据传输过程中或完成后,SSD控制器需要监控NAND的状态寄存器,以确认操作乐成完成。
  • 数据校验:为了确保数据完整性,SSD控制器执行ECC(Error Correction Code)校验。假如数据在读取过程中发生错误,ECC可以帮助改正这些错误。



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

北冰洋以北

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表