Voltage offset value setting method

By determining the control voltage threshold based on the chip type in non-volatile memory and iteratively optimizing the target voltage threshold using initial and preset voltage offset values, the inefficiency problem in the prior art is solved, and more efficient data reading accuracy is achieved.

WO2026143361A1PCT designated stage Publication Date: 2026-07-09SLICONGO MICROELECTRONICS INC

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
SLICONGO MICROELECTRONICS INC
Filing Date
2024-12-30
Publication Date
2026-07-09

AI Technical Summary

Technical Problem

Existing technologies are inefficient in determining the control voltage threshold offset value of non-volatile memory, resulting in insufficient data read accuracy.

Method used

By determining the control voltage threshold corresponding to the memory cell based on the chip type of the non-volatile memory, setting the initial reference value using the initial voltage offset value, and iteratively optimizing the target control voltage threshold through polling, the reference value is adjusted using the preset voltage offset value, thereby reducing the number of iterative search operations and improving the accuracy of data reading.

Benefits of technology

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

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024143908_09072026_PF_FP_ABST
    Figure CN2024143908_09072026_PF_FP_ABST
Patent Text Reader

Abstract

The present application provides a voltage offset value determination method and apparatus for control voltage thresholds, and a device. The method comprises: determining a control voltage threshold corresponding to each memory cell in a page on the basis of a chip type of a non-volatile memory; using an initial voltage offset value to set each control voltage threshold, and determining an initial reference value corresponding to the page; determining a target control voltage threshold from among the control voltage thresholds in a polling manner, using a preset voltage offset value to set the target control voltage threshold, using the initial voltage offset value to set the other control voltage thresholds, and determining an adjustment reference value corresponding to the page; 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; or otherwise, setting the target control voltage threshold as the preset voltage offset value determined in a previous iterative search optimization operation; and then returning to execute the iterative search optimization operation.
Need to check novelty before this filing date? Find Prior Art

Description

A method for setting voltage offset value Technical Field

[0001] This application relates to the field of non-volatile memory technology, and in particular to a method, apparatus and device for determining the voltage offset value of a control voltage threshold. Background Technology

[0002] In non-volatile memory technology, a page type of a non-volatile memory such as NAND flash memory generally includes multiple memory cells. Each memory cell can store a different number of electrons to form a different voltage threshold (Vth). The flash memory controller determines the memory cell state by detecting the voltage threshold of the memory cell and comparing the voltage offset value of the voltage threshold with the control voltage threshold corresponding to the memory cell.

[0003] To improve read accuracy and reduce errors, the control voltage thresholds need to be optimized. This involves adjusting the voltage offset value and evaluating its impact on the number of errors or characteristic values ​​to find the optimal combination of voltage offset values ​​for each memory cell of the page. Current solutions involve sequentially adjusting the voltage offset value for each voltage control threshold until it minimizes the number of page errors or characteristic values. This process is repeated for each subsequent voltage control threshold. By performing these operations on each voltage control threshold of the page, the number of page errors or characteristic values ​​is minimized, ensuring the highest accuracy for data reads. However, current solutions require numerous search and optimization operations, resulting in low efficiency in determining the voltage offset values ​​for the page's control voltage thresholds.

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

[0005] The purpose of this application is to provide a method, apparatus, terminal device, computer-readable storage medium, and computer program product for determining the voltage offset value of the control voltage threshold, aiming to more efficiently determine the optimal combination of voltage offset values ​​corresponding to the control voltage threshold of each storage unit in the page, and to ensure the highest accuracy of data reading from the page. Technical solutions

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

[0007] The control voltage threshold corresponding to each memory cell in the page is determined based on the chip type of the non-volatile memory.

[0008] Each control voltage threshold is set using the initial voltage offset value, and an initial reference value corresponding to the page is determined;

[0009] A target control voltage threshold is determined from each of the control voltage thresholds using a polling method. The target control voltage threshold is set using a preset voltage offset value. Other control voltage thresholds are set using the initial voltage offset value. An 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 among the control voltage thresholds.

[0010] If the adjustment reference value is less than the initial reference value, then the target control voltage threshold is determined to be the preset voltage offset value, and the process returns to the steps of determining the target control voltage threshold from each of the control voltage thresholds in a polling manner, setting the target control voltage threshold using the preset voltage offset value, setting other control voltage thresholds using the initial voltage offset value, and determining the adjustment reference value corresponding to the page.

[0011] If the adjustment reference value is greater than the initial reference value, then the target control voltage threshold is set to the preset voltage offset value determined in the previous iteration search optimization operation, and the process returns to the steps of determining the target control voltage threshold from each of the control voltage thresholds in a polling manner, setting the target control voltage threshold using the preset voltage offset value, setting other control voltage thresholds using the initial voltage offset value, and determining the adjustment 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 using a preset voltage offset value, setting other control voltage thresholds using the initial voltage offset value, and determining an adjustment reference value corresponding to the page includes:

[0013] The target control voltage threshold is determined from each of the aforementioned control voltage thresholds using a polling method.

[0014] The target control voltage threshold is set using a preset voltage offset value, and other control voltage thresholds are set using the initial voltage offset value.

[0015] Based on the preset voltage offset value and the initial voltage offset value, data reading operations are performed on the corresponding storage units to obtain the actual voltage threshold of each storage unit;

[0016] The storage cell state is determined based on the relationship between the actual voltage threshold and the preset voltage offset value;

[0017] The adjustment reference value corresponding to the page is determined based on the state of each storage unit.

[0018] In one embodiment, after setting each of the control voltage thresholds using the initial voltage offset value and determining the initial reference value corresponding to the page, the method further includes:

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

[0020] If the initial reference value is greater than the preset decoding capability value, then proceed to the steps of determining the target control voltage threshold from each of the control voltage thresholds in a polling manner, setting the target control voltage threshold using a preset voltage offset value, setting other control voltage thresholds using the initial voltage offset value, and determining the adjustment reference value corresponding to the page.

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

[0022] In one embodiment, 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 adjusted reference value is greater than the initial reference value includes:

[0023] If the adjustment 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 iterative search and optimization operation, and in the next iterative search and 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.

[0024] In one embodiment, after determining a target control voltage threshold from each of the control voltage thresholds in a polling manner, setting the target control voltage threshold using a preset voltage offset value, setting other control voltage thresholds using the initial voltage offset value, and determining an adjustment reference value corresponding to the page, the method further includes:

[0025] Determine whether the preset termination condition has been met;

[0026] If the preset termination condition is met, the iterative search and optimization operation ends.

[0027] In one embodiment, the process of determining the preset voltage offset value includes:

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

[0029] Secondly, this application also provides a voltage offset value determination device for controlling a voltage threshold. The device includes:

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

[0031] The second determining module is used to set each of the control voltage thresholds using the initial voltage offset value, and to determine the initial reference value corresponding to the page;

[0032] An iterative search module is used to determine a target control voltage threshold from each of the control voltage thresholds in a polling manner, set the target control voltage threshold using a preset voltage offset value, set other control voltage thresholds using the initial voltage offset value, and determine 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 the control voltage thresholds.

[0033] The first execution module is used 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 to call the iterative search module.

[0034] The second execution module is used to set the target control voltage threshold to the preset voltage offset value determined in the previous iterative search optimization operation if the adjustment reference value is greater than the initial reference value, and to call the iterative search module.

[0035] Thirdly, this application also provides a terminal device. The terminal device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the method described above.

[0036] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the method described above.

[0037] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, implements the steps of the method described above. Beneficial effects

[0038] This application provides a method for determining the voltage offset value of a control voltage threshold. After determining the control voltage threshold corresponding to each memory cell in a page based on the chip type of the non-volatile memory, each control voltage threshold is set using an initial voltage offset value, and an initial reference value corresponding to the page is determined. A target control voltage threshold is determined from each control voltage threshold, and the target control voltage threshold is set using a preset voltage offset value. Other control voltage thresholds are set using the initial voltage offset value, and a first error reference value corresponding to the page is determined. If the adjusted reference value is less than the initial reference value, the target control voltage threshold is determined to be the preset voltage offset value. 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 and optimization operation. Then, the process returns to the steps of determining the target control voltage threshold from each control voltage threshold, setting the target control voltage threshold using the preset voltage offset value, setting other control voltage thresholds using the initial voltage offset value, and determining the adjusted reference value corresponding to the page. As can be seen, in this method, each voltage control threshold is iteratively polled and optimized. After iteratively searching and optimizing the target control voltage threshold, the adjustment result corresponding to the iterative search and optimization operation is determined based on the corresponding reference value, and the adjustment direction of subsequent iterative search and optimization operations is determined, so that each control voltage threshold is optimized and adjusted in a positive direction. Therefore, the number of iterative search and optimization operations can be reduced, and the optimal voltage offset value combination corresponding to each storage unit in the page can be determined more efficiently, ensuring the highest accuracy of data reading from the page.

[0039] It is understood that the voltage offset value determination device, terminal device, computer-readable storage medium and computer program product for controlling voltage threshold provided in the embodiments of this application have the same beneficial effects as the voltage offset value determination method for controlling voltage threshold described above, and will not be repeated here. Attached Figure Description

[0040] To more clearly illustrate the technical solutions in the specific embodiments of this application or the prior art, the drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.

[0041] Figure 1 is a flowchart of a method for determining the voltage offset value of a control voltage threshold provided in an embodiment of this application;

[0042] Figure 2 is a schematic diagram of a method for determining the voltage offset value of a control voltage threshold provided in an embodiment of this application;

[0043] Figure 3 is a schematic diagram of a voltage offset value determination device for controlling voltage threshold provided in an embodiment of this application;

[0044] Figure 4 is a schematic diagram of the structure of a terminal device provided in an embodiment of this application. Embodiments of the present invention

[0045] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of this application with unnecessary detail.

[0046] It should be understood that, when used in this application specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or a collection thereof.

[0047] It should also be understood that the term “and / or” as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.

[0048] As used in this application specification and the appended claims, the term "if" may be interpreted, depending on the context, as "when," "once," "in response to determination," or "in response to detection." Similarly, the phrase "if determined" or "if detected [the described condition or event]" may be interpreted, depending on the context, as "once determined," "in response to determination," "once detected [the described condition or event]," or "in response to detection [the described condition or event]."

[0049] Furthermore, in the description of this application and the appended claims, the terms "first," "second," "third," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.

[0050] References to "one embodiment" or "some embodiments" in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized. "A plurality" means "two or more."

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

[0052] Figure 1 is a flowchart of a method for determining the voltage offset value of a control voltage threshold according to an embodiment of this application. For ease of explanation, only the parts relevant to this embodiment are shown. The method provided in this embodiment includes the following steps:

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

[0054] Non-volatile memory (NVM) refers to memory that retains data even when power is off. Non-volatile memory includes NAND flash memory and NOR flash memory.

[0055] It's important to note that non-volatile memory chip types include SLC (Single-Level Cell), MLC (Multi-Level Cell), and TLC (Triple-Level Cell), each with a different number of control voltage thresholds. The control voltage threshold refers to the reference voltage level during read operations, used to distinguish different data states within the memory cell. For example, in MLC NAND flash memory, there are three control voltage thresholds (VA, VB, VC). A page type in non-volatile memory typically comprises multiple memory cells, each capable of storing a different number of electrons to form different voltage thresholds (Vth). The flash memory controller determines the cell state by detecting the voltage threshold of the memory cell and comparing its voltage offset to the corresponding control voltage threshold.

[0056] Specifically, each memory cell in an SLC has only one control voltage threshold, which can be used to distinguish two memory cell states: 0 and 1. Each memory cell in an MLC has three control voltage thresholds, which can be used to distinguish four memory cell states: 00, 01, 10, and 11 by comparing the voltage threshold of the memory cell with the three control voltage thresholds. Each memory cell in a TLC has seven control voltage thresholds, which can be used to distinguish eight memory cell states: 000, 001, 010, 011, 100, 101, 110, and 111 by comparing the voltage threshold of the memory cell with the seven control voltage thresholds.

[0057] S200: Set each control voltage threshold using the initial voltage offset value and determine the 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, corresponding to the determination of the initial reference value of the page. The initial reference value is a parameter used to measure the accuracy of data reading from the page. In this embodiment, the initial reference value includes the error count or a characteristic value; the error count refers to the total number of errors when reading data information from the page according to the initial voltage offset value, that is, the number of times the read data does not match the expected data; the characteristic value is a value calculated by the error detection and correction algorithm (ECC) to indicate whether errors exist in the read data and the nature of the errors, that is, a parameter used to determine whether the data has been tampered with or corrupted during transmission or storage.

[0059] Specifically, after setting the control voltage threshold using the initial voltage offset value, the memory cells in the page are read based on the initial voltage offset value; based on the data reading results, the number of page errors or characteristic values ​​are calculated to obtain the initial reference value.

[0060] S300: Determine the target control voltage threshold from each control voltage threshold using a polling method, set the target control voltage threshold using a preset voltage offset value, set other control voltage thresholds using an initial voltage offset value, and determine the adjustment reference value corresponding to the page; other control voltage thresholds are the control voltage thresholds other than the target control voltage threshold among each control voltage threshold.

[0061] Here, 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 using a polling method.

[0062] After determining the target control voltage threshold, the target control voltage threshold is set using a preset voltage offset value, and other control voltage thresholds are set using an initial voltage offset value. The storage units in the page are read based on the preset voltage offset value and the initial voltage offset value. Based on the data reading results, the number of errors or characteristic values ​​of the page are calculated to obtain the adjustment reference value.

[0063] In other embodiments, if other control voltage thresholds have been previously iteratively searched and optimized, the control voltage threshold can be set using the preset voltage offset value determined in the previous iterative search and optimization operation.

[0064] S400: If the adjusted reference value is less than the initial reference value, the target control voltage threshold is determined to be the preset voltage offset value. Then, the process returns to determine the target control voltage threshold from each control voltage threshold in a polling manner, sets the target control voltage threshold using the preset voltage offset value, sets other control voltage thresholds using the initial voltage offset value, and determines the adjustment reference value corresponding to the page.

[0065] After determining the adjustment reference value, compare its magnitude with the initial reference value. If the adjustment reference value is less than the initial reference value, it indicates that the search direction of the current iterative search optimization operation is correct. Therefore, the target control voltage threshold is determined to be the preset voltage offset value. Then, return to S300: determine the target control voltage threshold from each control voltage threshold in a polling manner, set the target control voltage threshold using the preset voltage offset value, set other control voltage thresholds using the initial voltage offset value, and determine the adjustment reference value corresponding to the page. That is, continue polling to determine the target control voltage threshold and perform iterative search optimization operations.

[0066] In practical applications, if the adjusted reference value is less than the initial reference value, after determining the target control voltage threshold as the preset voltage offset value, the initial reference value is further updated using the adjusted reference value. Subsequently, the calculated adjusted reference value is compared with the updated initial reference value.

[0067] S500: 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 the process returns to the steps of determining the target control voltage threshold from each control voltage threshold in a polling manner, setting the target control voltage threshold using the preset voltage offset value, setting other control voltage thresholds using the initial voltage offset value, and determining the adjusted reference value corresponding to the page.

[0068] In this step, if the adjusted reference value is determined to be greater than the initial reference value, it indicates that the search direction of the current iterative search optimization operation is incorrect. Therefore, the target control voltage threshold is set to the preset voltage offset value determined in the previous iterative search optimization operation. That is, the current voltage offset value adjustment is abandoned, and the voltage offset value obtained after the previous adjustment is restored to minimize the erroneous reference value. Then, return to S300: determine the target control voltage threshold from each control voltage threshold in a polling manner, set the target control voltage threshold using the preset voltage offset value, set other control voltage thresholds using the initial voltage offset value, and determine the adjustment reference value corresponding to the page. That is, continue to poll to determine the target control voltage threshold and perform iterative search optimization operations.

[0069] This application provides a method for determining the voltage offset value of a control voltage threshold. After determining the control voltage threshold corresponding to each memory cell in a page based on the chip type of the non-volatile memory, each control voltage threshold is set using an initial voltage offset value, and an initial reference value corresponding to the page is determined. A target control voltage threshold is determined from each control voltage threshold, and the target control voltage threshold is set using a preset voltage offset value. Other control voltage thresholds are set using the initial voltage offset value, and a first error reference value corresponding to the page is determined. If the adjusted reference value is less than the initial reference value, the target control voltage threshold is determined to be the preset voltage offset value. 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 and optimization operation. Then, the process returns to the steps of determining the target control voltage threshold from each control voltage threshold, setting the target control voltage threshold using the preset voltage offset value, setting other control voltage thresholds using the initial voltage offset value, and determining the adjusted reference value corresponding to the page. As can be seen, in this method, each voltage control threshold is iteratively polled and optimized. After iteratively searching and optimizing the target control voltage threshold, the adjustment result corresponding to the iterative search and optimization operation is determined based on the corresponding reference value, and the adjustment direction of subsequent iterative search and optimization operations is determined, so that each control voltage threshold is optimized and adjusted in a positive direction. Therefore, the number of iterative search and optimization operations can be reduced, and the optimal voltage offset value combination corresponding to each storage unit in the page can be determined more efficiently, ensuring the highest accuracy of data reading from the page.

[0070] Based on the above embodiments, this embodiment further explains and optimizes the technical solution. Specifically, in this embodiment, a target control voltage threshold is determined from each control voltage threshold using a polling method, the target control voltage threshold is set using a preset voltage offset value, other control voltage thresholds are set using an initial voltage offset value, and an adjustment reference value corresponding to the page is determined, including:

[0071] The target control voltage threshold is determined from each control voltage threshold using a polling method;

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

[0073] Based on the preset voltage offset value and the initial voltage offset value, data reading operations are performed on the corresponding storage cells to obtain the actual voltage threshold of each storage cell;

[0074] The state of the storage cell is determined based on the relationship between the actual voltage threshold and the preset voltage offset value.

[0075] The adjustment reference value corresponding to the page is determined based on the status of each storage unit.

[0076] In this embodiment, a target control voltage threshold is determined from each control voltage threshold using a polling method. After determining the target control voltage threshold, a preset voltage offset value is used to set the target control voltage threshold, and initial voltage offset values ​​are used to set other control voltage thresholds. In other embodiments, if other control voltage thresholds have been iteratively searched and optimized previously, the preset voltage offset value determined in the previous iterative search and optimization operation can be used to set the control voltage threshold.

[0077] Data is read from the corresponding storage units on the page based on the preset voltage offset value and the initial voltage offset value to obtain the actual voltage threshold of each storage unit; the storage unit status is determined according to the 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 status of each storage unit.

[0078] For example, assuming the control voltage thresholds for the MLC are VA, VB, and VC; firstly, VA is selected as the target control voltage threshold, and a preset voltage offset value is set to 0.5V, i.e., VA is adjusted to 0.5V; VB and VC are set using the initial voltage offset value, assuming VB and VC are set to 0.7V and 1.0V respectively; 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 memory cell; the relationship between the actual voltage threshold and VA, VB, and VC is compared to determine the state of each memory cell (00, 01, 10, 11). Specifically, by comparing the voltage threshold of the memory cell with VB, it is determined whether the Lower Page is 0 or 1; by comparing the voltage threshold of the memory cell with VA and VC, it is determined whether the Upper Page is 0 or 1; based on the states of the Upper Page and Lower Page, the two bits of data stored in the memory cell are combined to obtain the memory cell state; the error count or characteristic value is calculated based on the memory cell state, and the calculated error count or characteristic value is used as an adjustment reference value.

[0079] The method described in this embodiment can efficiently and accurately determine the adjustment reference value.

[0080] Based on the above embodiments, this embodiment further explains and optimizes the technical solution. Specifically, in this embodiment, after setting each control voltage threshold using the initial voltage offset value and determining the initial reference value corresponding to the page, the method further includes:

[0081] Determine 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, the process proceeds to determine the target control voltage threshold from each control voltage threshold using a polling method, set the target control voltage threshold using a preset voltage offset value, set other control voltage thresholds using the initial voltage offset value, and determine the adjustment reference value corresponding to the page.

[0083] The preset decoding capability value can be either the first ECC decoding capability value (Low Power Algorithm) or the second ECC decoding capability value (High Performance Algorithm). The first ECC decoding capability value corresponds to the decoding capability value of the ECC algorithm implemented under low power consumption conditions. The design goal of this algorithm is to reduce computational resource consumption while maintaining security, including reducing computational complexity, using less memory and storage space, and optimizing the algorithm to reduce energy consumption. The second ECC decoding capability value refers to the decoding capability value of the ECC algorithm implemented under higher performance requirements. The goal of this algorithm is to improve computational speed and processing power while ensuring security. This algorithm may employ 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 using either the first or second ECC decoding capability value according to actual needs.

[0084] In this embodiment, after determining the initial reference value, it is further determined 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 number of initial data reading errors or feature values ​​is low, and the data reading accuracy is relatively high. Therefore, 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 number of initial data reading errors or feature values ​​is high, and the data reading accuracy is relatively low. Therefore, it is necessary to adjust the voltage offset value of the control voltage threshold. Then, proceed to S300: determine the target control voltage threshold from each control voltage threshold in a polling manner, set the target control voltage threshold using the preset voltage offset value, set other control voltage thresholds using the initial voltage offset value, and determine the adjustment reference value corresponding to the page.

[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 determined to be greater than the preset decoding capability value, that is, when the number of errors or characteristic values ​​of the initial data reading are high. Therefore, system resources can be further saved.

[0086] Based on the above embodiments, this embodiment further explains and optimizes the technical solution. Specifically, in this embodiment, the page size is a fixed data length, the codeword length of the error correction code, or the physical page length.

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

[0088] Here, "fixed data length" refers to a preset fixed length; this embodiment does not limit the specific value of the fixed data length, such as 512 bytes or 4KB. When the page size is the fixed data length, it means that each page can write a maximum of the fixed data length of data.

[0089] In this context, the codeword length of the error correction code (ECC) refers to the data unit used to store verification information in the ECC algorithm; in this embodiment, the page size can be set to the length of one or more codewords.

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

[0091] In this embodiment, the page size can be set according to the fixed data length, the codeword length of the error correction code, or the physical page length. This allows for flexible setting of the page size based on actual needs, improving the flexibility and convenience of determining the voltage offset value of the control voltage threshold.

[0092] Based on the above embodiments, this embodiment further explains and optimizes the technical solution. Specifically, in this 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 and 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 iterative search and optimization operation, and in the next iterative search and 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.

[0094] In this embodiment, when it is determined that the adjusted reference value is greater than the initial reference value, indicating that the search direction of the current iterative search optimization operation is incorrect, the target control voltage threshold is set to the preset voltage offset value determined in the previous iterative search optimization operation. In the next iterative search optimization operation targeting 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 minimizes the erroneous reference value. Then, in the next adjustment of the voltage control threshold, the adjustment is performed in the opposite direction. Specifically, if the current adjustment increases the voltage offset value, the next adjustment decreases the voltage offset value; if the current adjustment decreases the voltage offset value, the next adjustment increases the voltage offset value.

[0095] Figure 2 is a schematic diagram of a method for determining the voltage offset value of a control voltage threshold provided in an embodiment of this application. As shown in Figure 2, each control voltage threshold is set using an initial voltage offset value (V1), and the corresponding initial reference value E1 is determined. Based on the initial voltage offset value (V1), a 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 > the initial reference value E1, indicating that the search direction of the current iterative search optimization operation is wrong. Therefore, the target control voltage threshold is set to the preset voltage offset value (V1) determined in the previous iterative search optimization operation. In the next iterative search optimization operation for the target control voltage threshold, a 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 < the adjustment reference value E2. Based on the preset voltage offset value (V3), the search continues to the right to determine the preset voltage offset value (V4), and the corresponding adjustment reference value E4 is determined. At this time, the adjustment reference value E4 < the adjustment reference value E3. Through multiple iterative search optimization operations, when the adjustment reference value is less than the preset decoding capability value and / or the number of searches reaches the preset search number threshold, the iterative search optimization operation stops, and the optimal voltage offset value is determined.

[0096] According to the method of this embodiment, when it is determined that the adjustment reference value is greater than the initial reference value, by changing the adjustment direction of the voltage offset value and continuing the search, the efficiency of finding the voltage offset combination that makes the data reading of the page most accurate can be improved, and the efficiency of determining the voltage offset value of the control voltage threshold can be improved.

[0097] Based on the above embodiments, this embodiment further explains and optimizes the technical solution. Specifically, in this embodiment, after determining the target control voltage threshold from each control voltage threshold in a polling manner, setting the target control voltage threshold using a preset voltage offset value, setting other control voltage thresholds using an initial voltage offset value, and determining the adjustment reference value corresponding to the page, the method further includes:

[0098] Determine whether the preset termination condition has been met;

[0099] If the preset termination condition is met, the iterative search and optimization operation will end.

[0100] In this embodiment, the preset termination conditions include the number of searches reaching a preset search count threshold, and / or the adjustment reference value corresponding to the page being less than a preset decoding capability value.

[0101] The preset search count threshold refers to the upper limit of the total number of searches for the page, which is set in advance. The specific value of the preset search count threshold can be set according to actual needs, and this embodiment does not limit it. In this embodiment, adjusting the control voltage threshold once means performing one iterative search optimization operation. Assuming that the page has three control voltage thresholds and the preset search count threshold is 12, each control voltage threshold can perform 4 iterative search optimization operations.

[0102] In practical applications, a search count can be preset, and the search count is updated after each iterative search optimization operation. The updated search count is compared with a preset search count threshold. If the updated search count is less than the preset search count threshold, it means that the preset termination condition has not yet been met, so the process returns to step S300: the target control voltage threshold is determined from each control voltage threshold using a polling method, the target control voltage threshold is set using a preset voltage offset value, other control voltage thresholds are set using an initial voltage offset value, and the adjustment reference value corresponding to the page is determined. Other control voltage thresholds are the control voltage thresholds other than the target control voltage threshold among the various control voltage thresholds, and the iterative search optimization operation continues. If the updated search count is greater than or equal to the preset search count threshold, it means that the preset condition has been met, so the iterative search optimization operation ends.

[0103] The preset decoding capability value can be either the first ECC decoding capability value (Low Power Algorithm) or the second ECC decoding capability value (High Performance Algorithm).

[0104] In a specific example, after determining the target control voltage threshold from each control voltage threshold using a polling method, setting the target control voltage threshold using a preset voltage offset value, setting other control voltage thresholds using an initial voltage offset value, and determining the adjustment reference value corresponding to the page, it is determined 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 termination condition has not yet been met, so the process returns to step S300: determining the target control voltage threshold from each control voltage threshold using a polling method, setting the target control voltage threshold using a preset voltage offset value, setting other control voltage thresholds using an initial voltage offset value, and determining the adjustment reference value corresponding to the page; other control voltage thresholds are the control voltage thresholds other than the target control voltage threshold among the control voltage thresholds, and continuing the iterative search and optimization operation; if the adjustment reference value is less than the preset decoding capability value, it indicates that the preset termination condition has been met, so the iterative search and optimization operation ends.

[0105] In another specific embodiment, the method further includes: stopping the iterative search optimization operation and saving the search state after a preset pause condition is reached; and obtaining the pre-stored search state after receiving a trigger instruction, and continuing to perform the iterative search optimization operation based on the search state. In this embodiment, the preset pause condition includes the number of searches reaching a preset pause count threshold, and / or the adjustment reference value corresponding to the page being less than a preset pause value; the preset pause count threshold being less than a preset search count threshold, and the preset pause value being less than a preset decoding capability value.

[0106] The method described in this embodiment can avoid infinitely looping the iterative search and optimization operation, thereby saving system resources.

[0107] Based on the above embodiments, this embodiment further explains and optimizes the technical solution. Specifically, in this embodiment, the process of determining the preset voltage offset value includes:

[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 used to narrow down the search interval for the optimal voltage offset value, that is, to predict which voltage offset value might minimize the number of errors or eigenvalues. In a specific example, assume that the reference values ​​(number of errors or eigenvalues) corresponding to two voltage offset values ​​V1 and V2 are E1 and E2, respectively; calculate the midpoint voltage offset value Vm between V1 and V2, Vm = (V1 + V2) / 2; perform data reading operations based on the midpoint voltage offset value Vm and determine the corresponding reference value Em; if Em is less than the smaller value between E1 and E2, it means that Vm is a better voltage offset value. Therefore, based on the comparison result of Em with E1 and E2, the interval containing Vm is taken as the new search interval, and the above steps are repeated until the voltage offset value that minimizes the reference value is found.

[0110] The error-count gradient descent algorithm refers to an algorithm that minimizes a reference value by iteratively adjusting parameters. It determines the gradient of the reference value relative to the voltage offset value based on the rate of change of the reference value corresponding to different voltage offset values; based on the voltage offset value, it updates the voltage offset value using the gradient and a preset learning rate; this process of calculating the gradient and updating the voltage offset value is repeated until the voltage offset value minimizes the reference value.

[0111] It is understandable that linear approximation algorithm and error number gradient descent algorithm are two effective minimum search methods. This embodiment uses linear approximation algorithm and 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 sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0113] It should be noted that the information collection process (such as the facial image collection process, fingerprint information collection process, etc.) / feature extraction process involved in this application is carried out with the user's knowledge and permission. That is, the information collection process / feature extraction process complies with the requirements of laws and regulations and does not constitute an act that harms the public interest.

[0114] Figure 3 shows a schematic diagram of a voltage offset value determination device for a control voltage threshold provided in an embodiment of this application. As shown in Figure 3, the voltage offset value determination device for a control voltage threshold in this embodiment includes 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,

[0115] The first determining module 310 is used to determine the control voltage threshold corresponding to each memory cell in the page according to the chip type of the non-volatile memory.

[0116] The second determining module 320 is used to set each control voltage threshold using the initial voltage offset value and to determine the initial reference value corresponding to the page;

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

[0118] The first execution module 340 is used to determine the target control voltage threshold as a preset voltage offset value if the adjusted reference value is less than the initial reference value, and to call the iterative search module.

[0119] The second execution module 350 is used to set the target control voltage threshold to the preset voltage offset value determined in the previous iterative search optimization operation if the adjusted reference value is greater than the initial reference value, and to call the iterative search module.

[0120] The voltage offset value determination device for a control voltage threshold provided in this application embodiment has the same beneficial effects as the voltage offset value determination method for a control voltage threshold described above.

[0121] In one embodiment, the iterative search module includes:

[0122] The polling determination submodule is used to determine the target control voltage threshold from each control voltage threshold according to the polling method;

[0123] The setting submodule is used to set the target control voltage threshold using a preset voltage offset value and to set other control voltage thresholds using an initial voltage offset value.

[0124] The actual voltage threshold determination submodule is used to perform data reading operations on the corresponding storage cells based on the preset voltage offset value and the initial voltage offset value, and to obtain the actual voltage threshold of each storage cell.

[0125] The storage cell status determination submodule is used to determine the storage cell status based on the relationship between the actual voltage threshold and the preset voltage offset value.

[0126] The adjustment reference value determination submodule is used to determine the adjustment reference value corresponding to the page based on the status of each storage unit.

[0127] In one embodiment, a voltage offset value determination device for controlling a voltage threshold further includes:

[0128] The judgment module is used to determine whether the initial reference value is greater than the preset decoding capability value; if the initial reference value is greater than the preset decoding capability value, the iterative search module is called.

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

[0130] In one embodiment, the second execution module includes:

[0131] The second execution submodule is used to set the target control voltage threshold to the preset voltage offset value determined in the previous iterative search and optimization operation if the adjusted reference value is greater than the initial reference value, and to set the corresponding preset voltage offset value in reverse based on the current preset voltage offset value when performing the next iterative search and optimization operation for the target control voltage threshold.

[0132] In one embodiment, a voltage offset value determination device for controlling a voltage threshold further includes:

[0133] The termination condition judgment submodule is used to determine whether the preset termination condition has been met; if the preset termination condition is met, the iterative search and optimization operation ends.

[0134] In one embodiment, the iterative search module includes:

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

[0136] It should be noted that the information interaction and execution process between the above-mentioned devices / units are based on the same concept as the method embodiments of this application. For details on their specific functions and technical effects, please refer to the method embodiments section, and they will not be repeated here.

[0137] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

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

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

[0140] The first determining module is used to determine the control voltage threshold corresponding to each memory cell in the page according to the chip type of the non-volatile memory.

[0141] The second determining module is used to set each control voltage threshold using the initial voltage offset value and to determine the initial reference value corresponding to the page.

[0142] The iterative search module is used to determine the target control voltage threshold from each control voltage threshold in a polling manner, set the target control voltage threshold using a preset voltage offset value, set other control voltage thresholds using an initial voltage offset value, and determine the adjustment reference value corresponding to the page; other control voltage thresholds are the control voltage thresholds other than the target control voltage threshold among the control voltage thresholds.

[0143] The first execution module is used to determine the target control voltage threshold as a preset voltage offset value if the adjusted reference value is less than the initial reference value, and then call the iterative search module.

[0144] The second execution module is used to set the target control voltage threshold to the preset voltage offset value determined in the previous iterative search optimization operation if the adjusted reference value is greater than the initial reference value, and then call the iterative search module.

[0145] In applications, terminal device 400 can be a computing device such as a desktop computer, laptop, handheld computer, or cloud server. Terminal device 400 may include, but is not limited to, memory 401 and processor 402. Those skilled in the art will understand that Figure 4 is merely an example of a terminal device and does not constitute a limitation on the terminal device. It may include more or fewer components than shown, or combine certain components, or different components. For example, terminal device may also include input / output devices, network access devices, buses, etc.; wherein, input / output devices may include cameras, audio acquisition / playback devices, displays, etc.; network access devices may include communication modules 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 (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor can be a microprocessor or any conventional processor.

[0147] In applications, memory can be an internal storage unit of a terminal device, such as its hard drive or RAM; it can also be an external storage device, such as a plug-in hard drive, Smart Media Card (SMC), Secure Digital (SD) card, or Flash Card; or it can include both internal and external storage units. Memory is used to store operating systems, applications, boot loaders, data, and other programs, such as computer program code. Memory can also be used to temporarily store data that has been output or will be output.

[0148] This application also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, can implement the steps in the above-described method embodiments.

[0149] This application implements all or part of the processes in the methods of the above embodiments, which can be accomplished by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or some intermediate form. The computer-readable medium can include at least: any entity or device capable of carrying the computer program code 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, such as a USB flash drive, a portable hard drive, a magnetic disk, or an optical disk.

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

[0151] This application also provides a computer program product, including a computer program that, when executed by a processor, can implement the steps in the various method embodiments described above.

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

[0153] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0154] Those skilled in the art will recognize that the device and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0155] In the embodiments provided in this 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 merely illustrative. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interface, or the device may be indirectly coupled or communicated, and may be electrical, mechanical, or other forms.

[0156] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.

Claims

1. A method for determining the voltage offset value of a control voltage threshold, wherein, The method includes: The control voltage threshold corresponding to each memory cell in the page is determined based on the chip type of the non-volatile memory. Each control voltage threshold is set using the initial voltage offset value, and an initial reference value corresponding to the page is determined; A target control voltage threshold is determined from each of the control voltage thresholds using a polling method. The target control voltage threshold is set using a preset voltage offset value. Other control voltage thresholds are set using the initial voltage offset value. An 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 among the control voltage thresholds. If the adjustment reference value is less than the initial reference value, then the target control voltage threshold is determined to be the preset voltage offset value, and the process returns to the steps of determining the target control voltage threshold from each of the control voltage thresholds in a polling manner, setting the target control voltage threshold using the preset voltage offset value, setting other control voltage thresholds using the initial voltage offset value, and determining the adjustment reference value corresponding to the page. If the adjustment reference value is greater than the initial reference value, then the target control voltage threshold is set to the preset voltage offset value determined in the previous iteration search optimization operation, and the process returns to the steps of determining the target control voltage threshold from each of the control voltage thresholds in a polling manner, setting the target control voltage threshold using the preset voltage offset value, setting other control voltage thresholds using the initial voltage offset value, and determining the adjustment reference value corresponding to the page.

2. The method according to claim 1, wherein, The process of determining a target control voltage threshold from the control voltage thresholds using a polling method, setting the target control voltage threshold using a preset voltage offset value, setting other control voltage thresholds using the initial voltage offset value, and determining an adjustment reference value corresponding to the page includes: The target control voltage threshold is determined from each of the aforementioned control voltage thresholds using a polling method. The target control voltage threshold is set using a preset voltage offset value, and other control voltage thresholds are set using the initial voltage offset value. Based on the preset voltage offset value and the initial voltage offset value, data reading operations are performed on the corresponding storage units to obtain the actual voltage threshold of each storage unit; The storage cell state is determined based on the relationship between the actual voltage threshold and the preset voltage offset value; The adjustment reference value corresponding to the page is determined based on the state of each storage unit.

3. The method according to claim 1, wherein, After setting each of the control voltage thresholds using the initial voltage offset value and determining the initial reference value corresponding to the page, the method further includes: Determine whether the initial reference value is greater than the preset decoding capability value; If the initial reference value is greater than the preset decoding capability value, then proceed to the steps of determining the target control voltage threshold from each of the control voltage thresholds in a polling manner, setting the target control voltage threshold using a preset voltage offset value, setting other control voltage thresholds using the initial voltage offset value, and determining the adjustment reference value corresponding to the page.

4. The method according to claim 1, wherein, The page size is a fixed data length, the codeword length of the error correction code, or the physical page length.

5. The method according to claim 1, wherein, If the adjusted reference value is greater than the initial reference value, then setting the target control voltage threshold to the preset voltage offset value determined in the previous iteration search and optimization operation includes: If the adjustment 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 iterative search and optimization operation, and in the next iterative search and 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.

6. The method according to claim 1, wherein, After determining the target control voltage threshold from each of the control voltage thresholds in a polling manner, setting the target control voltage threshold using a preset voltage offset value, setting other control voltage thresholds using the initial voltage offset value, and determining the adjustment reference value corresponding to the page, the method further includes: Determine whether the preset termination condition has been met; If the preset termination condition is met, the iterative search and optimization operation ends.

7. The method according to any one of claims 1 to 6, wherein, The process of determining the preset voltage offset value includes: The preset voltage offset value is determined based on a linear approximation algorithm or an error number gradient descent algorithm.

8. A voltage offset value determination device for controlling a voltage threshold, wherein, The device includes: The first determining module is used to determine the control voltage threshold corresponding to each memory cell in the page according to the chip type of the non-volatile memory. The second determining module is used to set each of the control voltage thresholds using the initial voltage offset value, and to determine the initial reference value corresponding to the page; An iterative search module is used to determine a target control voltage threshold from each of the control voltage thresholds in a polling manner, set the target control voltage threshold using a preset voltage offset value, set other control voltage thresholds using the initial voltage offset value, and determine 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 the control voltage thresholds. The first execution module is used 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 to call the iterative search module. The second execution module is used to set the target control voltage threshold to the preset voltage offset value determined in the previous iterative search optimization operation if the adjustment reference value is greater than the initial reference value, and to call the iterative search module.

9. A terminal device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein, When the processor executes the computer program, it implements the steps of the method as described in any one of claims 1 to 7.

10. A computer program product comprising a computer program, wherein, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7.