掌桥专利:专业的专利平台
掌桥专利
首页

一种SSD芯片坏块管理方法、系统、设备和存储介质

文献发布时间:2024-04-18 19:52:40


一种SSD芯片坏块管理方法、系统、设备和存储介质

技术领域

本申请涉及存储芯片的技术领域,尤其是涉及一种SSD芯片坏块管理方法、系统、设备和存储介质。

背景技术

固态硬盘SSD以其高速、可靠的特点被广泛应用于各类存储场景。随着SSD的广泛应用,SSD中的闪存芯片的可靠性日益受关注,闪存芯片会随着使用时间的累计逐渐产生坏块,对坏块的合理管理直接影响SSD的性能,现有的坏块管理技术主要采用块映射表记录坏块,并动态调整映射关系。

在SSD用于车载导航时,由于车载环境温度变化较大,容易导致坏块增长速率加快,而车载导航地图数据不仅需要长时间高强度擦写,且对于完整性要求极高,当车载SSD芯片温度快速升高时,容易导致导航出错。

发明内容

为了解决现有的SSD芯片在温度快速升高时容易导致导航出错的问题,本申请提供一种SSD芯片坏块管理方法、系统、设备和存储介质,采用如下的技术方案:

第一方面,本申请提供一种SSD芯片坏块管理方法,包括如下步骤:

在导航策略空闲间隙执行巡检,检测是否存在新增坏块,并在检测到存在新增坏块时将所述新增坏块更新到块映射表中;

获取所述SSD芯片的温升速率,在所述温升速率大于速率阈值时,根据所述块映射表确定所述SSD芯片的可用块数;

在所述可用块数超过第一阈值时,根据所述SSD芯片各个区域的温度分布和负载分布,确定低温低负载目标区域;

将导航关键数据迁移至所述目标区域。

通过采用上述技术方案,本申请通过在导航策略空闲间隙执行巡检,检测是否存在新增坏块,并在检测到新增坏块时将新增坏块更新到块映射表中,从而能够在导航空闲间隙及时检测出坏块;然后在获取到SSD芯片的温升速率大于速率阈值时,根据块映射表确定可用块数,在可用块数超过第一阈值的情况下,根据SSD芯片各个区域的温度分布和负载分布,确定低温低负载目标区域,将导航关键数据迁移至目标区域,从而根据温度分布格局对SSD芯片进行热负载均衡,降低热点风险,防止SSD芯片在温升过快时出现导航出错的问题。

可选的,所述在导航策略空闲间隙执行巡检过程中,还包括如下步骤:

实时检测导航策略是否处于空闲状态;

当所述导航策略处于空闲状态时,计算导航策略从开始空闲到当前的空闲时长;

在所述空闲时长达到时长阈值时,执行巡检。

通过采用上述技术方案,本申请通过实时检测导航策略是否处于空闲状态,当处于空闲状态的时长到达时长阈值时,执行巡检,从而合理设置有效的巡检策略。

可选的,在导航策略空闲间隙执行巡检过程中,还包括如下步骤:

获取所述SSD芯片的温度,在所述温度超过温度阈值时,计算过热时长,其中,所述过热时长为所述温度超过温度阈值的时长;

在所述过热时长达到时长阈值时,执行巡检。

通过采用上述技术方案,本申请通过获取SSD芯片的温度,在温度超过温度阈值的时长达到时长阈值时,执行巡检,从而结合温度异常合理优化巡检策略。

可选的,所述根据所述SSD芯片各个区域的温度分布和负载分布,确定低温低负载目标区域的过程中,包括如下步骤:

实时监测所述SSD芯片各个存储区域的温度,建立温度分布图;

统计各个存储区域的读写访问频率和数据更新次数,建立热负载分布图;

根据所述温度分布图与所述热负载分布图,确定低温低负载目标区域。

通过采用上述技术方案,本申请通过建立温度分布图和热负载分布图,综合各个存储区域的温度和热负载,从而确定一个准确的低温低负载区域。

可选的,所述根据所述温度分布图与所述热负载分布图,确定低温低负载目标区域的过程中,包括如下步骤:

根据公式Si = w1f1(Ti) + w2f2(Li)计算各个区域的评分,其中,T为区域温度,f1(Ti)为评价温度Ti的评分函数,且f1(Ti)和Ti呈正相关,L为区域负载,f2(Li)为评价负载Li的评分函数,且f2(Li)和Li呈正相关,w1为温度权重,w2为负载权重;

根据所述各个区域的评分确定所述评分最高的区域为所述目标区域。

通过采用上述技术方案,本申请根据公式计算各个区域的评分,通过给温度和负载设置不同的权重,计算各个区域的综合评分,然后按照评分进行排序,从而确定出低温低负载的目标区域。

可选的,所述将导航关键数据迁移至所述目标区域之前,所述方法还包括:

根据所述块映射表确定所述目标区域的坏块数量;

在所述坏块数量不超过第二阈值时,将所述导航关键数据迁移至所述目标区域;

在所述坏块数量超过第二阈值时,根据所述SSD芯片各个区域的温度分布和负载分布获取第二区域;所述第二区域为除所述目标区域外的其他区域中所述评分最高的区域;

将所述导航关键数据迁移至所述目标区域和所述第二区域。

通过采用上述技术方案,当目标区域的坏块数量超过第二阈值时,本申请基于各个区域的评分确定除目标区域外的第二区域,然后将导航关键数据迁移至目标区域和第二区域,通过第二区域作为备选空间,允许目标区域更高的坏块容忍度,同时降低单次迁移的数据量,减少操作压力,实现负载均衡,提高方法的健壮性。

第二方面,本申请提供一种SSD芯片坏块管理系统,所述系统包括:

巡检模块,用于在导航策略空闲间隙执行巡检,检测是否存在新增坏块,并在检测到存在新增坏块时将所述新增坏块更新到块映射表中;

可用块数确定模块,用于获取所述SSD芯片的温升速率,在所述温升速率大于速率阈值时,根据所述块映射表确定所述SSD芯片的可用块数;

目标区域确定模块,用于在所述可用块数超过第一阈值时,根据所述SSD芯片各个区域的温度分布和负载分布,确定低温低负载目标区域;

迁移模块,用于将导航关键数据迁移至所述目标区域。

第三方面,本申请提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述SSD芯片坏块管理方法的步骤。

第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述SSD芯片坏块管理方法的步骤。

综上所述,本申请包括以下至少一种有益技术效果:

1.本申请通过在导航策略空闲间隙执行巡检及时检测出坏块;然后在获取到SSD芯片的温升速率大于速率阈值且可用块数超过第一阈值的情况下,根据SSD芯片各个区域的温度分布和负载分布,确定低温低负载目标区域,将导航关键数据迁移至目标区域,从而根据温度分布格局对SSD芯片进行热负载均衡,降低热点风险,防止SSD芯片在温升过快时出现导航出错的问题;

2.本申请根据公式计算各个区域的评分,通过给温度和负载设置不同的权重,计算各个区域的综合评分,然后按照评分进行排序,从而确定出低温低负载的目标区域;

3.当目标区域的坏块数量超过第二阈值时,本申请基于各个区域的评分确定除目标区域外的第二区域,然后将导航关键数据迁移至目标区域和第二区域,通过第二区域作为备选空间,允许目标区域更高的坏块容忍度,同时降低单次迁移的数据量,减少操作压力,实现负载均衡,提高方法的健壮性。

附图说明

图1是本申请实施例一种SSD芯片坏块管理方法的示例性流程图;

图2是本申请实施例一种SSD芯片坏块管理方法的另一个示例性流程图;

图3是本申请实施例SSD芯片坏块管理系统的模块示意图;

图4是本申请计算机设备的内部结构图。

具体实施方式

本申请以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括复数表达形式,除非其上下文中明确地有相反指示。还应当理解,本申请中使用的术语“和/或”是指包含一个或多个所列出项目的任何或所有可能组合。

以下,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。

固态硬盘SSD以其高速、可靠的特点被广泛应用于各类存储场景。随着SSD的广泛应用,SSD中的闪存芯片的可靠性日益受关注,闪存芯片会随着使用时间的累计逐渐产生坏块,现有的坏块管理技术主要采用块映射表记录坏块,并动态调整映射关系。

在SSD用于车载导航时,由于车载环境温度变化较大,容易导致坏块增长速率加快,而车载导航地图数据不仅需要长时间高强度擦写,且对于完整性要求极高,当车载SSD芯片温度快速升高时,现有技术的SSD坏块管理方法没有考虑温升过快时的数据保护,容易导致导航出错。

本申请提供一种SSD芯片坏块管理方法、系统、设备和存储介质,通过在导航策略空闲间隙执行巡检及时检测出坏块;然后在获取到SSD芯片的温升速率大于速率阈值且可用块数超过第一阈值的情况下,确定低温低负载目标区域,将导航关键数据迁移至目标区域,从而对SSD芯片进行热负载均衡,降低热点风险,防止SSD芯片在温升过快时出现导航出错的问题。

下面结合说明书附图对本申请实施例做进一步详细描述。

本申请实施例提供一种SSD芯片坏块管理方法,由电子设备执行,该电子设备可以为服务器也可以为终端设备,其中,该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。本实施例中,终端设备是计算机设备,但并不局限于此,也可以是智能平板、电脑等,该终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例在此不做限制。

参照图1,图1为本申请实施例一种SSD芯片坏块管理方法的示例性流程图。

第一方面,本申请提供一种SSD芯片坏块管理方法,包括如下步骤:

S110、在导航策略空闲间隙执行巡检,检测是否存在新增坏块,并在检测到存在新增坏块时将新增坏块更新到块映射表中。

其中,主控制器持续监测写入操作的间隙时间,一旦达到扫描触发条件就发送扫描指令,各个通道控制器收到扫描指令后,切换到独立的扫描地址空间,避免作用冲突。通道控制器启动扫描模式,通过突发并行读操作进行加速,同时开启多通道扫描,实现跨通道并行提速,在检测到新增坏块时,实时标记块映射表并记录日志。在扫描结束后主控制器汇总结果,完成一次巡检,然后继续监测下次满足扫描触发条件的间隙时间。

具体的,在本实施例中,扫描触发条件为:

实时检测导航策略是否处于空闲状态,当导航策略处于空闲状态时,计算导航策略从开始空闲到当前的空闲时长,在空闲时长达到时长阈值时,执行巡检。

在一些实施例中,还可以结合温度异常优化巡检策略,具体的,扫描触发条件还包括:

获取SSD芯片的温度,在温度超过温度阈值时,计算过热时长,其中,过热时长为温度超过温度阈值的时长,在过热时长达到时长阈值时,表示SSD芯片长时间处于过热状态,可能导致坏块增加速率增快,则执行巡检以及时发现新坏块,更新块映射表。

S120、获取SSD芯片的温升速率,在温升速率大于速率阈值时,根据块映射表确定SSD芯片的可用块数。

其中,温升速率是指SSD芯片整体温度的上升速率,在SSD芯片长时间负载数据访问产生热积累,电源电压等参数漂移冲击功耗,风扇散热失效、芯片运行异常或者环境温度骤升时都会导致芯片温升过快;当达到速率阈值时,需要进行数据迁移以保护导航关键数据。

S130、在可用块数超过第一阈值时,根据SSD芯片各个区域的温度分布和负载分布,确定低温低负载目标区域。

可以理解的是,在可用块数不超过第一阈值时,SSD芯片的坏块较多,此时频繁迁移数据容易加速SSD芯片的老化,因此,本申请对可用块数进行判断,在可用块数超过第一阈值时进行迁移。

其中,根据根据SSD芯片各个区域的温度分布和负载分布,确定低温低负载目标区域包括以下步骤:

S131、实时监测SSD芯片各个存储区域的温度,建立温度分布图。

其中,在本实施例中,不用在每个Die 中嵌入传感器,可以通过采用少量的温度传感器按一定分布部署,然后通过SSD芯片的热传导模型推测出其他区域的温度。或者通过统计阈值电压随温度变化的规律,间接通过阈值电压确定该存储区域的温度,从而降低在技术上的难度。

S132、统计各个存储区域的读写访问频率和数据更新次数,建立热负载分布图。

S133、根据温度分布图和热负载分布图,确定低温低负载目标区域。

其中,根据公式Si = w1f1(Ti) + w2f2(Li)计算各个区域的评分,其中,T为区域温度,f1(Ti)为评价温度Ti的评分函数,且f1(Ti)和Ti呈正相关,L为区域负载,f2(Li)为评价负载Li的评分函数,且f2(Li)和Li呈正相关,w1为温度权重,w2为负载权重;然后将各个区域的评分确定评分最高的区域为目标区域。

具体的,在本实施例中,温度权重w1设置为70%,负载权重w2为30%,f1(Ti)和f2(Li)均为线性函数,区间归一化到[0, 1]。从而根据区域温度和区域负载进行评分。

S140、将导航关键数据迁移至目标区域。

其中,导航关键数据包括导航地图信息、定位数据、交通规则数据、系统日志、故障报警数据等等。

本申请实施例一种SSD芯片坏块管理方法的实施原理为:通过在导航策略空闲间隙执行巡检及时检测出坏块;然后在获取到SSD芯片的温升速率大于速率阈值且可用块数超过第一阈值的情况下,根据SSD芯片各个区域的温度分布和负载分布,确定低温低负载目标区域,将导航关键数据迁移至目标区域,从而根据温度分布格局对SSD芯片进行热负载均衡,降低热点风险,防止SSD芯片在温升过快时出现导航出错的问题。

在一个实施例中,当目标区域的坏块较多时,通过第二区域作为备选空间,通过将关键数据分批迁移,降低单次迁移的数据量,减少操作压力,实现负载均衡。

参照图2,图2为本申请实施例一种SSD芯片坏块管理方法的另一个示例性流程图。

在步骤S140之前还包括:

S210、根据块映射表确定目标区域的坏块数量。

S220、在坏块数量不超过第二阈值时,将导航关键数据迁移至目标区域。

其中,根据巡检实时更新的块映射表确定目标区域的坏块数量,在坏块数量较少时,直接将导航关键数据迁移至目标区域。

S230、在坏块数量超过第二阈值时,根据SSD芯片各个区域的温度分布和负载分布获取第二区域。

其中,第二区域为除目标区域外的其他区域中评分最高的区域。

在执行步骤S140时,将导航关键数据迁移至目标区域和第二区域。

当坏块数量较多时,确定除目标区域外的其他区域中评分最高的区域为第二区域,然后采用分批迁移的策略,降低单次迁移的数据量,减少操作压力,实现负载均衡。

第二方面,本申请提供了一种SSD芯片坏块管理系统,下面结合上述SSD芯片坏块管理方法,对本申请的SSD芯片坏块管理系统进行描述。请参阅图3,图3是本申请实施例SSD芯片坏块管理系统的模块示意图。

一种SSD芯片坏块管理系统,系统包括:

巡检模块310,用于在导航策略空闲间隙执行巡检,检测是否存在新增坏块,并在检测到存在新增坏块时将新增坏块更新到块映射表中;

可用块数确定模块320,用于获取SSD芯片的温升速率,在温升速率大于速率阈值时,根据块映射表确定SSD芯片的可用块数;

目标区域确定模块330,用于在可用块数超过第一阈值时,根据SSD芯片各个区域的温度分布和负载分布,确定低温低负载目标区域;

迁移模块340,用于将导航关键数据迁移至目标区域。

在一个实施例中,本申请提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种SSD芯片坏块管理方法。

本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。

以上均为本申请的较佳实施例,并非依此限制本申请的保护范围,故:凡依本申请的结构、形状、原理所做的等效变化,均应涵盖于本申请的保护范围之内。

相关技术
  • 一种干法钙基脱硫低正压气力连续输送装置及其使用方法
  • 一种干法钙基脱硫低正压气力连续输送装置及其使用方法
技术分类

06120116333245