Data management method and storage device

By completing the reading count in the counting module of the storage array, the problem of the reading count counter in the storage device consumes the main memory resources, improving the data reading performance and maintaining management accuracy.

CN119620914APending Publication Date: 2025-03-14SHANGHAI LONGSYS DIGITAL TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202311177004.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-09-12
Publication Date
2025-03-14

AI Technical Summary

Technical Problem

In storage devices, frequent data readings will cause read interference, increase the load on the counter of the number of reads of the memory block, consume the main memory resources, affect the data reading performance, and may sacrifice management accuracy when the memory resources are insufficient.

Method used

By introducing a counting module into the storage array, the control unit sends a read count acquisition command to the storage array. The counting module completes the reading count counting of the storage array and returns the result to the control unit, thereby reducing the memory resource usage of the control unit.

Benefits of technology

This method effectively reduces the use of memory resources of the control unit by reading count statistics, improves the data reading performance of the storage device, and avoids loss of management accuracy when memory resources are insufficient.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119620914A_ABST
    Figure CN119620914A_ABST
Patent Text Reader

Abstract

The invention discloses a data management method and a storage device. The method is applied to the storage device, the storage device comprises a control unit and at least one storage array, each storage array comprises at least one storage unit and a counting module, the storage unit comprises a nonvolatile storage circuit, and the counting module comprises a storage circuit and a logic circuit. The logic circuit is used for obtaining the reading times of the storage unit, and the storage circuit is used for storing the reading times of the storage unit. The method comprises the steps that a control unit sends a reading frequency obtaining command to a storage array; and the control unit receives a reading frequency result sent by the storage array, and the reading frequency result is acquired from the counting module by the storage array based on the reading frequency acquisition command. In this way, the data reading performance of the storage device can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of storage, and in particular to a data management method and a storage device. Background Art

[0002] In a storage device, read interference occurs when data is read. In a storage block, reading data of the current page will affect the data stored in the adjacent page. When the number of reads in a storage block is too many, data loss is likely to occur. Therefore, in a storage device, a counter for the number of reads is usually set to count the number of reads of the storage block. When the number of reads of a storage block exceeds a certain threshold, a reliability scan is performed on the storage block. When the scan result shows that the bit error rate of the storage block exceeds a certain threshold, it means that there is a problem with the data storage, and the storage block will be garbage collected or data refreshed. Or directly when the number of reads exceeds a certain threshold, the storage block will be garbage collected or data refreshed. These operations are usually completed by the master control, which consumes the memory resources of the master control and affects the data reading performance of the storage device. In addition, in a storage device with less memory resources, management accuracy may be sacrificed, and multiple storage blocks share counters, resulting in write amplification. Summary of the invention

[0003] The main purpose of this application is to provide a data management method and a storage device, which can improve the data reading performance of the storage device.

[0004] In order to solve the above technical problems, the first technical solution adopted by the present application is: to provide a data management method. The method is applied to a storage device, which includes a control unit and at least one storage array, each storage array includes at least one storage unit and a counting module, the storage unit includes a non-volatile storage circuit, the counting module includes a storage circuit and a logic circuit, the logic circuit is used to obtain the number of reads of the storage unit, and the storage circuit is used to save the number of reads of the storage unit. The method includes the control unit sending a read count acquisition command to the storage array; the control unit receives the read count result sent by the storage array, and the read count result is obtained by the storage array from the counting module based on the read count acquisition command.

[0005] In order to solve the above technical problems, the second technical solution adopted by the present application is: to provide a data management method. The method is applied to a storage device, which includes a control unit and at least one storage array, each storage array includes at least one storage unit and a counting module, the storage unit includes a non-volatile storage circuit, the counting module includes a storage circuit and a logic circuit, the logic circuit is used to obtain the number of reads of the storage unit, and the storage circuit is used to save the number of reads of the storage unit. The method includes the storage array receiving a read count acquisition command sent by the control unit; the storage array obtains the read count result from the counting module based on the read count acquisition command, and sends the read count result to the control unit.

[0006] To solve the above technical problems, the third technical solution adopted in the present application is: to provide a storage device, which includes a control unit and at least one storage array, each storage array includes at least one storage unit and a counting module, the storage unit includes a non-volatile storage circuit, the counting module includes a storage circuit and a logic circuit, the logic circuit is used to obtain the number of read times of the storage unit, the storage circuit is used to save the number of read times of the storage unit, and the control unit is connected to the storage array to implement the method described in the first and / or second technical solutions.

[0007] The beneficial effects of the present application are as follows: the present application is applied to a storage device, which includes a control unit and at least one storage array, each storage array including at least one storage unit and a counting module. The storage unit includes a non-volatile storage circuit. The counting module includes a storage circuit and a logic circuit, the logic circuit is used to obtain the number of reads of the storage unit, and the storage circuit is used to save the number of reads. The control unit sends a read count acquisition command to the storage array, and receives the read count result obtained from the counting module sent by the storage array, and the count of the read count is handed over to the counting module in the storage array. The control unit can obtain the read count result through the command, which reduces the occupation of the memory resources used by the control unit for the read count statistics, and improves the data reading performance of the storage device. BRIEF DESCRIPTION OF THE DRAWINGS

[0008] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0009] Figure 1 It is a flowchart of the first embodiment of the data management method of the present application;

[0010] Figure 2It is a flowchart of the second embodiment of the data management method of the present application;

[0011] Figure 3 It is a flowchart of the third embodiment of the data management method of the present application;

[0012] Figure 4 It is a flowchart of the fourth embodiment of the data management method of the present application;

[0013] Figure 5 It is a schematic structural diagram of the first embodiment of the storage device of the present application. DETAILED DESCRIPTION

[0014] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0015] The terms "first", "second", etc. in this application are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but optionally includes steps or units that are not listed, or optionally includes other steps or units inherent to these processes, methods, products or devices.

[0016] Reference to "embodiments" herein means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0017] Reference Figure 1 , Figure 1 This is a flow chart of the first embodiment of the data management method of the present application. It is applied to a storage device, which includes a control unit and at least one storage array, each storage array includes at least one storage unit and a counting module, the storage unit includes a non-volatile storage circuit, the counting module includes a storage circuit and a logic circuit, the logic circuit is used to obtain the number of reads of the storage unit, and the storage circuit is used to save the number of reads. The method includes the following steps:

[0018] S11: The control unit sends a read count acquisition command to the storage array.

[0019] S12: The control unit receives the read count result sent by the storage array, and the read count result is obtained by the storage array from the counting module of the storage unit based on the read count acquisition command.

[0020] The control unit sends a read count acquisition command to the storage array to acquire the read count result of the storage unit from the storage array.

[0021] The read count acquisition command may be for acquiring the read count of a single storage unit, or may be for acquiring the read count of all storage units in the storage array.

[0022] The command for obtaining the number of reads can be sent after each data read, or can be sent at a time interval according to actual conditions. If the command is sent after each data read, the command for obtaining the number of reads can be sent to the corresponding storage array according to the address of the data read, and if the command is sent at a time interval, the target storage array and time interval of the command for obtaining the number of reads can be set according to actual needs.

[0023] The storage array may be a storage particle, and the storage unit is a plurality of regions after the storage particle is divided. The size of the division may be determined according to actual conditions. For example, a storage unit may be a storage block.

[0024] The storage circuit in the counting module may be a non-volatile storage circuit, which may be obtained by directly using a non-volatile storage circuit in a conventional storage array, or may be a volatile memory obtained through subsequent settings.

[0025] The storage device of the present application may be a NAND Flash memory, or a ferroelectric memory, a phase change memory, or other storage products with a read disturbance mechanism.

[0026] In this embodiment, the method of the present application is applied to a storage device, which includes a control unit and at least one storage array, each storage array including at least one storage unit and a counting module. The storage unit includes a non-volatile storage circuit. The counting module includes a storage circuit and a logic circuit, the logic circuit is used to obtain the number of reads of the storage unit, and the storage circuit is used to save the number of reads. The control unit sends a read count acquisition command to the storage array, and receives the read count result obtained from the counting module sent by the storage array, and the count of the read count is handed over to the counting module in the storage array. The control unit can obtain the read count result through the command, which reduces the occupation of the memory resources used by the control unit for the read count statistics, and improves the data reading performance of the storage device.

[0027] Reference Figure 2 , Figure 2 This is a flow chart of the second embodiment of the data management method of the present application. This method is a further extension of the above embodiment. When the read count acquisition command is to obtain the read count result of a single storage unit, the read count result includes the read count result of a storage unit. The method includes the following steps:

[0028] S21: In response to a reading number result of a storage unit being greater than a first preset threshold, performing data reliability processing on the storage unit.

[0029] A first preset threshold is set for the number of times the storage unit is read as the upper limit of the number of times the storage unit is read. Each storage unit has its corresponding first preset threshold, and the first preset threshold of each storage unit can be the same or different.

[0030] If the result of the number of reads and the first preset threshold both represent the number of times the storage block data is read, the control unit will compare it with the corresponding first preset threshold after obtaining the number of reads of the storage unit. If the number of reads of the storage unit is greater than the first preset threshold, data reliability processing will be performed on the storage unit. Data reliability processing can be directly performing operations such as data refresh or garbage collection, or it can be a data reliability scan, that is, first determine the bit error rate of the storage block, and after the bit error rate is greater than a certain threshold, perform operations such as data refresh or garbage collection. If the bit error rate is less than the threshold, no processing is performed. If the number of reads of the storage unit is not greater than the first preset threshold, no processing is performed and the next command is waited for. Data reliability processing includes at least one of data refresh, garbage collection and data reliability scanning.

[0031] Reference Figure 3 , Figure 3 This is a flow chart of the second embodiment of the data management method of the present application.

[0032] The method is a further extension of the above embodiment. When the read count acquisition command is to acquire the total read count results of all storage units, the read count results include the total read count results of all storage units. The method includes the following steps:

[0033] S31: In response to the total number of read times of all storage units being greater than the second preset threshold, determine whether there is a storage unit whose number of read times is greater than its corresponding first preset threshold.

[0034] The second preset threshold is a total number of reads set for all storage units. When the total number of reads of all storage units is greater than the second preset threshold, it indicates that there may be a storage unit with a large number of reads, and there is a greater possibility that data loss occurs in the storage unit. If it is not greater than, it indicates that there is a low possibility that there are a large number of reads of the storage unit, and there is a smaller possibility that data loss occurs in the storage unit. Therefore, a simple judgment is first made based on the total number of reads. When it is judged that the total number of reads of all storage units is greater than the second preset threshold, step S32 is executed for further judgment. If it is not greater than, wait for the next command. This can improve efficiency and avoid wasting judgment resources.

[0035] S32: Perform data reliability processing on the storage units whose read times are greater than the corresponding first preset threshold.

[0036] In further judgment, the reading number result is judged again by the first preset threshold value corresponding to the storage block, and reliability processing is performed on the storage unit whose reading number is greater than the first preset threshold value.

[0037] This method is usually suitable for the case where data is read relatively evenly, and the number of reads between each storage unit is not much different. If the number of reads of some storage units is too different from the number of reads of other storage units, it is not suitable to use this method to obtain the number of reads and determine the reliability processing.

[0038] In the technical solution of the present application, the read count result may directly represent the read count, or may represent whether the read count of a storage block is greater than its corresponding read count threshold. When the read count result directly represents the read count, it indicates that the comparison and judgment of the read count is performed by the control unit, and when the read count result represents whether the read count of a storage block is greater than its corresponding read count threshold, it indicates that the comparison and judgment of the read count is performed by the storage array.

[0039] When the result of the number of reads is data that directly represents the number of times, the threshold of the number of reads corresponding to the storage block is the first preset threshold. After the control unit obtains the number of reads, it can compare and judge the number of reads in the control unit. The result of the number of reads can be one added for each read, or the corresponding risk coefficient can be added according to the reading method, such as repeated reading and random reading, and the corresponding risk coefficients are one and two. One repeated read adds one, and one random read adds two. Alternatively, it is increased according to the read address. For example, in the storage array, some word lines have poor read interference. When the word line is read, the number of reads of the storage unit is increased by two, and when other normal word lines are read, the number of reads of the storage unit is increased by one.

[0040] When the read count result indicates whether the read count of the storage block is greater than the corresponding read count threshold, for example, the read count result can be 0 or 1, 0 indicates that the read count of the storage block is less than the corresponding read count threshold, and 1 indicates that the read count of the storage block is greater than or equal to the corresponding read count threshold. At this time, the first preset threshold is 0, if the read result is 0, equal to 0, then no data reliability processing is performed, and if the read result is 1, greater than 0, then data reliability processing is performed.

[0041] If the read count result indicates whether the read count of the storage block is greater than the corresponding read count threshold, the storage array needs to obtain the read count threshold for comparison and judgment of the storage unit read count. Therefore, in one embodiment, before the control unit sends a read count acquisition command to the storage array, it includes: the control unit sends the read count threshold to the storage array, so that the storage array obtains the read count result based on the read count threshold. The read count threshold can be stored in the counting module.

[0042] In addition, the storage of the number of reads in the counting module can be stored in the form of a read count table. One arrangement of the read count table can be, for example, the number of reads of each storage unit occupies 4 bytes, that is, the 0th to 3rd bytes are the number of reads of storage unit 0, the 4th to 7th are the number of reads of storage unit 1, and so on. Alternatively, a bit indicates whether a storage unit exceeds its corresponding read count threshold, 1 indicates exceeding, and 0 indicates not exceeding. For example, 8 storage units can be marked with one Byte, and the 0th Byte represents whether the number of reads of storage units 0-7 exceeds the read count threshold, where Bit0 corresponds to storage unit 0, Bit1 corresponds to storage unit 1, and so on. The second Byte represents storage units 8-16, and its Bit0 represents storage unit 8, and so on.

[0043] In the above-mentioned embodiment of the present application, after obtaining the result of the number of reads, the control unit performs data reliability processing according to the result of the number of reads, thereby improving the performance of the storage device.

[0044] In one embodiment, in response to the storage device being powered off, the control unit controls the storage array to send the first data in the counting module to the storage unit. The control unit may first read the first data in the counting module and then store it in the storage unit, or may at least instruct to directly store the first data in the counting module in the storage unit.

[0045] In another embodiment, in response to the storage device being powered on, the control unit controls the storage array to send the first data stored in the storage unit to the counting module. Before powering on, the read count threshold may be stored in the storage unit in advance so as to be obtained from the storage unit during powering on.

[0046] Reference Figure 4 , Figure 4 This is a flow chart of the fourth embodiment of the data management method of the present application. It is applied to a storage device, which includes a control unit and at least one storage array, each storage array includes at least one storage unit and a counting module, the storage unit includes a non-volatile storage circuit, the counting module includes a storage circuit and a logic circuit, the logic circuit is used to obtain the number of reads of the storage unit, and the storage circuit is used to save the number of reads. The method includes the following steps:

[0047] S41: The storage array receives a read count acquisition command sent by the control unit.

[0048] S42: The storage array obtains the reading number result from the counting module based on the reading number acquisition command, and sends the reading number result to the control unit.

[0049] The storage array obtains the read count acquisition command, obtains the read count result from the counting module according to the acquisition command, and sends it to the control unit.

[0050] The read count acquisition command can be used to acquire the read count of a single storage unit or the read count of all storage units. The read count acquisition command can be sent after each data read or at a time interval according to actual conditions. If the command is sent after each data read, the read count acquisition command can be sent to the corresponding storage array according to the address of the data read. If the command is sent at a time interval, the object storage array and time interval of the read count acquisition command can be set according to actual needs.

[0051] In one embodiment, in response to the control unit performing data reliability processing on the storage unit based on the read count result, the storage array clears the read count of the storage unit in the counting module to enable the storage unit to restart the reading count after completing the data reliability processing.

[0052] A specific embodiment is given below to illustrate the technical solution of the present application in more detail.

[0053] The storage device includes a main control and NAND Flash. The NAND Flash includes multiple NAND Flash particles, each of which includes multiple storage blocks. A counting module is designed on each particle. The counting module is composed of a storage circuit and a logic circuit. The storage circuit in the storage counting module can be a non-volatile storage circuit or a volatile storage circuit. A counting management module can also be set in the main control to interact with the counting module in the particle.

[0054] When the master controller sends a data read command, the NAND Flash will decode the command to the corresponding read position, and then read at the corresponding address. The counting module of the particle to which the address belongs will increase the number of reads accordingly.

[0055] The master controller sends a command to the NAND Flash to obtain the number of reads. Therefore, commands with multiple functions can be set to achieve interaction with the Flash. For example, CMD1 sets a threshold for the counting module; CMD2 reads the threshold set for the counting module; CMD3 obtains the read count result of the corresponding particle after a certain read command; CMD4 reads the read count table stored in the particle non-volatile storage circuit; CMD5 writes the read count table to the particle non-volatile storage circuit; CMD6 reads the read count results of all storage particles; CMD7 stores the read count table in the particle volatile storage circuit to the particle non-volatile storage circuit; CMD8 stores the count table in the particle non-volatile storage circuit to the particle volatile storage circuit.

[0056] For example, CMD1 can be used to set the read count threshold T1 of the storage block, and then CMD3 can be used to obtain the read count result of the storage block at the corresponding address (indicating whether it exceeds T1). If you want to pass the read count table in the master control to the counting module of the Flash, you can use CMD5. Send a CMD and the corresponding address to the NAND Flash to pass the read count table to the counting module in the form of data. One arrangement of the read count table can be, for example, the read count of each storage block occupies 4 bytes, that is, the 0th to 3rd bytes are the read counts of storage block 0, the 4th to 7th are the read counts of storage block 1, and so on. Alternatively, a bit indicates whether a storage block exceeds its corresponding read count threshold, 1 indicates exceeding, and 0 indicates not exceeding. For example, one Byte can be used to mark 8 storage blocks, and the 0th Byte represents whether the read count of storage blocks 0-7 exceeds the read count threshold, where Bit0 corresponds to storage block 0, Bit1 corresponds to storage block 1, and so on. The second Byte represents storage blocks 8-16, and its Bit0 represents storage block 8, and so on.

[0057] The above interactive commands can reuse the existing Set Feature / Set Parameter methods of NAND Flash. CMD can indicate one command or multiple commands.

[0058] like Figure 5 As shown, Figure 5 This is a schematic structural diagram of the first embodiment of the storage device of the present application.

[0059] The electronic device includes a control unit 110 and at least one storage array 120 .

[0060] Each storage array 120 includes at least one storage unit 121 and a counting module 122. The storage unit 121 includes a non-volatile storage circuit. The counting module 122 includes a storage circuit and a logic circuit. The logic circuit is used to obtain the number of reads of the storage unit 121, and the storage circuit is used to save the number of reads of the storage unit 121.

[0061] The control unit 110 controls the operation of the storage device, and the control unit 110 may also be referred to as a CPU (Central Processing Unit). The control unit 110 may be an integrated circuit chip having the ability to process a signal sequence. The control unit 110 may also be a general-purpose processor, a digital signal sequence processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.

[0062] The control unit 110 is connected to the storage array 120 to implement the method provided by any embodiment and possible combination of the data management method of the present application.

[0063] In summary, the present application is applied to a storage device, which includes a control unit and at least one storage array, each storage array including at least one storage unit and a counting module. The storage unit includes a non-volatile storage circuit. The counting module includes a storage circuit and a logic circuit, the logic circuit is used to obtain the number of reads of the storage unit, and the storage circuit is used to save the number of reads. The control unit sends a read count acquisition command to the storage array, and receives the read count result obtained from the counting module sent by the storage array, and the count of the read count is handed over to the counting module in the storage array. The control unit can obtain the read count result through the command, which reduces the occupation of the memory resources used by the control unit by the read count statistics, and improves the data reading performance of the storage device.

[0064] In the several embodiments provided in this application, it should be understood that the disclosed methods and devices can be implemented in other ways. For example, the device implementation described above is only illustrative, for example, the division of the modules or units is only a logical function division, and there may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed.

[0065] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.

[0066] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0067] If the integrated units in the above other embodiments are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, server, or network device, etc.) or a processor (processor) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, RandomAccess Memory), disk or optical disk and other media that can store program codes.

[0068] The above description is only an embodiment of the present application and does not limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the present application specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present application.

Claims

1. A data management method, characterized in that: Applied to a storage device, the storage device includes a control unit and at least one storage array, each of the storage arrays includes at least one storage unit and a counting module, the storage unit includes a non-volatile storage circuit, the counting module includes a storage circuit and a logic circuit, the logic circuit is used to obtain the number of times the storage unit is read, and the storage circuit is used to save the number of times the storage unit is read, the method includes: The control unit sends a read count acquisition command to the storage array; The control unit receives the reading number result sent by the storage array, and the reading number result is obtained by the storage array from the counting module based on the reading number acquisition command.

2. The method according to claim 1, characterized in that The read count result includes a read count result of the storage unit. After the control unit receives the read count result sent by the storage array, the control unit includes: In response to the reading number result of the storage unit being greater than a first preset threshold, data reliability processing is performed on the storage unit.

3. The method according to claim 1, characterized in that The read count result includes the total read count results of all the storage units. After the control unit receives the read count result sent by the storage array, it includes: In response to the total number of read times of all the storage units being greater than a second preset threshold, determining whether there is a storage unit whose number of read times is greater than its corresponding first preset threshold; If so, data reliability processing is performed on the storage unit whose reading times result is greater than the corresponding first preset threshold.

4. The method according to claim 2, characterized in that: Before the control unit sends a read count acquisition command to the storage array, the control unit includes: The control unit sends a read count threshold to the storage array, so that the storage array obtains the read count result based on the read count threshold.

5. The method according to claim 4, characterized in that The reading times threshold is stored in the counting module.

6. The method according to claim 1, characterized in that The method further comprises: In response to the storage device being powered off, the control unit controls the storage array to send the first data in the counting module to the storage unit.

7. The method according to claim 6, characterized in that The method further comprises: In response to the storage device being powered on, the control unit controls the storage array to send the first data stored in the storage unit to the counting module.

8. A data management method, characterized in that: Applied to a storage device, the storage device includes a control unit and at least one storage array, each of the storage arrays includes at least one storage unit and a counting module, the storage unit includes a non-volatile storage circuit, the counting module includes a storage circuit and a logic circuit, the logic circuit is used to obtain the number of times the storage unit is read, and the storage circuit is used to save the number of times the storage unit is read, the method includes: The storage array receives a read count acquisition command sent by the control unit; The storage array obtains a reading number result from the counting module based on the reading number acquisition command, and sends the reading number result to the control unit.

9. The method according to claim 8, characterized in that The method further comprises: In response to the control unit performing data reliability processing on the storage unit based on the reading number result, the storage array clears the reading number of the storage unit in the counting module.

10. A storage device, characterized in that: It includes a control unit and at least one storage array, each of the storage arrays includes at least one storage unit and a counting module, the storage unit includes a non-volatile storage circuit, the counting module includes a storage circuit and a logic circuit, the logic circuit is used to obtain the number of read times of the storage unit, and the storage circuit is used to save the number of read times of the storage unit. The control unit is connected to the storage array to implement the method as described in any one of claims 1 to 9.

Citation Information

Patent Citations

  • Techniques for preventing read disturb in NAND memory

    CN112992206A

  • Non-volatile memory

    US20060249585A1

  • Memory system protected from errors due to read disturbance and reading method thereof

    US20090034328A1

  • System and method for counter flush frequency

    US20170075593A1

  • Magnetic memory device

    US20180233190A1