CN115469801B - 存储设备的格式化方法及相关设备 - Google Patents

存储设备的格式化方法及相关设备 Download PDF

Info

Publication number
CN115469801B
CN115469801B CN202210978521.9A CN202210978521A CN115469801B CN 115469801 B CN115469801 B CN 115469801B CN 202210978521 A CN202210978521 A CN 202210978521A CN 115469801 B CN115469801 B CN 115469801B
Authority
CN
China
Prior art keywords
block
data
formatted data
mapping table
storage device
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.)
Active
Application number
CN202210978521.9A
Other languages
English (en)
Other versions
CN115469801A (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.)
Shanghai Jiangbolong Digital Technology Co ltd
Original Assignee
Shanghai Jiangbolong Digital 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 Shanghai Jiangbolong Digital Technology Co ltd filed Critical Shanghai Jiangbolong Digital Technology Co ltd
Priority to CN202210978521.9A priority Critical patent/CN115469801B/zh
Publication of CN115469801A publication Critical patent/CN115469801A/zh
Application granted granted Critical
Publication of CN115469801B publication Critical patent/CN115469801B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开一种存储设备的格式化方法及相关设备,涉及存储器技术领域,旨在解决存储设备的格式化操作时间较长的问题。本申请实施例提供的格式化包括:响应于格式化指令,根据第一映射表和非格式化数据的逻辑区块地址获取非格式化数据,第一映射表包括非格式化数据的逻辑区块地址与物理区块地址;将第一块中的非格式化数据迁移到第二块,第二块为空块;根据第二块的逻辑区块地址与物理区块地址修改第一映射表;擦除第一块中的全部数据。

Description

存储设备的格式化方法及相关设备
技术领域
本申请涉及存储器技术领域,具体涉及一种存储设备的格式化方法及相关设备。
背景技术
随着半导体技术的发展,电子设备对存储的要求越来越高,存储设备对指令的响应速度是业内关注的重点问题。存储设备对格式化指令的响应速度和格式化之后存储设备的读写性能是存储设备的关键性能指标。一般而言,存储设备先经过格式化操作才能被用来存储数据。或者,当用户需要删除存储于存储设备中的所有数据时,会对存储设备进行格式化操作。然而,随着存储设备的容量越来越大,格式化操作所需要的时间亦大幅增加。
发明内容
鉴于此,本申请提供一种存储设备的格式化方法及相关设备,旨在解决存储设备的格式化操作时间较长的问题。
本申请第一方面提供一种存储设备的格式化方法,格式化方法包括:响应于格式化指令,根据第一映射表和非格式化数据的逻辑区块地址获取非格式化数据,第一映射表包括非格式化数据的逻辑区块地址与物理区块地址;将第一块中的非格式化数据迁移到第二块,第二块为空块;根据第二块的逻辑区块地址与物理区块地址修改第一映射表;擦除第一块中的全部数据。
采用本实施例的格式化方法,通过迁移第一块中的非格式化数据,修改非格式化数据的第一映射表,以及擦除第一块中的全部数据,不需要加载格式化数据的第二映射表,从而可以缩短格式化操作的时间,还可以减少存储设备的写入放大,从而增加存储设备的寿命。而且,在格式化操作的过程中擦除第一块中的全部数据,对存储设备的读写性能不会造成影响。
本申请第二方面提供一种电子设备,电子设备包括处理器和存储器,处理器执行存储于存储器中的计算机程序或代码,实现本申请实施例的格式化方法。
本申请第三方面提供一种存储介质,存储介质用于存储计算机程序或代码,当计算机程序或代码被处理器执行时,实现本申请实施例的格式化方法。
可以理解,本申请第二方面提供的电子设备和第三方面提供的存储介质均与本申请第一方面提供的格式化方法的具体实施方式和有益效果大致相同,此处不再赘述。
附图说明
图1是本申请提供的存储设备的硬件结构示意图。
图2是本申请提供的存储设备的软件结构示意图。
图3是L2P表的示意图。
图4是存储设备执行格式化操作的流程图。
图5a是存储设备查询源物理块和目标物理块的示意图。
图5b是存储设备将源物理块的非格式化数据迁移到目标物理块的示意图。
图5c是存储设备擦除源物理块的全部数据的示意图。
图5d是存储设备完成垃圾回收操作的示意图。
图6是本申请提供的格式化方法的流程图。
图7是图6所示的步骤S602的子步骤流程图。
图8是图7所示的步骤S702的子步骤流程图。
图9是本申请实施例1提供的格式化方法的流程图。
图10a是存储设备查询源物理块和目标物理块的示意图。
图10b是存储设备将源物理块的非格式化数据迁移到目标物理块的示意图。
图10c是存储设备擦除源物理块的全部数据的示意图。
图10d是存储设备完成数据迁移的示意图。
图11是本申请提供的电子设备的结构示意图。
主要元件符号说明
存储设备 100
接口 110
闪存存储器 120
缓冲存储器 130
主控制器 140
主机 200
前端模块 1001
闪存转换层 1002
后端模块 1003
电子设备 10
处理器 11
存储器 12
具体实施方式
需要说明的是,本申请实施例中“至少一个”是指一个或者多个,“多个”是指两个或多于两个。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。本申请的说明书和权利要求书及附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不是用于描述特定的顺序或先后次序。
另外需要说明的是,本申请实施例中公开的方法或流程图所示出的方法,包括用于实现方法的一个或多个步骤,在不脱离权利要求的范围的情况下,多个步骤的执行顺序可以彼此互换,其中某些步骤也可以被删除。
下面对本申请实施例中的部分技术术语进行说明。
1,存储设备
图1是本申请提供的存储设备100的硬件结构示意图。
可参阅图1,存储设备100包括接口110、闪存存储器120(flash memory)、缓冲存储器130(cache)及主控制器140。其中,接口110用于从主机200接收数据或指令。闪存存储器120用于存储从主机200获取的数据或指令,以及存储存储设备100内的各种数据。缓冲存储器130用于存储从闪存存储器120调入的数据或指令。主控制器140用于从闪存存储器120或缓冲存储器130中调用各种数据,以及执行存储于闪存存储器120或缓冲存储器130中的计算机程序或代码,实现存储设备100的各种功能应用以及数据处理,例如实现本申请实施例的格式化方法。
主机200可向存储设备100发送数据或指令,例如向存储设备100发送格式化指令。
可以理解,主机200可以包括控制面板,用户可通过触摸或点击控制面板上的格式化控件,从而触发格式化指令。
主机200可以包括,但不限于智能电话、平板电脑、个人计算机(PersonalComputer,PC)、电子书阅读器、工作站、服务器、个人数字助理(Personal DigitalAssistant,PDA)。
图2是本申请提供的存储设备100的软件结构示意图。
可参阅图2,存储设备100包括前端模块1001、闪存转换层1002(FlashTranslation Layer,FTL)及后端模块1003。其中,前端模块1001用于从主机200接收数据或指令。闪存转换层1002用于根据从主机200获取的数据或指令进行数据处理,例如根据从主机200获取的格式化指令进行格式化操作。其中,格式化操作包括映射管理。后端模块1003用于根据数据处理的结果更新存储设备100的存储空间,以及向主机200发送数据处理的结果。
可以理解,本申请实施例示意的结构并不构成对存储设备100的具体限定。在本申请另一些实施例中,存储设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
2,映射表
存储设备100可使用映射表来记录逻辑区块地址(Logical Block Address,LBA)与物理区块地址(Physics Block Address,PBA)之间的映射关系。其中,一个LBA指向一个逻辑块(或逻辑页),一个PBA指向一个物理块(或物理页)。主机200通过LBA来访问存储设备100,存储设备100通过PBA访问物理块(或物理页)。
当主机200向存储设备100的一个LBA对应的逻辑块中写入数据时,存储设备100的主控制器140将所述数据写入一个物理块中,并在映射表中记录所述逻辑块的LBA与所述物理块的PBA之间的映射关系。然后,当主机200读取存储设备100中所述逻辑块的所述数据时,存储设备100的主控制器140查询映射表,根据所述逻辑块的LBA在映射表中查询对应的所述物理块的PBA,再根据所述物理块的PBA查询所述物理块,接着从所述物理块中读取所述数据。
3,格式化
存储设备100的格式化会删除存储设备100中的数据。但在格式化过程中,存储设备100也会保存一些不能被格式化的重要数据,比如重放保护存储块(Replay ProtectedMemory Block,RPMB)数据。
在本文中,这些不能被格式化的重要数据被称为“非格式化数据”。而除“非格式化数据”以外,可以被格式化的普通数据被称为“格式化数据”。
下面以RPMB数据为例对存储设备100的格式化进行说明。
可以理解,RPMB数据是与存储设备100的安全性相关的数据,比如指纹、人脸数据及安全支付相关的秘钥等。RPMB数据的数据量较小,如果单独设置物理块存储RPMB数据会浪费存储空间。目前,通常是将RPMB数据和普通数据混合存储到与非门闪存(Nand flash)中,RPMB数据和普通数据的PBA没有区分。
举例而言,主机200可根据RPMB数据的逻辑单元号(Logical Unit Number,LUN)向存储设备100发送读取/写入指令,以读取/写入RPMB数据。其中,LUN是逻辑块的唯一识别符。主机200可根据普通数据的LUN向存储设备100发送读取/写入指令,以读取/写入普通数据。RPMB数据和普通数据的LBA与PBA之间的映射关系记录在L2P(Logical Address toPhysical address)表中,L2P表保存在存储设备100的闪存存储器120中。如图3所示,在L2P表中,主机200可见的RPMB数据的LUN对应的逻辑块的LBA的存储容量为256字节(bytes),主机200可见的普通数据的LUN对应的逻辑块的LBA的存储容量为4kb,RPMB数据的LUN和普通数据的LUN对应的逻辑块的LBA均从0开始连续编号。主机200可见的RPMB数据的LUN对应的16个逻辑块的16个LBA映射到存储设备100的1个逻辑块的LBA。主机200可见的普通数据的LUN对应的1个逻辑块的LBA也映射到存储设备100的1个逻辑块的LBA。在存储设备100中,RPMB数据的LUN对应的逻辑块的LBA排序在前,普通数据的LUN对应的逻辑块的LBA排序在后。存储设备100的1个逻辑块的LBA映射到1个物理块的PBA,存储设备100的逻辑块的LBA和物理块的PBA的存储容量均为4kb。
当对存储设备100(比如通用闪存存储(Universal Flash Storage,UFS)设备)进行格式化操作时,存储设备100的主控制器140首先区分RPMB数据的映射表和普通数据的映射表,再修改普通数据的映射表,将普通数据的PBA标记为无效地址,接着将修改后的普通数据的映射表存储到闪存存储器120中,并更新闪存存储器120中各个物理块的有效标志位。无效地址对应的物理块中的普通数据被确认为垃圾数据,在后续的垃圾回收过程中,存储设备100根据各个物理块的有效标志位删除垃圾数据。
举例而言,如图4所示,存储设备100首先通过前端模块1001从主机200接收格式化指令(参见步骤S401),再通过前端模块1001识别格式化指令(参见步骤S402)。然后,通过闪存转换层1002区分RPMB数据的映射表和普通数据的映射表(参见步骤S403)。接着,RPMB数据的映射表保持不变,通过后端模块1003从闪存存储器120中加载普通数据的映射表(参见步骤S404)。接着,通过闪存转换层1002修改普通数据的映射表(参见步骤S405),将普通数据的PBA标记为无效地址。然后,通过后端模块1003将修改后的普通数据的映射表存储到闪存存储器120中(参见步骤S406)。接着,再通过闪存转换层1002更新闪存存储器120中各个物理块的有效标志位(参见步骤S407)。最后,通过前端模块1001向主机200发送格式化操作的结果(参见步骤S408)。其中,格式化操作的结果可包括格式化完成的消息。
可以理解,有效标志位用于确定物理块的PBA是否为有效地址。在本实施例中,有效标志位可包括有效标志或无效标志,有效标志用于表示物理块的PBA为有效地址,无效标志用于表示物理块的PBA为无效地址。在一些实施例中,有效标志可以是1,无效标志可以是0。在另一些实施例中,有效标志可以是0,无效标志可以是1。举例而言,当物理块的PBA为有效地址时,存储设备100的主控制器140将所述物理块的有效标志位置1。当物理块的PBA为无效地址时,存储设备100的主控制器140将所述物理块的有效标志位置0。
4,垃圾回收
存储设备100在完成格式化操作之后,需要通过主控制器140进行垃圾回收操作。垃圾回收操作用于删除存储设备100中的垃圾数据,从而可以有效地利用存储空间。
举例而言,可参阅图5a至图5d,图5a是存储设备100查询源物理块和目标物理块的示意图,图5b是存储设备100将源物理块的非格式化数据迁移到目标物理块的示意图,图5c是存储设备100擦除源物理块的全部数据的示意图,图5d是存储设备100完成垃圾回收操作的示意图。如图5a所示,存储设备100根据各个物理块的有效标志位查询到第一源物理块、第二源物理块和目标物理块,其中,第一源物理块包括格式化数据X和非格式化数据A,第二源物理块包括格式化数据X以及非格式化数据B和C,目标物理块是空块。如图5b所示,存储设备100将第一源物理块的非格式化数据A以及第二源物理块的非格式化数据B和C复制到目标物理块,复制完成后,目标物理块中存储有非格式化数据A’、B’和C’。如图5c所示,在复制完成之后,第一源物理块和第二源物理块的全部数据都被确认为垃圾数据,存储设备100擦除第一源物理块和第二源物理块中的全部数据,即删除垃圾数据。如图5d所示,在擦除完成之后,第一源物理块和第二源物理块都变成空块,非格式化数据A’、B’和C’都保存在目标物理块中。
从图4所示的格式化操作和图5a至图5d所示的垃圾回收操作可知:
1,存储设备100的格式化操作时间较长。
当对存储设备100(比如UFS设备)进行格式化操作时,存储设备100的主控制器140从闪存存储器120中加载格式化数据的映射表,再修改格式化数据的映射表,将格式化数据的PBA标记为无效地址,以及将修改后的格式化数据的映射表存储到闪存存储器120中,并更新闪存存储器120中各个物理块的有效标志位。整个格式化操作的过程时间较长,流程比较复杂。
2,存储设备100的格式化操作影响读写性能。
存储设备100的格式化操作只更新映射表,存储设备100的物理块中仍然保存有非格式化数据和被确认为垃圾数据的格式化数据。当对存储设备100进行读取/写入操作时,如果存储设备100的物理块的存储空间不足,则需要通过垃圾回收操作删除物理块中的垃圾数据,导致读取/写入操作的时间较长,从而影响到存储设备100的读写性能。
3,存储设备100的格式化操作造成存储设备100的写入放大(WriteAmplification,WA),减少存储设备100的寿命。
可以理解,写入放大是存储设备100的一种不良现象,即实际写入的数据量是期望写入的数据量的多倍。
当对存储设备100(比如UFS设备)进行格式化操作时,格式化数据的映射表被不断地加载和写入,造成存储设备100的写入放大,从而减少存储设备100的寿命。
基于此,本申请提供一种存储设备的格式化方法及相关设备,通过迁移第一块中的非格式化数据,修改非格式化数据的第一映射表,以及擦除第一块中的全部数据,不需要加载格式化数据的第二映射表,从而可以缩短格式化操作的时间,还可以减少存储设备的写入放大,从而增加存储设备的寿命。而且,在格式化操作的过程中进行垃圾回收操作,对存储设备的读写性能不会造成影响。
下面对本申请提供的格式化方法进行说明。
图6是本申请提供的格式化方法的流程图。
可参阅图6,格式化方法应用于存储设备100。如图6所示,格式化方法可以包括以下步骤:
S601,响应于格式化指令,根据第一映射表的索引值获取第一映射表。
其中,第一映射表包括非格式化数据的逻辑区块地址(LBA)与物理区块地址(PBA)。第一映射表用于记录非格式化数据的逻辑区块地址与物理区块地址之间的映射关系。
第一映射表的索引值用于查找第一映射表的存储位置。第一映射表的索引值存储在存储设备100的缓冲存储器130中,第一映射表存储在存储设备100的闪存存储器120中。
在本实施例中,存储设备100首先从主机200接收格式化指令,然后响应于格式化指令,从缓冲存储器130中获取第一映射表的索引值,接着根据第一映射表的索引值从闪存存储器120中获取第一映射表。
在一些实施例中,非格式化数据包括重放保护存储块(RPMB)数据。
S602,根据第一映射表和非格式化数据的逻辑区块地址获取非格式化数据。
在一些实施例中,格式化指令可包括非格式化数据的逻辑区块地址。当存储设备100从主机200接收格式化指令时,可从格式化指令中获取非格式化数据的逻辑区块地址。
在另一些实施例中,主机200在向存储设备100发送格式化指令之后,可继续向存储设备100发送非格式化数据的逻辑区块地址。存储设备100从主机200接收非格式化数据的逻辑区块地址。
在本实施例中,存储设备100在获取第一映射表和非格式化数据的逻辑区块地址之后,可基于第一映射表和非格式化数据的逻辑区块地址获取非格式化数据。
S603,将第一块中的非格式化数据迁移到第二块。
在本实施例中,第一块和第二块均为物理块,第一块存储有非格式化数据,第二块为空块。
可以理解,本申请并不限定第一块和第二块的数目。在本实施例中,第一块和第二块的数目可以为一个或多个。
在一些实施例中,存储设备100可将第一块中的非格式化数据复制到第二块,从而完成数据迁移。
S604,根据第二块的逻辑区块地址与物理区块地址修改第一映射表。
在本实施例中,存储设备100在完成数据迁移之后,将第一映射表中第一块的逻辑区块地址与物理区块地址均修改为第二块的逻辑区块地址与物理区块地址。
S605,擦除第一块中的全部数据。
其中,第一块中的全部数据包括非格式化数据和格式化数据。
在本实施例中,存储设备100在修改完第一映射表之后,可进行垃圾回收操作,即擦除第一块中的全部数据。在格式化操作的过程中及时擦除第一块中的全部数据,不会影响后续对第一块进行写入操作,可有效地利用存储设备100的存储空间。
S606,向主机200发送格式化完成的消息。
其中,格式化完成的消息用于通知主机200本次格式化操作完成。
在本实施例中,存储设备100在进行垃圾回收操作之后,向主机200发送格式化完成的消息。
S607,删除第二映射表的索引值。
其中,第二映射表包括格式化数据的逻辑区块地址与物理区块地址。第二映射表用于记录格式化数据的逻辑区块地址与物理区块地址之间的映射关系。
第二映射表的索引值用于查找第二映射表的存储位置。第二映射表的索引值存储在存储设备100的缓冲存储器130中,第二映射表存储在存储设备100的闪存存储器120中。
在本实施例中,存储设备100可先从缓冲存储器130中获取第二映射表的索引值,然后删除第二映射表的索引值,从而无法通过第二映射表的索引值查找到第二映射表。因为存储设备100无法通过第二映射表的索引值查找到第二映射表,所以存储设备100可确认格式化数据已被删除,而实际的垃圾回收操作通过执行步骤S605来完成。
可以理解,本实施例并不限定图6所示的步骤的执行顺序。在其他实施例中,存储设备100可以在执行完步骤S606之后再执行步骤S603或S604或S605,存储设备100也可以在执行完步骤S607之后再执行步骤S602或S603或S604或S605或S606。
图7是图6所示的步骤S602的子步骤流程图。
可参阅图7,根据第一映射表和非格式化数据的逻辑区块地址获取非格式化数据,具体可以包括以下步骤:
S701,根据第一映射表和非格式化数据的逻辑区块地址获取非格式化数据的物理区块地址。
在本实施例中,存储设备100可根据非格式化数据的逻辑区块地址在第一映射表中查询对应的物理区块地址。
S702,确定非格式化数据的物理区块地址是否有效。
在一些实施例中,物理块包括有效标志位,有效标志位用于确定物理块的物理区块地址是否为有效地址。存储设备100通过查询物理块的有效标志位,可确定物理块的物理区块地址是否有效。
在本实施例中,若非格式化数据的物理区块地址有效,则执行步骤S703;若否,则结束。
S703,根据非格式化数据的物理区块地址获取非格式化数据。
在本实施例中,当存储设备100确定非格式化数据的物理区块地址有效时,可根据非格式化数据的物理区块地址查询到存储有非格式化数据的第一块,然后从第一块中获取非格式化数据。
可以理解,当存储设备100确定非格式化数据的物理区块地址无效时,说明无效的物理区块地址对应的物理块中的非格式化数据已被删除。
图8是图7所示的步骤S702的子步骤流程图。
可参阅图8,确定非格式化数据的物理区块地址是否有效,具体可以包括以下步骤:
S801,查询第一块的有效标志位。
S802,确定第一块的有效标志位是否包含有效标志。
在本实施例中,第一块存储有非格式化数据。第一块包括有效标志位,有效标志位可包括有效标志或无效标志。其中,有效标志用于表示第一块的物理区块地址为有效地址,无效标志用于表示第一块的物理区块地址为无效地址。
可以理解,当存储设备100确定第一块的有效标志位包含有效标志时,可确定第一块的物理区块地址有效。当存储设备100确定第一块的有效标志位包含无效标志时,可确定第一块的物理区块地址无效。
下面以实施例1和实施例2为例对本申请提供的格式化方法进行说明。实施例1和实施例2提供的格式化方法均应用于存储设备100。
实施例1
图9是本申请实施例1提供的格式化方法的流程图。
如图9所示,格式化方法可以包括以下步骤:
S901,通过前端模块1001从主机200接收格式化指令。
S902,通过前端模块1001识别格式化指令。
可以理解,步骤S901至S902的具体实施方式与图4所示的步骤S401至S402相同,此处不再赘述。
S903,通过闪存转换层1002查询第一映射表。
在本实施例中,闪存转换层1002可区分第一映射表和第二映射表。第一映射表用于记录非格式化数据的逻辑区块地址与物理区块地址之间的映射关系。第二映射表用于记录格式化数据的逻辑区块地址与物理区块地址之间的映射关系。
S904,通过后端模块1003从第一映射表中获取第一块中的非格式化数据。
S905,通过后端模块1003将第一块中的非格式化数据迁移到第二块。
S906,通过闪存转换层1002修改第一映射表。
可以理解,步骤S904至S906的具体实施方式与图6所示的步骤S602至S604大致相同,此处不再赘述。
S907,通过闪存转换层1002删除第二映射表的索引值。
可以理解,步骤S907的具体实施方式与图6所示的步骤S607相同,此处不再赘述。
S908,通过前端模块1001向主机200发送格式化操作的结果。
在本实施例中,格式化操作的结果可包括格式化完成的消息。
实施例2
图10a至图10d是本申请实施例2提供的格式化方法的示意图。
具体地,图10a是存储设备100查询源物理块(即第一块)和目标物理块(即第二块)的示意图,图10b是存储设备100将源物理块的非格式化数据迁移到目标物理块的示意图,图10c是存储设备100擦除源物理块的全部数据的示意图,图10d是存储设备100完成数据迁移的示意图。
如图10a所示,存储设备100根据各个物理块的有效标志位查询到第一源物理块、第二源物理块和目标物理块,其中,第一源物理块包括格式化数据X和非格式化数据RPMB1,第二源物理块包括格式化数据X以及非格式化数据RPMB2和RPMB3,目标物理块是空块。
如图10b所示,存储设备100将第一源物理块的非格式化数据RPMB1以及第二源物理块的非格式化数据RPMB2和RPMB3复制到目标物理块,复制完成后,目标物理块中存储有非格式化数据RPMB1’、RPMB2’和RPMB3’。
如图10c所示,在复制完成之后,第一源物理块和第二源物理块的全部数据都被确认为垃圾数据,存储设备100擦除第一源物理块和第二源物理块中的全部数据,即删除垃圾数据。
如图10d所示,在擦除完成之后,第一源物理块和第二源物理块都变成空块,非格式化数据RPMB1’、RPMB2’和RPMB3’都保存在目标物理块中。
图11是本申请提供的电子设备10的结构示意图。
可参阅图11,电子设备10可以包括处理器11和存储器12。其中,处理器11可以执行存储于存储器12中的计算机程序或代码,实现本申请实施例的格式化方法。
处理器11可以包括一个或多个处理单元。例如,处理器11可以包括,但不限于应用处理器(Application Processor,AP)、调制解调处理器、图形处理器(GraphicsProcessing Unit,GPU)、图像信号处理器(Image Signal Processor,ISP)、控制器、视频编解码器、数字信号处理器(Digital Signal Processor,DSP)、基带处理器、神经网络处理器(Neural-Network Processing Unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
处理器11中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器11中的存储器为高速缓冲存储器。该存储器可以保存处理器11刚用过或循环使用的指令或数据。如果处理器11需要再次使用该指令或数据,可从所述存储器中直接调用。
在一些实施例中,处理器11可以包括一个或多个接口。接口可以包括,但不限于集成电路(Inter-Integrated Circuit,I2C)接口、集成电路内置音频(Inter-IntegratedCircuit Sound,I2S)接口、脉冲编码调制(Pulse Code Modulation,PCM)接口、通用异步收发传输器(Universal Asynchronous Receiver/Transmitter,UART)接口、移动产业处理器接口(Mobile Industry Processor Interface,MIPI)、通用输入输出(General-PurposeInput/Output,GPIO)接口、用户标识模块(Subscriber Identity Module,SIM)接口、通用串行总线(Universal Serial Bus,USB)接口等。
可以理解,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备10的结构限定。在本申请另一些实施例中,电子设备10也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
存储器12可以包括外部存储器接口和内部存储器。其中,外部存储器接口可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备10的存储能力。外部存储卡通过外部存储器接口与处理器11通信,实现数据存储功能。内部存储器可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(例如声音播放功能、图像播放功能等)等。存储数据区可存储电子设备10使用过程中所创建的数据(例如音频数据、图像数据等)等。此外,内部存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件或通用闪存存储器(UFS)等。处理器11通过运行存储在内部存储器的指令,和/或存储在设置于处理器11中的存储器的指令,执行电子设备10的各种功能应用以及数据处理,例如实现本申请实施例的格式化方法。
可以理解,本申请实施例示意的结构并不构成对电子设备10的具体限定。在本申请另一些实施例中,电子设备10可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
电子设备10可以包括,但不限于智能电话、平板电脑、个人计算机(PC)、电子书阅读器、工作站、服务器、个人数字助理(PDA)、便携式多媒体播放器(Portable MultimediaPlayer,PMP)、移动医疗设备、相机和可穿戴设备中的至少一个。所述可穿戴设备包括附件类型(例如,手表、戒指、手镯、脚链、项链、眼镜、隐形眼镜或头戴式设备(Head-MountedDevice,HMD))、织物或服装集成类型(例如电子服装)、身体安装类型(例如皮肤垫或纹身)以及生物可植入类型(例如可植入电路)中的至少一种。
本申请还提供一种存储介质,用于存储计算机程序或代码,当所述计算机程序或代码被处理器执行时,实现本申请实施例的格式化方法。
存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。存储介质包括,但不限于随机存取存储器(Random Access Memory,RAM)、只读存储器(Read-OnlyMemory,ROM)、带电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、闪存或其它存储器、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、数字通用光盘(Digital Versatile Disc,DVD)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其它的介质。
上面结合附图对本申请实施例作了详细说明,但是本申请不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本申请宗旨的前提下做出各种变化。

Claims (9)

1.一种存储设备的格式化方法,其特征在于,所述格式化方法包括:
响应于格式化指令,根据第一映射表和非格式化数据的逻辑区块地址获取所述非格式化数据,所述第一映射表用于记录所述非格式化数据的所述逻辑区块地址与物理区块地址之间的映射关系;
将第一块中的所述非格式化数据迁移到第二块,所述第二块为空块;
根据所述第二块的逻辑区块地址与物理区块地址修改所述第一映射表;
擦除所述第一块中的全部数据;
删除第二映射表的索引值,所述第二映射表用于记录格式化数据的逻辑区块地址与物理区块地址之间的映射关系。
2.如权利要求1所述的格式化方法,其特征在于,所述将第一块中的所述非格式化数据迁移到第二块,包括:
将所述第一块中的所述非格式化数据复制到所述第二块。
3.如权利要求1所述的格式化方法,其特征在于,所述根据第一映射表和非格式化数据的逻辑区块地址获取所述非格式化数据,包括:
根据所述第一映射表和所述非格式化数据的逻辑区块地址获取所述非格式化数据的物理区块地址;
确定所述物理区块地址有效;
根据所述物理区块地址获取所述非格式化数据。
4.如权利要求3所述的格式化方法,其特征在于,所述确定所述物理区块地址有效,包括:
查询所述第一块的有效标志位;
确定所述有效标志位是否包含有效标志;
若所述有效标志位包含所述有效标志,则确定所述第一块的所述物理区块地址有效。
5.如权利要求1所述的格式化方法,其特征在于,在根据第一映射表和非格式化数据的逻辑区块地址获取所述非格式化数据之前,所述格式化方法还包括:
根据所述第一映射表的索引值获取所述第一映射表。
6.如权利要求1所述的格式化方法,其特征在于,在擦除所述第一块中的全部数据之后,所述格式化方法还包括:
向主机发送格式化完成的消息。
7.如权利要求1所述的格式化方法,其特征在于,所述非格式化数据包括重放保护存储块数据。
8.一种电子设备,包括处理器和存储器,其特征在于,所述处理器执行存储于所述存储器中的计算机程序或代码,实现如权利要求1至7中任一项所述的格式化方法。
9.一种存储介质,用于存储计算机程序或代码,其特征在于,当所述计算机程序或代码被处理器执行时,实现如权利要求1至7中任一项所述的格式化方法。
CN202210978521.9A 2022-08-16 2022-08-16 存储设备的格式化方法及相关设备 Active CN115469801B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210978521.9A CN115469801B (zh) 2022-08-16 2022-08-16 存储设备的格式化方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210978521.9A CN115469801B (zh) 2022-08-16 2022-08-16 存储设备的格式化方法及相关设备

Publications (2)

Publication Number Publication Date
CN115469801A CN115469801A (zh) 2022-12-13
CN115469801B true CN115469801B (zh) 2023-06-06

Family

ID=84366220

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210978521.9A Active CN115469801B (zh) 2022-08-16 2022-08-16 存储设备的格式化方法及相关设备

Country Status (1)

Country Link
CN (1) CN115469801B (zh)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102622309B (zh) * 2011-01-30 2016-03-30 华为数字技术(成都)有限公司 数据安全擦除方法及装置
TWI563383B (en) * 2012-04-25 2016-12-21 Phison Electronics Corp Memory formatting method, memory controller and memory storage apparatus
CN113126905A (zh) * 2019-12-30 2021-07-16 美光科技公司 用于重放受保护存储器块的安全密钥更新

Also Published As

Publication number Publication date
CN115469801A (zh) 2022-12-13

Similar Documents

Publication Publication Date Title
US10976928B2 (en) Remove-on-delete technologies for solid state drive optimization
US10007468B2 (en) Method and apparatus for erasing data in data section in flash memory
US9053007B2 (en) Memory system, controller, and method for controlling memory system
US8166233B2 (en) Garbage collection for solid state disks
US9940040B2 (en) Systems, solid-state mass storage devices, and methods for host-assisted garbage collection
CA2673434C (en) Memory device performance enhancement through pre-erase mechanism
TWI423024B (zh) 用於快閃記憶體的資料儲存方法及其控制器與儲存系統
US9223696B2 (en) Data storage device for holding erasure of victim block having valid page copied to merge block and method of operating the same
US10048884B2 (en) Method for erasing data entity in memory module
JP2008198208A (ja) ホストデータ処理装置の動作方法、ホストデータ処理装置並びにデータ格納装置
US11204864B2 (en) Data storage devices and data processing methods for improving the accessing performance of the data storage devices
CN109697170B (zh) 存取闪存模块的方法及相关的闪存控制器与电子装置
KR20200116704A (ko) 메모리 시스템 및 그것의 동작방법
CN112764669B (zh) 一种硬件加速器
CN112765055B (zh) 存储设备的控制部件
US9483195B2 (en) Response reading method and data transmission system
WO2020103468A1 (zh) 基于闪存的垃圾处理的方法、固态硬盘以及存储装置
CN113885808A (zh) 映射信息记录方法以及存储器控制电路单元与存储装置
CN115469801B (zh) 存储设备的格式化方法及相关设备
CN110058938B (zh) 一种内存处理方法、装置、电子设备和可读介质
KR20160022007A (ko) 컴퓨터 장치 및 저장 장치
US11307786B2 (en) Data storage devices and data processing methods
CN116368472A (zh) 数据处理方法及相关设备
US20210303212A1 (en) Data processing method and memory controller utilizing the same
US11941246B2 (en) Memory system, data processing system including the same, and operating method 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