CN106910528B - Optimization method and device for data inspection of solid state disk - Google Patents

Optimization method and device for data inspection of solid state disk Download PDF

Info

Publication number
CN106910528B
CN106910528B CN201710110256.1A CN201710110256A CN106910528B CN 106910528 B CN106910528 B CN 106910528B CN 201710110256 A CN201710110256 A CN 201710110256A CN 106910528 B CN106910528 B CN 106910528B
Authority
CN
China
Prior art keywords
data
physical page
inspection
polling
physical
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
CN201710110256.1A
Other languages
Chinese (zh)
Other versions
CN106910528A (en
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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201710110256.1A priority Critical patent/CN106910528B/en
Publication of CN106910528A publication Critical patent/CN106910528A/en
Application granted granted Critical
Publication of CN106910528B publication Critical patent/CN106910528B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check

Abstract

The invention discloses an optimization method and a device for data inspection of a solid state disk, wherein the method comprises the following steps: acquiring temperature information of the SSD, and updating a polling trigger period according to the Nand flash data holding time and the temperature information; performing data inspection according to the updated inspection trigger period; searching a physical page containing valid data; and carrying out ECC error check on the physical page, and carrying out data transfer on the physical page if the number of error bits in the physical page exceeds a preset threshold value. The method improves data reliability.

Description

Optimization method and device for data inspection of solid state disk
Technical Field
The invention relates to the technical field of computer storage, in particular to an optimization method and device for data inspection of a solid state disk.
Background
Currently, with the development of cloud computing, internet of things and semiconductor technology, solid state disks are widely used in various computing devices as a new generation of storage. Due to the physical characteristics of the Nand Flash memory, bit flipping and bad block errors are easily caused, and data inspection on the solid state disk SSD is necessary.
The current data inspection method for the solid state disk comprises the following steps: 1. determining a polling period; 2. and triggering the inspection regularly. When the existing data inspection method is actually used, the influence of the actual running state of the system on the SSD data retention time is not considered, the problem of insufficient inspection is easily caused when the system temperature is high, the problem of over-frequency inspection is easily caused when the system temperature is low, the influence on the reading and writing performance of a user is not considered, and the reading and writing delay is easily increased. Under these circumstances, data routing inspection cannot guarantee data reliability, and read-write performance is reduced, so how to improve data reliability is an urgent problem to be solved.
Disclosure of Invention
The invention aims to provide an optimization method and device for data inspection of a solid state disk, so as to improve the reliability of data.
In order to solve the technical problem, the invention provides an optimization method for data inspection of a solid state disk, which comprises the following steps:
acquiring temperature information of the SSD, and updating a polling trigger period according to the Nand flash data holding time and the temperature information;
triggering data inspection according to the updated inspection triggering period;
searching a physical page containing valid data;
and carrying out ECC error check on the physical page, and carrying out data transfer on the physical page if the number of error bits in the physical page exceeds a preset threshold value.
Preferably, the triggering data polling according to the updated polling trigger cycle includes:
and judging whether to trigger data inspection according to the updated inspection trigger period and the last inspection time, and if so, starting the data inspection.
Preferably, the searching for the physical page containing valid data includes:
and acquiring the state of the physical block, checking the effective data frame bitmap of the physical block if the state of the physical block is the used state, and finding out the physical page containing the effective data.
Preferably, the performing ECC error check on the physical page, and if the number of error bits in the physical page exceeds a preset threshold, performing data transfer on the physical page includes:
performing ECC error check on the physical page, and searching an error bit in the physical page;
and judging whether the number of the error bits exceeds a preset threshold value or not, and if so, carrying out data transfer on the physical page.
The invention also provides an optimization device for data inspection of the solid state disk, which is used for realizing the optimization method for data inspection of the solid state disk, and the device comprises the following components:
the updating module is used for acquiring the temperature information of the SSD and updating the polling trigger period according to the Nand flash data holding time and the temperature information;
the trigger module is used for triggering data polling according to the updated polling trigger period;
the searching module is used for searching a physical page containing valid data;
and the moving module is used for carrying out ECC error check on the physical page, and carrying out data moving on the physical page if the number of error bits in the physical page exceeds a preset threshold value.
Preferably, the triggering module is specifically configured to determine whether to trigger data inspection according to the updated inspection triggering period and the last inspection time, and if so, start data inspection.
Preferably, the searching module is specifically configured to obtain a state of the physical block, and if the state of the physical block is the used state, look up the effective data frame bitmap of the physical block, and search for the physical page including the effective data.
Preferably, the moving module includes:
the detection unit is used for carrying out ECC error check on the physical page and searching an error bit in the physical page;
and the judging unit is used for judging whether the number of the error bits exceeds a preset threshold value or not, and if so, carrying out data transfer on the physical page.
The invention provides an optimization method and device for data inspection of a solid state disk, which are used for acquiring temperature information of a Solid State Disk (SSD), and updating an inspection trigger period according to Nand flash data retention time and the temperature information; performing data inspection according to the updated inspection trigger period; searching a physical page containing valid data; and carrying out ECC error check on the physical page, and carrying out data transfer on the physical page if the number of error bits in the physical page exceeds a preset threshold value. Therefore, the temperature information is the system operation state, the Nand Flash data retention time is Nand Flash characteristic information, the polling trigger period is dynamically updated according to the system operation state and the Nand Flash characteristic, the polling trigger period is updated according to the temperature, the problem that insufficient polling is easily caused when the system temperature is high and the problem that frequent polling is easily caused when the system temperature is low are avoided, and the data reliability is improved. And ECC error check is carried out on the physical page, if the number of error bits in the physical page exceeds a preset threshold, the physical page is subjected to data movement, so that the physical page which possibly generates errors and contains effective data is moved, and the error bits are moved when the error bits exceed the threshold but are within a correctable range, so that the data reliability is ensured, the influence on the performance of reading and writing data of a user is low, and the influence on the performance of reading and writing data of the user is reduced.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
Fig. 1 is a flowchart of an optimization method for data inspection of a solid state disk according to the present invention;
FIG. 2 is a flowchart of updating a polling cycle;
FIG. 3 is a data inspection flow chart;
fig. 4 is a schematic structural diagram of an optimization apparatus for data inspection of a solid state disk according to the present invention.
Detailed Description
The core of the invention is to provide an optimization method and device for data inspection of a solid state disk, so as to improve the reliability of data.
In order to make the technical solutions of the present invention better understood, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Referring to fig. 1, fig. 1 is a flowchart of an optimization method for data inspection of a solid state disk, the method including:
s11: acquiring temperature information of the SSD, and updating the polling trigger period according to the Nand flash data holding time and the temperature information;
s12: triggering data inspection according to the updated inspection triggering period;
s13: searching a physical page containing valid data;
s14: and performing ECC error check on the physical page, and if the number of error bits in the physical page exceeds a preset threshold, performing data transfer on the physical page.
Therefore, in the method, the temperature information is the system operation state, the Nand Flash data retention time is the Nand Flash characteristic information, and the polling trigger period is dynamically updated according to the system operation state and the Nand Flash characteristic, so that the polling trigger period is updated according to the temperature, the problem that insufficient polling is easily caused when the system temperature is high and the problem that polling is frequently caused when the system temperature is low are avoided, and the data reliability is improved.
And the method carries out ECC error check on the physical page, and if the number of error bits in the physical page exceeds a preset threshold, the physical page is carried out data transfer, so that the physical page containing effective data which is possibly wrong is transferred, and the error bits are transferred when exceeding the threshold but being in a correctable range, thereby ensuring the reliability of the data, having lower influence on the performance of reading and writing the data of a user, and reducing the performance influence on the performance of reading and writing the data of the user.
Based on the above method, further, the process of step S12 specifically includes: and judging whether to trigger data inspection according to the updated inspection trigger period and the last inspection time, and if so, starting the data inspection.
Further, the process of step S13 specifically includes: and acquiring the state of the physical block, checking the effective data frame bitmap of the physical block if the state of the physical block is the used state, and finding out the physical page containing the effective data.
Further, the process of step S14 specifically includes: performing ECC error check on the physical page, and searching an error bit in the physical page; and judging whether the number of the error bits exceeds a preset threshold value or not, and if so, carrying out data transfer on the physical page. Among them, ECC (Error Correcting Code) is a technology capable of realizing Error checking and correction; the error bit represents an erroneous bit, i.e., an error code. The Nand flash is one of flash storage, has the advantages of large capacity, high rewriting speed and the like, and is suitable for storing a large amount of data.
In detail, the method improves the data reliability, dynamically updates the polling period and ensures the reading and writing performance of the user. The polling period is dynamically updated according to the system state, the polling read-write priority is low, the user read-write priority is high, the data reliability is improved, and the influence on the user read-write performance is low.
In the method, data inspection protects data integrity and avoids data loss; dynamically updating the polling period according to the system running state and the NandFlash characteristic; data is patrolled and read, and the influence on the read-write performance of a user is low. The method moves the data before the data is in error, and has lower influence on the performance of reading and writing the data by a user.
In detail, based on the method, the specific flow is as follows:
(1) determining whether to trigger data inspection according to the system state and the Nand Flash characteristic;
the method comprises the steps of obtaining state information such as SSD temperature, dynamically updating a trigger period according to data retention time and system state of Nand Flash, and judging whether polling is triggered according to last polling time and a new polling period, wherein the data retention time is data retention time. Fig. 2 is a flowchart of updating the polling cycle.
(2) Searching a physical page containing valid data;
wherein, according to the address stored in the Block information Block Info, the Block state, i.e. the state of the physical Block, is found; if the block state is used, the physical block is inspected, otherwise, the state of the next block is inspected; looking up valid data frame bitmap of the block, and finding out a physical page containing valid data, wherein the valid data frame bitmap represents a valid data frame bitmap.
(3) Sending a reading request to a Flash interface according to the physical page address of the last step;
(4) processing the read completion message;
the read completion message contains information of the number of ECC error bits, a threshold is set according to needs, if the threshold is exceeded, data transfer is performed on the physical page, and the number of the ECC error bits is the number of error bits in ECC error check, namely the number of error codes. Fig. 3 is a data inspection flow chart.
(5) Data moving;
and (4) reading the data in the flash into the RAM in the step (3), wherein the data only needs to be written into other blocks during the moving, and the original valid data frame bitmap is changed.
Specifically, the polling read-write command is at a low priority level compared with the user read-write command, and when the user read-write and the polling read-write coexist, the Flash interface preferentially responds to the user read-write.
Referring to fig. 4, fig. 4 is a schematic structural diagram of an optimization apparatus for data inspection of a solid state disk, which is provided by the present invention, and is used for implementing the optimization method for data inspection of a solid state disk, where the apparatus includes:
the updating module 101 is used for acquiring temperature information of the SSD and updating the polling trigger period according to the Nand flash data retention time and the temperature information;
the trigger module 102 is used for triggering data polling according to the updated polling trigger period;
the searching module 103 is used for searching a physical page containing valid data;
and the moving module 104 is configured to perform ECC error check on the physical page, and perform data moving on the physical page if the number of error bits in the physical page exceeds a preset threshold.
Therefore, in the device, the temperature information is the system operation state, the Nand Flash data retention time is the Nand Flash characteristic information, the polling trigger period is dynamically updated according to the system operation state and the Nand Flash characteristic, the polling trigger period is updated according to the temperature, the problem that insufficient polling is easily caused when the system temperature is high and the problem that polling is frequently caused when the system temperature is low are avoided, and the data reliability is improved.
And the device carries out ECC error check on the physical page, if the number of error bits in the physical page exceeds a preset threshold value, the physical page is carried out data transfer, thus carrying out data transfer on the physical page containing effective data which is likely to have errors, and carrying out data transfer when the error bits exceed the threshold value but are within a correctable range, thereby ensuring data reliability, having lower influence on the performance of reading and writing data of a user, and reducing the performance influence on the performance of reading and writing data of the user.
Based on the device, the triggering module is specifically used for judging whether to trigger data polling according to the updated polling triggering period and the last polling time, and if so, starting the data polling.
Further, the searching module is specifically configured to obtain a state of the physical block, and if the state of the physical block is the used state, look up the effective data frame bitmap of the physical block, and search for the physical page containing the effective data.
Further, the moving module comprises:
the detection unit is used for carrying out ECC error check on the physical page and searching an error bit in the physical page;
and the judging unit is used for judging whether the number of the error bits exceeds a preset threshold value or not, and if so, carrying out data transfer on the physical page.
In summary, the optimization method and device for data inspection of the solid state disk provided by the invention are used for acquiring the temperature information of the SSD, and updating the inspection trigger period according to the Nand flash data retention time and the temperature information; performing data inspection according to the updated inspection trigger period; searching a physical page containing valid data; and performing ECC error check on the physical page, and if the number of error bits in the physical page exceeds a preset threshold, performing data transfer on the physical page. Therefore, the temperature information is the system operation state, the Nand Flash data retention time is Nand Flash characteristic information, the polling trigger period is dynamically updated according to the system operation state and the Nand Flash characteristic, the polling trigger period is updated according to the temperature, the problem that insufficient polling is easily caused when the system temperature is high and the problem that frequent polling is easily caused when the system temperature is low are avoided, and the data reliability is improved.
Moreover, the ECC error check is carried out on the physical page, if the number of error bits in the physical page exceeds a preset threshold, the physical page is subjected to data movement, so that the physical page containing effective data which possibly has errors is moved, and the error bits are moved when the error bits exceed the threshold but are within a correctable range, thereby ensuring the reliability of the data, having lower influence on the performance of reading and writing the data by a user, and reducing the influence on the performance of reading and writing the data by the user.
The method and the device for optimizing data inspection of the solid state disk provided by the invention are described in detail above. The principles and embodiments of the present invention are explained herein using specific examples, which are presented only to assist in understanding the method and its core concepts. It should be noted that, for those skilled in the art, it is possible to make various improvements and modifications to the present invention without departing from the principle of the present invention, and those improvements and modifications also fall within the scope of the claims of the present invention.

Claims (4)

1. The optimization method for data inspection of the solid state disk is characterized by comprising the following steps of:
acquiring temperature information of the SSD, and updating a polling trigger period according to the Nandflash data holding time and the temperature information;
triggering data inspection according to the updated inspection triggering period;
searching a physical page containing valid data;
performing ECC error check on the physical page, and if the number of error bits in the physical page exceeds a preset threshold, performing data transfer on the physical page;
wherein, triggering data polling according to the updated polling triggering period comprises:
judging whether to trigger data inspection according to the updated inspection trigger period and the last inspection time, and if so, starting the data inspection;
wherein, the searching for the physical page containing valid data comprises:
and acquiring the state of the physical block, checking the effective data frame bitmap of the physical block if the state of the physical block is the used state, and finding out the physical page containing the effective data.
2. The method of claim 1, wherein the performing ECC error checking on the physical page and performing data transfer on the physical page if the number of error bits in the physical page exceeds a predetermined threshold comprises:
performing ECC error check on the physical page, and searching an error bit in the physical page;
and judging whether the number of the error bits exceeds a preset threshold value, and if so, carrying out data transfer on the physical page.
3. An optimization device for data inspection of a solid state disk, which is used for implementing the method of any one of claims 1 to 2, and comprises:
the updating module is used for acquiring the temperature information of the SSD and updating the polling trigger period according to the Nandflash data holding time and the temperature information;
the trigger module is used for triggering data polling according to the updated polling trigger period;
the searching module is used for searching a physical page containing valid data;
the moving module is used for carrying out ECC error check on the physical page, and carrying out data moving on the physical page if the number of error bits in the physical page exceeds a preset threshold;
the trigger module is specifically used for judging whether to trigger data inspection according to the updated inspection trigger period and the last inspection time, and if yes, starting the data inspection;
the searching module is specifically configured to obtain a state of the physical block, check an effective data frame bitmap of the physical block if the state of the physical block is a used state, and search for a physical page containing effective data.
4. The apparatus of claim 3, wherein the moving module comprises:
the detection unit is used for carrying out ECC error check on the physical page and searching an error bit in the physical page;
and the judging unit is used for judging whether the number of the error bits exceeds a preset threshold value or not, and if so, carrying out data transfer on the physical page.
CN201710110256.1A 2017-02-27 2017-02-27 Optimization method and device for data inspection of solid state disk Active CN106910528B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710110256.1A CN106910528B (en) 2017-02-27 2017-02-27 Optimization method and device for data inspection of solid state disk

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710110256.1A CN106910528B (en) 2017-02-27 2017-02-27 Optimization method and device for data inspection of solid state disk

Publications (2)

Publication Number Publication Date
CN106910528A CN106910528A (en) 2017-06-30
CN106910528B true CN106910528B (en) 2020-05-29

Family

ID=59209223

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710110256.1A Active CN106910528B (en) 2017-02-27 2017-02-27 Optimization method and device for data inspection of solid state disk

Country Status (1)

Country Link
CN (1) CN106910528B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107402726B (en) * 2017-08-07 2020-05-26 苏州浪潮智能科技有限公司 Method and system for determining data inspection cycle of solid state disk
CN107656830A (en) * 2017-10-09 2018-02-02 郑州云海信息技术有限公司 A kind of complete healthy method for inspecting, system and computer equipment for dodging system
CN107818025B (en) * 2017-10-31 2021-06-29 郑州云海信息技术有限公司 Hard disk cold data verification method, device and equipment and computer readable storage medium
KR20220103205A (en) * 2017-12-29 2022-07-21 마이크론 테크놀로지, 인크. Uncorrectable ecc
US10839886B2 (en) 2018-06-11 2020-11-17 Western Digital Technologies, Inc. Method and apparatus for adaptive data retention management in non-volatile memory
CN113625935B (en) * 2020-05-08 2024-03-29 杭州海康存储科技有限公司 Method, apparatus, device and storage medium for reducing read disturb effect
CN111737042A (en) * 2020-05-26 2020-10-02 上海汽车工业(集团)总公司 Nand-flash page bit overturning control method and control module
CN112114752A (en) * 2020-09-16 2020-12-22 深圳忆联信息系统有限公司 Method and device for improving reliability of solid-state storage device, computer device and storage medium
CN114356238A (en) * 2021-12-31 2022-04-15 深圳大普微电子科技有限公司 Method and device for data inspection of solid state disk

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1832033A (en) * 2005-03-07 2006-09-13 尔必达存储器股份有限公司 Semiconductor memory device
CN101529396A (en) * 2006-10-20 2009-09-09 富士通株式会社 Memory device and refresh adjusting method
CN102982836A (en) * 2012-11-21 2013-03-20 记忆科技(深圳)有限公司 Method for improving reliability of solid state disk and solid state disk of method
CN103049713A (en) * 2012-12-20 2013-04-17 华为技术有限公司 Method, device and system for inspecting data in storage device
CN103839578A (en) * 2012-11-27 2014-06-04 李欣 Method for prolonging data hold time of NAND-based solid-state memory
CN104572489A (en) * 2013-10-23 2015-04-29 深圳市腾讯计算机系统有限公司 Wear leveling method and wear leveling device
CN105097027A (en) * 2014-05-13 2015-11-25 三星电子株式会社 Storage device, operating method of storage device and method of accessing storage device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1832033A (en) * 2005-03-07 2006-09-13 尔必达存储器股份有限公司 Semiconductor memory device
CN101529396A (en) * 2006-10-20 2009-09-09 富士通株式会社 Memory device and refresh adjusting method
CN102982836A (en) * 2012-11-21 2013-03-20 记忆科技(深圳)有限公司 Method for improving reliability of solid state disk and solid state disk of method
CN103839578A (en) * 2012-11-27 2014-06-04 李欣 Method for prolonging data hold time of NAND-based solid-state memory
CN103049713A (en) * 2012-12-20 2013-04-17 华为技术有限公司 Method, device and system for inspecting data in storage device
CN104572489A (en) * 2013-10-23 2015-04-29 深圳市腾讯计算机系统有限公司 Wear leveling method and wear leveling device
CN105097027A (en) * 2014-05-13 2015-11-25 三星电子株式会社 Storage device, operating method of storage device and method of accessing storage device

Also Published As

Publication number Publication date
CN106910528A (en) 2017-06-30

Similar Documents

Publication Publication Date Title
CN106910528B (en) Optimization method and device for data inspection of solid state disk
CN104572489B (en) Wear leveling method and device
US8650463B2 (en) Solid state drive and method of controlling an error thereof
CN107391269B (en) Method and equipment for processing message through persistent queue
US9727244B2 (en) Expanding effective storage capacity of a data storage system while providing support for address mapping recovery
CN106682193B (en) Data persistence storage method and device based on cache
US11521701B2 (en) Memory controller with read error handling
CN104282342A (en) Flash memory device, memory controller and control method of flash memory
CN104461925A (en) Automatic correcting method and device for aligning storage device addresses
CN103984506A (en) Method and system for data writing of flash memory storage equipment
KR20210024188A (en) Write buffer management
CN114356248A (en) Data processing method and device
CN110727597B (en) Method for checking invalid code completion case based on log
CN108762670B (en) Management method, system and device for data blocks in SSD (solid State disk) firmware
EP3125251A1 (en) Hamming code-based data access method and integrated random access memory
US20150363309A1 (en) System and method of increasing reliability of non-volatile memory storage
CN112732181A (en) Data migration method of SSD and related device
CN107943415B (en) Method and system for searching free cluster based on FAT file system
CN114327258B (en) Solid state disk processing method, system, equipment and computer storage medium
CN105354107A (en) Data transmission method and system for NOR Flash
US20230297263A1 (en) Method and system for testing conversion relationship between block reading and page reading in flash memory chip
CN113625947B (en) Data error correction method, device, equipment and computer readable storage medium
CN114203252A (en) Bad block detection method, device, equipment and storage medium of nonvolatile memory
CN103092713A (en) Method for storing embedded code by using NAND flash
CN109542359B (en) Data reconstruction method, device, equipment and computer readable storage medium

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