固态硬盘空间分配方法、装置、介质及系统制造方法及图纸

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

【技术实现步骤摘要】
固态硬盘空间分配方法、装置、介质及系统


[0001]本专利技术涉及存储
,更为具体的,涉及一种固态硬盘空间分配方法、装置、介质及系统。

技术介绍

[0002]固态硬盘(SSD)是基于闪存芯片的数据存储设备,数据存放于闪存芯片的闪存单元中,闪存单元为浮栅晶体管组成。SSD的主要逻辑单元如图1。
[0003]主机与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的表项中。
[0004]由于闪存芯片的物理特性,单个芯片的容量、访问速度受限,SSD的主控芯片通过多个通道连接多颗闪存芯片,以提高单个SDD盘的物理容量、并发访问的速度。例如,单个闪存芯片提供1TB的空间大小,SSD的主控芯片可以设计8个通道,如果每个通道下可以连接2个闪存芯片,则SSD盘可以最大支持16TB的物理容量。
[0005]现有的物理地址数据分配和排布的算法主要分为两个方向:1、横向分配物理地址时包含更多通道的闪存页;该方法优点在于可利用更多通道并发处理数据,读时延更低;缺点在于数据写入闪存时,按照写单元编程,凑齐写入的数据量更慢,因此占用盘内高速缓存时间更长,降低主机下发写操作的并发数;2、横向分配物理地址时包含较少通道的闪存页(最少为1个);该方法优点在于可以更快的补齐一个写单元数据,占用的盘内高速缓存数量较少,可提升主机写操作的并发周转;缺点在于一个大读写操作需要在一个通道上,进行多次读操作,才能够将数据全部读出,读时延较大。
[0006]现有技术存在如下技术问题:在SSD盘出厂时即固定了分配物理地址的方式,只能在上述两种主流算法中任选其一,不能够进行切换,必须接受其算法的缺点,在不适应的场景下,算法对应的读写时延会更大。

技术实现思路

[0007]本专利技术的目的在于克服现有技术的不足,提供一种固态硬盘空间分配方法、装置、介质及系统,可实现针对业务场景,可动态配置调整的物理地址分配和排布的算法,从而提升固态硬盘的整体读写性能。
[0008]本专利技术的目的是通过以下方案实现的:一种固态硬盘空间分配方法,包括以下步骤:S1,主机侧获取“配置数据排布方式”命令;S2,用户通过主机发送“配置数据排布方式”命令的方式,向固态硬盘发送配置指令,进行数据排布方式配置;S3,固态硬盘的SSD控制器接收处理配置的指令,并开始切换物理地址分配和排布算法;S4,物理地址分配和排布算法切换执行完毕后,向主机侧回应参数配置结果,完成固态硬盘空间分配响应。
[0009]进一步地,在步骤S1中,所述主机侧获取“配置数据排布方式”命令,具体包括子步骤:通过提供固态硬盘详细使用介绍文档,从固态硬盘详细使用介绍文档中获取该固态硬盘的“配置数据排布方式”的厂商自定义命令说明及使用方式。
[0010]进一步地,在步骤S2中,所述通过主机发送“配置数据排布方式”命令的方式包括子步骤:填充对应的配置参数,具体包括:发送命令的参数类型、算法数据排布粒度和流ID。
[0011]进一步地,在步骤S3中,所述切换物理地址分配算法具体包括子步骤:S31,获取解析主机下发的命令参数类型和算法数据排布粒度;S32,判断是否设置指定流,如是指定流则从命令参数中获取流ID;如非指定流则按全局处理;S33,根据步骤S31和S32获取的参数信息,进行配置设置。
[0012]进一步地,在步骤S4中,所述向主机侧回应参数配置结果,具体包括子步骤:S41,获取参数配置的结果;S42,向主机侧发送当前主机分配算法配置结果。
[0013]进一步地,所述主机侧包括PC端。
[0014]进一步地,所述固态硬盘详细使用介绍文档通过固态硬盘厂商提供。
[0015]一种固态硬盘空间分配装置,包括处理器和存储器,所述存储器中存储有计算机程序,当所述计算机程序被所述处理器加载时并执行如上任一项所述的方法。
[0016]一种计算机可读存储介质,在可读存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行如上任一项所述的方法。
[0017]一种固态硬盘空间分配系统,包括上所述的固态硬盘空间分配装置。
[0018]本专利技术的有益效果包括:本专利技术可以根据业务的场景,灵活设置更适合的物理地址分配和排布的算法,以提高业务性能。当写操作比例较高的流时,可设置为包含较少的通道的物理地址分配和排布的算法。当读操作比例较高的流,可设置为包含较多的通道的物理地址分配和排布的算法。
附图说明
[0019]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0020]图1为现有SSD的主要逻辑单元示意图;图2为写操作比例较高的流的物理地址分配示意图;图3为读操作比例较高的流的物理地址分配示意图;图4为本专利技术实施例方法的流程图;图中,CH0、CH1和CH2均表示通道,DIE0表示芯片,Plane0和Plane1均表示平面,P0、P1和P2均表示页,WL0表示字线。
具体实施方式
[0021]本说明书中所有实施例公开的所有特征,或隐含公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合和/或扩展、替换。
[0022]如图4所示,本专利技术实施例的方法包括如下步骤:步骤1、固态硬盘对主机侧提供厂家自定义命令,用户可通过配置命令说明文档,向固态硬盘发送命令调整物理分配和排布算法;步骤2、主机侧通过发送命令(填充好对应的配置参数:命令的参数类型,算法数据排布粒度,流ID(指定流生效时)),向固态硬盘发送配置指令;步本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种固态硬盘空间分配方法,其特征在于,包括以下步骤:S1,主机侧获取“配置数据排布方式”命令;S2,用户通过主机发送“配置数据排布方式”命令的方式,向固态硬盘发送配置指令,进行数据排布方式配置;S3,固态硬盘的SSD控制器接收处理配置的指令,并开始切换物理地址分配和排布算法;S4,物理地址分配和排布算法切换执行完毕后,向主机侧回应参数配置结果,完成固态硬盘空间分配响应。2.根据权利要求1所述的固态硬盘空间分配方法,其特征在于,在步骤S1中,所述主机侧获取“配置数据排布方式”命令,具体包括子步骤:通过提供固态硬盘详细使用介绍文档,从固态硬盘详细使用介绍文档中获取该固态硬盘的“配置数据排布方式”的厂商自定义命令说明及使用方式。3.根据权利要求1所述的固态硬盘空间分配方法,其特征在于,在步骤S2中,所述通过主机发送“配置数据排布方式”命令的方式包括子步骤:填充对应的配置参数,具体包括:发送命令的参数类型、算法数据排布粒度和流ID。4.根据权利要求3所述的固态硬盘空间分配方法,其特征在于,在步骤S3中,所述切换物理地址分配算法具体包括子步骤:S31,获取解析主机...

【专利技术属性】
技术研发人员:刘陈诚孙丁丁
申请(专利权)人:四川云海芯科微电子科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1