2024年4月22日发(作者:)
什么是Open-Channel SSD呢?有哪些好处?
直奔主题:
为了让更多的朋友对Open-Channel SSD 有所了解,补充介绍如下。
什么是 Open-Channel SSD 呢?
所谓Open-Channel SSD指的是FTL(Flash translation layer)不在device 端, 而是由Host
的操作系统维护的SSD。Linux内核从4.4开始已经支持 Open-Channel SSD了, 并提供
了符合NVMe协议的抽象层——lightNVM。 (维基百科)
目前,NVM Express (NVMe) 1.3, 定义了寄存器级别的接口可以让host软件通过PCI
Express管理非易失性存储介质。Open-Channel SSD2.0 的spec,使SSD将内部的并行机
制暴露给Host,从而Host 可以控制数据的物理位置并进行I/O调度(这些原来是SSD内部
Firmware的事情)。spec 可以从官网下载openchanelssd spec
(/docs/OCSSD-2_),spec 提供了符合NVMe协议的物理
地址命令集(Physical Page Address Command Set)。
基本术语
Logical block, 逻辑块,读写命令所面对的最小数据单位,这里的概念从NVMe来,而不
是NAND上的物理block。PU (parallel unit), 指的是存储介质中的最小并行操作单元,
SSD中拥有大量的PU,这个PU 与传统SSD 中LUN或者DIE 的概念相似。Group,指
的是一组共享同一传输总线的PU。与传统SSD 中的Lane 或者Channel 的概念类似。
Chunk,
指一系列连续的逻辑块(contiguous logical blocks)。chunk 是可以被reset(参见后面基本命
令集)的最小单元。
Write unit, write unit 是一次写的最少逻辑块数目。LBA, 即 logical block address,指逻辑块
地址又称为 LBA。值得说明的是,Open-Channel SSD 使用的LBA 包含了SSD 内部的拓扑
信息,比如PU,Group,Chunk等信息。
发布评论