CN111142792B - 一种存储装置的掉电保护方法 - Google Patents

一种存储装置的掉电保护方法 Download PDF

Info

Publication number
CN111142792B
CN111142792B CN201911299445.3A CN201911299445A CN111142792B CN 111142792 B CN111142792 B CN 111142792B CN 201911299445 A CN201911299445 A CN 201911299445A CN 111142792 B CN111142792 B CN 111142792B
Authority
CN
China
Prior art keywords
data
log
flush tag
system data
stored
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
CN201911299445.3A
Other languages
English (en)
Other versions
CN111142792A (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.)
Yaoyun Technology Xi'an Co ltd
Original Assignee
Yaoyun Technology Xi'an 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 Yaoyun Technology Xi'an Co ltd filed Critical Yaoyun Technology Xi'an Co ltd
Priority to CN201911299445.3A priority Critical patent/CN111142792B/zh
Publication of CN111142792A publication Critical patent/CN111142792A/zh
Application granted granted Critical
Publication of CN111142792B publication Critical patent/CN111142792B/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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • G11C5/148Details of power up or power down circuits, standby circuits or recovery circuits
    • 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)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Power Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明适用于数据存储安全技术领域,提供了一种存储装置的掉电保护方法。一种存储装置的掉电保护方法,该方法包括:数据存储过程分割为Flush Tag阶段;Flush Tag结束前完整保存数据;Flush Tag结束时生成并保存日志;Flush Tag的块预分配和限制使用;基于日志扫描最新日志并获取Flush Tag;基于该最新日志扫描并加载***数据;基于该最新日志获取块资源,扫描并恢复有效主机数据和***数据。本发明可以提高数据存储的安全性,并确保在极端无电容情况下保护数据的完整性和一致性。

Description

一种存储装置的掉电保护方法
技术领域
本发明适用于数据存储安全技术领域,提供了一种存储装置的掉电保护方法。
背景技术
鉴于Host以Sector为最小读写单元,而NAND以Page(常见为16KB)为读写单元,并无法复写的特性,FTL成为了主流技术实现主机命令逻辑地址至物理地址的映射。以NAND为例的多种NVM介质的存储设备,除了需要完整的保存主机读写的数据以外,还需要保存FTL在内的各种***数据。
主机电源故障、带电插拔等异常掉电事件发生时,有效的数据保护需要保存Cache中的完整主机数据和用户数据,两者缺一不可。
传统的技术方案,异常掉电时,需要借助电容或电池等续航,同步存储Cache中的主机数据和用户数据;并在再次上电时,对主机数据和用户数据实际存储的情况做对齐操作,以避免发生数据部分丢失或数据出错等问题。其异常掉电时需要存储的数据量多,并且上电重建操作复杂,耗时长。
发明内容
本发明旨在针对上述问题,提出一种不依赖于电容或电池续航能力,保护写入NVM的主机数据和对应***数据的方法,以及快速启动的方法。
本发明的技术方案在于:
一种存储装置的掉电保护方法,存储的数据包括主机数据和***数据;该方法如下:
数据存储阶段:
(1)数据存储过程被分割成不同Flush Tag号的阶段,且每个阶段的结束点均确保数据被完整地存储在NVM中;
(2)上述每个Flush Tag的数据存储完成后,会对应生成日志,该日志也存储在NVM中;其中,数据以及日志在NVM中有其对应的存储区域,主机数据存储于主机数据存储区域,***数据存储于***数据存储区域,日志存储于日志存储区域;
(3)在本Flush Tag阶段内,主机数据仅可以被存储在其对应的可用的块资源中;当可用的块资源用尽时,会触发结束本Flush Tag阶段;为后一个Flush Tag阶段分配的Flush Tag必须大于前一个Flush Tag阶段的Flush Tag;
数据恢复阶段:
(4)存储装置上电时,在日志存储区域扫描日志,确定最新的日志和其对应的Flush Tag;在确定最新的日志后,基于该最新的日志及其对应的Flush Tag,在***数据存储区域中扫描该最新的日志所对应的***数据,获得其***数据的有效存储位置;
(5)扫描上述获得的***数据的有效存储位置,读取并加载各***表项,完成对该最新的日志及其对应的Flush Tag阶段结束点的完整***数据的恢复;
(6)读取下一个Flush Tag的块资源信息,在该块资源范围中扫描是否存在有效主机数据;若无主机数据,则无需更新***数据;若存在有效主机数据,则恢复该主机数据对应的该***数据;
(7)***数据恢复完成,上电处理完毕。
优选地,所述***数据包括FTL、BBT等所有主机数据以外的有用数据,包含并不局限于: NVM资源管理数据、 NVM中的坏块数据、 NVM中有效/无效page的标识、 NVM使用寿命数据、映射表数据及***运行数据。
优选地,所述NVM为非易失性存储器,包括并不局限于NOR、NAND、MRAM及PCM。
优选地,所述存储的主机数据和***数据中均包含其对应的Flush Tag。用以确认其归属于哪个Flush Tag。
优选地,所述每个Flush Tag阶段可用的块资源,在前一个Flush Tag的日志生成时被预分配,并存储在NVM中。
优选地,所述主机数据在存储时均会包含其对应的***数据的摘要。该***数据摘要用于描述该主机数据的对应***数据信息,包括并不限于主机数据的对应逻辑地址。
本发明的技术效果在于:
本发明提出的方法将数据存储过程分割为Flush Tag阶段;Flush Tag结束前完整保存数据;Flush Tag结束时生成并保存日志;Flush Tag的块预分配和限制使用;基于日志扫描最新日志并获取Flush Tag;基于该最新日志扫描并加载***数据;基于该最新日志获取块资源,扫描并恢复有效主机数据和***数据。本发明可以提高数据存储的安全性,并确保在极端无电容情况下保护数据的完整性和一致性。
附图说明
图1为每个Flush Tag的日志的存储示意图。
图2为每个***数据的存储示意图。
图3为每个Flush Tag阶段分配的可用的块资源,以及其在每个Flush Tag阶段内使用过程的示意图。
图4为该存储装置上电的处理流程图。
具体实施方式
以下将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
一种存储装置的掉电保护方法,该过程如下:
数据存储阶段:
(1)数据存储过程被分割成不同Flush Tag号的阶段,且每个阶段的结束点均确保数据被完整地存储在NVM中;所述存储的主机数据和***数据中均包含其对应的FlushTag。用以确认其归属于哪个Flush Tag。所述主机数据在存储时均会包含其对应的***数据的摘要。该***数据摘要用于描述该主机数据的对应***数据信息,包括并不限于主机数据的对应逻辑地址;
(2)上述每个Flush Tag的数据存储完成后,会对应生成日志,该日志也存储在NVM中;其中,数据以及日志在NVM中有其对应的存储区域,主机数据存储于主机数据存储区域,***数据存储于***数据存储区域,日志存储于日志存储区域;
(3)在本Flush Tag阶段内,主机数据仅可以被存储在其对应的可用的块资源中;所述每个Flush Tag阶段可用的块资源,在前一个Flush Tag的日志生成时被预分配,并存储在NVM中。当可用的块资源用尽时,会触发结束本Flush Tag阶段;为后一个Flush Tag阶段分配的Flush Tag必须大于前一个Flush Tag阶段的Flush Tag;
数据恢复阶段:
(4)存储装置上电时,在日志存储区域扫描日志,确定最新的日志和其对应的Flush Tag;在确定最新的日志后,基于该最新的日志及其对应的Flush Tag,在***数据存储区域中扫描该最新的日志所对应的***数据,获得其***数据的有效存储位置;
(5)扫描上述获得的***数据的有效存储位置,读取并加载各***数据,完成对该最新的日志及其对应的Flush Tag阶段结束点的完整***数据的恢复;
(6)读取下一个Flush Tag的块资源信息,在该块资源范围中扫描是否存在有效主机数据;若无主机数据则无需更新***数据;若存在有效主机数据,则通过读取每笔数据的***数据摘要信息以恢复该主机数据对应的该***数据;
(7)***数据恢复完成,上电处理完毕。
其中,所述***数据包括FTL、BBT等所有主机数据以外的有用数据,包含并不局限于: NVM资源管理数据、 NVM中的坏块数据、 NVM中有效/无效page的标识、 NVM使用寿命数据、映射表数据及***运行数据。所述NVM为非易失性存储器,包括并不局限于NOR、NAND、MRAM及PCM。

Claims (6)

1.一种存储装置的掉电保护方法,其存储的数据包括主机数据和***数据;其特征在于:该方法如下:
数据存储阶段:
(1)数据存储过程被分割成不同Flush Tag号的阶段,且每个阶段的结束点均确保数据被完整地存储在NVM中;
(2)每个Flush Tag的数据存储完成后,会对应生成日志,该日志也存储在NVM中;其中,数据以及日志在NVM中有其对应的存储区域,主机数据存储于主机数据存储区域,***数据存储于***数据存储区域,日志存储于日志存储区域;
(3)在本Flush Tag阶段内,主机数据仅可以被存储在其对应的可用的块资源中;每个Flush Tag阶段可用的块资源,在前一个Flush Tag的日志生成时被预分配,并存储在NVM中;当可用的块资源用尽时,会触发结束本Flush Tag阶段;为后一个Flush Tag阶段分配的Flush Tag必须大于前一个Flush Tag阶段的Flush Tag;
数据恢复阶段:
(4)存储装置上电时,在日志存储区域扫描日志,确定最新的日志和其对应的FlushTag;在确定最新的日志后,基于该最新的日志及其对应的Flush Tag,在***数据存储区域中扫描该最新的日志所对应的***数据,获得其***数据的有效存储位置;
(5)扫描上述获得的***数据的有效存储位置,读取并加载各***表项,完成对该最新的日志及其对应的Flush Tag阶段结束点的完整***数据的恢复;
(6)读取下一个Flush Tag的块资源信息,在该块资源范围中扫描是否存在有效主机数据;若无主机数据,则无需更新***数据;若存在有效主机数据,则恢复该主机数据对应的该***数据;
(7)***数据恢复完成,上电处理完毕。
2.根据权利要求1所述存储装置的掉电保护方法,其特征在于:所述***数据包括所有主机数据以外的有用数据,包括NVM资源管理数据、 NVM中的坏块数据、 NVM中有效/无效page的标识、 NVM使用寿命数据、映射表数据及***运行数据。
3.根据权利要求1所述存储装置的掉电保护方法,其特征在于:所述NVM为非易失性存储器,包括NOR、NAND、MRAM及PCM。
4.根据权利要求1所述存储装置的掉电保护方法,其特征在于:所述存储的主机数据和***数据中均包含其对应的Flush Tag。
5.根据权利要求1所述存储装置的掉电保护方法,其特征在于:所述主机数据在存储时均会包含其对应的***数据的摘要信息。
6.根据权利要求1所述存储装置的掉电保护方法,其特征在于:所述(6)中,若存在有效主机数据,则读取该数据的***数据的摘要信息以恢复该***数据。
CN201911299445.3A 2019-12-17 2019-12-17 一种存储装置的掉电保护方法 Active CN111142792B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911299445.3A CN111142792B (zh) 2019-12-17 2019-12-17 一种存储装置的掉电保护方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911299445.3A CN111142792B (zh) 2019-12-17 2019-12-17 一种存储装置的掉电保护方法

Publications (2)

Publication Number Publication Date
CN111142792A CN111142792A (zh) 2020-05-12
CN111142792B true CN111142792B (zh) 2022-11-22

Family

ID=70518550

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911299445.3A Active CN111142792B (zh) 2019-12-17 2019-12-17 一种存储装置的掉电保护方法

Country Status (1)

Country Link
CN (1) CN111142792B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111753337B (zh) * 2020-07-02 2023-02-21 上海电器科学研究所(集团)有限公司 一种储能电池管理***意外断电soc处理方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102789431A (zh) * 2012-06-29 2012-11-21 记忆科技(深圳)有限公司 数据保护方法和***
CN104035893A (zh) * 2014-06-30 2014-09-10 浪潮(北京)电子信息产业有限公司 一种在计算机异常掉电时的数据保存方法
CN106294217A (zh) * 2016-08-16 2017-01-04 浪潮(北京)电子信息产业有限公司 一种ssd***及其掉电保护方法
CN106502928A (zh) * 2016-09-29 2017-03-15 华为技术有限公司 一种存储***掉电保护方法、存储控制器及电子设备
CN106776130A (zh) * 2016-11-30 2017-05-31 华为技术有限公司 一种日志恢复方法、存储装置和存储节点

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7272745B2 (en) * 2004-06-30 2007-09-18 Intel Corporation Data protection system
US8615681B2 (en) * 2010-12-14 2013-12-24 Western Digital Technologies, Inc. System and method for maintaining a data redundancy scheme in a solid state memory in the event of a power loss
CN107038131A (zh) * 2016-02-04 2017-08-11 广明光电股份有限公司 固态硬盘断电保护装置及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102789431A (zh) * 2012-06-29 2012-11-21 记忆科技(深圳)有限公司 数据保护方法和***
CN104035893A (zh) * 2014-06-30 2014-09-10 浪潮(北京)电子信息产业有限公司 一种在计算机异常掉电时的数据保存方法
CN106294217A (zh) * 2016-08-16 2017-01-04 浪潮(北京)电子信息产业有限公司 一种ssd***及其掉电保护方法
CN106502928A (zh) * 2016-09-29 2017-03-15 华为技术有限公司 一种存储***掉电保护方法、存储控制器及电子设备
WO2018059361A1 (zh) * 2016-09-29 2018-04-05 华为技术有限公司 一种存储***掉电保护方法、存储控制器及电子设备
CN106776130A (zh) * 2016-11-30 2017-05-31 华为技术有限公司 一种日志恢复方法、存储装置和存储节点

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A high security and efficiency protection of confidentiality and integrity for off-chip memory;Su, Yang等;《Journal of Ambient Intelligence and Humanized Computing》;20190731;第2633-2643页 *
一种基于Nandflash的实时数据存储方案设计;李秋华等;《工业控制计算机》;20160731(第07期);第70-71页 *

Also Published As

Publication number Publication date
CN111142792A (zh) 2020-05-12

Similar Documents

Publication Publication Date Title
TWI444825B (zh) 記憶體儲存裝置、記憶體控制器與資料寫入方法
US9104329B2 (en) Mount-time reconciliation of data availability
US10909030B2 (en) Enhanced trim command support for solid state drives
CN103577121B (zh) 一种基于Nand Flash的高可靠线性文件存取方法
US7711923B2 (en) Persistent flash memory mapping table
US20180275887A1 (en) Data Storage Device and Operating Method of Data Storage Device
CN103577574B (zh) 一种基于nand flash的高可靠线性文件***
EP2570927B1 (en) Handling unclean shutdowns for a system having non-volatile memory
TWI645404B (zh) 資料儲存裝置以及非揮發式記憶體操作方法
US10997039B2 (en) Data storage device and operating method thereof
US10838629B2 (en) Solid state device with fast boot after ungraceful shutdown
TW200929224A (en) Data writing method for flash memory and controller thereof
US10459803B2 (en) Method for management tables recovery
TWI498738B (zh) 檔案保護方法與系統及其記憶體控制器與記憶體儲存裝置
US20150074336A1 (en) Memory system, controller and method of controlling memory system
TW201945935A (zh) 整理指令記錄方法、記憶體控制電路單元與記憶體儲存裝置
JP2007011872A (ja) メモリカードとその制御方法
CN111142792B (zh) 一种存储装置的掉电保护方法
TW201403323A (zh) 記憶體儲存裝置及其修復方法
CN103578566B (zh) 存储器存储装置及其修复方法
KR20190006687A (ko) 데이터 저장 장치 및 그것의 동작 방법
CN109002265B (zh) 一种数据处理的方法以及相关装置
TWI354892B (en) Method of immediate data update with flash memory
CN117093505A (zh) 命令处理方法、日志处理方法及存储设备
CN112764671A (zh) 存储设备的元数据聚合处理方法及存储设备

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
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A power-off protection method for storage devices

Granted publication date: 20221122

Pledgee: Bank of China Limited Xi'an Chang'an District Branch

Pledgor: Yaoyun Technology (Xi'an) Co.,Ltd.

Registration number: Y2024610000090