CN116795735A - 固态硬盘空间分配方法、装置、介质及系统 - Google Patents

固态硬盘空间分配方法、装置、介质及系统 Download PDF

Info

Publication number
CN116795735A
CN116795735A CN202311064083.6A CN202311064083A CN116795735A CN 116795735 A CN116795735 A CN 116795735A CN 202311064083 A CN202311064083 A CN 202311064083A CN 116795735 A CN116795735 A CN 116795735A
Authority
CN
China
Prior art keywords
solid state
state disk
configuration
command
disk space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202311064083.6A
Other languages
English (en)
Other versions
CN116795735B (zh
Inventor
刘陈诚
孙丁丁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan Yunhai Core Microelectronics Technology Co ltd
Original Assignee
Sichuan Yunhai Core Microelectronics Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sichuan Yunhai Core Microelectronics Technology Co ltd filed Critical Sichuan Yunhai Core Microelectronics Technology Co ltd
Priority to CN202311064083.6A priority Critical patent/CN116795735B/zh
Publication of CN116795735A publication Critical patent/CN116795735A/zh
Application granted granted Critical
Publication of CN116795735B publication Critical patent/CN116795735B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明公开了一种固态硬盘空间分配方法、装置、介质及系统,属于存储技术领域,包括步骤:S1,主机侧获取“配置数据排布方式”命令;S2,用户通过主机发送“配置数据排布方式”命令的方式,向固态硬盘发送配置指令,进行数据排布方式配置;S3,固态硬盘的SSD控制器接收处理配置的指令,并开始切换物理地址分配和排布算法;S4,物理地址分配和排布算法切换执行完毕后,向主机侧回应参数配置结果,完成固态硬盘空间分配响应。本发明可实现针对业务场景,可动态配置调整的物理地址分配和排布的算法,从而提升固态硬盘的整体读写性能。

Description

固态硬盘空间分配方法、装置、介质及系统
技术领域
本发明涉及存储技术领域,更为具体的,涉及一种固态硬盘空间分配方法、装置、介质及系统。
背景技术
固态硬盘(SSD)是基于闪存芯片的数据存储设备,数据存放于闪存芯片的闪存单元中,闪存单元为浮栅晶体管组成。SSD的主要逻辑单元如图1。
主机与SSD盘的链路层使用PCIe(高速串行总线标准)链路连接、数据传输,传输层使用NVMe协议(非易失性内存主机接口规范)。SSD盘通过NVMe协议将内部的物理存储空间组织为逻辑空间,映射给主机。主机通过“LBA(逻辑区块地址)+Length”的方式访问SSD盘的逻辑空间,SSD需要将“LBA+Length”的逻辑空间地址,转换为内部的闪存物理空间地址,转换的功能由SSD盘内部的FTL(闪存转换层)功能实现。FTL功能的核心为L2P表(即逻辑物理地址转换表)。L2P表每个管理单元的空间大小由SSD决定。如果以4KByte为单位进行管理,表中的每个表项则存储一个4KByte存储空间的物理地址,数组的下标则为逻辑地址。主机在写入数据时,会在下发给SSD盘的写命令中指定写入数据的逻辑地址和长度。SSD盘的FTL在解析出命令中的LBA+Length信息后,根据Length确定主机需要写入数据以4KByte为单位拆分的数量,并分配对应的4KByte个物理空间的地址,并将物理地址写入LBA对应的L2P表的表项中,最后将数据写入闪存芯片对应的位置。例如,写命令的逻辑地址信息为4KByte+8KByte,表示主机要在以4KByte为起始的逻辑逻辑,写入8KByte的数据。SSD的FTL分配2个4KByte的物理空间,将其写入L2P表下标为1、2的表项中。
由于闪存芯片的物理特性,单个芯片的容量、访问速度受限,SSD的主控芯片通过多个通道连接多颗闪存芯片,以提高单个SDD盘的物理容量、并发访问的速度。例如,单个闪存芯片提供1TB的空间大小,SSD的主控芯片可以设计8个通道,如果每个通道下可以连接2个闪存芯片,则SSD盘可以最大支持16TB的物理容量。
现有的物理地址数据分配和排布的算法主要分为两个方向:1、横向分配物理地址时包含更多通道的闪存页;该方法优点在于可利用更多通道并发处理数据,读时延更低;缺点在于数据写入闪存时,按照写单元编程,凑齐写入的数据量更慢,因此占用盘内高速缓存时间更长,降低主机下发写操作的并发数;2、横向分配物理地址时包含较少通道的闪存页(最少为1个);该方法优点在于可以更快的补齐一个写单元数据,占用的盘内高速缓存数量较少,可提升主机写操作的并发周转;缺点在于一个大读写操作需要在一个通道上,进行多次读操作,才能够将数据全部读出,读时延较大。
现有技术存在如下技术问题:在SSD盘出厂时即固定了分配物理地址的方式,只能在上述两种主流算法中任选其一,不能够进行切换,必须接受其算法的缺点,在不适应的场景下,算法对应的读写时延会更大。
发明内容
本发明的目的在于克服现有技术的不足,提供一种固态硬盘空间分配方法、装置、介质及系统,可实现针对业务场景,可动态配置调整的物理地址分配和排布的算法,从而提升固态硬盘的整体读写性能。
本发明的目的是通过以下方案实现的:
一种固态硬盘空间分配方法,包括以下步骤:
S1,主机侧获取“配置数据排布方式”命令;
S2,用户通过主机发送“配置数据排布方式”命令的方式,向固态硬盘发送配置指令,进行数据排布方式配置;
S3,固态硬盘的SSD控制器接收处理配置的指令,并开始切换物理地址分配和排布算法;
S4,物理地址分配和排布算法切换执行完毕后,向主机侧回应参数配置结果,完成固态硬盘空间分配响应。
进一步地,在步骤S1中,所述主机侧获取“配置数据排布方式”命令,具体包括子步骤:通过提供固态硬盘详细使用介绍文档,从固态硬盘详细使用介绍文档中获取该固态硬盘的“配置数据排布方式”的厂商自定义命令说明及使用方式。
进一步地,在步骤S2中,所述通过主机发送“配置数据排布方式”命令的方式包括子步骤:填充对应的配置参数,具体包括:发送命令的参数类型、算法数据排布粒度和流ID。
进一步地,在步骤S3中,所述切换物理地址分配算法具体包括子步骤:
S31,获取解析主机下发的命令参数类型和算法数据排布粒度;
S32,判断是否设置指定流,如是指定流则从命令参数中获取流ID;如非指定流则按全局处理;
S33,根据步骤S31和S32获取的参数信息,进行配置设置。
进一步地,在步骤S4中,所述向主机侧回应参数配置结果,具体包括子步骤:
S41,获取参数配置的结果;
S42,向主机侧发送当前主机分配算法配置结果。
进一步地,所述主机侧包括PC端。
进一步地,所述固态硬盘详细使用介绍文档通过固态硬盘厂商提供。
一种固态硬盘空间分配装置,包括处理器和存储器,所述存储器中存储有计算机程序,当所述计算机程序被所述处理器加载时并执行如上任一项所述的方法。
一种计算机可读存储介质,在可读存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行如上任一项所述的方法。
一种固态硬盘空间分配系统,包括上所述的固态硬盘空间分配装置。
本发明的有益效果包括:
本发明可以根据业务的场景,灵活设置更适合的物理地址分配和排布的算法,以提高业务性能。当写操作比例较高的流时,可设置为包含较少的通道的物理地址分配和排布的算法。当读操作比例较高的流,可设置为包含较多的通道的物理地址分配和排布的算法。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有SSD的主要逻辑单元示意图;
图2为写操作比例较高的流的物理地址分配示意图;
图3为读操作比例较高的流的物理地址分配示意图;
图4为本发明实施例方法的流程图;
图中,CH0、CH1和CH2均表示通道,DIE0表示芯片,Plane0和Plane1均表示平面,P0、P1和P2均表示页,WL0表示字线。
具体实施方式
本说明书中所有实施例公开的所有特征,或隐含公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合和/或扩展、替换。
如图4所示,本发明实施例的方法包括如下步骤:
步骤1、固态硬盘对主机侧提供厂家自定义命令,用户可通过配置命令说明文档,向固态硬盘发送命令调整物理分配和排布算法;
步骤2、主机侧通过发送命令(填充好对应的配置参数:命令的参数类型,算法数据排布粒度,流ID(指定流生效时)),向固态硬盘发送配置指令;
步骤3、SSD控制器接收处理配置的指令,并开始切换物理地址分配算法;
步骤4、算法切换后,向主机回应参数配置结果。
在具体实施中,以96K的主机数据读写为例:对应图2中24个单元(每个单元4K数据)。
当写操作量比例较高的流时,物理地址分配如图2框选所示,选择更快的凑满一个写入单元进行固态硬盘的落盘写入,提升效率,具体包括如下子步骤:
步骤1、选择通过主机发送厂家自定义命令0xD7;发送命令参数类型:0000 0000b(全局进行设置-包含较少的通道的物理地址分配和排布的算法);算法数据排布粒度:00000005b(96K的数据排布粒度);
步骤2、固态硬盘收到切换算法排布命令,解析命令类型、排布粒度;固态硬盘根据命令解析的参数,调整内部使用的排布算法;
步骤3、固态硬盘向主机相应算法设置的结果。
当读操作比例较高的流,物理地址分配如图3框选所示,选择更多的通道进行分配,多个通道能够同时读取(例如CH0、CH1、CH2三个通道能够同时并发进行读取),读取效率更高,具体包括如下子步骤:
步骤1、选择通过主机发送厂家自定义命令0xD7;发送命令参数类型:0000 0001b(全局进行设置-包含较多的通道的物理地址分配和排布的算法);算法数据排布粒度:00000005b(96K的数据排布粒度);
步骤2、固态硬盘收到切换算法排布命令,解析命令类型、排布粒度;固态硬盘根据命令解析的参数,调整内部使用的排布算法;
步骤3、固态硬盘向主机相应算法设置的结果。
需要说明的是,在本发明权利要求书中所限定的保护范围内,以下实施例均可以从上述具体实施方式中,例如公开的技术原理,公开的技术特征或隐含公开的技术特征等,以合乎逻辑的任何方式进行组合和/或扩展、替换。
实施例1
一种固态硬盘空间分配方法,包括以下步骤:
S1,主机侧获取“配置数据排布方式”命令;
S2,用户通过主机发送“配置数据排布方式”命令的方式,向固态硬盘发送配置指令,进行数据排布方式配置;
S3,固态硬盘的SSD控制器接收处理配置的指令,并开始切换物理地址分配和排布算法;
S4,物理地址分配和排布算法切换执行完毕后,向主机侧回应参数配置结果,完成固态硬盘空间分配响应。
实施例2
在实施例1的基础上,在步骤S1中,所述主机侧获取“配置数据排布方式”命令,具体包括子步骤:通过提供固态硬盘详细使用介绍文档,从固态硬盘详细使用介绍文档中获取该固态硬盘的“配置数据排布方式”的厂商自定义命令说明及使用方式。
实施例3
在实施例1的基础上,在步骤S2中,所述通过主机发送“配置数据排布方式”命令的方式包括子步骤:填充对应的配置参数,具体包括:发送命令的参数类型、算法数据排布粒度和流ID。
实施例4
在实施例3的基础上,在步骤S3中,所述切换物理地址分配算法具体包括子步骤:
S31,获取解析主机下发的命令参数类型和算法数据排布粒度;
S32,判断是否设置指定流,如是指定流则从命令参数中获取流ID;如非指定流则按全局处理;
S33,根据步骤S31和S32获取的参数信息,进行配置设置。
实施例5
在实施例1的基础上,在步骤S4中,所述向主机侧回应参数配置结果,具体包括子步骤:
S41,获取参数配置的结果;
S42,向主机侧发送当前主机分配算法配置结果。
实施例6
所述主机侧包括PC端。
实施例7
在实施例2的基础上,所述固态硬盘详细使用介绍文档通过固态硬盘厂商提供。
实施例8
一种固态硬盘空间分配装置,包括处理器和存储器,所述存储器中存储有计算机程序,当所述计算机程序被所述处理器加载时并执行如实施例1~实施例7任一项所述的方法。
实施例9
一种计算机可读存储介质,在可读存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行如实施例1~实施例7任一项所述的方法。
实施例10
一种固态硬盘空间分配系统,包括如实施例8所述的固态硬盘空间分配装置。
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
根据本发明实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的方法。
作为另一方面,本发明实施例还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。

Claims (10)

1.一种固态硬盘空间分配方法,其特征在于,包括以下步骤:
S1,主机侧获取“配置数据排布方式”命令;
S2,用户通过主机发送“配置数据排布方式”命令的方式,向固态硬盘发送配置指令,进行数据排布方式配置;
S3,固态硬盘的SSD控制器接收处理配置的指令,并开始切换物理地址分配和排布算法;
S4,物理地址分配和排布算法切换执行完毕后,向主机侧回应参数配置结果,完成固态硬盘空间分配响应。
2.根据权利要求1所述的固态硬盘空间分配方法,其特征在于,在步骤S1中,所述主机侧获取“配置数据排布方式”命令,具体包括子步骤:通过提供固态硬盘详细使用介绍文档,从固态硬盘详细使用介绍文档中获取该固态硬盘的“配置数据排布方式”的厂商自定义命令说明及使用方式。
3.根据权利要求1所述的固态硬盘空间分配方法,其特征在于,在步骤S2中,所述通过主机发送“配置数据排布方式”命令的方式包括子步骤:填充对应的配置参数,具体包括:发送命令的参数类型、算法数据排布粒度和流ID。
4.根据权利要求3所述的固态硬盘空间分配方法,其特征在于,在步骤S3中,所述切换物理地址分配算法具体包括子步骤:
S31,获取解析主机下发的命令参数类型和算法数据排布粒度;
S32,判断是否设置指定流,如是指定流则从命令参数中获取流ID;如非指定流则按全局处理;
S33,根据步骤S31和S32获取的参数信息,进行配置设置。
5.根据权利要求1所述的固态硬盘空间分配方法,其特征在于,在步骤S4中,所述向主机侧回应参数配置结果,具体包括子步骤:
S41,获取参数配置的结果;
S42,向主机侧发送当前主机分配算法配置结果。
6.根据权利要求1所述的固态硬盘空间分配方法,其特征在于,所述主机侧包括PC端。
7.根据权利要求2所述的固态硬盘空间分配方法,其特征在于,所述固态硬盘详细使用介绍文档通过固态硬盘厂商提供。
8.一种固态硬盘空间分配装置,其特征在于,包括处理器和存储器,所述存储器中存储有计算机程序,当所述计算机程序被所述处理器加载时并执行如权利要求1~7任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,在可读存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行如权利要求1~7任一项所述的方法。
10.一种固态硬盘空间分配系统,其特征在于,包括如权利要求8所述的固态硬盘空间分配装置。
CN202311064083.6A 2023-08-23 2023-08-23 固态硬盘空间分配方法、装置、介质及系统 Active CN116795735B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311064083.6A CN116795735B (zh) 2023-08-23 2023-08-23 固态硬盘空间分配方法、装置、介质及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311064083.6A CN116795735B (zh) 2023-08-23 2023-08-23 固态硬盘空间分配方法、装置、介质及系统

Publications (2)

Publication Number Publication Date
CN116795735A true CN116795735A (zh) 2023-09-22
CN116795735B CN116795735B (zh) 2023-11-03

Family

ID=88050074

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311064083.6A Active CN116795735B (zh) 2023-08-23 2023-08-23 固态硬盘空间分配方法、装置、介质及系统

Country Status (1)

Country Link
CN (1) CN116795735B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117149091A (zh) * 2023-10-23 2023-12-01 四川云海芯科微电子科技有限公司 一种固态硬盘数据保存方法及相关装置

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101498994A (zh) * 2009-02-16 2009-08-05 华中科技大学 一种固态硬盘控制器
US20120198128A1 (en) * 2011-02-02 2012-08-02 Van Aken Stephen P Control arrangements and methods for accessing block oriented nonvolatile memory
CN103827837A (zh) * 2012-08-22 2014-05-28 华为技术有限公司 访问固态硬盘空间的方法、装置及系统
CN108762674A (zh) * 2018-05-24 2018-11-06 深圳忆联信息系统有限公司 提升ssd响应延迟的方法及装置
CN108920096A (zh) * 2018-06-06 2018-11-30 深圳忆联信息系统有限公司 一种ssd的数据储存方法、装置、计算机设备及存储介质
US20190370012A1 (en) * 2018-05-31 2019-12-05 Pure Storage, Inc. Mechanism for updating host file system and flash translation layer based on underlying nand technology
CN112035061A (zh) * 2020-08-17 2020-12-04 鹏城实验室 固态硬盘资源分配方法、装置和存储介质
CN114527942A (zh) * 2022-02-21 2022-05-24 苏州浪潮智能科技有限公司 一种基于固态硬盘的写数据方法、系统、存储介质及设备
CN116028378A (zh) * 2021-10-25 2023-04-28 联芸科技(杭州)股份有限公司 固态硬盘的映射方法和固态硬盘
CN116166193A (zh) * 2023-02-03 2023-05-26 苏州浪潮智能科技有限公司 一种硬盘空间管理优化方法、系统、设备及存储介质
CN116382569A (zh) * 2023-02-28 2023-07-04 超聚变数字技术有限公司 一种数据处理方法、装置、硬盘及介质
CN116382581A (zh) * 2023-03-24 2023-07-04 山东云海国创云计算装备产业创新中心有限公司 一种加速执行NVMe协议的方法、系统、设备和存储介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101498994A (zh) * 2009-02-16 2009-08-05 华中科技大学 一种固态硬盘控制器
US20120198128A1 (en) * 2011-02-02 2012-08-02 Van Aken Stephen P Control arrangements and methods for accessing block oriented nonvolatile memory
CN103827837A (zh) * 2012-08-22 2014-05-28 华为技术有限公司 访问固态硬盘空间的方法、装置及系统
CN108762674A (zh) * 2018-05-24 2018-11-06 深圳忆联信息系统有限公司 提升ssd响应延迟的方法及装置
US20190370012A1 (en) * 2018-05-31 2019-12-05 Pure Storage, Inc. Mechanism for updating host file system and flash translation layer based on underlying nand technology
CN108920096A (zh) * 2018-06-06 2018-11-30 深圳忆联信息系统有限公司 一种ssd的数据储存方法、装置、计算机设备及存储介质
CN112035061A (zh) * 2020-08-17 2020-12-04 鹏城实验室 固态硬盘资源分配方法、装置和存储介质
CN116028378A (zh) * 2021-10-25 2023-04-28 联芸科技(杭州)股份有限公司 固态硬盘的映射方法和固态硬盘
CN114527942A (zh) * 2022-02-21 2022-05-24 苏州浪潮智能科技有限公司 一种基于固态硬盘的写数据方法、系统、存储介质及设备
CN116166193A (zh) * 2023-02-03 2023-05-26 苏州浪潮智能科技有限公司 一种硬盘空间管理优化方法、系统、设备及存储介质
CN116382569A (zh) * 2023-02-28 2023-07-04 超聚变数字技术有限公司 一种数据处理方法、装置、硬盘及介质
CN116382581A (zh) * 2023-03-24 2023-07-04 山东云海国创云计算装备产业创新中心有限公司 一种加速执行NVMe协议的方法、系统、设备和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陶亮: "固态硬盘写入/擦除次数与读写速度的优化设计", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》, pages 137 - 106 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117149091A (zh) * 2023-10-23 2023-12-01 四川云海芯科微电子科技有限公司 一种固态硬盘数据保存方法及相关装置

Also Published As

Publication number Publication date
CN116795735B (zh) 2023-11-03

Similar Documents

Publication Publication Date Title
CN109542333B (zh) 存储器系统及控制非易失性存储器的控制方法
JP6765321B2 (ja) メモリシステムおよび制御方法
US8909895B2 (en) Memory apparatus
JP6785204B2 (ja) メモリシステムおよび制御方法
JP2019020788A (ja) メモリシステムおよび制御方法
CN114115747A (zh) 存储器系统及控制方法
US20130103893A1 (en) System comprising storage device and related methods of operation
CN103608782A (zh) Lsb页面和msb页面中的选择性数据存储
KR20130096881A (ko) 플래시 메모리 장치
US11513949B2 (en) Storage device, and control method and recording medium thereof
CN112035381A (zh) 一种存储系统及存储数据处理方法
US11762580B2 (en) Memory system and control method
CN116795735B (zh) 固态硬盘空间分配方法、装置、介质及系统
US20170003911A1 (en) Information processing device
US20230418485A1 (en) Host device, storage device, and electronic device
CN113986773A (zh) 基于固态硬盘的写放大优化方法、装置及计算机设备
WO2023169142A1 (zh) 一种存储装置及相关数据分区管理方法
CN110119245B (zh) 用于操作nand闪存物理空间以扩展存储器容量的方法和系统
US11954350B2 (en) Storage device and method of operating the same
CN107688435B (zh) Io流调节方法与装置
JP7167295B2 (ja) メモリシステムおよび制御方法
JP7490714B2 (ja) メモリシステムおよび制御方法
JP7204020B2 (ja) 制御方法
US20240231663A1 (en) Storage device and method of operating the same
US10671322B1 (en) Method for performing storage space management, associated data storage device, and controller thereof

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant