最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

Samsung:解析SSD寻址原理(IU与L2P)

网站源码admin3浏览0评论

Samsung:解析SSD寻址原理(IU与L2P)

全文概览

在数据存储领域,固态硬盘(SSD)已成为现代计算设备不可或缺的核心组件。与传统机械硬盘相比,SSD以其卓越的性能、低延迟和高可靠性,极大地提升了用户体验和系统效率。本文将深入探讨SSD的关键技术之一——间接单元(Indirection Unit, IU)机制。理解IU的工作原理及其在SSD数据管理中的作用,对于深入了解SSD架构、优化存储性能至关重要。

本文将从硬盘扇区的发展历史出发,逐步揭示SSD采用IU设计的内在原因,并结合逻辑到物理(L2P)表、容量管理、DRAM缓存等关键概念,全面解析IU在SSD数据存储过程中的作用和影响。通过本文的阅读,您将对SSD的内部工作机制有更清晰的认识,从而更好地理解和应用这项关键的存储技术。

阅读收获

  • 理解SSD间接单元(IU)机制的设计初衷和在SSD架构中的核心作用。
  • 掌握逻辑到物理(L2P)表的工作原理及其在地址转换和垃圾回收中的关键作用。
  • 了解SSD物理容量、逻辑容量以及预留空间(OP)之间的关系,理解容量管理的复杂性。
  • 认识到DRAM在SSD中的重要性,以及L2P表对DRAM容量的需求和成本影响。

理解 SSD 间接单元(IU)机制

图注:间接单元的历史-从HDD的扇区说起

图注:间接单元的历史-从HDD的扇区说起

图片展示了硬盘驱动器扇区大小的发展历史,从早期的可变大小到 512 字节成为行业标准,再到 1998 年高级格式技术委员会推动的 4KiB 扇区大小的普及。

右侧图表强调了采用 4KiB 扇区大小的主要原因,包括提高 ECC 效率和与操作系统内存页大小对齐。此外,图片还对比了 512 字节和 4096 字节扇区的结构和效率,并提到了固态硬盘的出现以及 4Kn 本地硬盘的推出,即使后者仍然需要模拟 512 字节扇区以保持兼容性。

===

  • 开始时期:柱面-磁头-扇区 (Cylinder-Head-Sector, CHS)
    • HDD 的“开放通道”在整个市场中具有可变扇区大小。
    • 512B 在 20 世纪 80 年代占据市场主导地位。
  • 20 世纪 90 年代初:512B 扇区大小成为行业规范
    • SASI 和 ATA 接口引领了从 CHS 向其他寻址方式的转变。
  • 1998 年:高级格式技术委员会 (The Advanced Format Technology Committee) 使行业与 4KiB 扇区大小对齐
    • ECC 效率的提高是增加扇区大小的主要动机。
    • 操作系统内存页大小的对齐是选择 4KiB 的主要原因。
  • 2007-2008 年:企业级固态硬盘 (Enterprise SSD) 开始出现
    • Fusion IO 和其他供应商开始大量出货固态硬盘。
  • 2010 年:首个 4Kn (4KiB native) 硬盘驱动器出货
    • 继续模拟 512B 扇区。

图注:SSD 中IU的使用背景

图注:SSD 中IU的使用背景

图片解释了固态硬盘沿袭间接单元(IU)设计的原因。

与传统的硬盘驱动器不同,固态硬盘从一开始就倾向于使用更大的 4KiB 数据块,并且通过 IU 来管理数据。虽然固态硬盘在逻辑上可以模拟 512B 的扇区大小以保持兼容性,但其内部操作是基于更大的 IU 进行的。使用 IU 的主要原因包括简化设计、提高效率以及方便进行垃圾回收等操作。然而,当写入操作与 IU 的边界不对齐时,可能会导致额外的读-修改-写操作,从而影响性能。总的来说,IU 是固态硬盘管理和优化性能的关键概念。


图注:L2P 表在数据存储过程的作用

图注:L2P 表在数据存储过程的作用

图片解释了固态硬盘中逻辑到物理 (L2P) 表的作用和重要性。

L2P 表是固态硬盘控制器中的一个关键组件,它负责将操作系统看到的逻辑地址转换为实际存储在 NAND 闪存芯片上的物理地址。这种转换是必要的,因为闪存的写入特性(无法覆盖写入,需要先擦除)以及为了优化性能和寿命而进行的数据管理(例如,磨损均衡和垃圾回收)。

图片还说明了如何通过 L2P 表查找不同大小的逻辑地址对应的物理地址,并强调了垃圾回收过程如何依赖于更新 L2P 表来实现数据的移动和管理。

===

逻辑到物理表

  • 逻辑到物理 (L2P) 表:
    • 将逻辑块地址 (Logical Block Address, LBA) 转换为物理地址。
    • 这是必需的,因为:
      • 数据无法被读取并重新编程回相同的位置。
      • 不连续的传入数据以日志结构的方式物理地连续写入。
  • L2P 查找:
    • L2P 表可能是一个数组。
    • 对于 4KiB LBA:物理地址 = L2P[LBA]。
    • 对于 512B LBA:物理地址 = L2P[bitshift(LBA, -3)]。
    • 注意: 本演示忽略了命名空间 (Namespaces)。
  • 垃圾回收 (Garbage Collection, GC):
    • 能够移动数据并仅更新 L2P 表中的物理地址。

如何理解 IU 和 L2P 表在 SSD 数据存储过程中发挥的作用、差异?

L2P 表(Logical-to-Physical Table) 的主要作用是地址转换。它就像一个翻译器,将操作系统看到的逻辑块地址(LBA)映射到 NAND 闪存芯片上的实际物理地址。

  • 为什么需要 L2P 表?
    • NAND 闪存的特性决定了数据不能直接覆盖写入,需要先擦除。
    • 为了实现磨损均衡(平均使用每个闪存块以延长寿命),以及优化写入性能,逻辑上连续的数据在物理上可能存储在不连续的位置。
    • L2P 表记录了每个逻辑块当前对应的物理位置。当主机请求读取某个逻辑地址的数据时,控制器会通过 L2P 表找到其对应的物理地址并读取数据。

IU(Indirection Unit) 的主要作用是数据管理和优化,尤其是在垃圾回收方面。根据您提供的图片信息,IU 可以被理解为固态硬盘写入和跟踪的数据组

  • IU 的作用:
    • 垃圾回收的基础: 固态硬盘需要进行垃圾回收来回收不再使用的物理空间。IU 作为数据管理的基本单元,使得控制器能够有效地识别和移动有效数据,从而擦除无效数据块。
    • 写入优化: 与 IU 不对齐的写入操作会产生性能损失(读-修改-写)。这意味着以 IU 为单位进行写入可以提高效率。
    • 减少查找表大小: 通过将多个逻辑块分组到一个 IU 中(例如,一个 4KiB 的 IU 可能包含多个 512B 的逻辑扇区),可以减小 L2P 表的大小,从而提高查找效率。

总结它们之间的区别:

  • 核心功能不同: L2P 表的核心是地址映射,回答“逻辑地址对应的物理地址在哪里?”这个问题。IU 的核心是数据组织和管理,尤其服务于垃圾回收和写入优化,回答“哪些数据被视为一个管理单元?”这个问题。
  • 抽象层次略有不同: L2P 表更直接地连接了逻辑层(操作系统)和物理层(NAND 闪存)。IU 更偏向于固态硬盘内部的物理数据管理策略。
  • 粒度可能相关但目的不同: 虽然 IU 的大小(例如 4KiB)可能与 L2P 表中映射的最小物理单元(也可能是 4KiB)相关,但它们的目的是不同的。L2P 表映射的是逻辑地址到这个物理单元的位置,而 IU 则将这个物理单元视为一个管理和操作的整体。

可以理解为,L2P 表是地图,告诉你逻辑地址对应的物理位置。而 IU 是组织数据的策略,决定了数据如何分组和管理,以便更高效地进行垃圾回收和写入操作,并且这个策略可能会影响到 L2P 表的结构和大小。


图注:理解SSD的物理容量和逻辑容量

图注:理解SSD的物理容量和逻辑容量

图片解释了固态硬盘中物理容量和逻辑容量之间的差异,并介绍了预留空间(Over Provisioning, OP)的概念。物理容量是指固态硬盘上所有 NAND 闪存芯片的总容量,而逻辑容量是用户实际可以使用的容量。两者之间的差额就是预留空间,通常以百分比表示。

图片指出,历史上预留空间的计算方式比较复杂,并且受到坏块的影响。但随着行业标准的统一,逻辑容量点也变得更加规范。一个常见的“营销”简称是 7% 的预留空间,但这并不总是准确的,因为 NAND 芯片的实际容量可能不是 2 的精确幂次方,并且厂商可能会根据不同的因素(例如 NAND 类型和良率)调整预留空间的大小。预留空间对于固态硬盘的性能和寿命至关重要,因为它为控制器提供了进行垃圾回收、磨损均衡等操作所需的额外空间。


图注:SSD中DRAM的容量计算

图注:SSD中DRAM的容量计算

图片展示了 L2P 表在固态硬盘中消耗的 DRAM 大小。

它假设 LBA 大小和 IU 大小都是 4KiB,并且以一个 960GB 的 SSD 为例进行计算。根据 IDEMA 的规范,这个容量大约包含 2.34 亿个逻辑块。如果每个 IU 的物理地址需要 32 位来跟踪,那么 L2P 表就需要大约 937.7MB 的 DRAM 来存储这些映射信息。图片还指出,存储容量与 DRAM 容量的比例大约是 1024:1,这与通常引用的 1000:1 的比例略有不同(基于4KiB IU 的经验)。

最后的结论强调了 DRAM 的成本是固态硬盘总成本的一个重要组成部分,并且受到 IU 大小的影响。


图片描述了嵌入式SSD系统,在数据传输效率层面存在的固有约束,特别是与内存相关的限制。

它指出,尽管新的内存标准(LPDDR5)正在发展,但在嵌入式环境中,仍然经常遇到 32 位的处理器和内存接口。图片以固态硬盘为例,强调其内部控制器和 DRAM 的交互仍然是基于 32 位架构的。这与主机系统中常见的 64 位寻址和处理形成对比。图片还提到了嵌入式 DRAM 的接口宽度和 ECC 机制。总而言之,这张图片旨在说明固态硬盘等嵌入式设备在内存和处理能力方面可能存在的限制。

LPDDR5 的传输带宽提升

  • 更高的带宽和数据传输速率: LPDDR5 的主要优势之一是其显著提高的数据传输速率。相比之前的 LPDDR 标准(如 LPDDR4),LPDDR5 能够以更高的速度在处理器和 DRAM 之间传输数据。这直接解决了上一张图片中提到的 8 位接口可能带来的带宽瓶颈,使得一次可以传输更多有效数据,从而提升整体系统性能。
  • 更宽的接口支持: 虽然上一张图片中提到了 8 位接口,但 LPDDR5 标准本身支持更宽的接口配置。例如,它可以支持 16 位或 32 位的接口,这进一步增加了每次数据传输的吞吐量,从而缓解了数据传输速率的限制。

图注:物理地址的寻址规范

图注:物理地址的寻址规范

图片介绍了固态硬盘中物理地址的组织方式。

它解释了如何使用一定数量的位来表示可寻址的物理位置,例如 32 位可以理论上追踪 2的32次方个位置。然而,将这些位分配给实际的物理组件(如芯片、平面、块、页、扇区)需要一个转换过程,并且这个过程可能并不总是简单的。

图片给出了一个 32 位地址如何被划分为不同物理含义的示例,并指出由于实际物理组件的数量可能不是 2 的精确幂次方,或者像 TLC 闪存那样每个块包含的页数不是 2 的幂次方,因此这种分配方式可能会导致一些效率上的损失。最终的结论强调了理论上的最大可寻址位置数可能大于实际可用的物理位置数。


图片探讨了固态硬盘容量的理论上限与实际应用之间的约束。根据图中给出的信息,如果 IU 大小为 4KiB 且可追踪的物理位置数为 2的32次方,那么理论上的最大可追踪容量是 16TiB。然而,图片右侧指出,考虑到预留空间(OP)后,固态硬盘的实际最大容量可能会限制在 15.36TB 左右。

尽管如此,图片还展示了三星发布的一款 128TB QLC SSD(型号为 BMI743),这似乎与之前提到的 15.36TB 的上限有所矛盾。这可能意味着 16TiB 的理论上限是基于特定的寻址方案或技术限制,而实际产品通过更先进的技术(例如更高的 NAND 密度、更复杂的寻址方式等)突破了这个限制。

Cite

《Micron:验证16KB IU对SSD_WAF的影响》:介绍了16KB IU(间接寻址单元)对SSD写放大因子(WAF)的影响。 16KB IU的优势与挑战:16KB IU可节省SSD中DRAM空间(75%),实际应用中额外的WAF较低,通常小于2倍,有时接近1倍,大IO写入应用更适合,但元数据等小IO写入场景不适合。 WAF产生原因及IU大小影响:WAF主要因SSD以“页”为写入单元、以“块”为擦除单位,IU表增大可能影响小写入性能,不同写入大小对WAF影响不同,大写入大小导致更低的WAF。

延伸思考

这次分享的内容就到这里了,或许以下几个问题,能够启发你更多的思考,欢迎留言,说说你的想法~

  • 随着NAND闪存技术的发展,例如QLC、PLC的普及,以及更高密度堆叠技术的应用,IU的设计和大小选择是否会面临新的挑战和变化?
  • 在计算型存储趋势下,SSD需要承担更多的数据处理任务,IU和L2P表的设计是否需要进行优化或革新,以适应新的应用场景需求?
  • 除了DRAM,是否有其他新兴的存储介质或技术可以用来缓存L2P表,以降低成本并提升SSD性能?

原文标题:SSD Architecture Challenges with DRAM

Notice:Human's prompt, Datasets by Gemini-2.0-flash-thinking ---【本文完】---

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。原始发表:2025-04-17,如有侵权请联系 cloudcommunity@tencent 删除数据原理samsung管理垃圾回收
发布评论

评论列表(0)

  1. 暂无评论