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

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

3天内不再提示

SSD主控芯片,除了做SSD还有什么其他用途?

VIBT_dputech 来源:大普微 作者:大普微 2021-03-29 16:35 次阅读

SSD主控芯片

除了做SSD还能干点啥?

DPU600是DapuStor业内首创的智能存储SoC,基于最新的12nm FinFET工艺,可作为SSD主控提供业界领先的性能,还集成了可计算存储平台,用于ASIC加速的机器学习架构等。

上期讲到得益于DPU600内置的应用处理器平台,可以将DPU600作为SSD Tester的Client平台。本期小编再说道说道,其他非传统SSD功能-关于计算存储的功能,这是研发小伙伴们努力后的干货。

同样地,小编需要先说道说道一下背景:

在大数据应用的背景下,海量的数据传输占用了各类总线,网络带宽,与此同时,固态硬盘(SSD)本身含有的CPU的算力也越来越强。为了减少大数据量的传输,从而衍生出各类对存储计算一体化(PIS-Processing In Storage)的需求,即在数据端固态硬盘内进行计算处理,仅传输结果和部分数据,从而减少海量数据传输,减轻总线和网络负载(Offloading)。一般而言,对I/O通信带宽敏感(I/O intensive)和对数据敏感(Data-intensive)的两类操作;而需要高效计算、对CPU计算敏感的操作则不适合Offloading到SSD中。

有人肯定想问,小编你说这么多,光有想法好像有点空泛,有没有具体方案和应用场景?

小编必须承认:存算一体化固态硬盘(PIS-SSD)的相关架构和实现技术,目前确实相当少见被公布,毕竟在SSD领域,这里比较前沿的技术。在小编送出N个鸡腿情况下,研发小伙伴还是给了一些材料,以便进行探讨;

首先说说现有的技术,如图1,存储器端运行的是裸系统(BareMetal)-固件(Firmware),系统偏重于进行硬件支持的相关数据处理,而对应计算相关的需求,一般仅能承接部分简单的数据计算,这主要是引入过多的数据计算,会影响存储功能的实时处理。一般地,当有相关计算需求(主要是边缘计算(EdgeComputing),机器学习(MachineLearning),主机通过自定义命令的形式通知SSD系统进行处理,此种方式不够灵活,且偏重于定制化,其开发应用效率低,无法满足更多计算应用的需求。

08822002-8eb9-11eb-8b86-12bb97331649.png

图1

说到这里,大家想到了DPU600肯定有什么东东,可以在此类应用上发挥作用?没错,大普微正在探索在DPU600上实现一种存储计算一体的固态硬盘。

先看一下,相对于图1,我们的设计基于如图2,服务器或者本地CPU成为主机(Host)系统,主机系统可以同一个系统,也可以是不同的主机系统(如本地+网络)。同样地,一般存储管理和计算管理是同一系统,也可以是不同系统。主机系统不在本文谈论范围,只是为了说明相关性,主要是将服务器或者本地CPU的相关计算(存算应用程序)进一步减轻负载(Offloading)到存储器(固态硬盘)内,同时必须减少对固件实时处理影响。故而为了使计算应用程序在存储器内能发挥更多更灵活的作用,且不影响存储本身功能的实时性,在存储器(固态硬盘)系统内设计成至少两个独立的软件系统,一个用于存储数据,一个用于计算应用。

基于此这种需求,那么设计需求上:

1.由于DPU600具有双CPU Cluster架构,可以满足运行双系统的需求。同样地, DPU600有2个主机接口(PCIe),满足数据的存储和计算两种通路需求,即一个主机接口用于数据存储,另一个主机接口用于数据计算。

2.系统架构上,采用异构并行系统,包含两个系统:实时处理系统和应用操作系统。一个CPU Cluster上运行实时处理系统,一般是固件(BareMetal Firmware),专门处理存储事务;另一个CPU Cluster上运行计算应用系统,一般是应用操作系统,如Linux,专门处理计算应用事务。基于各自不同特性系统独立并行运行,提高其各自对应的事务的处理效率。

0901096c-8eb9-11eb-8b86-12bb97331649.png

图2

为了隔离软件系统的不同特性,软件系统之间,通过IPC(Inter-Process Communication)机制进行通信,完成数据和信息的交互,即通过IPC传递IO操作。其在CPU上软件布局如图3,其IPC的实现包括软件FIFO,硬件 FIFO,共享内存,硬件IPC逻辑电路等。

094b3d8e-8eb9-11eb-8b86-12bb97331649.png

图3

小编根据研发小伙伴的建议,这里把关键IO操作处理流程进行探讨一下:

如图4,描述了2个软件系统的IO操作在主要模块流向,其中

1.PIS应用系统,除了OSKernel之外, 包括:

数据计算应用层,用于进行和主机任务相关应用处理。由于基于操作系统(OS),应用层的开发具有非常高的通用性,可以脱离相关硬件特性,应用包括搜索引擎的求列表交集(List Intersection),MySQL的检索等。数据计算中间层,处理底层驱动和应用层的衔接事务。如将数据计算任务转化成特定的IO操作。专用驱动层,主要处理和硬件特性相关驱动处理,如IPC相关接口出来,同时负责发送或者接收特定的IO操作。

2.存储RTOS/FW系统,是典型的存储处理模块系统,包括:

前端模块(FE)负责主机通信协议栈,命令数据分发处理。数据处理模块(DP)负责数据通路的处理,如写(读)缓存的管理。算法模块(FTL)负责映射表的管理,闪存数据分布管理等。后端模块(BE)负责闪存数据读写和相关闪存命令的管理。

两个系统均有分层结构,那么两个系统之间传递的IO操作,可以在底层设定的特定数据处理单元,该数据单元通过IPC系统进行传递。数据单元包括数据,操作信息等。对应驱动而言,派发或者读取IO操作是把IO操作的信息写入或者读取到“FIFO/共享内存/硬件IPC逻辑电路”的接口,从而较好的隔离两个系统。

099abd82-8eb9-11eb-8b86-12bb97331649.png

图4

存储相关典型操作流程,除了其中计算需求的IO视作另一种FE的数据需求,其他处理方式可以通用化,即总体流程和现有技术大同小异,不再累述。整个系统设计时(指主机系统+存算系统)会将计算应用需求中分解出成适用于存算的计算应用到存算系统。当有存算系统计算需求时,主机系统将发操作任务给存储器内的存算系统,其中相关任务包括但不限于数据搜索(Search),数据比较(Compare),数据标签(Tag),数据索引(Index)。存算系统收到任务后,在应用系统进行任务分解,转化为IO操作给存储系统进行数据操作(主要是从闪存颗粒读数据),存储系统完成数据操作后,将数据返回给应用系统进行数据计算,完成所有任务对应的数据计算后,其中由于DPU600包含硬件PIS处理能力,故而处理时硬件PIS处理通过专用驱动完成,而软件PIS处理则在计算应用系统的应用层程序完成。应用系统回报计算结果给主机系统,而不需要报整IO数据回给主机。

小编在这里Copy过来:一种计算应用场景,在DPU600的加持下,下面所述的计算需求更容易Offloading到存储器内部的应用系统。

服务器一种典型的搜索应用,传统的所有步骤步骤均是在主机计算完成。在引入存算一体化存储器之后,可以把部分计算移入到存取器内。如图5,“获得倒排序表”“计算列表操作”,存储器内完成后仅返回结果。我们的设计采用计算应用独立系统之后,对于哪些步骤(具有应用可扩展性)移入存储器内,可以更灵活:可以把对应步骤的程序实时在线地移植到存储器内OS上,而不是通过更新固件才能迁入。比如步骤获得元数据和计算相似度和排序,可以根据存储器内CPU算力,或者存取器内系统负载程度,来决定来是否有存储器内进行承接计算。

09ea8272-8eb9-11eb-8b86-12bb97331649.png

图5

原文标题:SSD主控芯片,除了做SSD还能干点啥?-II

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

责任编辑:haq

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

    关注

    446

    文章

    47746

    浏览量

    409041
  • SSD
    SSD
    +关注

    关注

    20

    文章

    2687

    浏览量

    115475

原文标题:SSD主控芯片,除了做SSD还能干点啥?-II

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

收藏 人收藏

    评论

    相关推荐

    risc-v除了单片机还有其他应用吗?

    risc-v除了单片机,还有其他芯片和处理器用这种架构的吗?
    发表于 03-29 21:53

    SSD硬盘的优点和缺点

    : 1. 高速性能:SSD硬盘相比传统机械硬盘具有更快的数据读写速度。这是因为SSD内部使用了非易失性存储器(NAND Flash)芯片来存储数据,读写速度远高于机械硬盘上的移动磁头。因此,S
    的头像 发表于 12-11 11:32 533次阅读

    SSD和HDD的具体对比

    SSD厂商早就预测NAND闪存的价格会随着时间的推移而下降,让SSD能够在单价上与HDD竞争。事实上,NAND闪存的价格一直在下降。
    发表于 12-01 15:06 590次阅读
    <b class='flag-5'>SSD</b>和HDD的具体对比

    谈谈SSD主控芯片

    SSD主控芯片SSD controller)好比固态硬盘的大脑。
    的头像 发表于 11-29 12:16 1090次阅读
    谈谈<b class='flag-5'>SSD</b><b class='flag-5'>主控</b><b class='flag-5'>芯片</b>

    SSD入门必看|这些专业术语你知道多少?

    将 NVMe SSD 的用户空间进行逻辑划分,每个命名空间拥有自身的 NAND 颗粒,可以独立地进行格式化和加密等操作。 OP Over-provisioning,一般称为预留空间,它是指 SSD 保留一部分闪存空间留作他用,这
    的头像 发表于 11-21 20:40 514次阅读
    <b class='flag-5'>SSD</b>入门必看|这些专业术语你知道多少?

    悄然席卷企业级SSD市场的RISC-V主控

    在一些细分市场,RISC-V也已经开始崭露头角,比如服务器领域的CPU芯片,以及企业级SSD主控。   平头哥   在2023云栖大会上,阿里巴巴平头哥发布了旗下首颗SSD
    的头像 发表于 11-16 00:22 1370次阅读
    悄然席卷企业级<b class='flag-5'>SSD</b>市场的RISC-V<b class='flag-5'>主控</b>

    NVMe SSD性能影响因素分析

    NVMe SSD 厂商Spec给出的性能非常完美,前面也给出了NVMe SSD和磁盘之间的性能对比,NVMe SSD的性能的确比磁盘高很多。
    的头像 发表于 11-13 11:39 614次阅读
    NVMe <b class='flag-5'>SSD</b>性能影响因素分析

    平头哥首颗SSD主控芯片镇岳510问世,将率先在阿里云数据中心部署

    11月1日,在2023云栖大会上,阿里巴巴平头哥发布旗下首颗SSD主控芯片镇岳510,该芯片为云计算场景深度定制,实现4μs超低时延,比业界主流降低30%以上,误码率低至10^-18,
    的头像 发表于 11-01 16:50 226次阅读

    慧荣科技打造企业级SSD主控芯片,为企业数据中心保驾护航

    也对存储企业提出了更苛刻的要求。慧荣科技作为行业最大的NAND Flash控制芯片供应商,旗下主控芯片产品及解决方案广泛应用在服务器、PC及其他消费性电子产品,其推出的MonTitan
    的头像 发表于 10-19 10:18 569次阅读
    慧荣科技打造企业级<b class='flag-5'>SSD</b><b class='flag-5'>主控</b><b class='flag-5'>芯片</b>,为企业数据中心保驾护航

    ssd1306 OLED花屏怎么解决?

    ssd1306用spi连接arduino,几率花屏,但是在树莓派上用就没问题,请问各位大佬有什么好的建议吗
    发表于 10-19 08:26

    SSD1306数据表

    128*64 OLED的驱动芯片SSD1306的数据手册0.96oled一般用ssd1306驱动,ssd1306的指令丰富,但是在平常显示使用默认的初始化命令,之后就是读写显示数据了,
    发表于 09-27 07:59

    打游戏卡顿,还能怎么整?#SSD #电脑知识 #电脑

    电脑SSD
    惠科存储
    发布于 :2023年08月23日 18:01:54

    慧荣科技于FMS 2023展出企业级和即将上市的消费级PCIe Gen5 SSD主控,以及全球首款支持SR-IOV的车用级SSD主控

    )的车用级PCIe Gen4 SSD主控芯片,也发布了即将上市的消费级PCIe Gen5 SSD主控芯片
    发表于 08-09 17:36 376次阅读
    慧荣科技于FMS 2023展出企业级和即将上市的消费级PCIe Gen5 <b class='flag-5'>SSD</b><b class='flag-5'>主控</b>,以及全球首款支持SR-IOV的车用级<b class='flag-5'>SSD</b><b class='flag-5'>主控</b>

    NAND芯片是用于哪些领域 NAND和SSD的区别

    闪存存储设备:NAND芯片作为主要的闪存存储媒介,被广泛用于固态硬盘(SSD)、USB闪存驱动器、内存卡(如SD卡、MicroSD卡)和闪存盘等。
    发表于 06-28 16:25 6022次阅读

    芯盛智能发布基于RISC-V开源架构主控芯片PCIe SSD

    5月,芯盛智能发布基于RISC-V开源架构主控芯片的高性能PCIe SSD——EP2000Pro、MP2000Pro及EP3000,全面兼容3D TLC和QLC颗粒,并与国内主流CPU、OS、整机厂商适配兼容,以开源架构助力自研
    发表于 05-16 11:54 429次阅读