0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是Open-Channel SSD呢?有哪些好处?

SSDFans 来源:未知 作者:李倩 2018-05-23 09:03 次阅读

直奔主题:

为了让更多的朋友对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(http://lightnvm.io/docs/OCSSD-2_0-20180129.pdf),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等信息。

SSD 里的物理拓扑结构可以用上述逻辑概念抽象出来,如下图所示。

Open-Channel SSD有哪些好处?

Host 更主动

这是显然的,对于open-channel SSD,drive 将自己的物理结构信息和内部控制能力开放给Host,使得Host可以精准的控制SSD里的并行单元。spec指出,Host 可以根据自己的业务来控制drive的并行度,SSD firmware不应当对任何形式的workload(比如传统意义上的顺序写,随机写)进行优化处理。

I/O 隔离

对于多租户的应用架构(multitenant architecture)中,I/O隔离有助于解决nosiy neighbor 问题(指的是由于物理资源的共享,本来逻辑隔离的业务性能上难以避免地彼此影响),而Open-ChannelSSD里面的每个PU在物理上是隔离的,先天适合这种应用场景。

可预测latency

Host 知道每一个PU上的正在执行的(或者pending的)所有命令,对latency就有准确的把握。

Physical Page Address Command Set基本命令

Admin Commands

Geometry 命令

Geometry 命令可以让Host了解SSD 内部的物理信息,比如 Groups,PU和Chunks的个数。

Get Log Page - Chunk Information

SSD中所有Chunk的信息都可以通过Get Log Page命令获得。

这里说一下chunk的管理:

一个chunk 可以接受的命令有Read, Write 和Reset等。(具体见下文I/O commands)。

在一个chunk中Host 必须顺序写(但是看上图中,貌似为random 写留了一条通道),而且写的最小单位是write unit。

一个chunk写完后,Host 要想重新往这个chunk写数据必须先reset 这个chunk。

跟chunk相关的信息有:

SLBA,startLBA,每个chunk都有唯一的SLBA。

NLB,number of logical blocks,chunk里面的logical block 个数。

WP,write pointer。

SLBA, NLB 和 WP 的逻辑关系如下图:

CS,chunkstate,又可以分为:

1. Free,WP 为0 的情况下,chuck的状态为free。

2. Open, WP 不等于0,并且可以继续写入。

3. Closed,不可以继续写。

4. Offline,不可以再用的chunk。可能是wear leveling 的结果。

状态切换如下图所示:

I/O commands

命令集如下:

所有的命令都遵守正规NVMe的命令结构格式。其中Write 和 Read 命令可以直接从NVMe 1.3中可以看到具体描述。可以利用Dataset Management command中的deallocate多个chunk的lba range 来实现多个chunk的reset。

值得一提的是,Vector Chunk commands 系列是通过SGL(scatter-gather logical block address)指定一个或多个LBA list 来执行相应的reset,write,read 和 copy 命令。

以Vector Chunk Copy 命令为例子(其他commands 请参看spec),命令通过SSD 内部buffer实现数据从一个数据源LBA(可以是LBA list)到目标LBA(或者LBA list)的拷贝。

注:本文图片摘选自 openchanelssd spec

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    30

    文章

    5028

    浏览量

    117723
  • SSD
    SSD
    +关注

    关注

    20

    文章

    2689

    浏览量

    115496

原文标题:一张图了解Open-Channel SSD 2.0

文章出处:【微信号:SSDFans,微信公众号:SSDFans】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    慧荣科技总经理苟嘉章:客制化Open Channel SSD主控 让管理数据更容易

    慧荣科技总经理 苟嘉章 近期以存储控制芯片为主题接受访问,并指出,慧荣SMI将进一步切入企业端固态硬盘领域,提供客制化的Open Channel SSD主控芯片,提升大数据管理效能。 9月19
    的头像 发表于 09-27 18:59 7611次阅读

    慧荣科技发布PCIe NVMe SSD控制芯片解决方案SM2270

     双模SM2270是一款完备的SSD控制芯片解决方案,可搭载定制化的固件以支持客戶基于Open-Channel的应用,同時也可搭载Turnkey固件以支持标准NVMe协议。无论在哪个模式下,SM2270管理技术都能在高密度、多租户数据中心应用中实现超高性能,确保低延迟,并
    的头像 发表于 08-09 15:32 8018次阅读

    弄深圳户口什么好处的么?

    弄深圳户口什么好处的么?{:4_97:}俺在纠结要不要弄~~~呼呼
    发表于 12-24 17:44

    SSD用久了速度会下降,这究竟是为什么

    SSD用久了速度会下降,这究竟是为什么?造成SSD越用越慢的原因哪些
    发表于 06-18 08:49

    移植操作系统的好处哪些

    什么是嵌入式?移植操作系统的好处哪些
    发表于 11-12 07:06

    open62541是什么?open62541库何功能

    open62541是什么?open62541库何功能
    发表于 02-23 07:16

    SSD201 / SSD202D为什么能在IP广播得到广泛应用

    SSD201 / SSD202D为什么能在IP广播得到广泛应用SSD201 / SSD202D核心板
    发表于 02-28 09:19

    如何为工业应用设计NVMe SSD

    RK3399核心板哪些应用?如何为工业应用设计NVMe SSD
    发表于 03-07 06:12

    阿里巴巴下一代存储架构迈出了关键一步,也为创新的Open Channel生态系统奠定了基础

    作为阿里巴巴新存储架构的核心硬件,AOC SSD不仅提供透明的白盒设计和定制化功能,还提供标准化平台。 定义AOC SSD平台的AOC SSD规范由阿里巴巴根据其业务需求和案例编写,与其他公司的“
    的头像 发表于 07-26 15:49 4250次阅读
    阿里巴巴下一代存储架构迈出了关键一步,也为创新的<b class='flag-5'>Open</b> <b class='flag-5'>Channel</b>生态系统奠定了基础

    Open Channel如何使用SSD构建存储系统的?

    目前主要实现的方案有三种,Alibaba AOC, Facebook I/O Determinism 以及Open Channel的创始公司CNEXLabs (Microsoft 投资的公司
    的头像 发表于 08-29 09:52 5885次阅读

    宝存科技Open Channel SSD发布,为客户提供了前所未有的性能增益和崭新功能

    助力大会隆重召开。更激动人心的是,继美国闪存峰会后,宝存科技选择在这重要的日子,回到中国,呈上 Open Channel SSD产品发布会,邀请现场所有的人一同见证全新产品的诞生。
    发表于 09-14 16:23 967次阅读

    探讨未来的数据中心SSD发展趋势

    今年的企业级SSD领域,各类新技术层出不穷,出现了3D XPoint、QLC等新型存储介质,以及Open Channel SSD、定制化SSD
    的头像 发表于 01-03 15:04 7079次阅读
    探讨未来的数据中心<b class='flag-5'>SSD</b>发展趋势

    ssd硬盘有什么好处

    本视频主要详细介绍了ssd硬盘有什么好处,分别是速度快、耐用防震、无噪音、重量轻、功耗小、物理特性,低功耗、无噪音、抗震动、低热量、体积小、工作温度范围大。
    的头像 发表于 03-10 09:31 8995次阅读

    基于Shannon Open-Channel的高性能KV存储应用实践

    。宝存科技的Open-Channel SSD 定义了一种通用的,高效率的主机端直接访问 FLASH 的标准接口,百度基于此开发出一套高性能KV存储引擎,有效减少写放大对设备性能的影响。
    发表于 07-15 16:56 583次阅读
    基于Shannon <b class='flag-5'>Open-Channel</b>的高性能KV存储应用实践

    Open-Channel到ZNS

    主机端可以根据自身的业务来控制盘的行为,包括写入顺序,写在哪个NAND的Block上,什么时候擦除和写入,取代传统的SSD firmware控制权。基于主机对自身读写行为及业务运行的负载感知了解,可以从主机端直接进行优化处理。
    的头像 发表于 09-20 11:13 744次阅读