CN110119250B - Nonvolatile storage medium data processing method and nonvolatile storage medium - Google Patents

Nonvolatile storage medium data processing method and nonvolatile storage medium Download PDF

Info

Publication number
CN110119250B
CN110119250B CN201910397714.3A CN201910397714A CN110119250B CN 110119250 B CN110119250 B CN 110119250B CN 201910397714 A CN201910397714 A CN 201910397714A CN 110119250 B CN110119250 B CN 110119250B
Authority
CN
China
Prior art keywords
value
data
preset
parameter value
iops
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
CN201910397714.3A
Other languages
Chinese (zh)
Other versions
CN110119250A (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.)
Hunan Goke Microelectronics Co Ltd
Original Assignee
Hunan Goke Microelectronics 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 Hunan Goke Microelectronics Co Ltd filed Critical Hunan Goke Microelectronics Co Ltd
Priority to CN201910397714.3A priority Critical patent/CN110119250B/en
Publication of CN110119250A publication Critical patent/CN110119250A/en
Application granted granted Critical
Publication of CN110119250B publication Critical patent/CN110119250B/en
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/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
    • 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]

Abstract

The invention provides a nonvolatile storage medium data processing method and a nonvolatile storage medium, and relates to the technical field of storage. The method comprises the following steps: acquiring a first operation parameter value of a storage unit; the first operation parameter value represents the data read-write performance of the storage unit; when the first operation parameter value meets the recovery condition, recovering the effective data page in the failure data block; and when the first operation parameter value does not meet the recovery condition, not recovering the valid data page. When the recovery of the effective data page is executed, when the recovery condition is not met, the recovery of the effective data page can be suspended or not carried out, the bus bandwidth is reserved for data reading and writing, and the efficiency of data reading and writing is improved.

Description

Nonvolatile storage medium data processing method and nonvolatile storage medium
Technical Field
The invention relates to the technical field of storage, in particular to a nonvolatile storage medium data processing method and a nonvolatile storage medium.
Background
In the using process of the solid state disk, partial data are invalid, and invalid data occupy data blocks of the solid state disk, so that space of the solid state disk is wasted. A Garbage Collection (GC) strategy is usually adopted, and the strategy is used to sort the valid data pages in the data block to be recovered, transfer the valid data pages to an idle position to form a new data block, and leave the invalid data pages in the data block to be recovered if the invalid data pages are not transferred. And after the valid data pages are all transferred, performing integral erasing operation on the data block to be recovered to finish GC work.
Currently, a GC strategy adopts an idle-time trigger mechanism, that is, when no data read/write of a host is detected, a GC is triggered, and when an available space is not lower than a preset available space threshold, the GC is stopped.
The GC is started and the transfer of the data page occupies the bus bandwidth. If the host needs to read data while performing the GC, the GC will not stop until the available space is not below the preset available space threshold. Thus, current GC strategies can cause a reduction in the operational performance of the read data process.
Disclosure of Invention
In view of the above-mentioned shortcomings in the prior art, an object of the present invention is to provide a method for processing data in a nonvolatile storage medium and a nonvolatile storage medium, so as to improve the performance of reading and writing data in the nonvolatile storage medium.
In order to achieve the above purpose, the embodiment of the present invention adopts the following technical solutions:
in a first aspect, an embodiment of the present invention provides a data processing method for a nonvolatile storage medium, including: acquiring a first operation parameter value of a storage unit; the first operation parameter value represents the data read-write performance of the storage unit; when the first operation parameter value meets the recovery condition, recovering the valid data page in the invalid data block; and when the first operation parameter value does not meet the recovery condition, not recovering the valid data page.
Optionally, the not performing the recycling of the valid data page when the first operation parameter value does not satisfy a recycling condition includes: and when the first operation parameter value meets a pause condition, pausing the recovery of the effective data page.
Optionally, the first operating parameter value comprises: a first IOPS value and a first bandwidth value; when the first operation parameter value meets a recovery condition, recovering a valid data page in a failure data block, including: and when the first IOPS value is smaller than a first preset IOPS value and the first bandwidth value is smaller than a first preset bandwidth value, recycling the effective data page.
Optionally, the first operating parameter value comprises: a first IOPS value and a first bandwidth value; when the first operation parameter value meets a pause condition, pausing the recycling of the valid data page, comprising: and when the first IOPS value is larger than a second preset IOPS value or the first bandwidth value is larger than a second preset bandwidth value, suspending the recovery of the effective data page.
Optionally, the first operating parameter value comprises: an available space value of the memory cell; when the first operation parameter value meets a recovery condition, recovering a valid data page in a failure data block, including: when the available space value is smaller than or equal to a first preset space threshold value, judging whether the read-write types of the plurality of continuous data are all read data types; if not, recycling the effective data page.
Optionally, the suspending, when the first operation parameter value satisfies a suspension condition, the recycling of the valid data page includes: when the available space value is larger than or equal to a second preset space threshold value, the recovery of the effective data page is suspended; the second preset space threshold is greater than the first preset space threshold.
Optionally, the suspending, when the first operation parameter value satisfies a suspension condition, the recycling of the valid data page includes: if the read-write types of the plurality of continuous data are all the read data types, acquiring the number of the plurality of continuous data; if the number is larger than the preset number, acquiring a second operation parameter value; the second operating parameter value characterizes data read performance of the memory cell; and when the second operation parameter value meets the pause condition, pausing the recovery of the valid data page.
Optionally, the second operating parameter value comprises: a second IOPS value and a second bandwidth value; when the second operation parameter value meets the pause condition, pausing the recycling of the valid data page, including: and if the second IOPS value is larger than a third preset IOPS value or the second bandwidth value is larger than a third preset bandwidth value, suspending the recovery of the effective data page.
In a second aspect, an embodiment of the present invention further provides a nonvolatile storage medium, including: the system comprises an acquisition module, a recovery module and a pause module; the acquisition module is used for acquiring a first operating parameter value of the storage unit; the first operation parameter value represents the data read-write performance of the storage unit; the recovery module is used for recovering the effective data page in the failure data block when the first operation parameter value meets a recovery condition; and the suspension module is used for not recovering the effective data page when the first operation parameter value does not meet the recovery condition.
Optionally, the first operating parameter value comprises: a first IOPS value and a first bandwidth value; the recovery module is specifically configured to recover the valid data page when the first IOPS value is smaller than a first preset IOPS value and the first bandwidth value is smaller than a first preset bandwidth value.
According to the data processing method of the nonvolatile storage medium and the nonvolatile storage medium provided by the embodiment of the application, when the nonvolatile storage medium recovers the valid data page and does not meet the recovery condition, the recovery of the valid data page can be avoided, and the bus bandwidth is made to be used for executing data reading and writing, so that the data reading and writing performance is not influenced by the recovery of the valid data page, and the data reading and writing performance is improved.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings needed to be used in the embodiments will be briefly described below, it should be understood that the following drawings only illustrate some embodiments of the present invention and therefore should not be considered as limiting the scope, and for those skilled in the art, other related drawings can be obtained according to the drawings without inventive efforts.
FIG. 1 is a schematic structural diagram of a non-volatile storage medium provided in the present application;
FIG. 2 is a schematic diagram of a capacity of a non-volatile storage medium provided in the present application;
FIG. 3 is a schematic diagram of a non-volatile storage medium provided by the present application for performing GC functions;
fig. 4 is a schematic flowchart of a data processing method for a non-volatile storage medium according to an embodiment of the present application;
FIG. 5 is a flowchart illustrating a data processing method for a non-volatile storage medium according to another embodiment of the present application;
FIG. 6 is a diagram illustrating the number of data read and write operations of a non-volatile storage medium;
FIG. 7 is a schematic data flow diagram of a non-volatile storage medium;
FIG. 8 is a graph of a first bandwidth value versus a first IOPS value for a non-volatile storage medium according to one embodiment of the present application;
FIG. 9 is a graph of a first bandwidth value versus a first IOPS value for a non-volatile storage medium according to another embodiment of the present application;
FIG. 10 is a flowchart illustrating a data processing method for a non-volatile storage medium according to another embodiment of the present application;
fig. 11 is a schematic structural diagram of a non-volatile storage medium according to an embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some embodiments of the present application, but not all embodiments.
Fig. 1 is a schematic structural diagram of a non-volatile storage medium provided in the present application, where the non-volatile storage medium may be, but is not limited to: nand flash memory, NOR flash memory. Referring to fig. 1, the nonvolatile storage medium includes: a controller 101 and a storage unit 102.
The controller 101 controls the storage unit 102 to read and write data, erase data, and retrieve data pages. The number of the memory cells 102 is at least one.
Taking the case that the nonvolatile storage medium executes the GC policy in the prior art as an example, fig. 2 is a schematic diagram of a capacity of the nonvolatile storage medium provided in the present application, and as shown in fig. 2, when the available space value of the storage unit 102 is less than or equal to a first preset space threshold, that is, the remaining space capacity is less than the first remaining space capacity, the recovery of valid data pages and the erasure of invalid data blocks are performed until the available space value is greater than or equal to a second preset space threshold, that is, the remaining space capacity is greater than or equal to a second remaining space capacity.
Alternatively, in the related art GC strategy, when the GC start condition as shown in fig. 2 is satisfied, the GC function is performed. Fig. 3 is a schematic diagram of a nonvolatile storage medium provided by the present application for performing a GC function, and with reference to fig. 1, a controller 101 controls a storage unit 102 to recover valid data pages and erase invalid data blocks, as shown in fig. 3, block1 is a data block to be subjected to the GC function. Data pages a and B are valid data pages and the remaining data pages are invalid data pages. And carrying the effective data pages A and B in the data block1 to a new data block2, and erasing the data block1 to obtain a data block11 after the recovery of the effective data pages is completed. The data block11 may be used to carry a data page.
Current GC strategies typically employ an idle time trigger mechanism, i.e., performing GC functions when there is no data read. However, the execution of the GC function must be completed until the available space capacity reaches the stop waterline, and when data reading is required, the recovery of the valid data page occupies the bus bandwidth, which affects the read-write data and causes the continuous read-write performance to be degraded.
In view of the above problems, the following embodiments of the present application provide a technical solution, the core improvement point of which is to set the recovery and pause conditions when the GC function is executed, that is, to execute the GC function according to the data read/write and the available space.
In the following, a technical solution of the present application is described with reference to a specific embodiment, fig. 4 is a schematic flowchart of a data processing method for a nonvolatile storage medium according to an embodiment of the present application, where the schematic flowchart may be executed by the controller 101 corresponding to fig. 1, and as shown in fig. 4, the method includes:
s201, obtaining a first operation parameter value of the storage unit. The first operating parameter value characterizes data read-write performance of the memory cell.
S202, when the first operation parameter value meets the recovery condition, recovering the valid data page in the invalid data block.
And S203, when the first operation parameter value does not meet the recovery condition, not recovering the valid data page.
And when the first operation parameter value of the nonvolatile storage medium meets the recovery condition and the GC function is executed, if the first operation parameter value does not meet the recovery condition, the valid data page is not recovered, and the bus bandwidth is made available for data reading and writing.
In the data processing method for the nonvolatile storage medium provided by this embodiment, when the nonvolatile storage medium executes the GC function, that is, the valid data page is recovered, a suspension condition is satisfied, and the recovery of the valid data page can be suspended. And the GC function is suspended, so that the bus bandwidth is given up for data reading and writing, the continuous performance of data reading and writing is ensured, and the working efficiency of the nonvolatile storage medium is ensured.
Optionally, the first operating parameter value comprises: a first IOPS value and a first bandwidth value. IOPS (Input/Output Operations Per Second) is the number of reads and writes Per Second. The first IOPS value is the total number of data reads and writes of the nonvolatile storage medium per second, the first bandwidth value is a bandwidth occupied by data read and write, the first IOPS value and the first bandwidth value are introduced to provide a parameter for determining whether to execute or suspend the GC function, a possible implementation manner for executing the GC policy is given below based on the first IOPS value and the first bandwidth value, specifically, on the basis of fig. 4, fig. 5 is a schematic flow diagram of a data processing method of the nonvolatile storage medium provided in another embodiment of the present application, as shown in fig. 5, S202 includes:
s202-1, when the first IOPS value is smaller than a first preset IOPS value and the first bandwidth value is smaller than the first preset bandwidth value, recovering the erasure of the valid data page and the invalid data block.
Alternatively, fig. 6 is a schematic diagram of the number of data read/write times of the nonvolatile storage medium, as shown in fig. 6, 1 second is divided into n pieces, and then the number of read/write times of each piece is recorded. In fig. 6, the ordinate IO represents the number of times of reading and writing per chip, the abscissa T represents time, and the first IOPS value is calculated as follows:
Figure BDA0002057658030000091
wherein the IOPS is the calculated IOPS value.
Fig. 7 is a schematic diagram of data flow of a nonvolatile storage medium, as shown in fig. 7, the data flow of each slice is recorded after dividing 1 second into n slices. In fig. 7, the ordinate BW represents the data flow per chip, the abscissa T represents the time, and the calculation of the first bandwidth value is as follows:
Figure BDA0002057658030000092
wherein BWPS is the calculated bandwidth value.
N is an integer of 1 or more, for example, n is 100, that is, 1 second is divided into 100 pieces. By dividing each second into n pieces, the first IOPS value and the first bandwidth value can be accurately detected, and accurate triggering and pausing of GC can be ensured.
When the first IOPS value is smaller than the first preset IOPS value and the first bandwidth value is smaller than the first preset bandwidth value, the bus bandwidth occupied by data reading is smaller, and the total bandwidth is enough to support the memory unit to simultaneously read and write data and recycle the effective data page.
When the first IOPS value is smaller than the first predetermined IOPS value and the first bandwidth value is smaller than the first predetermined bandwidth value, the GC function may be executed as long as there are valid data pages to be recycled.
With continuing reference to fig. 5, S203 includes:
s203-1, when the first operation parameter value meets the pause condition, pausing the recovery of the valid data page.
S203-1, comprising: and when the first IOPS value is larger than the second preset IOPS value or the first bandwidth value is larger than the second preset bandwidth value, the recovery of the valid data page is suspended.
It should be noted that, when the first IOPS value is greater than the second predetermined IOPS value or the first bandwidth value is greater than the second predetermined bandwidth value, the bus bandwidth is not sufficient to support data reading and writing and recovery of the valid data page at the same time, and therefore, recovery of the valid data page needs to be suspended, and the bus bandwidth is set aside for data reading and writing, so as to ensure continuity of data reading and writing.
Optionally, fig. 8 is a graph of a first bandwidth value and a first IOPS value of the non-volatile storage medium according to an embodiment of the present disclosure, as shown in fig. 8, where the first predetermined IOPS value is equal to the second predetermined IOPS value, and is denoted by y1 in fig. 8. The first preset bandwidth value is equal to the second preset bandwidth value, which is denoted by x1 in fig. 8. When the first IOPS value is smaller than the first predetermined IOPS value y1 and the first bandwidth value is smaller than the first predetermined bandwidth value x1, that is, in the area a shown in fig. 8, the GC function is executed to recover the valid data page. When the first IOPS value is greater than the first predetermined IOPS value y1, or the first bandwidth value is greater than the first predetermined bandwidth value x1, that is, in the area C shown in fig. 8, the recycling of the valid data page is suspended.
Optionally, fig. 9 is a graph of a first bandwidth value and a first IOPS value of a non-volatile storage medium according to another embodiment of the present disclosure, as shown in fig. 9, a first preset IOPS value is represented by y1, a second preset IOPS value is represented by y2, a first preset bandwidth is represented by x1, and a second preset bandwidth is represented by x2. The first preset IOPS value y1 is smaller than the second preset IOPS value y2, and the first preset bandwidth value x1 is smaller than the second preset bandwidth value x2. The B areas between the first preset IOPS value y1 and the second preset IOPS value y2 and between the first preset bandwidth value x1 and the second preset bandwidth value x2 are buffer areas. When the first IOPS value is smaller than the first predetermined IOPS value y1 and the first bandwidth value is smaller than the first predetermined bandwidth value x1, that is, in the area a shown in fig. 9, the erasure of the valid data page and the invalid data block is recovered, and then the detected first IOPS value is larger than the first predetermined IOPS value y1 but smaller than the second predetermined IOPS value y2, and/or the first bandwidth value is larger than the first predetermined bandwidth value x1 but smaller than the second predetermined bandwidth value x2, that is, in the area B shown in fig. 9, the erasure of the valid data page and the invalid data block is still recovered.
Similarly, when the first IOPS value is greater than the second predetermined IOPS value y2, or the first bandwidth value is greater than the second predetermined bandwidth value x2, i.e., in the region C shown in fig. 8, the recycling of the valid data pages and the erasing of the invalid data blocks are suspended, and then the detected first IOPS value is greater than the first predetermined IOPS value y1 but less than the second predetermined IOPS value y2, and/or the first bandwidth value is greater than the first predetermined bandwidth value x1 but less than the second predetermined bandwidth value x2, i.e., in the region B shown in fig. 9, the recycling of the valid data pages and the erasing of the invalid data blocks are still suspended.
Setting the buffer area can prevent switching of the state of the nonvolatile storage medium caused by temporary fluctuations in the IOPS value and the bandwidth value of data reading and writing. Resulting in poor GC recycling or data read-write continuity.
Optionally, on the basis of fig. 4, this embodiment provides another possible implementation manner for executing the GC policy, where the first operation parameter value includes: fig. 10 is a schematic flow chart of a data processing method of a non-volatile storage medium according to another embodiment of the present application, as shown in fig. 10, S202 includes:
s202-2, when the available space value is smaller than or equal to a first preset space threshold value, judging whether the read-write types of the plurality of continuous data are all read data types.
S202-3, if not, recovering the valid data page and erasing the invalid data block.
Referring to fig. 2, if the available space value is less than or equal to the first preset space threshold, the number of data blocks that can be used for writing is small, which affects normal reading and writing of data. Therefore, the GC function is executed, and the valid data pages are recycled for data writing, so that the data reading and writing efficiency of the nonvolatile storage medium is ensured.
It should be noted that, when the first IOPS value is greater than the second preset IOPS value, or the first bandwidth value is greater than the second preset bandwidth value, and the available space value is less than or equal to the first preset space threshold value, even if the GC function is suspended to make the bandwidth available for data reading and writing, since the number of data blocks available for writing is small, the reading and writing performance of the nonvolatile storage medium is still affected, in this case, the GC function should be executed to recover the valid data pages.
With continuing reference to fig. 10, S203 includes:
and S203-2, when the available space value is greater than or equal to a second preset space threshold value, suspending the recovery of the valid data pages and the erasure of the invalid data blocks. The second preset spatial threshold is greater than the first preset spatial threshold.
Referring to fig. 2, if the available space value is greater than or equal to the second preset space threshold, the number of the available data blocks can ensure normal data writing, and at this time, the recovery of the valid data page and the erasure of the invalid data block are suspended, so that the bus bandwidth is set aside for data reading and writing, and the efficiency of data reading and writing is ensured.
Optionally, continuing with fig. 10, S203, includes:
s203-3, if the read-write types of the plurality of continuous data are all read data types, acquiring the number of the plurality of continuous data.
S203-4, if the number is larger than the preset number, acquiring a second operation parameter value. The second operating parameter value characterizes data read performance of the memory cell.
When data is read, data writing does not need to be carried out by using the data block. And if the detected number of the plurality of continuous data is larger than the preset number, determining that the data is continuously read.
S203-5, when the second operation parameter value meets the pause condition, pausing the recovery of the valid data page.
If the data is continuously read and the second operation parameter value meets the pause condition, the recovery of the data page can be paused, the bandwidth is made available for reading the data, and the continuous performance of data reading is ensured.
Optionally, one possible implementation manner of S203-5 is:
and if the second IOPS value is larger than a third preset IOPS value or the second bandwidth value is larger than a third preset bandwidth value, suspending the recovery of the effective data page.
It should be noted that the second IOPS value is the number of data reads per second, and the second bandwidth value is the bandwidth value occupied by data reads.
Alternatively, the second IOPS value may be calculated by formula (1) in the above embodiment, and the second bandwidth value may be calculated by formula (2) in the above embodiment.
Alternatively, when the data write is detected, the continuous data read is interrupted, and the recovery of the suspended valid data page is resumed as a recovered valid data page.
Optionally, when no reading of the data is detected, when the first IOPS value is greater than the second preset IOPS value or the first bandwidth value is greater than the second preset bandwidth value, the suspending of the recycling of the valid data page may be resumed as recycling the valid data page.
It should be noted that, in the above embodiment, after the GC function is executed, the method further includes erasing the recovered invalid data block after recovering the valid data page in the invalid data block. When the GC functionality is suspended, it also includes suspending erasure of the failed data blocks.
A non-volatile storage medium for executing the above method class embodiment is provided below, and specifically, fig. 11 is a schematic structural diagram of the non-volatile storage medium provided in an embodiment of the present application, as shown in fig. 11, and includes: an acquisition module 301, a reclamation module 302, and a suspension module 303.
An obtaining module 301, configured to obtain a first operating parameter value of a storage unit; the first operating parameter value characterizes data read-write performance of the memory cell.
The reclaiming module 302 is configured to reclaim the valid data page in the invalid data block when the first operation parameter value satisfies a reclaiming condition.
The suspending module 303 is configured to not recycle the valid data page when the first operation parameter value does not satisfy the recycle condition.
Optionally, the first operating parameter value comprises: a first IOPS value and a first bandwidth value.
The recycling module 302 is specifically configured to recycle the valid data page when the first IOPS value is smaller than a first preset IOPS value and the first bandwidth value is smaller than a first preset bandwidth value. Optionally, the operating parameter values include: a first IOPS value and a first bandwidth value;
the suspending module 303 is specifically configured to suspend the recycling of the valid data page when the first IOPS value is greater than the second preset IOPS value, or the first bandwidth value is greater than the second preset bandwidth value.
It should be noted that, referring to the embodiment corresponding to fig. 1, the functions of the obtaining module 301, the recycling module 302, and the suspending module 303 in this embodiment may be implemented by the controller 101 in fig. 1.
The above-mentioned apparatus is used for executing the method provided by the foregoing embodiment, and the implementation principle and technical effect are similar, which are not described herein again.
It is noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrases "comprising a component of' 8230; \8230;" does not exclude the presence of additional identical elements in the process, method, article, or apparatus that comprises the element.
The above is only a preferred embodiment of the present invention, and is not intended to limit the present invention, and various modifications and changes will occur to those skilled in the art. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention. It should be noted that: like reference numbers and letters refer to like items in the following figures, and thus, once an item is defined in one figure, it need not be further defined and explained in subsequent figures.

Claims (7)

1. A non-volatile storage medium data processing method, comprising:
acquiring a first operation parameter value of a storage unit; the first operation parameter value represents data read-write performance of the storage unit, and the first operation parameter value comprises: the method comprises the steps that a first IOPS value and a first bandwidth value are included, the first IOPS value is the total times of data reading and writing of a nonvolatile storage medium per second, and the first bandwidth value is the bandwidth occupied by data reading and writing;
when the first operation parameter value meets a recovery condition, recovering the effective data page in the failure data block;
when the first operation parameter value does not meet the recovery condition, the effective data page is not recovered;
when the first operation parameter value meets a recovery condition, recovering a valid data page in a failure data block, including:
when the first IOPS value is smaller than a first preset IOPS value and the first bandwidth value is smaller than a first preset bandwidth value, simultaneously reading and writing data and recycling the effective data page;
the first operating parameter values include: an available space value of the memory cell; when the first operation parameter value meets a recovery condition, recovering a valid data page in a failure data block, including:
when the available space value is smaller than or equal to a first preset space threshold value, judging whether the read-write types of the plurality of continuous data are all read data types;
and if not, recycling the valid data page.
2. The non-volatile storage media data processing method of claim 1, wherein the not performing reclamation of the valid data page when the first operating parameter value does not satisfy a reclamation condition comprises:
and when the first operation parameter value meets a pause condition, pausing the recovery of the effective data page.
3. The non-volatile storage media data processing method of claim 2, wherein the first operating parameter value comprises: a first IOPS value and a first bandwidth value; when the first operation parameter value meets a pause condition, pausing the recycling of the valid data page, comprising:
when the first IOPS value is larger than a second preset IOPS value or the first bandwidth value is larger than a second preset bandwidth value, the recovery of the effective data page is suspended; the first preset IOPS value is less than the second preset IOPS value.
4. The non-volatile storage media data processing method of claim 1, wherein suspending reclamation of the valid data pages when the first operating parameter value satisfies a suspension condition comprises:
when the available space value is larger than or equal to a second preset space threshold value, the recovery of the effective data page is suspended; the second preset space threshold is greater than the first preset space threshold.
5. The non-volatile storage media data processing method of claim 1, wherein suspending reclamation of the valid data pages when the first operating parameter value satisfies a suspension condition comprises:
if the read-write types of the continuous data are the read data types, acquiring the number of the continuous data;
if the number is larger than the preset number, acquiring a second operation parameter value; the second operating parameter value characterizes data read performance of the memory cell;
and when the second operation parameter value meets the pause condition, pausing the recovery of the valid data page.
6. The non-volatile storage media data processing method of claim 5, wherein the second operating parameter value comprises: a second IOPS value and a second bandwidth value; when the second operation parameter value meets the pause condition, pausing the recycling of the valid data page, including:
and if the second IOPS value is larger than a third preset IOPS value or the second bandwidth value is larger than a third preset bandwidth value, suspending the recovery of the effective data page.
7. A non-volatile storage medium, comprising: the system comprises an acquisition module, a recovery module and a pause module;
the acquisition module is used for acquiring a first operating parameter value of the storage unit; the first operation parameter value characterizes data read-write performance of the storage unit, and the first operation parameter value includes: the method comprises the steps that a first IOPS value and a first bandwidth value are included, the first IOPS value is the total times of data reading and writing of a nonvolatile storage medium per second, and the first bandwidth value is the bandwidth occupied by data reading and writing; the first operating parameter values include: an available space value of the memory cell;
the recovery module is used for recovering the effective data page in the failure data block when the first operation parameter value meets a recovery condition;
the suspension module is used for not recovering the effective data page when the first operation parameter value does not meet the recovery condition;
the recovery module is specifically configured to, when the first IOPS value is smaller than a first preset IOPS value and the first bandwidth value is smaller than a first preset bandwidth value, read and write data and recover the valid data page at the same time;
the recovery module is specifically configured to determine whether the read-write types of the multiple continuous data are all read data types when the available space value is less than or equal to a first preset space threshold; and if not, recycling the valid data page.
CN201910397714.3A 2019-05-13 2019-05-13 Nonvolatile storage medium data processing method and nonvolatile storage medium Active CN110119250B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910397714.3A CN110119250B (en) 2019-05-13 2019-05-13 Nonvolatile storage medium data processing method and nonvolatile storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910397714.3A CN110119250B (en) 2019-05-13 2019-05-13 Nonvolatile storage medium data processing method and nonvolatile storage medium

Publications (2)

Publication Number Publication Date
CN110119250A CN110119250A (en) 2019-08-13
CN110119250B true CN110119250B (en) 2023-02-10

Family

ID=67522301

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910397714.3A Active CN110119250B (en) 2019-05-13 2019-05-13 Nonvolatile storage medium data processing method and nonvolatile storage medium

Country Status (1)

Country Link
CN (1) CN110119250B (en)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104298606A (en) * 2013-07-17 2015-01-21 光宝科技股份有限公司 Garbage collection action control method in SSD
CN103544110A (en) * 2013-10-08 2014-01-29 华中科技大学 Block-level continuous data protection method based on solid-state disc
CN105630638B (en) * 2014-10-31 2018-01-12 国际商业机器公司 For the apparatus and method for disk array distribution caching
CN106527971B (en) * 2016-10-08 2019-11-26 华中科技大学 A method of promoting SSD reading performance during garbage reclamation
US10353628B2 (en) * 2017-04-13 2019-07-16 Samsung Electronics Co., Ltd. Opportunity window hints for background operations in SSD
CN109558334B (en) * 2017-09-27 2022-10-25 北京忆恒创源科技股份有限公司 Garbage data recovery method and solid-state storage device
CN108984116B (en) * 2018-06-14 2021-07-20 浙江大华存储科技有限公司 Flow control method and device for garbage recovery bandwidth of solid state disk

Also Published As

Publication number Publication date
CN110119250A (en) 2019-08-13

Similar Documents

Publication Publication Date Title
TWI597605B (en) Method of wear leveling for data storage device
US8880775B2 (en) System and method of garbage collection in a memory device
US8423710B1 (en) Sequential writes to flash memory
US8392649B2 (en) Memory storage device, controller, and method for responding to host write commands triggering data movement
JP6112595B2 (en) Erase management in memory systems
US9165667B2 (en) Electronic device with solid state drive and associated control method
US8667209B2 (en) Non-volatile memory access method and system, and non-volatile memory controller
CN111949220A (en) Abnormal power failure recovery method for storage device and storage device
CN109491592B (en) Storage device, data writing method thereof and storage device
TWI779707B (en) Method and apparatus for bad block management in flash memory
CN108563586B (en) Method for separating garbage recovery data and user data in solid-state disk
CN117033268B (en) SSD controller, data processing method, device and storage medium
US11321001B2 (en) Information processing apparatus equipped with storage using flash memory, control method therefor, and storage medium
CN101740123A (en) Data protection method of memory
CN110119250B (en) Nonvolatile storage medium data processing method and nonvolatile storage medium
CN109343796B (en) Data processing method and device
CN105868046B (en) The method of management, write-in and loading firmware code in storage device
CN113093987A (en) Controller for controlling memory device and method of operating the same
CN106021124B (en) A kind of storage method and storage system of data
CN101673229A (en) Memory system and method for automatically backing up data stored by flash memory
CN114995756A (en) Virtual disk space recovery method, device and medium
CN108572924B (en) Request processing method of 3D MLC flash memory device
TW202242664A (en) Method of performing garbage collection with partial clean operation and related controller and storage system
CN105892935A (en) Disk Apparatus And Method For Transferring And Storing Management Information
US11797228B2 (en) Efficient handling of background operations for improving sustained performance of host reads and writes

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