Data rereading method and device, terminal equipment and storage medium

By obtaining the preset reread table of the storage medium and the automatic bias correction algorithm, the read voltage is gradually adjusted, which solves the data loss problem caused by the voltage offset of the storage medium, and improves the success rate and efficiency of rereading.

CN119960702AActive Publication Date: 2025-05-09BIWIN STORAGE TECH CO LTD +1

Patent Information

Application Number
CN202510443520.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-10
Publication Date
2025-05-09
Estimated Expiration
2045-04-10

AI Technical Summary

Technical Problem

When the storage medium is offset by high temperature and aging, reading data using the default voltage may cause UNC errors. The existing technology Hard Retry and ARC automatic bias correction algorithms are difficult to effectively solve the problem of data loss.

Method used

Provide a data reread method, by obtaining the preset reread voltage in the preset reread table, performing multiple rereads, and combining the automatic bias correction algorithm to calculate the calibration voltage, and gradually adjust the read voltage to improve the success rate of rereading.

Benefits of technology

By combining the preset reread voltage in the reread table and the automatic bias correction algorithm, the problem of finding the wrong offset direction during bias correction is reduced, the success rate and efficiency of reread are improved, and data loss is avoided.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119960702A_ABST
    Figure CN119960702A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of data reading, in particular to a data rereading method and device, terminal equipment and a storage medium. The method comprises the following steps: when data reading by using default voltage fails, acquiring a preset rereading meter, reading preset rereading voltage of current traversal in the rereading meter, and performing first rereading according to the preset rereading voltage; if the first rereading fails, calculating a first offset voltage according to a preset rereading voltage to obtain a first calibration voltage, and performing second rereading according to the first calibration voltage; if the second rereading fails, obtaining a first offset voltage to obtain a second calibration voltage, and performing third rereading according to the second calibration voltage; and if the third re-reading fails and all preset re-reading voltages in the re-reading meter are not completely traversed, repeating the steps from the first re-reading to the third re-reading. Therefore, the correction capability is enhanced, the correction efficiency is improved, and the probability of data loss is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of storage technology, and in particular to a data rereading method, device, terminal equipment and storage medium. Background Art

[0002] The data written to the storage medium needs to be read by the set voltage. When the storage medium is affected by factors such as high temperature and aging, the voltage that can read the data will shift. At this time, using the default voltage to read may result in a UNC (uncorrect) error. A suitable voltage needs to be offset to try to read back the data. This action is called Hard Retry. The correction voltage can be obtained from the retry table provided by the original manufacturer, but these voltages are fixed. There is a situation where the data cannot be corrected when all the original tables have been tried, which eventually leads to data loss. Using ARC (AUTO READ CALIBRATION, automatic correction algorithm) will also have the problem of finding the wrong offset direction. Summary of the invention

[0003] In view of this, an embodiment of the present application provides a data rereading method, which can effectively solve the problem of data loss caused by data rereading.

[0004] In a first aspect, an embodiment of the present application provides a data rereading method, comprising: When reading data using the default voltage fails, obtaining a preset reread table, reading the currently traversed preset reread voltage in the reread table, and performing a first reread according to the preset reread voltage; If the first reread fails, calculating a first offset voltage according to the preset reread voltage to obtain a first calibration voltage, and performing a second reread according to the first calibration voltage; If the second reread fails, the first offset voltage is obtained, a second offset voltage is calculated according to the first offset voltage and the preset reread voltage to obtain a second calibration voltage, and a third reread is performed according to the second calibration voltage; If the third reread fails and all preset reread voltages in the reread table have not been traversed, the next preset reread voltage in the reread table is read, and the steps from the first reread to the third reread are repeated.

[0005] In some embodiments, the method further comprises: If the third reread fails and all preset reread voltages in the reread table are traversed, the soft decoding reread or data error is entered.

[0006] In some embodiments, the step of calculating the first offset voltage according to the preset re-read voltage to obtain the first calibration voltage includes: Based on the preset re-read voltage, a first offset voltage is calculated by an automatic deviation correction algorithm; The first offset voltage and the preset re-read voltage are added to obtain a first calibration voltage.

[0007] In some embodiments, the acquiring the first offset voltage, calculating the second offset voltage according to the first offset voltage and the preset re-read voltage, and obtaining the second calibration voltage includes: taking the sum of the preset reread voltage and the first offset voltage as a base voltage; Based on the basic voltage, a second voltage offset value is calculated by an automatic deviation correction algorithm, and the sum of the second voltage offset value and the basic voltage is a second calibration voltage.

[0008] In some embodiments, performing a second re-reading according to the first calibration voltage includes: calculating a sum of the first calibration voltage and the default voltage as a reread voltage; A second reread is performed according to the reread voltage, and feedback is given as to whether the reread is successful.

[0009] In some embodiments, the method further comprises: When the rereading succeeds, the rereading voltage of the current successful rereading is recorded, and when the data reading fails using the default voltage next time, the rereading voltage is directly called to perform rereading.

[0010] In some embodiments, performing a third re-reading according to the second calibration voltage includes: calculating a sum of the second calibration voltage and the default voltage as a reread voltage; A third reread is performed according to the reread voltage, and feedback is given as to whether the reread is successful.

[0011] In a second aspect, the present application further provides a data re-reading device, comprising: A first rereading module, configured to obtain a preset rereading table, read a currently traversed preset rereading voltage in the rereading table, and perform a first rereading according to the preset rereading voltage when reading data using a default voltage fails; A second rereading module, configured to calculate a first offset voltage according to the preset rereading voltage to obtain a first calibration voltage if the first rereading fails, and perform a second rereading according to the first calibration voltage; A third rereading module, configured to obtain the first offset voltage if the second rereading fails, calculate a second offset voltage according to the first offset voltage and the rereading voltage, obtain a second calibration voltage, and perform a third rereading according to the second calibration voltage; A loop module is used to read the next preset reread voltage in the reread table and repeat the steps of the first reread to the third reread if the third reread fails and all the preset reread voltages in the reread table have not been traversed.

[0012] In a third aspect, the present application also provides a terminal device, comprising a processor and a memory, wherein the memory stores a computer program, and the processor is configured to execute the computer program to implement the data re-reading method.

[0013] In a fourth aspect, the present application also provides a computer-readable storage medium storing a computer program, wherein when the computer program is executed on a processor, the data rereading method is implemented.

[0014] The embodiments of the present application have the following beneficial effects: The present application performs correction by combining the preset reread voltage recorded in the reread table with the default voltage, thereby reducing the problem of the correction algorithm finding the wrong offset direction during correction, and calculates the second calibration voltage by inheriting the first calibration voltage during the first reread, thereby improving the hit rate during the second reread, and improving the success rate of rereading and the efficiency of successful rereading. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0016] Figure 1 A schematic diagram of a data re-reading method flow in an embodiment of the present application is shown; Figure 2 A schematic diagram of a voltage curve of a deviation in an embodiment of the present application is shown; Figure 3 A schematic diagram of a flow chart of another data re-reading method according to an embodiment of the present application is shown; Figure 4 A schematic structural diagram of a data re-reading device according to an embodiment of the present application is shown. DETAILED DESCRIPTION

[0017] In the description of the present application, it should be understood that the terms "center", "longitudinal", "lateral", "length", "width", "thickness", "up", "down", "front", "back", "left", "right", "vertical", "horizontal", "top", "bottom", "inside", "outside", "clockwise", "counterclockwise", "axial", "radial", "circumferential" and the like indicate orientations or positional relationships based on the orientations or positional relationships shown in the accompanying drawings, and are only for the convenience of describing the present application and simplifying the description, and do not indicate or imply that the referred device or element must have a specific orientation, be constructed and operated in a specific orientation, and therefore should not be understood as a limitation on the present application.

[0018] Hereinafter, the terms "including", "having" and their cognates that can be used in various embodiments of the present application are intended only to indicate specific features, numbers, steps, operations, elements, components or a combination of the foregoing items, and should not be understood as first excluding the existence of one or more other features, numbers, steps, operations, elements, components or a combination of the foregoing items or increasing the possibility of one or more features, numbers, steps, operations, elements, components or a combination of the foregoing items. In addition, the terms "first", "second", "third" and the like are only used to distinguish descriptions and cannot be understood as indicating or implying relative importance.

[0019] In this application, unless otherwise clearly specified and limited, the terms "installed", "connected", "connected", "fixed" and the like should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, it can be the internal connection of two elements or the interaction relationship between two elements. For ordinary technicians in this field, the specific meanings of the above terms in this application can be understood according to specific circumstances.

[0020] The components of the embodiments of the present application generally described and shown in the drawings herein may be arranged and designed in various configurations. Therefore, the following detailed description of the embodiments of the present application provided in the drawings is not intended to limit the scope of the application claimed for protection, but merely represents the selected embodiments of the present application. Based on the embodiments of the present application, all other embodiments obtained by those skilled in the art without making creative work belong to the scope of protection of the present application.

[0021] Unless otherwise defined, all terms (including technical terms and scientific terms) used herein have the same meanings as those generally understood by those skilled in the art to which the various embodiments of the present application belong. The terms (such as those defined in generally used dictionaries) will be interpreted as having the same meanings as the contextual meanings in the relevant technical field and will not be interpreted as having idealized meanings or overly formal meanings unless clearly defined in the various embodiments of the present application.

[0022] In conjunction with the accompanying drawings, some embodiments of the present application are described in detail below. In the absence of conflict, the following embodiments and features in the embodiments can be combined with each other.

[0023] When reading data from NAND flash, there is a read voltage offset, so it is necessary to offset a suitable voltage to try to read the data. This action is hard decoding. The present application provides a data rereading method. When a read error occurs, a preset reread table is read, a preset reread voltage in the reread table is read, and a first calibration voltage is calculated based on the preset reread voltage and the default voltage to perform rereading. If the rereading still fails, voltage correction is performed based on the first calibration voltage to perform a second rereading.

[0024] In this way, more accurate correction can be achieved by relying on the preset re-read voltage and the correction algorithm's correction capability.

[0025] The data re-reading method is described below in conjunction with some specific embodiments.

[0026] Figure 1 A flow chart of a data re-reading method according to an embodiment of the present application is shown. Exemplarily, the data re-reading method comprises the following steps: Step S100, when reading data using the default voltage fails, obtaining a preset reread table, reading the currently traversed preset reread voltage in the reread table, and performing a first reread according to the preset reread voltage.

[0027] Because the read voltage of the storage device is offset due to the external environment or other reasons, the user may encounter a read error when reading the data in the storage device, so the default voltage needs to be corrected to read back the data. If only the default voltage is used for reading, there will be a read failure.

[0028] There are many storage cells (floating gate transistors) in the storage medium. Each storage cell can represent 0 or 1. If a certain voltage is applied to the storage cell, if the storage cell is turned on, the storage cell represents 1, and if the storage cell is turned off, the storage cell represents 0. Assuming there are 8 storage cells, none of which have been written to, and the default voltage is applied, it will be found that all of them can be turned on, and the data read is 1111 1111. If you want to write the data 1101 0100, you only need to charge a certain amount of electrons (write operation) into the 3rd, 5th, 7th, and 8th storage cells to make its turn-on voltage greater than the default voltage. When the default voltage is applied to read, it will be found that the 3rd, 5th, 7th, and 8th storage cells are turned off, and the others are turned on, and the data is 1101 0100. If the applied voltage is inappropriate, for example, too small, the storage cell that should have been turned on will be turned off, 1 will become 0, and the data will be wrong.

[0029] As for the storage device, a reread table is set inside it, which stores multiple preset reread voltages for rereading. The values ​​of these voltages are pre-set and are used for correction operations in the event of a read error.

[0030] For example, the default voltage is recorded as V0, and each preset reread voltage in the reread table is recorded as V1. After obtaining the preset reread voltage, V1 can be used as the reread voltage for this reread. If the default voltage V0 fails to read data, V1 is directly used as the reading voltage to perform the reread operation.

[0031] However, because V1 is a fixed value, the correction method is not flexible enough, so there may be situations where the correction fails through V1.

[0032] Step S200 , if the first reread fails, a first offset voltage is calculated according to the preset reread voltage to obtain a first calibration voltage, and a second reread is performed according to the first calibration voltage.

[0033] In this embodiment, after reading the preset reread voltage, the preset reread voltage can be directly used for correction and rereading. However, because these preset reread voltages are hard-coded data, it is often possible to traverse all the preset reread voltages in the reread table and still fail to read the data correctly.

[0034] Therefore, after the correction using V1 fails, the voltage will be automatically calibrated in combination with the preset re-read voltage to obtain the first calibration voltage.

[0035] In this embodiment, an ARC (AUTO READ CALIBRATION) automatic calibration algorithm is called to perform a corresponding calibration operation. A first offset voltage is calculated based on a preset re-read voltage V1, and the first calibration voltage is calculated by the sum of the preset re-read voltage and the first offset voltage. The automatic calibration algorithm is used to calculate the offset voltage to correct the base voltage according to the calculated voltage offset, so that the offset voltage can perform data reading operations normally. The principle is to find a voltage value that can be connected in the direction of the two offset voltages according to the base voltage to calculate the offset voltage used for correction.

[0036] The first calibration voltage is a voltage value calculated based on the above-mentioned V1. It should be noted that when performing ARC algorithm correction, it is necessary to determine whether the voltage is currently biased to the left or right, and then calculate the offset voltage to correct V1 to obtain the first calibration voltage.

[0037] After the first calibration voltage is calculated, the sum of the first calibration voltage and the default voltage can be used as the re-read voltage, and the re-read voltage is used to perform a second re-read operation, and feedback is given on whether the re-reading is successful. The value of the default voltage can be determined according to actual settings, such as 1V, 2V, etc., and the default voltage can also be excluded from the calculation, in which case the default voltage can be set to 0V.

[0038] If there is Figure 2 In the situation shown, simply using the default voltage for ARC correction can easily lead to a wrong deviation direction.

[0039] Figure 2 The middle is a voltage curve graph, where the horizontal axis is the voltage value and the vertical axis is the current value. The curve with peaks B and C is the voltage curve of the storage device under normal conditions, and the curve with peaks B1 and C1 is the voltage curve of the storage device after the positive differential voltage is offset due to various reasons. After the positive differential voltage is offset, if the default voltage is still used to read data, it will not be able to conduct normally and cannot read data.

[0040] in Figure 2 The middle offset curve is biased to the left relative to the normal curve. Taking peak B as an example, peak B1 is biased to the left compared to the normal peak B, but the offset is large, so it is easy to judge the wrong direction.

[0041] In this case, when the default voltage is used as the reference voltage for ARC, ARC is likely to misjudge the C1 peak as B1, thinking that C1 is the result of B shifting right, resulting in the wrong voltage being found when re-reading. If the voltage is found in the wrong direction, the offset voltage that should have been -5V may become an erroneous offset voltage of +1V, thus mis-finding the correction voltage for re-reading. In fact, in order to correct the voltage of the B peak, it is looking for B1, so it finds Figure 2 The reread is accomplished by applying the deflection voltage shown.

[0042] This embodiment is based on the preset reread voltage combined with the ARC algorithm correction to perform more accurate correction, because the preset reread voltage is a value set according to the manufacturer's prior experience, and there is a certain difference between it and the default voltage, so it will be closer to the direction of the correct voltage than the default voltage. Then, using this as the basic voltage for correction makes it more likely to find the right direction when correcting. Then, a relatively correct first calibration voltage can be calculated. At the same time, there are multiple preset reread voltages in the reread table, which are rotated by traversal. Even if the offset direction of some preset reread voltages is wrong, a relatively correct preset reread voltage can always be found to perform the correction operation, that is, a left-biased preset reread voltage will always be found, so there is a chance to get a left-biased first calibration voltage to achieve rereading, so as to find the correction voltage.

[0043] Step S300: if the second reread fails, the first offset voltage is obtained, a second offset voltage is calculated according to the first offset voltage and the preset reread voltage to obtain a second calibration voltage, and a third reread is performed according to the second calibration voltage.

[0044] The first rereading of the aforementioned step may fail, for example, if the correction degree of the first calibration voltage is not enough, even if the correction direction is correct, it will cause data reading failure. When the first rereading fails, this embodiment will perform correction again based on the first calibration voltage to obtain the second calibration voltage.

[0045] That is, the first offset voltage and the preset reread voltage in the aforementioned step S200 are saved, and then the ARC algorithm is used to correct the offset again to obtain the second offset voltage, and then the sum of the first offset voltage, the preset reread voltage and the second offset voltage is calculated to obtain the second calibration voltage. Therefore, it can be considered that the second standard voltage is obtained based on the first standard voltage.

[0046] For example, if the first offset voltage is +3V and the preset re-read voltage is 2V, then this step uses 5V as the base voltage for correction. After calibration in this step, it is considered necessary to offset 2V to the right based on the base voltage. Here, +2V is the second offset voltage, and the second calibration voltage is 5+2=7V. In this way, the correction amount can be further increased to prevent failure due to insufficient correction.

[0047] After the second calibration voltage is calculated, the sum of the second calibration voltage and the default voltage can be calculated to obtain the reread voltage for the third reread, wherein the value of the default voltage can be determined according to actual settings, for example, it can be 1V, 2V, or 0V.

[0048] It can be understood that the second calibration voltage of this step is calculated based on the first calibration voltage, and is obtained by further offsetting the first calibration voltage, which can prevent the failure of rereading due to insufficient offset of the first calibration voltage. When the offset direction is found correctly, the obtained second standard voltage will be closer to the offset voltage, thereby increasing the corrected hit rate. Therefore, during the third rereading of this step, the reread voltage is the sum of the second calibration voltage and the second offset voltage, which has a higher hit rate than the reread voltage during the first calibration rereading.

[0049] The third re-reading operation is performed using the second calibration voltage as the re-reading voltage, and feedback is given on whether the re-reading is successful. If successful, the process ends; otherwise, the process proceeds to the next step.

[0050] Step S400, if the third reread fails and all preset reread voltages in the reread table have not been traversed, read the next preset reread voltage in the reread table, and repeat the steps of the first reread to the third reread.

[0051] In addition, there is also a situation where the third reread fails according to the second calibration voltage, but because there are multiple preset reread voltages stored in the reread table, the next preset voltage can be obtained from the reread table and the steps of the first reread to the third reread can be re-executed.

[0052] It is understandable that if the third reread fails, then there is a high probability that the offset direction is found incorrectly, that is, the preset reread voltage obtained from the reread table is still far from the correct voltage, so it is necessary to change a preset reread voltage as the basic voltage to perform the deviation correction operation.

[0053] After rereading using the second calibration voltage, determine whether the rereading is successful. If successful, the rereading ends. If unsuccessful, obtain the next preset rereading voltage from the rereading table, and then re-execute the above steps to start the cyclic rereading. In this way, the preset rereading voltages in the rereading table can be used with maximum efficiency to find the appropriate voltage for rereading.

[0054] In order to conveniently illustrate the technical effect of this embodiment, refer to the following Table 1 and Table 2, which are examples of a correction process in which 13 corrections are performed. The ARC value in the table indicates the type of correction performed by the ARC algorithm. When the ARC value is 1, it indicates that the correction operation in step S200 is performed. When the ARC value is 3, it indicates that the correction operation in step S300 is performed. The voltage is the voltage value obtained after correction. The data status is used to indicate whether the reading is successful. UNC indicates that the reading fails. The bit flip number can be used to indicate the reread quality. The smaller the flip number, the higher the reread quality.

[0055] Taking the default voltage as the base voltage, set ARC to 1, read once, then set it to 3, read multiple times, the reported data results and the voltage values ​​found are as follows: Table 1

[0056] Table 2

[0057] Combining Table 1 and Table 2, we can see that even if the default voltage is used as the base voltage, the final data can be corrected, but at least 6 ARCs are required. In actual applications, if the reread count is too large, it will cause a timeout, so generally only one or two ARCs will be performed, and the data will eventually be UNC. However, after continuing to read multiple times, the data can be corrected each time, the number of data bit flips is getting smaller and smaller, and the voltage value is also constantly changing. Finally, after 13 reads, the voltage value stabilized at 0x80, and the number of bit flips was 0, indicating that perfect correction was basically achieved. This shows that if ARC correction is performed based on the first calibration voltage, the correction success rate will be improved.

[0058] The correction process data shown in Tables 1 and 2 above are to illustrate that the correction effect can be successfully achieved by repeatedly executing ARC. At the same time, it can be explained that in this embodiment, the cyclic correction by traversing the reread voltage in the reread table can achieve successful correction in a more efficient way than in Tables 1 and 2 above. For example, in one correction, the reread voltage in the traversal reread table is introduced, and the offset of the reread voltage is brought in, so that the correction can be successful faster. The actual correction operation can be less than the number shown in Tables 1 and 2 above, thereby improving the efficiency and accuracy of the correction. In addition, the improvement of the correction efficiency will also improve the user experience as a whole, thereby affecting the reaction speed of the machine and other aspects.

[0059] Among them Figure 3 As shown, this embodiment also includes: Step S500 , if the third reread fails and all preset reread voltages in the reread table have been traversed, then soft decoding reread or data error is entered.

[0060] When three rereadings fail and all preset reread voltages in the preset rereading table have been traversed, it means that the correction cannot be successful. At this time, the above method is no longer used to reread to find the voltage, but the data is restored through soft decoding rereading, or data error is directly reported to prompt the user that the data is wrong.

[0061] In this embodiment, a combination of a preset reread voltage and a default voltage is used, and the correction efficiency is higher than that shown in Tables 1 and 2 above, and multiple preset reread voltages are stored in the reread table. Therefore, even if the second ARC correction fails, the next preset reread voltage can be directly read from the reread table, and then the operation of step S200 can be re-executed to restart the correction. There is no need to repeat the correction on a basic voltage and waste time.

[0062] The data rereading method of the present embodiment performs a correction operation based on a preset rereading voltage in a rereading table, so that the correction process is not easy to be reversed, and the correction process is corrected twice by using two correction methods with different basic voltages, thereby preventing rereading failure caused by insufficient correction, thereby increasing the correction success process and increasing data rereading efficiency.

[0063] Figure 4 A schematic diagram of the structure of a data re-reading device according to an embodiment of the present application is shown. Exemplarily, the device includes: A first rereading module 10 is used to obtain a preset rereading table, read the currently traversed preset rereading voltage in the rereading table, and perform a first rereading according to the preset rereading voltage when reading data using the default voltage fails; A second rereading module 20, configured to calculate a first offset voltage according to the preset rereading voltage to obtain a first calibration voltage if the first rereading fails, and perform a second rereading according to the first calibration voltage; A third rereading module 30, configured to obtain the first offset voltage if the second rereading fails, calculate a second offset voltage according to the first offset voltage and the rereading voltage, obtain a second calibration voltage, and perform a third rereading according to the second calibration voltage; The loop module 40 is used to read the next preset reread voltage in the reread table and repeat the steps of the first reread to the third reread if the third reread fails and all the preset reread voltages in the reread table have not been traversed.

[0064] The present application also relates to a terminal device, which includes a processor and a memory, wherein the memory stores a computer program, and the processor is used to execute the computer program to implement the data re-reading method.

[0065] The terminal device can be a computer, smart collection, tablet or other device with data reading and writing, computing and program processing functions. In daily work scenarios, the terminal device needs to perform operations such as data reading and writing, and can run the data rereading method in the above embodiment.

[0066] The present application also provides a computer-readable storage medium storing a computer program, wherein when the computer program is executed on a processor, the data rereading method is implemented.

[0067] It can be understood that the device of this embodiment corresponds to the method of the above embodiment, and the options in the above embodiment are also applicable to this embodiment, so they will not be described repeatedly here.

[0068] Among them, the processor can be an integrated circuit chip with signal processing capabilities. The processor can be a general-purpose processor, including a central processing unit (CPU), a graphics processing unit (GPU), a network processor (NP), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or at least one of other programmable logic devices, discrete gates or transistor logic devices, and discrete hardware components. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc., which can implement or execute the methods, steps and logic block diagrams disclosed in the embodiments of the present application.

[0069] The memory may be, but is not limited to, a random access memory (RAM), a read only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electric erasable programmable read-only memory (EEPROM), etc. The memory is used to store a computer program, and the processor may execute the computer program accordingly after receiving an execution instruction.

[0070] The present application also provides a computer-readable storage medium for storing the computer program used in the above terminal device. For example, the computer-readable storage medium may include but is not limited to: a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and other media that can store program codes.

[0071] In several embodiments provided in the present application, it should be understood that the disclosed devices and methods can also be implemented in other ways. The device embodiments described above are merely schematic. For example, the flowcharts and structure diagrams in the accompanying drawings show the possible architecture, functions and operations of the devices, methods and computer program products according to multiple embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of a code, and the module, a program segment or a part of a code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in an alternative implementation, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the structure diagram and / or the flow diagram, and the combination of boxes in the structure diagram and / or the flow diagram, can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions.

[0072] In addition, the functional modules or units in the various embodiments of the present application may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.

[0073] If the functions are implemented in the form of software function modules 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, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling a computer device (which can be a smart phone, a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application.

[0074] The above description is only a specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application.

Claims

1. A data re-reading method, characterized in that: include: When reading data using the default voltage fails, obtaining a preset reread table, reading the currently traversed preset reread voltage in the reread table, and performing a first reread according to the preset reread voltage; If the first reread fails, calculating a first offset voltage according to the preset reread voltage to obtain a first calibration voltage, and performing a second reread according to the first calibration voltage; If the second reread fails, the first offset voltage is obtained, a second offset voltage is calculated according to the first offset voltage and the preset reread voltage to obtain a second calibration voltage, and a third reread is performed according to the second calibration voltage; If the third reread fails and all preset reread voltages in the reread table have not been traversed, the next preset reread voltage in the reread table is read, and the steps from the first reread to the third reread are repeated.

2. The data re-reading method according to claim 1, characterized in that: Also includes: If the third reread fails and all preset reread voltages in the reread table are traversed, the soft decoding reread or data error is entered.

3. The data re-reading method according to claim 1, characterized in that: The step of calculating the first offset voltage according to the preset re-read voltage to obtain the first calibration voltage includes: Based on the preset re-read voltage, a first offset voltage is calculated by an automatic deviation correction algorithm; The first offset voltage and the preset re-read voltage are added to obtain a first calibration voltage.

4. The data re-reading method according to claim 1, characterized in that: The acquiring the first offset voltage, calculating the second offset voltage according to the first offset voltage and the preset re-read voltage, and obtaining the second calibration voltage includes: taking the sum of the preset reread voltage and the first offset voltage as a base voltage; Based on the basic voltage, a second voltage offset value is calculated by an automatic deviation correction algorithm, and the sum of the second voltage offset value and the basic voltage is a second calibration voltage.

5. The data re-reading method according to claim 1, characterized in that: The performing a second re-reading according to the first calibration voltage comprises: calculating a sum of the first calibration voltage and the default voltage as a reread voltage; A second reread is performed according to the reread voltage, and feedback is given as to whether the reread is successful.

6. The data re-reading method according to claim 1, characterized in that: Also includes: When the rereading succeeds, the rereading voltage of the current successful rereading is recorded, and when the data reading fails using the default voltage next time, the rereading voltage is directly called to perform rereading.

7. The data re-reading method according to claim 1, characterized in that: The performing a third re-reading according to the second calibration voltage includes: calculating a sum of the second calibration voltage and the default voltage as a reread voltage; A third reread is performed according to the reread voltage, and feedback is given as to whether the reread is successful.

8. A data re-reading device, characterized in that: include: A first rereading module, configured to obtain a preset rereading table, read a currently traversed preset rereading voltage in the rereading table, and perform a first rereading according to the preset rereading voltage when reading data using a default voltage fails; A second rereading module, configured to calculate a first offset voltage according to the preset rereading voltage to obtain a first calibration voltage if the first rereading fails, and perform a second rereading according to the first calibration voltage; A third rereading module, configured to obtain the first offset voltage if the second rereading fails, calculate a second offset voltage according to the first offset voltage and the rereading voltage, obtain a second calibration voltage, and perform a third rereading according to the second calibration voltage; A loop module is used to read the next preset reread voltage in the reread table and repeat the steps of the first reread to the third reread if the third reread fails and all the preset reread voltages in the reread table have not been traversed.

9. A terminal device, characterized in that: The terminal device comprises a processor and a memory, wherein the memory stores a computer program, and the processor is configured to execute the computer program to implement the data re-reading method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that: The device stores a computer program, which, when executed on a processor, implements the data re-reading method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Data recovery method and system used for flash memory

    CN108717385A

  • Gear shifting method and system for NAND rereading gear, and related assembly

    CN114049910A

  • Data reading method and device of flash memory device, storage medium and flash memory device

    CN114138190A

  • Nonvolatile memory device, memory system, and read method

    CN115527593A

  • KR20240028875A

Cited By

  • Storage device control method and storage device

    CN120104071A

  • A control method for a storage device and a storage device

    CN120104071B

  • Method for executing rereading operation, electronic equipment, storage medium and program product

    CN120832098A