A method, apparatus and device for determining a voltage offset value of a control voltage threshold

By using an iterative polling optimization method, the control voltage threshold voltage offset value of the non-volatile memory is adjusted according to the chip type and initial voltage offset value of the non-volatile memory, which solves the problem of low efficiency in the prior art and achieves more efficient and accurate data reading.

CN120032676BActive Publication Date: 2025-11-07SLICONGO MICROELECTRONICS INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411988623.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-30
Publication Date
2025-11-07
Estimated Expiration
2044-12-30

AI Technical Summary

Technical Problem

The existing technology for determining the control voltage threshold voltage offset value of non-volatile memory is inefficient, resulting in insufficient data reading accuracy.

Method used

The control voltage threshold corresponding to the memory cell is determined based on the chip type of the non-volatile memory. An initial reference value is set using the initial voltage offset value. The preset voltage offset value of the target control voltage threshold is adjusted through an iterative polling optimization method until the optimal combination is achieved.

Benefits of technology

This improves the efficiency of determining the control voltage threshold voltage offset value, ensures the accuracy of data reading, and reduces the number of iterative search optimization operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120032676B_ABST
    Figure CN120032676B_ABST
Patent Text Reader

Abstract

The application provides a method, device and equipment for determining a voltage offset value of a control voltage threshold, which comprises the following steps: determining the control voltage threshold corresponding to each memory cell in a page according to the chip type of a nonvolatile memory; setting each control voltage threshold by using an initial voltage offset value, and determining an initial reference value corresponding to the page; determining a target control voltage threshold from each control voltage threshold in a polling mode, setting the target control voltage threshold by using a preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining an adjustment reference value corresponding to the page; if the adjustment reference value is smaller than the initial reference value, determining that the target control voltage threshold is the preset voltage offset value; otherwise, setting the target control voltage threshold as the preset voltage offset value determined in the previous iteration search optimization operation; and then returning to execute the iteration search optimization operation. The method can efficiently determine the voltage offset value of the control voltage threshold.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of non-volatile storage, in particular to a method and device for determining a voltage offset value of a control voltage threshold. BACKGROUND

[0002] In the technical field of non-volatile storage, a page (Page Type) of a non-volatile memory such as a NAND flash memory generally includes a plurality of memory cells, each of which can store different amounts of electrons to form different voltage thresholds (Vth); a flash controller determines the memory cell state of the memory cell by detecting the voltage threshold of the memory cell and comparing the voltage threshold with a voltage offset value of a control voltage threshold corresponding to the memory cell.

[0003] In order to improve reading accuracy and reduce errors, the control voltage threshold needs to be optimized: by adjusting the voltage offset value and evaluating the impact of the voltage offset value on the number of errors or characteristic values, the optimal voltage offset value combination corresponding to each memory cell of the page is found. In the current technical solution, the voltage offset value corresponding to each voltage control threshold is adjusted in turn until the voltage offset value can minimize the number of page errors or characteristic values; the foregoing operation is repeated for another voltage control threshold; after the foregoing operation is performed for each voltage control threshold of the page, the number of page errors or characteristic values is minimized, which ensures the highest accuracy of data reading of the page. However, according to the current technical solution, a large number of search optimization operations need to be performed, resulting in low efficiency in determining the voltage offset value of the control voltage threshold of the page.

[0004] Therefore, how to efficiently determine the voltage offset value of the control voltage threshold and ensure the accuracy of data reading of the page is a technical problem to be solved by those skilled in the art. SUMMARY

[0005] The present application aims to provide a method and device for determining a voltage offset value of a control voltage threshold, a terminal device, a computer readable storage medium and a computer program product, which are designed to more efficiently determine the optimal voltage offset value combination corresponding to each memory cell in a page and ensure the highest accuracy of data reading of the page.

[0006] In a first aspect, the present application provides a method for determining a voltage offset value of a control voltage threshold. The method comprises:

[0007] determining a control voltage threshold corresponding to each memory cell in a page according to the chip type of a non-volatile memory;

[0008] Set each of the control voltage thresholds by using the initial voltage offset value, and determine an initial reference value corresponding to the page;

[0009] Determine a target control voltage threshold from each of the control voltage thresholds in a polling manner, set the target control voltage threshold by using a preset voltage offset value, set other control voltage thresholds by using the initial voltage offset value, and determine an adjusted reference value corresponding to the page; the other control voltage thresholds are control voltage thresholds other than the target control voltage threshold among the control voltage thresholds;

[0010] If the adjusted reference value is less than the initial reference value, determine that the target control voltage threshold is the preset voltage offset value, and return to the step of determining a target control voltage threshold from each of the control voltage thresholds in a polling manner, setting the target control voltage threshold by using a preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining an adjusted reference value corresponding to the page;

[0011] If the adjusted reference value is greater than the initial reference value, set the target control voltage threshold to the preset voltage offset value determined in the previous iteration search optimization operation, and return to the step of determining a target control voltage threshold from each of the control voltage thresholds in a polling manner, setting the target control voltage threshold by using a preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining an adjusted reference value corresponding to the page.

[0012] In one embodiment, the step of determining a target control voltage threshold from each of the control voltage thresholds in a polling manner, setting the target control voltage threshold by using a preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining an adjusted reference value corresponding to the page includes:

[0013] Determine a target control voltage threshold from each of the control voltage thresholds in a polling manner;

[0014] Set the target control voltage threshold by using a preset voltage offset value, and set other control voltage thresholds by using the initial voltage offset value;

[0015] Perform a data read operation on a corresponding storage unit based on the preset voltage offset value and the initial voltage offset value, and obtain an actual voltage threshold of each of the storage units;

[0016] Determine a storage unit state according to a size relationship between the actual voltage threshold and the preset voltage offset value;

[0017] Determine an adjusted reference value corresponding to the page according to each of the storage unit states.

[0018] In one of the embodiments, after the initial voltage offset value is used to set each of the control voltage thresholds and determine the initial reference value corresponding to the page, the method further comprises:

[0019] determining whether the initial reference value is greater than a preset decoding capability value;

[0020] If the initial reference value is greater than the preset decoding capability value, the step of determining a target control voltage threshold from each of the control voltage thresholds in a round-robin manner, setting the target control voltage threshold with a preset voltage offset value, setting other control voltage thresholds with the initial voltage offset value, and determining an adjusted reference value corresponding to the page is entered.

[0021] In one of the embodiments, the page size of the page is a fixed data length, a code word length of an error correction code, or a physical page length.

[0022] In one of the embodiments, if the adjusted reference value is greater than the initial reference value, the target control voltage threshold is set to the preset voltage offset value determined in the previous iteration search optimization operation, which comprises:

[0023] If the adjusted reference value is greater than the initial reference value, the target control voltage threshold is set to the preset voltage offset value determined in the previous iteration search optimization operation, and when the iteration search optimization operation is performed on the target control voltage threshold next time, the corresponding preset voltage offset value is set reversely based on the current preset voltage offset value.

[0024] In one of the embodiments, after the target control voltage threshold is determined from each of the control voltage thresholds in a round-robin manner, the target control voltage threshold is set with a preset voltage offset value, other control voltage thresholds are set with the initial voltage offset value, and an adjusted reference value corresponding to the page is determined, the method further comprises:

[0025] determining whether a preset ending condition is reached currently;

[0026] If the preset ending condition is reached, the iteration search optimization operation is ended.

[0027] In one of the embodiments, the process of determining the preset voltage offset value comprises:

[0028] The preset voltage offset value is determined based on a linear approximation algorithm or an error number gradient descent algorithm.

[0029] In a second aspect, the application further provides a device for determining a voltage offset value of a control voltage threshold. The device comprises:

[0030] The first determining module is configured to determine the control voltage threshold corresponding to each memory cell in the page according to the chip type of the nonvolatile memory.

[0031] The second determining module is configured to set the control voltage threshold by using the initial voltage offset value and determine an initial reference value corresponding to the page.

[0032] The iterative searching module is configured to determine a target control voltage threshold from the control voltage thresholds in a polling manner, set the target control voltage threshold by using a preset voltage offset value, set other control voltage thresholds by using the initial voltage offset value, and determine an adjusted reference value corresponding to the page, wherein the other control voltage thresholds are the control voltage thresholds other than the target control voltage threshold.

[0033] The first executing module is configured to determine that the target control voltage threshold is the preset voltage offset value if the adjusted reference value is smaller than the initial reference value, and call the iterative searching module.

[0034] The second executing module is configured to set the target control voltage threshold to the preset voltage offset value determined in the previous iteration searching and optimization operation if the adjusted reference value is greater than the initial reference value, and call the iterative searching module.

[0035] In a third aspect, the present application provides a terminal device. The terminal device comprises a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor implements the steps of the method as described above when executing the computer program.

[0036] In a fourth aspect, the present application provides a computer readable storage medium. The computer readable storage medium stores a computer program, and the computer program is executable on a processor to implement the steps of the method as described above.

[0037] In a fifth aspect, the present application provides a computer program product. The computer program product comprises a computer program, and the computer program is executable on a processor to implement the steps of the method as described above.

[0038] The application provides a control voltage threshold voltage offset value determination method. After determining the control voltage threshold corresponding to each memory cell in a page according to the chip type of a nonvolatile memory, the initial control voltage threshold is set by using an initial voltage offset value, and an initial reference value corresponding to the page is determined. The target control voltage threshold is determined from the control voltage thresholds, the target control voltage threshold is set by using a preset voltage offset value, the other control voltage thresholds are set by using the initial voltage offset value, and a first error reference value corresponding to the page is determined. If the adjustment reference value is less than the initial reference value, the target control voltage threshold is determined as the preset voltage offset value. If the adjustment reference value is greater than the initial reference value, the target control voltage threshold is set as the preset voltage offset value determined in the previous iteration search optimization operation. Then, the step of determining the target control voltage threshold from the control voltage thresholds, setting the target control voltage threshold by using the preset voltage offset value, setting the other control voltage thresholds by using the initial voltage offset value, and determining the adjustment reference value corresponding to the page is returned. It can be seen that, in the method, each control voltage threshold is iteratively polled and optimized. After the iteration search optimization operation is performed on the target control voltage threshold, the adjustment result corresponding to the iteration search optimization operation is determined according to the corresponding reference value, and the adjustment direction of the subsequent iteration search optimization operation is determined, so that each control voltage threshold is adjusted in a positive direction. Therefore, the number of iteration search optimization operations can be reduced, the optimal voltage offset value combination of the control voltage thresholds corresponding to each memory cell in the page can be determined more efficiently, and the accuracy of data reading on the page is guaranteed to be the highest.

[0039] It can be understood that the control voltage threshold voltage offset value determination device, the terminal device, the computer readable storage medium and the computer program product provided by the embodiments of the application have the same beneficial effects as the control voltage threshold voltage offset value determination method described above, and details are not repeated here. BRIEF DESCRIPTION OF DRAWINGS

[0040] In order to more clearly illustrate the specific embodiments of the application or the technical solutions in the prior art, the drawings needed in the specific embodiments or the prior art description will be briefly introduced. Obviously, the drawings in the following description are some embodiments of the application, and those skilled in the art can also obtain other drawings according to these drawings without creative labor.

[0041] Figure 1 The flowchart of the control voltage threshold voltage offset value determination method provided by the embodiments of the application is shown in the figure.

[0042] Figure 2 The process schematic diagram of the control voltage threshold voltage offset value determination method provided by the embodiments of the application is shown in the figure.

[0043] Figure 3 A structural schematic diagram of a voltage offset value determination device for controlling a voltage threshold provided by an embodiment of the present application is provided.

[0044] Figure 4 A structural schematic diagram of a terminal device provided by an embodiment of the present application is provided. DETAILED DESCRIPTION

[0045] In the following description, for the purposes of explanation and not limitation, specific details are set forth such as particular architectures, techniques, etc. in order to provide a thorough understanding of the embodiments of the application. However, it will be apparent to those skilled in the art that the application can be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known methods, devices, circuits, and methods are omitted so as not to obscure the description of the application.

[0046] It should be understood that the term "comprises" when used in this specification and the appended claims, specifies the presence of stated features, integers, steps, operations, elements, and / or components, but does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0047] It should also be understood that the term "and / or" when used in this specification and the appended claims, means any one or more of the associated listed items can be present, and includes multiples of any one or more of the associated listed items.

[0048] As used in this specification and the appended claims, the term "if' can be construed to mean "when" or "upon" or "in response to determining" or "in response to detecting," depending on the context. Similarly, the phrase "if it is determined" or "if [a described condition or event] is detected" can be construed to mean "upon determining" or "in response to determining" or "upon detecting [the described condition or event]" or "in response to detecting [the described condition or event]," depending on the context.

[0049] In addition, the terms "first," "second," "third," etc. are used herein only to describe different instances of elements, and are not intended to imply or create an ordinality between elements.

[0050] Reference throughout this application to "one embodiment" or "some embodiments" means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. Thus, the appearances of the phrase "in one embodiment" or "in some embodiments" in various places throughout this specification are not necessarily all referring to the same embodiment, but can refer to one or more but not all embodiments. The terms "including," "comprising," "carrying," "having," "containing," and variations thereof are meant to encompass the item listed thereafter, but do not exclude additional, unrecited items. The term "consisting of" is meant to exclude any additional, unrecited items. The term "consisting essentially of" means to exclude any additional, unrecited items other than impurities or other minor nonessential components. The term "plurality" means two or more.

[0051] The method for determining the voltage offset value of the control voltage threshold provided by the embodiments of the present application can be executed by the processor of the terminal device when running the corresponding computer program.

[0052] Figure 1 The flow chart of the method for determining the voltage offset value of the control voltage threshold provided by the embodiments of the present application is shown in FIG. 1. For the convenience of description, only the part related to the present embodiment is shown. The method provided by the present embodiment includes the following steps:

[0053] S100: Determine the control voltage threshold corresponding to each memory cell in the page according to the chip type of the non-volatile memory.

[0054] The non-volatile memory (NVM) refers to the memory that can keep the data from being lost in the case of power failure. The non-volatile memory includes NAND flash memory, NOR flash memory, etc.

[0055] It should be noted that the chip types of the non-volatile memory include SLC (Single-Level Cell), MLC (Multi-Level Cell), TLC (Triple-Level Cell), etc., and the number of control voltage thresholds corresponding to different chip types is different. The control voltage threshold refers to the reference voltage level in the read operation, which is used to distinguish different data states in the storage unit. For example, in the MLC NAND flash memory, there are three control voltage thresholds (VA, VB, and VC). The page of the non-volatile memory generally includes a plurality of storage units (cells), and each storage unit can store different numbers of electrons to form different voltage thresholds (Vth); the flash controller determines the storage unit state of the storage unit by detecting the voltage threshold of the storage unit and comparing the voltage threshold with the voltage offset value of the control voltage threshold corresponding to the storage unit.

[0056] Specifically, each storage unit of SLC has only one control voltage threshold, and based on the single control voltage threshold, two storage unit states, 0 and 1, can be distinguished; each storage unit of MLC has three control voltage thresholds, and by comparing the voltage threshold of the storage unit with the three control voltage thresholds, four storage unit states, 00, 01, 10, and 11, can be distinguished; each storage unit of TLC has seven control voltage thresholds, and by comparing the voltage threshold of the storage unit with the seven control voltage thresholds, eight storage unit states, 000, 001, 010, 011, 100, 101, 110, and 111, can be distinguished.

[0057] S200: Set each control voltage threshold by using an initial voltage offset value, and determine an initial reference value corresponding to the page.

[0058] The initial voltage offset value refers to the starting point or reference value set for the control voltage threshold, which corresponds to the determination of the initial reference value of the page. The initial reference value refers to a parameter for measuring the accuracy of data reading of the page. In this embodiment, the initial reference value includes the number of errors or the characteristic value; the number of errors refers to the total number of errors when reading the data information in the page according to the initial voltage offset value, that is, the number of mismatches between the read data and the expected data; the characteristic value refers to a value calculated by the error detection and correction algorithm (ECC) and used to indicate whether there is an error in the read data and the nature of the error, that is, a parameter for determining whether the data has been tampered with or damaged in the transmission or storage process.

[0059] Specifically, after setting the control voltage threshold by using the initial voltage offset value, a read operation is performed on the storage cells in the page based on the initial voltage offset value; based on the data read result, the number of errors or the characteristic value of the page is calculated to obtain the initial reference value.

[0060] S300: determining a target control voltage threshold from the control voltage thresholds in a round-robin manner, setting the target control voltage threshold by using the preset voltage offset value, setting the other control voltage thresholds by using the initial voltage offset value, and determining an adjustment reference value corresponding to the page; the other control voltage thresholds are the control voltage thresholds other than the target control voltage threshold.

[0061] The target control voltage threshold refers to any one of the control voltage thresholds. In this embodiment, the target control voltage threshold is determined from the control voltage thresholds in a round-robin manner.

[0062] After the target control voltage threshold is determined, the target control voltage threshold is set by using the preset voltage offset value, and the other control voltage thresholds are set by using the initial voltage offset value; a read operation is performed on the storage cells in the page based on the preset voltage offset value and the initial voltage offset value; based on the data read result, the number of errors or the characteristic value of the page is calculated to obtain the adjustment reference value.

[0063] In other embodiments, if the other control voltage threshold has been subjected to the iterative search optimization operation before, the preset voltage offset value determined by the last iterative search optimization operation on the control voltage threshold can be used to set the control voltage threshold.

[0064] S400: if the adjustment reference value is smaller than the initial reference value, the target control voltage threshold is determined as the preset voltage offset value, and the step of determining the target control voltage threshold from the control voltage thresholds in a round-robin manner, setting the target control voltage threshold by using the preset voltage offset value, setting the other control voltage thresholds by using the initial voltage offset value, and determining the adjustment reference value corresponding to the page is returned to.

[0065] After the adjustment reference value is determined, the size relationship between the adjustment reference value and the initial reference value is compared; if the adjustment reference value is smaller than the initial reference value, it indicates that the search direction of the current iterative search optimization operation is correct, and thus the target control voltage threshold is determined as the preset voltage offset value. Then, the step of determining the target control voltage threshold from the control voltage thresholds in a round-robin manner, setting the target control voltage threshold by using the preset voltage offset value, setting the other control voltage thresholds by using the initial voltage offset value, and determining the adjustment reference value corresponding to the page is returned to S300, i.e., the target control voltage threshold is continuously determined in a round-robin manner, and the iterative search optimization operation is continued.

[0066] In actual application, if the adjustment reference value is less than the initial reference value, after the target control voltage threshold is determined as the preset voltage offset value, the initial reference value is further updated by using the adjustment reference value, and then the subsequent comparison is continued by using the calculated adjustment reference value and the updated initial reference value.

[0067] S500: If the adjustment reference value is greater than the initial reference value, the target control voltage threshold is set as the preset voltage offset value determined in the previous iteration search optimization operation, and the step of determining the target control voltage threshold from the control voltage thresholds in a polling manner, setting the target control voltage threshold by using the preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining the adjustment reference value corresponding to the page is returned.

[0068] In this step, if it is determined that the adjustment reference value is greater than the initial reference value, it indicates that the search direction of the current iteration search optimization operation is wrong, and therefore the target control voltage threshold is set as the preset voltage offset value determined in the previous iteration search optimization operation, that is, the current voltage offset value adjustment is abandoned, and the voltage offset value obtained after the previous adjustment to minimize the error reference value is restored. Then, the step of determining the target control voltage threshold from the control voltage thresholds in a polling manner, setting the target control voltage threshold by using the preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining the adjustment reference value corresponding to the page is returned, that is, the iteration search optimization operation is continued by continuing to determine the target control voltage threshold in a polling manner.

[0069] The embodiment of the present application provides a method for determining a voltage offset value of a control voltage threshold, after determining the control voltage threshold corresponding to each storage unit in a page according to the chip type of a nonvolatile memory, setting each control voltage threshold by using an initial voltage offset value, and determining an initial reference value corresponding to the page; determining a target control voltage threshold from each control voltage threshold, setting the target control voltage threshold by using a preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining an adjusted reference value corresponding to the page; if the adjusted reference value is less than the initial reference value, determining that the target control voltage threshold is the preset voltage offset value; if the adjusted reference value is greater than the initial reference value, setting the target control voltage threshold as the preset voltage offset value determined in the previous iteration search optimization operation; and then returning to the step of determining the target control voltage threshold from each control voltage threshold, setting the target control voltage threshold by using the preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining the adjusted reference value corresponding to the page. It can be seen that, in the method, each control voltage threshold is iteratively polled and optimized, after the iteration search optimization operation is performed on the target control voltage threshold, the adjusted result corresponding to the iteration search optimization operation is determined according to the corresponding reference value, and the adjustment direction of the subsequent iteration search optimization operation is determined, so that each control voltage threshold is adjusted in a positive direction, and therefore the number of iteration search optimization operations can be reduced, and the optimal voltage offset value combination of the control voltage threshold corresponding to each storage unit in the page can be determined more efficiently, and the accuracy of data reading on the page is guaranteed to be the highest.

[0070] On the basis of the above-mentioned embodiment, the technical solution is further described and optimized in the embodiment, specifically, in the embodiment, the target control voltage threshold is determined from each control voltage threshold in a polling mode, the target control voltage threshold is set by using the preset voltage offset value, other control voltage thresholds are set by using the initial voltage offset value, and an adjusted reference value corresponding to the page is determined, including:

[0071] The target control voltage threshold is determined from each control voltage threshold in a polling mode;

[0072] The target control voltage threshold is set by using the preset voltage offset value, and other control voltage thresholds are set by using the initial voltage offset value;

[0073] A data reading operation is performed on the corresponding storage unit based on the preset voltage offset value and the initial voltage offset value, and an actual voltage threshold of each storage unit is obtained;

[0074] The state of the storage unit is determined according to the size relationship between the actual voltage threshold and the preset voltage offset value;

[0075] The adjusted reference value corresponding to the page is determined according to the state of each storage unit.

[0076] In this embodiment, the target control voltage threshold is determined from each control voltage threshold in a polling manner; after the target control voltage threshold is determined, the target control voltage threshold is set by using the preset voltage offset value, and the other control voltage thresholds are set by using the initial voltage offset value. In other embodiments, if the other control voltage thresholds have been iteratively searched and optimized before, the preset voltage offset value determined by the last iteration of the search and optimization of the control voltage threshold can be used to set the control voltage threshold.

[0077] The data read operation is performed on the corresponding storage cells in the page based on the preset voltage offset value and the initial voltage offset value, to obtain the actual voltage threshold of each storage cell; the storage cell state is determined according to the size relationship between the actual voltage threshold and the preset voltage offset value; and the adjustment reference value corresponding to the page is determined according to the state of each storage cell.

[0078] For example, it is assumed that the control voltage thresholds corresponding to the MLC are VA, VB and VC; VA is first selected as the target control voltage threshold, and the preset voltage offset value is set to 0.5V, i.e., VA is adjusted to 0.5V; VB and VC are set by using the initial voltage offset value, and it is assumed that VB and VC are set to 0.7V and 1.0V respectively; the page data is read based on the preset voltage offset value and the initial voltage offset value, to obtain the actual voltage threshold of the storage cell; the relationship between the actual voltage threshold and VA, VB and VC is compared, to determine the state (00, 01, 10, 11) of each storage cell. Specifically, whether the Lower Page is 0 or 1 is determined by comparing the voltage threshold of the storage cell with VB; whether the Upper Page is 0 or 1 is determined by comparing the voltage threshold of the storage cell with VA and VC; and the two-bit data stored in the storage cell is obtained by combining the states of the Upper Page and the Lower Page, to obtain the state of the storage cell; and the error number or the characteristic value is calculated according to the state of the storage cell, and the calculated error number or characteristic value is taken as the adjustment reference value.

[0079] According to the method of this embodiment, the adjustment reference value can be efficiently and accurately determined.

[0080] On the basis of the above-mentioned embodiments, the technical solutions are further described and optimized in this embodiment. Specifically, after the initial voltage offset value is used to set each control voltage threshold and the initial reference value corresponding to the page is determined, the method further includes:

[0081] determining whether the initial reference value is greater than the preset decoding capability value;

[0082] If the initial reference value is greater than the preset decoding capability value, a step of determining a target control voltage threshold from the control voltage thresholds in a polling manner, setting the target control voltage threshold by using the preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining an adjusted reference value corresponding to the page is entered.

[0083] The preset decoding capability value can be an ECC first decoding capability value (Low Power Algorithm) or an ECC second decoding capability value (High Performance Algorithm). The ECC first decoding capability value is a decoding capability value corresponding to an ECC algorithm implemented under low power consumption. The design goal of this algorithm is to reduce the consumption of computing resources, including reducing the computational complexity, using less memory and storage space, and optimizing the algorithm to reduce energy consumption, while maintaining security. The ECC second decoding capability value is a decoding capability value corresponding to an ECC algorithm implemented under high performance requirement. The goal of this algorithm is to improve the computing speed and processing capacity on the basis of ensuring security. This algorithm can use more complex mathematical operations and more advanced hardware support to achieve faster execution time and higher throughput. In this embodiment, the preset decoding capability value is set by using the ECC first decoding capability value or the ECC second decoding capability value according to actual requirements.

[0084] In this embodiment, after the initial reference value is determined, it is further judged whether the initial reference value is greater than the preset decoding capability value. If the initial reference value is less than the preset decoding capability value, it means that the initial data reading error number or feature value is low, and the data reading accuracy is relatively high, so there is no need to adjust the voltage offset value of the control voltage threshold. If the initial reference value is greater than the preset decoding capability value, it means that the initial data reading error number or feature value is high, and the data reading accuracy is relatively low, so the voltage offset value of the control voltage threshold needs to be adjusted. The step of entering S300: determining a target control voltage threshold from the control voltage thresholds in a polling manner, setting the target control voltage threshold by using the preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining an adjusted reference value corresponding to the page is entered.

[0085] According to the method of this embodiment, the step of setting the voltage offset value of the control voltage threshold is only performed when the initial reference value is greater than the preset decoding capability value, i.e., the initial data reading error number or feature value is high. Therefore, system resources can be further saved.

[0086] On the basis of the above-mentioned embodiments, the technical solutions are further described and optimized in this embodiment. Specifically, in this embodiment, the page size of the page is a fixed data length, a code word length of an error correction code, or a physical page length.

[0087] The page size refers to the amount of data stored on a single physical page. It can be understood that the page size will affect the storage efficiency and performance. In the embodiment, the page size can be set according to the fixed data length, the code word length of the error correction code, or the physical page length.

[0088] The fixed data length refers to a preset fixed length. The embodiment does not limit the specific value of the fixed data length, which can be 512 bytes or 4 KB, for example. When the page size is the fixed data length, it means that each page can write data of the fixed data length at most.

[0089] The code word length of the error correction code (ECC) refers to a data unit for storing check information in the ECC algorithm. In the embodiment, the page size can be set to the length of one or more code words.

[0090] The page length refers to the actual size of a physical page in the flash memory chip, that is, the smallest addressable storage unit in the flash memory chip, which is the basic unit of storing data.

[0091] In the embodiment, the page size of the page can be set according to the fixed data length, the code word length of the error correction code, or the physical page length, which can flexibly set the page size according to the actual demand, and improve the flexibility and convenience of determining the voltage offset value of the control voltage threshold.

[0092] On the basis of the above embodiment, the technical solution is further described and optimized in the embodiment. Specifically, in the embodiment, if the adjusted reference value is greater than the initial reference value, the target control voltage threshold is set to the preset voltage offset value determined in the previous iteration search optimization operation, including:

[0093] If the adjusted reference value is greater than the initial reference value, the target control voltage threshold is set to the preset voltage offset value determined in the previous iteration search optimization operation, and when the iteration search optimization operation is performed on the target control voltage threshold next time, the corresponding preset voltage offset value is reversely set based on the current preset voltage offset value.

[0094] In the embodiment, when it is determined that the adjustment reference value is greater than the initial reference value, indicating that the search direction of the current iteration search optimization operation is wrong, the target control voltage threshold is set to the preset voltage offset value determined in the previous iteration search optimization operation, and in the next iteration search optimization operation for the target control voltage threshold, the corresponding preset voltage offset value is set in reverse based on the current preset voltage offset value. That is, the current voltage offset value adjustment is abandoned, and the voltage offset value obtained after the previous adjustment that minimizes the error reference value is restored, and then in the next adjustment of the voltage control threshold, the opposite direction is used for adjustment. Specifically, if the current adjustment is to increase the voltage offset value, then the next adjustment is to reduce the voltage offset value; if the current adjustment is to reduce the voltage offset value, then the next adjustment is to increase the voltage offset value.

[0095] Figure 2 A process schematic diagram of a voltage offset value determination method for controlling a voltage threshold provided by the embodiment of the application. As shown in Figure 2 the initial voltage offset value (V1) is used to set each control voltage threshold, and the corresponding initial reference value E1 is determined; based on the initial voltage offset value (V1), the preset voltage offset value (V2) is determined by searching to the left, and the corresponding adjustment reference value E2 is determined. At this time, the adjustment reference value E2 is greater than the initial reference value E1, indicating that the search direction of the current iteration search optimization operation is wrong, so the target control voltage threshold is set to the preset voltage offset value (V1) determined in the previous iteration search optimization operation, and in the next iteration search optimization operation for the target control voltage threshold, the preset voltage offset value (V3) is determined by searching to the right based on the current preset voltage offset value (V1). At this time, the adjustment reference value E3 is less than the adjustment reference value E2; the preset voltage offset value (V4) is determined by continuing to search to the right based on the preset voltage offset value (V3), and the corresponding adjustment reference value E4 is determined. At this time, the adjustment reference value E4 is less than the adjustment reference value E3; through multiple iteration search optimization operations, when the adjustment reference value is less than the preset decoding capability value and / or the search number reaches the preset search number threshold, the iteration search optimization operation stops, and the best voltage offset value is determined.

[0096] According to the method of the embodiment, when it is determined that the adjustment reference value is greater than the initial reference value, the adjustment direction of the voltage offset value is changed and the search is continued, which can improve the efficiency of finding the voltage offset combination that makes the accuracy of data reading on the page highest, and improve the efficiency of determining the voltage offset value of the control voltage threshold.

[0097] On the basis of the above-mentioned embodiments, the technical solutions are further described and optimized in the embodiments. Specifically, after the target control voltage threshold is determined from the control voltage thresholds in the polling mode, the target control voltage threshold is set by using the preset voltage offset value, the other control voltage thresholds are set by using the initial voltage offset value, and the adjustment reference value corresponding to the page is determined, the method further includes:

[0098] determining whether the preset ending condition is reached currently;

[0099] if the preset ending condition is reached, ending the iterative search optimization operation.

[0100] In the embodiments, the preset ending condition includes that the search number reaches a preset search number threshold, and / or the adjustment reference value corresponding to the page is less than a preset decoding capability value.

[0101] The preset search number threshold refers to a preset upper limit of the total search number of the page. The preset search number threshold can be set according to actual needs, and the embodiments are not limited in this regard. In the embodiments, adjusting the control voltage threshold once means performing an iterative search optimization operation once. Assuming that the page has three control voltage thresholds and the preset search number threshold is 12, the corresponding iterative search optimization operation can be performed four times for each control voltage threshold.

[0102] In actual applications, the search number count can be preset. After the iterative search optimization operation is performed once, the search number count is updated. The updated search number count is compared with the preset search number threshold. If the updated search number count is less than the preset search number threshold, it indicates that the preset ending condition is not reached currently. Therefore, the step S300 is returned to, that is, the target control voltage threshold is determined from the control voltage thresholds in the polling mode, the target control voltage threshold is set by using the preset voltage offset value, the other control voltage thresholds are set by using the initial voltage offset value, and the adjustment reference value corresponding to the page is determined. The other control voltage thresholds are the control voltage thresholds except the target control voltage threshold, and the iterative search optimization operation is continued. If the updated search number count is greater than or equal to the preset search number threshold, it indicates that the preset condition is reached currently. Therefore, the iterative search optimization operation is ended.

[0103] The preset decoding capability value can be an ECC first decoding capability value (Low Power Algorithm, low power algorithm) or an ECC second decoding capability value (High Performance Algorithm, high power algorithm).

[0104] In one embodiment, after the target control voltage threshold is determined from the control voltage thresholds in a round-robin manner, the target control voltage threshold is set by using the preset voltage offset value, the other control voltage thresholds are set by using the initial voltage offset value, and the adjustment reference value corresponding to the page is determined, it is judged whether the adjustment reference value is less than or equal to the preset decoding capability value; if the adjustment reference value is greater than the preset decoding capability value, it indicates that the preset ending condition has not been reached, and thus the iteration searching optimization operation is returned to step S300: the target control voltage threshold is determined from the control voltage thresholds in a round-robin manner, the target control voltage threshold is set by using the preset voltage offset value, the other control voltage thresholds are set by using the initial voltage offset value, and the adjustment reference value corresponding to the page is determined; the other control voltage thresholds are the control voltage thresholds other than the target control voltage threshold, and the iteration searching optimization operation is continued; if the adjustment reference value is less than the preset decoding capability value, it indicates that the preset ending condition has been reached, and thus the iteration searching optimization operation is ended.

[0105] In another embodiment, the method further comprises: after the preset suspension condition is reached, stopping the iteration searching optimization operation and saving the searching state; after the trigger instruction is received, the pre-stored searching state is acquired, and the iteration searching optimization operation is continued based on the searching state. In an embodiment, the preset suspension condition comprises that the searching times reach a preset suspension times threshold, and / or the adjustment reference value corresponding to the page is less than a preset suspension value; the preset suspension times threshold is less than the preset searching times threshold, and the preset suspension value is less than the preset decoding capability value.

[0106] According to the method of the embodiment, the iteration searching optimization operation can be avoided from being executed in an infinite loop, so that system resources are saved.

[0107] Based on the above-mentioned embodiments, the technical solution is further described and optimized in the embodiment. Specifically, in the embodiment, the process of determining the preset voltage offset value comprises:

[0108] The preset voltage offset value is determined based on a linear approximation algorithm or an error number gradient descent algorithm.

[0109] The linear approximation algorithm refers to an algorithm for narrowing the search interval of the optimal voltage offset value, that is, for predicting which voltage offset value can minimize the error number or the feature value. In a specific example, assuming that two voltage offset values V1 and V2 correspond to reference values (error number or feature value) E1 and E2 respectively, a midpoint voltage offset value Vm between V1 and V2 is calculated, Vm = (V1 + V2) / 2; a data reading operation is performed based on the midpoint voltage offset value Vm, and a corresponding reference value Em is determined; if Em is smaller than the smaller one of E1 and E2, it indicates that Vm is a better voltage offset value, and therefore, according to the comparison result of Em and E1 and E2, the interval containing Vm is taken as a new search interval, and the above steps are repeated until the voltage offset value corresponding to the minimum reference value is found.

[0110] The error number gradient descent algorithm refers to an algorithm for adjusting parameters by iteration to minimize the reference value. The gradient of the reference value with respect to the voltage offset value is determined according to the rate of change of the reference value corresponding to different voltage offset values; the voltage offset value is updated based on the voltage offset value, the gradient and a preset learning rate; the gradient is repeatedly calculated and the voltage offset value is repeatedly updated until the voltage offset value makes the reference value reach a minimum value.

[0111] It can be understood that the linear approximation algorithm and the error number gradient descent algorithm are two effective minimum value search methods, and the present embodiment uses the linear approximation algorithm and the error number gradient descent algorithm to determine the preset voltage offset value, which can improve the efficiency of determining the voltage offset value of the control voltage threshold.

[0112] It should be understood that the size of the serial number of each step in the above embodiments does not mean the order of execution, and the execution order of each process should be determined according to its function and inherent logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0113] It should be noted that the information collection process (such as the face image collection process, the fingerprint information collection process, etc.) / feature extraction process involved in the present application is executed with the user's knowledge and permission, that is, the information collection process / feature extraction process meets the legal and regulatory requirements and does not belong to the act of obstructing public interests.

[0114] Figure 3 Fig. 1 shows a structure schematic diagram of a voltage offset value determination apparatus for controlling a voltage threshold according to an embodiment of the present application. As shown in the figure, the voltage offset value determination apparatus for controlling a voltage threshold according to the embodiment of the present application comprises a first determination module 310, a second determination module 320, an iterative search module 330, a first execution module 340 and a second execution module 350; wherein, Figure 3

[0115] ​The first determining module 310 is configured to determine the control voltage threshold corresponding to each memory cell in the page according to the chip type of the nonvolatile memory.

[0116] The second determining module 320 is configured to set the control voltage thresholds by using the initial voltage offset value, and determine an initial reference value corresponding to the page.

[0117] The iterative searching module 330 is configured to determine a target control voltage threshold from the control voltage thresholds in a polling manner, set the target control voltage threshold by using a preset voltage offset value, set other control voltage thresholds by using the initial voltage offset value, and determine an adjustment reference value corresponding to the page; the other control voltage thresholds are the control voltage thresholds other than the target control voltage threshold.

[0118] The first executing module 340 is configured to determine that the target control voltage threshold is the preset voltage offset value if the adjustment reference value is less than the initial reference value, and call the iterative searching module.

[0119] The second executing module 350 is configured to set the target control voltage threshold to the preset voltage offset value determined in the previous iteration searching and optimization operation if the adjustment reference value is greater than the initial reference value, and call the iterative searching module.

[0120] The voltage offset value determination device for the control voltage threshold provided by the embodiments of the present application has the same beneficial effects as the voltage offset value determination method for the control voltage threshold.

[0121] In one of the embodiments, the iterative searching module comprises:

[0122] The polling determining submodule is configured to determine the target control voltage threshold from the control voltage thresholds in a polling manner.

[0123] The setting submodule is configured to set the target control voltage threshold by using the preset voltage offset value, and set the other control voltage thresholds by using the initial voltage offset value.

[0124] The actual voltage threshold determining submodule is configured to perform a data read operation on the corresponding memory cell based on the preset voltage offset value and the initial voltage offset value, and obtain the actual voltage threshold of each memory cell.

[0125] The memory cell state determining submodule is configured to determine the memory cell state according to the size relationship between the actual voltage threshold and the preset voltage offset value.

[0126] The adjustment reference value determining submodule is configured to determine the adjustment reference value corresponding to the page according to the memory cell state.

[0127] In one of the embodiments, the voltage offset value determination device for the control voltage threshold further comprises:

[0128] The judging module is configured to determine whether the initial reference value is greater than the preset decoding capability value; and if the initial reference value is greater than the preset decoding capability value, the iteration searching module is invoked.

[0129] In one of the embodiments, the page size of the page is a fixed data length, a code word length of an error correction code, or a physical page length.

[0130] In one of the embodiments, the second execution module comprises:

[0131] The second execution submodule is configured to, if the adjusted reference value is greater than the initial reference value, set the target control voltage threshold to the preset voltage offset value determined in the previous iteration searching and optimizing operation, and when the iteration searching and optimizing operation is performed on the target control voltage threshold next time, reversely set the corresponding preset voltage offset value based on the current preset voltage offset value.

[0132] In one of the embodiments, the voltage offset value determination device of the control voltage threshold further comprises:

[0133] The end condition judging submodule is configured to determine whether the preset end condition is reached currently; and if the preset end condition is reached, the iteration searching and optimizing operation is ended.

[0134] In one of the embodiments, the iteration searching module comprises:

[0135] The preset voltage offset value determining submodule is configured to determine the preset voltage offset value based on a linear approximation algorithm or an error number gradient descent algorithm.

[0136] It should be noted that the information interaction, execution process and the like between the above devices / units are based on the same concept as the method embodiments of the present application, and the specific functions and the technical effects brought by the same can be referred to the method embodiments part, which will not be described here.

[0137] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the above-mentioned division of each functional unit and module is exemplified, and in actual application, the above-mentioned functions can be completed by different functional units and modules according to needs, that is, the internal structure of the device is divided into different functional units or modules to complete all or part of the above-described functions. Each functional unit and module in the embodiment can be integrated in one processing unit, or each unit can be physically present separately, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or software. In addition, the specific names of each functional unit and module are only for easy distinction, and do not limit the protection scope of the present application. The specific working process of the unit and module in the above system can refer to the corresponding process in the foregoing method embodiment, which will not be repeated here.

[0138] Figure 4 A structural schematic diagram of a terminal device is provided in the embodiments of the present application. As shown in the figure, the terminal device 400 of the embodiment includes a memory 401, a processor 402, and a computer program 403 stored in the memory 401 and executable on the processor 402; the processor 402 implements the steps in the above-mentioned control voltage threshold voltage offset value determination method embodiments when executing the computer program 403; or the processor 402 implements the functions of each module / unit in the above-mentioned device embodiments when executing the computer program 403, and determines the control voltage threshold voltage offset value. Figure 4

[0139] For example, the computer program 403 can be divided into one or more modules / units, which are stored in the memory 401 and executed by the processor 402 to implement the method of the embodiments of the present application. One or more modules / units can be a series of computer program instruction segments that can complete a specific function, which is used to describe the execution process of the computer program 403 in the terminal device 400. For example, the computer program 403 can be divided into a first determination module, a second determination module, an iterative search module, a first execution module, and a second execution module, and the specific functions of each module are as follows:

[0140] The first determination module is configured to determine the control voltage threshold corresponding to each storage unit in the page according to the chip type of the non-volatile memory;

[0141] The second determination module is configured to set the control voltage threshold using the initial voltage offset value and determine the initial reference value corresponding to the page;

[0142] ​The iteration searching module is configured to determine a target control voltage threshold from the control voltage thresholds in a polling manner, set the target control voltage threshold by using a preset voltage offset value, set other control voltage thresholds by using an initial voltage offset value, and determine an adjustment reference value corresponding to the page; the other control voltage thresholds are the control voltage thresholds other than the target control voltage threshold.

[0143] The first execution module is configured to determine the target control voltage threshold as the preset voltage offset value if the adjustment reference value is less than the initial reference value, and call the iteration searching module.

[0144] The second execution module is configured to set the target control voltage threshold as the preset voltage offset value determined in the previous iteration searching and optimization operation if the adjustment reference value is greater than the initial reference value, and call the iteration searching module.

[0145] In applications, the terminal device 400 can be a desktop computer, a notebook computer, a palm computer, a cloud server, and the like. The terminal device 400 can include but is not limited to a memory 401 and a processor 402. Those skilled in the art can understand that the terminal device 400 can include more or fewer components than those shown in the figure, or combine some components, or include different components, for example, the terminal device can also include an input / output device, a network access device, a bus, and the like; the input / output device can include a camera, an audio collection / player device, a display screen, and the like; the network access device can include a communication module for wireless communication with external devices. Figure 4 The terminal device shown in the figure is merely an example and does not constitute a limitation on the terminal device, and the terminal device can include more or fewer components than those shown in the figure, or combine some components, or include different components, for example, the terminal device can also include an input / output device, a network access device, a bus, and the like; the input / output device can include a camera, an audio collection / player device, a display screen, and the like; the network access device can include a communication module for wireless communication with external devices.

[0146] In applications, the processor can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, and the like. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor.

[0147] In the application, the memory can be an internal storage unit of the terminal device, for example, a hard disk or a memory of the terminal device; can also be an external storage device of the terminal device, for example, a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card and the like equipped on the terminal device; and can also include both the internal storage unit and the external storage device of the terminal device. The memory is used to store an operating system, an application program, a boot loader, data and other programs, for example, program codes of computer programs and the like. The memory can also be used to temporarily store data that has been output or will be output.

[0148] The embodiment of the present application further provides a computer readable storage medium, which stores a computer program. The computer program is executed by a processor to realize the steps in the above-mentioned various method embodiments.

[0149] The embodiment of the present application realizes all or part of the processes in the above-mentioned method embodiments, which can be completed by a computer program instructing related hardware. The computer program can be stored in a computer readable storage medium, and the computer program is executed by a processor to realize the steps in the above-mentioned various method embodiments. The computer program includes computer program codes, which can be in the form of source code, object code, executable files or some intermediate forms. The computer readable medium at least includes any entity or device capable of carrying the computer program codes to a terminal device, a recording medium, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal and a software distribution medium. For example, a U disk, a mobile hard disk, a magnetic disk or an optical disk and the like.

[0150] The computer readable storage medium provided by the embodiment of the present application has the same beneficial effects as the above-mentioned method for determining a voltage offset value of a control voltage threshold.

[0151] The embodiment of the present application further provides a computer program product, which includes a computer program. The computer program is executed by a processor to realize the steps in the above-mentioned various method embodiments.

[0152] The computer program product provided by the embodiment of the present application has the same beneficial effects as the above-mentioned method for determining a voltage offset value of a control voltage threshold.

[0153] In the above-mentioned embodiments, the description of each embodiment has its own focus. The parts not described or recorded in detail in a certain embodiment can be referred to the relevant description of other embodiments.

[0154] Those skilled in the art can understand that the devices and algorithm steps of each example described in combination with the embodiments disclosed herein can be realized in electronic hardware or in a combination of computer software and electronic hardware. Whether the functions are realized in hardware or software depends on the specific application and design constraints of the technical solution. A person skilled in the art can use different methods to realize the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.

[0155] In the embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only illustrative, and in addition, the coupling or direct coupling or communication connection between the displayed or discussed can be through some interface, indirect coupling or communication connection between devices, which can be electrical, mechanical or other forms.

[0156] The above-described embodiments are only intended to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that the technical solutions recorded in the foregoing embodiments can still be modified, or some technical features can be replaced by equivalents; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present application, and should be included in the protection scope of the present application.

Claims

1. A method of determining a voltage offset value for controlling a voltage threshold, characterized by, The method comprises: determining control voltage thresholds corresponding to each memory cell in a page according to a chip type of the non-volatile memory; setting each control voltage threshold by using an initial voltage offset value and determining an initial reference value corresponding to the page; determining a target control voltage threshold from each control voltage threshold in a polling manner, setting the target control voltage threshold by using a preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining an adjustment reference value corresponding to the page; the other control voltage thresholds are control voltage thresholds other than the target control voltage threshold among each control voltage threshold; the adjustment reference value corresponding to the page is determined by performing a data read operation on the corresponding memory cells in the page based on the preset voltage offset value and the initial voltage offset value, obtaining actual voltage thresholds of each memory cell, determining memory cell states according to a size relationship between the actual voltage thresholds and the preset voltage offset value, and determining the adjustment reference value corresponding to the page according to each memory cell state; if the adjustment reference value is less than the initial reference value, determining that the target control voltage threshold is the preset voltage offset value, and returning to the step of determining a target control voltage threshold from each control voltage threshold in a polling manner, setting the target control voltage threshold by using a preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining an adjustment reference value corresponding to the page; if the adjustment reference value is greater than the initial reference value, setting the target control voltage threshold to the preset voltage offset value determined in the previous iteration search optimization operation, and returning to the step of determining a target control voltage threshold from each control voltage threshold in a polling manner, setting the target control voltage threshold by using a preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining an adjustment reference value corresponding to the page.

2. The method of claim 1, wherein, After the step of setting each control voltage threshold by using an initial voltage offset value and determining an initial reference value corresponding to the page, the method further comprises: determining whether the initial reference value is greater than a preset decoding capability value; if the initial reference value is greater than the preset decoding capability value, entering the step of determining a target control voltage threshold from each control voltage threshold in a polling manner, setting the target control voltage threshold by using a preset voltage offset value, setting other control voltage thresholds by using the initial voltage offset value, and determining an adjustment reference value corresponding to the page.

3. The method of claim 1, wherein, The page size of the page is a fixed data length, a code word length of an error correction code, or a physical page length.

4. The method of claim 1, wherein, The step of setting the target control voltage threshold to the preset voltage offset value determined in the previous iteration search optimization operation if the adjustment reference value is greater than the initial reference value comprises: If the adjustment reference value is greater than the initial reference value, the target control voltage threshold is set as the preset voltage offset value determined in the previous iteration search optimization operation, and in the next iteration search optimization operation for the target control voltage threshold, a corresponding preset voltage offset value is reversely set based on the current preset voltage offset value.

5. The method of claim 1, wherein, After the target control voltage threshold is determined from each of the control voltage thresholds in the polling mode, the target control voltage threshold is set by using the preset voltage offset value, other control voltage thresholds are set by using the initial voltage offset value, and the adjustment reference value corresponding to the page is determined, the method further comprises: determining whether a preset ending condition is reached currently; if the preset ending condition is reached, ending the iteration search optimization operation.

6. The method according to any one of claims 1 to 5, characterized in that, The process of determining the preset voltage offset value comprises: determining the preset voltage offset value based on a linear approximation algorithm or an error number gradient descent algorithm.

7. A voltage offset value determination apparatus for controlling a voltage threshold, characterized by The device comprises: a first determination module configured to determine the control voltage threshold corresponding to each storage unit in a page according to the chip type of the non-volatile memory; a second determination module configured to set each of the control voltage thresholds by using the initial voltage offset value, and determine an initial reference value corresponding to the page; an iteration search module configured to determine a target control voltage threshold from each of the control voltage thresholds in the polling mode, set the target control voltage threshold by using the preset voltage offset value, set other control voltage thresholds by using the initial voltage offset value, and determine an adjustment reference value corresponding to the page; the other control voltage thresholds are the control voltage thresholds other than the target control voltage threshold among the control voltage thresholds; the iteration search module comprises: an actual voltage threshold determination submodule configured to perform a data read operation on the corresponding storage unit in the page based on the preset voltage offset value and the initial voltage offset value, and obtain the actual voltage threshold of each of the storage units; a storage unit state determination submodule configured to determine the storage unit state according to the size relationship between the actual voltage threshold and the preset voltage offset value; an adjustment reference value determination submodule configured to determine the adjustment reference value corresponding to the page according to each of the storage unit states; a first execution module configured to, if the adjustment reference value is less than the initial reference value, determine that the target control voltage threshold is the preset voltage offset value, and call the iteration search module; a second execution module configured to, if the adjustment reference value is greater than the initial reference value, set the target control voltage threshold as the preset voltage offset value determined in the previous iteration search optimization operation, and call the iteration search module.

8. A terminal device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, The processor executes the computer program to implement the steps of the method of any one of claims 1 to 6.

9. A computer program product comprising a computer program, characterized in that, The computer program is executed by the processor to implement the steps of the method of any one of claims 1 to 6.

Citation Information

Patent Citations

  • Reading voltage determination method and device, equipment and storage medium

    CN113327640A

  • Operation method of memory, memory and memory system

    CN115497540A