Target read voltage determination method and device, equipment and storage medium
By obtaining the on-voltage VT fit distribution information of the memory block in the storage device, and estimating the optimal read voltage, the problem of low efficiency in the prior art is solved, and more efficient storage device performance and users are achieved Experience.
Patent Information
- Application Number
- CN202411216144.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-30
- Publication Date
- 2024-12-27
AI Technical Summary
The prior art is less efficient when determining the optimal read voltage in a storage device, requiring multiple searches leads to a high time overhead, and changes in the threshold voltage distribution of the memory cell affect reading accuracy.
By obtaining the on-voltage VT fitting distribution information of the memory block in the memory device in the target read and write state, determining at least one estimated optimal voltage, thereby reducing the determination range of the optimal read voltage, using Gaussian distribution fitting and intersection point calculation etc. to pre-position the optimal read voltage.
Improves the determination efficiency and success rate of the optimal read voltage, reduces time overhead, and enhances the performance and user experience of the storage device.
Smart Images

Figure CN119207522A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data storage technology, and in particular to a method, device, equipment and storage medium for determining a target read voltage. Background Art
[0002] At present, the threshold voltage distribution of storage devices will change due to the influence of various factors during use, which in turn causes the value of the optimal read voltage when reading data from the storage device to change. The accurate optimal read voltage is the key to judging the storage state of the storage device. Therefore, how to effectively determine the optimal read voltage is still an important issue in the field of data storage.
[0003] In the related art, a read operation is performed sequentially for each voltage value in the threshold voltage distribution of the storage device, and a determination is made based on the result of the read operation whether the voltage value is the voltage value corresponding to the optimal read voltage, until all the voltage values of the optimal read voltage are traversed and searched. However, this method requires too many searches and read operations, resulting in low efficiency in determining the optimal read voltage. Summary of the invention
[0004] Based on the above technical problems, the present application provides a method, device, equipment and storage medium for determining a target read voltage to improve the efficiency of determining an optimal read voltage.
[0005] In a first aspect, the present application provides a method for determining a target read voltage, the method comprising: obtaining the on-voltage VT fitting distribution information corresponding to each read level when a storage block in a storage device is in a target read-write state, and obtaining multiple VT fitting distribution information; one VT fitting distribution information is used to reflect the distribution of the on-voltage of the storage block under a read level; determining at least one estimated optimal voltage from the on-voltages of the multiple VT fitting distribution information; based on the at least one estimated optimal voltage, determining the target read voltage of the storage block in the target read-write state, the target read voltage being used to judge the storage state of the storage block.
[0006] In one possible implementation, at least one estimated optimal voltage is determined based on multiple VT fitting distribution information, including: taking the intersection of any two adjacent distributions of VT fitting distribution information in the multiple VT fitting distribution information as an estimated optimal voltage; or, determining an estimated optimal voltage based on the difference between the mean and variance of any one of the multiple VT fitting distribution information.
[0007] In one possible implementation, based on at least one estimated optimal voltage, determining a target read voltage when the storage block is in a target read / write state includes: searching within a neighborhood range of each estimated optimal voltage in the at least one estimated optimal voltage to obtain the target read voltage when the storage block is in the target read / write state.
[0008] In one possible implementation, the on-voltage VT fitting distribution information corresponding to each read level in the storage device when the storage block is in the target read-write state is obtained, including: writing sample data into the storage block in the target read-write state to obtain VT data of each read level; the VT data is used to reflect the number of storage blocks corresponding to different threshold voltages; and fitting the VT data of each read level to obtain multiple VT fitting distribution information.
[0009] In a possible implementation, the VT data of each read level is fitted to obtain multiple VT fitting distribution information, including: fitting the VT data of each read level according to Gaussian distribution to obtain multiple VT fitting distribution information.
[0010] In one possible implementation, the VT data of each read level is fitted according to the Gaussian distribution to obtain multiple VT fitting distribution information, including: for each read level VT data, determining the variance of the read level VT data; substituting the variance and any two groups of VT data in the read level VT data into the Gaussian distribution function to calculate the mean of the read level VT data; determining the Gaussian distribution model corresponding to the read level VT data based on the variance of the read level VT data and the mean of the read level VT data, and using the Gaussian distribution model as the VT fitting distribution information of the read level VT data.
[0011] In one possible implementation, the intersection of any two adjacently distributed read levels in multiple VT fitting distribution information is used as an estimated optimal voltage, including: jointly establishing a first Gaussian distribution model corresponding to the first read level and a second Gaussian distribution model corresponding to the second read level, and calculating the intersection of the first read level and the second read level; the first read level and the second read level are any two adjacently distributed read levels in multiple VT fitting distribution information.
[0012] In a possible implementation, determining the variance of the VT data of the read level includes: obtaining a functional relationship between the VT data and the variance under a target read / write state, and substituting the VT data of the read level into the functional relationship to obtain the variance of the VT data of the read level.
[0013] In one possible implementation, the functional relationship between VT data and variance under the target read-write state is obtained, including: determining a target clustering result corresponding to the target read-write state, the target clustering result being used to reflect the read-write state category to which the target read-write state belongs; determining the functional relationship corresponding to the target clustering result from the correspondence between multiple clustering results and multiple functional relationships, and using the functional relationship as the functional relationship between VT data and variance under the target read-write state.
[0014] In one possible implementation, the parameters of the target read / write state include one or more of the following state parameters: a state parameter for indicating write / erase cycles, a state parameter for indicating read interference, a state parameter for indicating cross temperature CT, and a state parameter for indicating data shelf life.
[0015] The target read voltage determination method provided by the present application first obtains the on-voltage VT fitting information of each read level when the storage block is in the target read-write state, so as to understand the distribution of the on-voltage under different read levels of the storage block. Furthermore, at least one estimated optimal voltage is determined from multiple VT fitting information, thereby achieving the pre-positioning of the optimal read voltage. Subsequently, the optimal read voltage of the storage block in the target read-write state can be determined directly based on at least one estimated optimal voltage. In this way, since the voltage is pre-positioned, the determination range of the optimal read voltage is narrowed, so that the success rate of determining the optimal read voltage can be effectively improved, and the time overhead of determining the optimal read voltage is also reduced.
[0016] In a second aspect, the present application provides a target read voltage determination device, which includes an acquisition unit and a determination unit; the acquisition unit is used to obtain the on-voltage VT fitting distribution information corresponding to each read level in the storage device when the storage block is in a target read-write state, and obtain multiple VT fitting distribution information; one VT fitting distribution information is used to reflect the distribution of the on-voltage of the storage block under a read level; the determination unit is used to determine at least one estimated optimal voltage from the on-voltages of the multiple VT fitting distribution information; the determination unit is also used to determine the target read voltage of the storage block in the target read-write state based on the at least one estimated optimal voltage, and the target read voltage is used to judge the storage state of the storage block.
[0017] In one possible implementation, the determination unit is specifically used to: take the intersection of any two adjacent distributions of VT fitting distribution information among multiple VT fitting distribution information as an estimated optimal voltage; or, determine an estimated optimal voltage based on the difference between the mean and variance of any one of the multiple VT fitting distribution information.
[0018] In a possible implementation, the determination unit is specifically configured to: search within a neighborhood range of each estimated optimal voltage in at least one estimated optimal voltage to obtain a target read voltage when the storage block is in a target read / write state.
[0019] In one possible implementation, the acquisition unit is specifically used to: write sample data into a storage block in a target read / write state to obtain VT data of each read level; the VT data is used to reflect the number of storage blocks corresponding to different threshold voltages; and fit the VT data of each read level to obtain multiple VT fitting distribution information.
[0020] In a possible implementation, the acquisition unit is specifically used to fit the VT data of each read level according to Gaussian distribution to obtain multiple VT fitting distribution information.
[0021] In one possible implementation, the acquisition unit is specifically used to: determine the variance of the VT data at the read level for each VT data at the read level; substitute the variance and any two groups of VT data in the VT data at the read level into the Gaussian distribution function to calculate the mean of the VT data at the read level; determine the Gaussian distribution model corresponding to the VT data at the read level based on the variance of the VT data at the read level and the mean of the VT data at the read level, and use the Gaussian distribution model as the VT fitting distribution information of the VT data at the read level.
[0022] In one possible implementation, the determination unit is specifically used to: jointly establish a first Gaussian distribution model corresponding to the first read level and a second Gaussian distribution model corresponding to the second read level, and calculate the intersection of the first read level and the second read level; the first read level and the second read level are any two adjacent distributed read levels in multiple VT fitting distribution information.
[0023] In a possible implementation, the determination unit is specifically used to: obtain a functional relationship between VT data and variance under a target read / write state, and substitute the VT data of the read level into the functional relationship to obtain the variance of the VT data of the read level.
[0024] In one possible implementation, the determination unit is specifically used to: determine the target clustering result corresponding to the target read-write state, the target clustering result is used to reflect the read-write state category to which the target read-write state belongs; determine the functional relationship corresponding to the target clustering result from the correspondence between multiple clustering results and multiple functional relationships, and use the functional relationship as the functional relationship between VT data and variance under the target read-write state.
[0025] In one possible implementation, the parameters of the target read / write state include one or more of the following state parameters: a state parameter for indicating write-erase cycles, a state parameter for indicating read interference, a state parameter for indicating write interference, and a state parameter for indicating data shelf life.
[0026] In a third aspect, the present application provides an electronic device, comprising: a processor and a memory; the memory stores instructions executable by the processor; when the processor is configured to execute the instructions, the electronic device implements the method of the first aspect above.
[0027] In a fourth aspect, the present application provides a computer-readable storage medium, wherein the computer-readable storage medium comprises: software instructions; when the software instructions are executed in an electronic device, the electronic device implements the method of the first aspect.
[0028] In a fifth aspect, the present application provides a computer program product. When the computer program product is executed in an electronic device, the electronic device executes the method related to the first aspect to implement the method of the first aspect.
[0029] The beneficial effects of the second to fifth aspects mentioned above can be referred to the first aspect and will not be elaborated on again. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0031] Figure 1 A schematic diagram of the corresponding relationship between the number of storage cells and the threshold voltage provided in an embodiment of the present application;
[0032] Figure 2 A schematic diagram of VT distribution changes under different influences provided in an embodiment of the present application;
[0033] Figure 3 A structural schematic diagram of an optimal read voltage determination system provided in an embodiment of the present application;
[0034] Figure 4 A schematic diagram of the composition of an electronic device provided in an embodiment of the present application;
[0035] Figure 5 A schematic diagram of a flow chart of a method for determining a target read voltage provided in an embodiment of the present application;
[0036] Figure 6 A schematic diagram of the composition of a target read voltage determination device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0037] In order to enable ordinary persons in the art to better understand the technical solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the accompanying drawings.
[0038] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present application. On the contrary, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the attached claims.
[0039] In addition, in the description of the embodiments of the present application, unless otherwise specified, " / " means or, for example, A / B can mean A or B. "And / or" in this article is only a description of the association relationship of associated objects, indicating that there can be three relationships, for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, in the description of the embodiments of the present application, "multiple" means two or more than two.
[0040] Before explaining the embodiments of the present application in detail, some relevant terms and related technologies involved in the embodiments of the present application are first introduced.
[0041] Solid State Disk (SSD): Also known as a solid-state drive, it is a hard disk made of a solid-state electronic storage medium array.
[0042] NAND memory (Not AND, NAND): is a non-volatile storage technology widely used in various electronic devices, especially as the basic technology of flash memory. NAND flash memory has become the core component of SSD due to its high storage capacity, low cost and durability.
[0043] Threshold voltage: In SSD, threshold voltage refers to the voltage value that determines the storage state of a storage cell (such as whether a data bit is 0 or 1). Since SSD uses NAND flash memory as the storage medium, and NAND flash memory stores data by controlling the amount of charge in each storage cell, precise control of threshold voltage is critical for the correct storage and reading of data.
[0044] Characteristics of NAND flash memory: 1. Non-volatility. Data will not be lost after power failure, unlike RAM (random access memory), which will lose data after power failure. 2. High storage capacity: NAND flash storage media can store data at a high density, and a single storage medium can reach a storage capacity of tens or hundreds of GB. 3. Write and erase operations. Unlike NOR flash memory, NAND flash memory is erased by block and written by page, which makes it more efficient when writing large amounts of data.
[0045] Types of NAND flash memory: 1. Each cell stores 1 bit of data (Single-Level Cell, SLC). Each storage cell stores 1 bit of data, with high performance but high cost. 2. Each cell stores 2 bits of data (Multi-Level Cell, MLC). Each storage cell can store 2 bits of data, which improves storage density, but reduces write performance and durability. 3. Each cell stores 3 bits of data (Triple-Level Cell, TLC). Each storage cell can store 3 bits of data, which further improves storage density, but further reduces performance and durability. 4. Each cell stores 4 bits of data (Quad-Level Cell, QLC). Each storage cell can store 4 bits of data. It is the highest density NAND flash memory type at present, but its performance and durability are relatively poor.
[0046] A storage device (such as various hard disk devices, etc.) includes multiple storage blocks, each of which is composed of multiple storage units. For example, a solid-state hard disk is used as an example. The storage block in the solid-state hard disk is composed of multiple flash memory particles (i.e., the storage unit in the solid-state hard disk). In the process of writing data, the storage unit will be adjusted to different storage states according to the stored data. For example, taking an MLC-type storage unit as an example, each MLC-type storage unit stores 2 bits of data, and there are four values for 2 bits of data. There are four storage states corresponding to the four values of the MLC-type storage unit, and different storage states correspond to different values. For the convenience of description, it is assumed that the four storage states are the first storage state, the second storage state, the third storage state, and the fourth storage state. And the first storage state corresponds to data "00", the second storage state corresponds to data "01", the third storage state corresponds to data "10", and the fourth storage state corresponds to data "11".
[0047] When reading data, the data stored in the storage unit can be determined according to the storage state of the storage unit, thereby realizing data reading. For example, if the storage unit is in the second storage state, it can be determined that the data stored in the storage unit is "01".
[0048] The storage state is distinguished according to the value range of the voltage value of the storage cell, and the value range is divided according to the optimal read voltage. Still taking the MLC type storage cell as an example, assuming that the value range corresponding to each of the four storage states when writing data is divided by three optimal read voltages, the three optimal read voltages are recorded as Va, Vb, and Vc from small to large. If the voltage value of the storage cell is less than Va, the storage cell is in the first storage state, if the voltage value is greater than Va and less than Vb, the storage cell is in the second storage state, if the voltage value is greater than Vb and less than Vc, the storage cell is in the third storage state, and if the voltage value is greater than Vc, the storage cell is in the fourth storage state. Therefore, if the data stored in the storage cell is "01", the voltage value of the storage cell will be adjusted to the value range (Va, Vb) when writing data.
[0049] However, affected by various factors, such as writing, erasing, read interference, data shelf life, etc., the voltage of the storage cell will change, causing the voltage of the storage cell to exceed the value range corresponding to the storage state of the storage cell. For example, the voltage of the storage cell in the second storage state is greater than Vb after the change. If the storage state of the storage cell is still distinguished according to the value range divided by the original optimal read voltage when reading data, the storage state of the storage cell may be incorrectly determined, resulting in incorrect data read.
[0050] Therefore, when reading data, it is necessary to determine the optimal read voltage for dividing the value interval. In the related art, the read operation can be performed for each voltage value in turn, with the voltage value as the read voltage, and the number of electrons can be recorded. The number of electrons recorded at different voltage values is counted, and the voltage value where the number of electrons is at the valley value is found, and the voltage value of the optimal read voltage is determined (hereinafter referred to as traversal search).
[0051] For example, taking an MLC type memory cell as an example, assuming that the relationship between the number of electrons and the read voltage is as follows: Figure 1 As shown, it can be seen that when the voltage values of the read voltage are Va, Vb and Vc, the number of electrons is at the valley value, so the three optimal read voltages of the MLC type memory cell are Va, Vb and Vc respectively.
[0052] However, this traversal search method requires multiple read operations, which is inefficient for storage blocks with more optimal read voltages, such as storage blocks composed of QLC type storage cells.
[0053] In addition, due to the physical characteristics of NAND, the VT of the storage cell will change under the influence of factors such as writing, erasing, read interference, erase interference, and data shelf life, such as Figure 2 When VT changes greatly, using the original read voltage will result in read failure. In this case, the read voltage needs to be calibrated.
[0054] Based on this, the embodiments of the present application provide a method, device, equipment and storage medium for determining a target read voltage. Since the VT graph of NAND is shaped as multiple peaks and valleys, when searching for the valley to obtain the optimal voltage, the search range is subject to the following restrictions: for example, the range cannot be too large, otherwise it may cross the current valley and search for a farther valley, which will also increase the overhead; for example, the range cannot be too small, otherwise it may not be able to search for the valley. The embodiments of the present application pre-position the voltage, thereby narrowing the determination range of the optimal read voltage, thereby effectively improving the success rate of determining the optimal read voltage and reducing the time overhead of determining the optimal read voltage.
[0055] The target read voltage determination method provided in the embodiment of the present application is described in detail below with reference to the accompanying drawings.
[0056] The target read voltage determination method provided in the embodiment of the present application can be applied to the optimal read voltage determination system. Figure 3 FIG. 2 shows a structural schematic diagram of the optimal read voltage determination system. Figure 3 As shown, the optimal read voltage determination system 10 includes a target read voltage determination device 11 and a storage device 12. The target read voltage determination device 11 and the storage device 12 may be connected via a wired network or a wireless network.
[0057] The storage device 12 may be a non-volatile storage device for long-term storage of various data, such as storage of operating systems, applications, and user data, etc. The embodiment of the present application does not limit the form of the storage device 12, for example, the storage device 12 may be a solid state drive, a mechanical hard drive, a hybrid hard drive, etc.
[0058] The storage device 12 is provided with a storage block, which may be a FLASH flash memory as a storage medium, which is also commonly referred to as an SSD. Its appearance may be made into a variety of shapes, such as a notebook hard drive, a micro hard drive, a memory card, a USB flash drive, and the like.
[0059] The target read voltage determination device 11 may be an electronic device with a computing function, such as a computer or a server. The target read voltage determination device 11 is used to determine the optimal read voltage of the storage device 12 .
[0060] Among them, the server can be a single server, or it can be a server cluster consisting of multiple servers. In some implementations, the server cluster can also be a distributed cluster. Optionally, the server can also be implemented on a cloud platform, for example, the cloud platform can include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an inter-cloud, and a multi-cloud, etc., or any combination thereof. The embodiments of the present application are not limited to this.
[0061] The target read voltage determination method provided in the embodiment of the present application may be executed by the above-mentioned target read voltage determination device 11. As described above, the target read voltage determination device 11 may be an electronic device with a computing and processing function, such as a computer or a server. Optionally, the target read voltage determination device 11 may also be a processor (e.g., a central processing unit (CPU)) in the aforementioned electronic device; or, the target read voltage determination device 11 may also be an application (APP) with a fault analysis function installed in the aforementioned electronic device; or, the target read voltage determination device 11 may also be a functional module with a fault analysis function in the aforementioned electronic device, etc. The embodiment of the present application does not limit this.
[0062] The method can be executed by electronic devices with computing capabilities such as storage devices, computers, and servers, and especially when integrated in storage devices, it can greatly improve the performance of storage devices and enhance the user experience of storage devices. For simplicity of description, the target read voltage determination device 11 is used as an electronic device as an example for description.
[0063] Figure 4The following is a schematic diagram of the composition of the electronic device provided in the embodiment of the present application. Figure 4 As shown, the electronic device may include: a processor 20 , a memory 21 , a communication line 22 , a communication interface 23 , and an input / output interface 24 .
[0064] The processor 20 , the memory 21 , the communication interface 23 and the input / output interface 24 may be connected via a communication line 22 .
[0065] The processor 20 is used to execute the instructions stored in the memory 21 to implement the target read voltage determination method provided in the following embodiments of the present application. The processor 20 can be a CPU, a general-purpose processor network processor (NP), a digital signal processor (DSP), a microprocessor, a microcontroller (MCU) / single chip microcomputer / single chip microcomputer, a programmable logic device (PLD) or any combination thereof. The processor 20 can also be any other device with processing functions, such as a circuit, a device or a software module, which is not limited in the embodiments of the present application. In one example, the processor 20 may include one or more CPUs, such as Figure 4 As an optional implementation, the electronic device may include multiple processors, for example, in addition to the processor 20, it may also include a processor 25 ( Figure 4 The dashed line is used as an example.
[0066] The memory 21 is used to store instructions. For example, the instructions may be computer programs. Optionally, the memory 21 may be a read-only memory (ROM) or other types of static storage devices that can store static information and / or instructions, or a random access memory (RAM) or other types of dynamic storage devices that can store information and / or instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a magnetic disk storage medium or other magnetic storage devices, etc., and the embodiments of the present application are not limited to this.
[0067] It should be noted that the memory 21 may exist independently of the processor 20, or may be integrated with the processor 20. The memory 21 may be located inside the electronic device, or may be located outside the electronic device, which is not limited in the embodiment of the present application.
[0068] The communication line 22 is used to transmit information between the components included in the electronic device.
[0069] The communication interface 23 is used to communicate with other devices (such as the above-mentioned storage device 12) or other communication networks. The other communication networks may be Ethernet, radio access networks (RAN), wireless local area networks (WLAN), etc. The communication interface 23 may be a module, a circuit, a transceiver or any device capable of achieving communication.
[0070] The input / output interface 24 is used to implement human-computer interaction between a user and an electronic device, for example, to implement action interaction or information interaction between a user and an electronic device.
[0071] Exemplarily, the input / output interface 24 may be a mouse, a keyboard, a display screen, or a touch display screen, etc. Action interaction or information interaction between a user and the electronic device may be achieved through a mouse, a keyboard, a display screen, or a touch display screen, etc.
[0072] It should be noted that Figure 4 The structure shown in the figure does not constitute a limitation on the electronic device, except Figure 4 In addition to the components shown, the electronic device may include more or fewer components than shown, or a combination of certain components, or a different arrangement of components.
[0073] The following introduces the target read voltage determination method provided in the embodiment of the present application.
[0074] Figure 5 Schematic diagram of a target read voltage determination method provided in an embodiment of the present application. Optionally, the method may be performed by the above Figure 4 The electronic device of the hardware structure shown is executed, such as Figure 5 As shown, the method includes S101 to S103.
[0075] S101, obtaining the on-voltage VT fitting distribution information corresponding to each read level when the storage block in the storage device is in a target read / write state, and obtaining a plurality of VT fitting distribution information.
[0076] Among them, a VT fitting distribution information is used to reflect the distribution of the on-voltage of the storage block under a read level.
[0077] It should be noted that the target read / write state can be used to characterize the storage performance of the storage block, and can refer to the current read / write state of the storage block, or can refer to other read / write states other than the current read / write state, such as the read / write state that the storage block should be in when the user expects to read data. Depending on the application scenario, the target read / write state can be represented by different target state parameters. For example, in a possible embodiment, the target state parameters include one or more of the following parameters:
[0078] Parameters used to represent write-erase cycle (P / E Cycle, PE), parameters used to represent read disturbance (Read Disturb, RD), parameters used to represent write disturbance (Program Disturb), parameters used to represent data retention (Data Retention, DR), and parameters used to represent cross temperature (Cross Temperature, CT).
[0079] Read level refers to the technology that SSD uses to distinguish different storage states (such as different levels in SLC, MLC, and TLC) by adjusting the threshold of the read voltage when reading data in NAND flash memory. Different read levels correspond to different VT distributions. Due to the physical characteristics of NAND flash memory, as the usage time increases, the voltage distribution of the storage unit will gradually widen, making it difficult to accurately judge the storage state when reading. Therefore, by fine-tuning the read level, different states can be distinguished more effectively, improving the accuracy and speed of reading.
[0080] The VT fitting information may be a VT graph. The VT graph usually represents the distribution of the on-voltage of the cell under different programming states through a probability density curve. In the VT graph, each state corresponds to one or more voltage distribution ranges, and the boundary between these ranges is the threshold voltage (VT). By adjusting the position of the read voltage (Vref), the storage state of the cell can be accurately read.
[0081] Similarly, the specific shape and distribution range of the VT graph will be affected by many factors, including the physical mechanism of the flash memory cell, the control accuracy of the programming / erasing process, and environmental factors such as temperature.
[0082] In some embodiments, the electronic device may write the sample data into a storage block in a target read / write state to obtain VT data of each read level. Further, the electronic device may fit the VT data of each read level to obtain a plurality of VT fitting information.
[0083] Exemplarily, the embodiments of the present application can set various states S (combinations of PE, DR, RD and CT) for the solid-state drive, set m NAND samples in each state, and acquire an accurate VT map when the write data is known.
[0084] It can be understood that since the embodiment of the present application collects a real VT map based on the actual situation of the storage block when the written data is known, the VT map is more accurate and reliable.
[0085] In a possible embodiment, developers believe based on experience that the VT data of each read level corresponding to the storage block should conform to a normal distribution with specific parameters in the voltage-probability space. Therefore, the electronic device can fit the VT data of each read level according to the Gaussian distribution to obtain multiple VT fitting distribution information.
[0086] Exemplarily, the electronic device fits the Gaussian distribution model of each read level:
[0087]
[0088] Among them, μ is the mean, σ 2 is the variance, S represents the read / write status, and k represents different read levels.
[0089] In some embodiments, for each read level of VT data, the electronic device may first determine the variance of the read level VT data, substitute the variance and any two groups of VT data in the read level VT data into the Gaussian distribution function, and calculate the mean of the read level VT data. Further, the electronic device determines the Gaussian distribution model corresponding to the read level VT data based on the variance of the read level VT data and the mean of the read level VT data, and uses the Gaussian distribution model as the VT fitting distribution information of the read level VT data.
[0090] In some embodiments, in order to determine the variance of the VT data of the read level, the electronic device may obtain the functional relationship between the VT data and the variance under the target read / write state, and substitute the VT data of the read level into the functional relationship to obtain the variance of the VT data of the read level.
[0091] In practical applications, under different read-write states S, μ may change significantly, but σ 2 The change of is not obvious compared to μ. In order to predict σ through state S, formula 1 can be transformed into the following model:
[0092] σ k =g(S)k=A,B,C,D,E,F,G Formula 2
[0093] Among them, the functional relationship g(S) can be obtained by various methods, such as support vector regression (SVR), neural network, etc.
[0094] For example, the electronic device can substitute the VT data of the read level into the above formula 2 to obtain the read level T. In some implementation examples, the data is taken into account. The overhead of the storage system is usually not expected to be too large in terms of time and space overhead of the model g(S), and a higher accuracy is required. At this time, it can be considered to cluster the state S based on σ first, and then use a smaller model in each cluster to predict σ:
[0095] σ k,l =g(S),k=A,B,C,D,E,F,G l=1,2...N Formula 3
[0096] Where N is the number of clusters. You can adjust N to adjust the model size and accuracy.
[0097] The electronic device can determine the target clustering result corresponding to the target read-write state to clarify the read-write state category to which the target read-write state belongs. Furthermore, the electronic device determines the functional relationship corresponding to the target clustering result from the correspondence between multiple clustering results and multiple functional relationships, and uses the functional relationship as the functional relationship between VT data and variance under the target read-write state.
[0098] Exemplarily, the electronic device may use the determined formula three as the functional relationship between VT data and variance in the target read / write state, and calculate σ using formula three.
[0099] In some embodiments, after obtaining the variance of the VT data of the read level, the electronic device may substitute the variance and any two groups of VT data in the VT data of the read level into a Gaussian distribution function to calculate the mean of the VT data of the read level.
[0100] For example, taking the calculation process of the G peak at a read level as an example, the electronic device obtains the variance σ of the Gaussian distribution corresponding to the current state according to Formula 3: 2 The Gaussian distribution of peak G is as follows:
[0101]
[0102] Now we know two sets of VT data P1(x1,y1) and P2(x2,y2). Substituting them into the above formula, we get:
[0103]
[0104] Dividing the two equations, we get:
[0105]
[0106] Thus we get:
[0107]
[0108] It can be understood that μ can be directly calculated according to Formula 7, which can significantly reduce the calculation time compared with related technologies.
[0109] In some embodiments, the electronic device determines a Gaussian distribution model corresponding to the VT data of the read level based on the variance of the VT data of the read level and the mean of the VT data of the read level, and uses the Gaussian distribution model as the VT fitting distribution information of the VT data of the read level.
[0110] For example, taking TLC's G level as an example, the electronic devices sample The number of 1s at the four voltages (V G2 >V G1 ), and the difference is V G1 and V G2 Number of 1s:
[0111]
[0112] Wherein, a is an integer and can be adjusted as needed.
[0113] It is understandable that electronic devices can be based on k(V G =V G1 ) and k(V G =V G2 ) to obtain the position information of the G peak, recorded as
[0114] S102, determining at least one estimated optimal voltage from the on-voltages of multiple VT fitting distribution signals.
[0115] As a possible implementation manner, the electronic device may use the intersection of any two adjacent distributions of VT fitting distribution information among multiple VT fitting distribution information as an estimated optimal voltage.
[0116] In some embodiments, in order to determine the intersection of two adjacent distributions of VT fitting distribution information, the electronic device may combine a first Gaussian distribution model corresponding to the first read level with a second Gaussian distribution model corresponding to the second read level to calculate the intersection of the first read level and the second read level; wherein the first read level and the second read level are any two adjacent distributions of read levels in multiple VT fitting distribution information.
[0117] For example, after the VT fitting distribution of A level ˉ G level can be obtained through the above S101, the electronic device can calculate the intersection between adjacent distributions as the estimated value of the optimal voltage (refer to Figure 1 ). Taking the determination of the optimal voltage between F and G levels as an example, the equation satisfied by the intersection of F and G levels is
[0118]
[0119] Simplified, we can get
[0120]
[0121] Solve the quadratic equation shown in Formula 11, satisfying x∈(μ F ,μ G ) is the estimated value of G level
[0122] As another possible implementation manner, the electronic device may determine an estimated optimal voltage according to a difference between a mean and a variance of any one of a plurality of VT fitting distribution information.
[0123] For example, since the Erase peak is generally not available for distribution, the electronic device can estimate the A peak.
[0124]
[0125] Here, k is a preset value, for example, k=2.
[0126] S103. Determine an optimal read voltage when the storage block is in a target read / write state based on at least one estimated optimal voltage.
[0127] In some embodiments, the electronic device may search within a neighborhood range of at least one estimated optimal voltage to obtain an optimal read voltage when the storage block is in a target read / write state.
[0128] In some other embodiments, the estimated optimal voltage is also called the search center. After that, the electronic device can search for the optimal voltage within its immediate neighborhood.
[0129] There are many search methods, such as voltage-by-voltage traversal, coarse scan + fine scan, etc., which are not limited in the embodiments of the present application.
[0130] It can be understood that the target read voltage determination method provided by the present application first obtains the on-voltage VT fitting information of each read level when the storage block is in the target read-write state, so as to understand the distribution of the on-voltage under different readlevels of the storage block. Furthermore, at least one estimated optimal voltage is determined from multiple VT fitting information, thereby achieving the pre-positioning of the optimal read voltage. Subsequently, the optimal read voltage of the storage block in the target read-write state can be determined directly based on at least one estimated optimal voltage. In this way, since the voltage is pre-positioned, the determination range of the optimal read voltage is narrowed, so that the success rate of determining the optimal read voltage can be effectively improved, and the time overhead of determining the optimal read voltage is also reduced.
[0131] The above mainly introduces the solution provided by the embodiment of the present application from the perspective of the method. In order to achieve the above functions, it includes hardware structures and / or software modules corresponding to the execution of each function. It should be easy to realize that the technical goals in this field are combined with the units and algorithm steps of each example described in the embodiments disclosed in this article, and the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical goals can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0132] In an exemplary embodiment, the present application also provides a target read voltage determination device. Figure 6 Schematic diagram of the composition of the target read voltage determination device provided in the embodiment of the present application. Figure 6 As shown, the target read voltage determination device includes: an acquisition unit 201 and a determination unit 202 .
[0133] The acquisition unit 201 is used to obtain the on-voltage VT fitting distribution information corresponding to each read level readlevel when the storage block in the storage device is in the target read-write state, and obtain multiple VT fitting distribution information; one VT fitting distribution information is used to reflect the distribution of the on-voltage of the storage block under a read level; the determination unit 202 is used to determine at least one estimated optimal voltage from the on-voltages of the multiple VT fitting distribution information; the determination unit 202 is also used to determine the target read voltage of the storage block in the target read-write state based on the at least one estimated optimal voltage, and the target read voltage is used to judge the storage state of the storage block.
[0134] In one possible implementation, the determination unit 202 is specifically used to: take the intersection of any two adjacent distributions of VT fitting distribution information among multiple VT fitting distribution information as an estimated optimal voltage; or, determine an estimated optimal voltage based on the difference between the mean and variance of any one of the multiple VT fitting distribution information.
[0135] In a possible implementation, the determination unit 202 is specifically configured to: search within a neighborhood range of each estimated optimal voltage in at least one estimated optimal voltage to obtain a target read voltage when the storage block is in a target read / write state.
[0136] In one possible implementation, the acquisition unit 201 is specifically used to: write sample data into a storage block in a target read / write state to obtain VT data of each read level; the VT data is used to reflect the number of storage blocks corresponding to different threshold voltages; and fit the VT data of each read level to obtain multiple VT fitting distribution information.
[0137] In a possible implementation, the acquisition unit 201 is specifically configured to fit the VT data of each read level according to Gaussian distribution to obtain a plurality of VT fitting distribution information.
[0138] In one possible implementation, the acquisition unit 201 is specifically used to: determine the variance of the VT data at the read level for each VT data at the read level; substitute the variance and any two groups of VT data in the VT data at the read level into the Gaussian distribution function to calculate the mean of the VT data at the read level; determine the Gaussian distribution model corresponding to the VT data at the read level based on the variance of the VT data at the read level and the mean of the VT data at the read level, and use the Gaussian distribution model as the VT fitting distribution information of the VT data at the read level.
[0139] In one possible implementation, the determination unit 202 is specifically used to: jointly establish a first Gaussian distribution model corresponding to the first read level and a second Gaussian distribution model corresponding to the second read level, and calculate the intersection of the first read level and the second read level; the first read level and the second read level are any two adjacent distributed read levels in multiple VT fitting distribution information.
[0140] In a possible implementation, the determination unit 202 is specifically used to obtain a functional relationship between VT data and variance in a target read / write state, and substitute the VT data of the read level into the functional relationship to obtain the variance of the VT data of the read level.
[0141] In one possible implementation, the determination unit 202 is specifically used to: determine the target clustering result corresponding to the target read-write state, the target clustering result is used to reflect the read-write state category to which the target read-write state belongs; determine the functional relationship corresponding to the target clustering result from the correspondence between multiple clustering results and multiple functional relationships, and use the functional relationship as the functional relationship between VT data and variance under the target read-write state.
[0142] In one possible implementation, the parameters of the target read / write state include one or more of the following state parameters: a state parameter for indicating write-erase cycles, a state parameter for indicating read interference, a state parameter for indicating write interference, and a state parameter for indicating data shelf life.
[0143] It should be noted that Figure 6 The division of modules in the example is schematic and is only a logical function division. There may be other division methods in actual implementation. For example, two or more functions may be integrated into one processing module. The above integrated modules may be implemented in the form of hardware or in the form of software functional units.
[0144] In an exemplary embodiment, the embodiment of the present application further provides a readable storage medium, including software instructions, which, when executed on an electronic device, enables the electronic device to execute any one of the methods provided in the above embodiments.
[0145] In an exemplary embodiment, the embodiment of the present application further provides a computer program product including computer-executable instructions, which, when executed on an electronic device, enables the electronic device to execute any one of the methods provided in the above embodiments.
[0146] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using a software program, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer-executable instructions. When the computer-executable instructions are loaded and executed on a computer, the process or function according to the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer-executable instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer-executable instructions can be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server, data center, etc. that contains one or more servers that can be integrated with the medium. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a DVD), or a storage medium (eg, a solid state disk (SSD)).
[0147] Although the present application is described herein in conjunction with various embodiments, in the process of implementing the present application for which protection is sought, those skilled in the art may understand and implement other variations of the disclosed embodiments by viewing the drawings, the disclosure, and the appended claims. In the claims, the term "comprising" does not exclude other components or steps, and "one" or "an" does not exclude multiple components. A single processor or other unit may implement several functions listed in a claim. Certain measures are recorded in mutually different dependent claims, but this does not mean that these measures cannot be combined to produce good results.
[0148] Although the present application has been described in conjunction with specific features and embodiments thereof, it is obvious that various modifications and combinations may be made thereto without departing from the spirit and scope of the present application. Accordingly, this specification and the drawings are merely exemplary illustrations of the present application as defined by the appended claims, and are deemed to have covered any and all modifications, variations, combinations or equivalents within the scope of the present application. Obviously, those skilled in the art may make various modifications and variations to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.
[0149] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
Claims
1. A method for determining a target read voltage, characterized in that: The method comprises: Obtaining the on-voltage VT fitting distribution information corresponding to each read level in the storage device when the storage block is in a target read / write state, and obtaining a plurality of VT fitting distribution information; one VT fitting distribution information is used to reflect the distribution of the on-voltage of the storage block under one readlevel; Determining at least one estimated optimal voltage from the on-voltages of the plurality of VT fitting distribution signals; Based on the at least one estimated optimal voltage, a target read voltage of the storage block in the target read / write state is determined, and the target read voltage is used to judge the storage state of the storage block.
2. The method according to claim 1, characterized in that The determining at least one estimated optimal voltage based on the plurality of VT fitting distribution information comprises: The intersection of any two adjacent VT fitting distribution information among the plurality of VT fitting distribution information is used as an estimated optimal voltage; or, An estimated optimal voltage is determined according to a difference between a mean and a variance of any one of the plurality of VT fitting distribution information.
3. The method according to claim 1, characterized in that The determining, based on the at least one estimated optimal voltage, a target read voltage of the storage block in the target read / write state comprises: A search is performed within a neighborhood range of each of the at least one estimated optimal voltage to obtain a target read voltage of the storage block when the storage block is in the target read / write state.
4. The method according to claim 2, characterized in that: The method of obtaining the on-voltage VT fitting distribution information corresponding to each read level read level in the storage block of the storage device when the storage block is in the target read / write state includes: Writing sample data into the storage block in the target read / write state to obtain VT data of each read level; the VT data is used to reflect the number of storage blocks corresponding to different threshold voltages; The VT data of each read level is fitted to obtain multiple VT fitting distribution information.
5. The method according to claim 4, characterized in that The VT data of each readlevel is fitted to obtain a plurality of VT fitting distribution information, including: According to Gaussian distribution, the VT data of each read level is fitted to obtain the multiple VT fitting distribution information.
6. The method according to claim 5, characterized in that The VT data of each read level is fitted according to the Gaussian distribution to obtain the plurality of VT fitting distribution information, including: For each readlevel of VT data, determining the variance of the readlevel of VT data; Substituting the variance and any two groups of VT data of the read level into a Gaussian distribution function, and calculating the mean of the VT data of the read level; Based on the variance of the VT data of the read level and the mean of the VT data of the read level, a Gaussian distribution model corresponding to the VT data of the read level is determined, and the Gaussian distribution model is used as the VT fitting distribution information of the VT data of the read level.
7. The method according to claim 6, characterized in that The method of taking the intersection of any two adjacent distributions of the read levels in the plurality of VT fitting distribution information as an estimated optimal voltage includes: A first Gaussian distribution model corresponding to the first read level and a second Gaussian distribution model corresponding to the second read level are combined to calculate the intersection of the first read level and the second read level; the first read level and the second read level are any two adjacently distributed read levels in the multiple VT fitting distribution information.
8. The method according to claim 6, characterized in that The determining the variance of the VT data of the read level comprises: The functional relationship between the VT data and the variance in the target read / write state is obtained, and the VT data of the read level is substituted into the functional relationship to obtain the variance of the VT data of the read level.
9. The method according to claim 8, characterized in that The obtaining of the functional relationship between the VT data and the variance under the target read / write state comprises: Determine a target clustering result corresponding to the target read / write state, wherein the target clustering result is used to reflect the read / write state category to which the target read / write state belongs; From the correspondence between multiple clustering results and multiple functional relationships, the functional relationship corresponding to the target clustering result is determined, and the functional relationship is used as the functional relationship between the VT data and the variance under the target read-write state.
10. The method according to any one of claims 1 to 9, characterized in that The target read-write state parameters include one or more of the following state parameters: a state parameter for indicating write-erase cycles, a state parameter for indicating read disturbance, a state parameter for indicating write disturbance, and a state parameter for indicating data shelf life.
11. A target read voltage determination device, characterized in that: The device comprises an acquisition unit and a determination unit; The acquisition unit is used to acquire the on-voltage VT fitting distribution information corresponding to each read level readlevel in the storage device when the storage block is in the target read-write state, and obtain multiple VT fitting distribution information; one VT fitting distribution information is used to reflect the distribution of the on-voltage of the storage block under one read level; The determining unit is used to determine at least one estimated optimal voltage from the on-voltages of the plurality of VT fitting distribution signals; The determination unit is further configured to determine a target read voltage of the storage block when the storage block is in the target read / write state based on the at least one estimated optimal voltage, wherein the target read voltage is used to determine the storage state of the storage block.
12. The device according to claim 11, characterized in that The determining unit is specifically used for: The intersection of any two adjacent VT fitting distribution information among the plurality of VT fitting distribution information is used as an estimated optimal voltage; or, Determining an estimated optimal voltage according to a difference between a mean and a variance of any one of the plurality of VT fitting distribution information; And / or, the determining unit is specifically configured to: Searching within a neighborhood range of each of the at least one estimated optimal voltage to obtain a target read voltage of the storage block when the storage block is in the target read / write state; And / or, the acquisition unit is specifically used for: Writing sample data into the storage block in the target read / write state to obtain VT data of each read level; the VT data is used to reflect the number of storage blocks corresponding to different threshold voltages; Fit the VT data of each read level to obtain multiple VT fitting distribution information; And / or, the acquisition unit is specifically used for: Fitting the VT data of each read level according to Gaussian distribution to obtain the plurality of VT fitting distribution information; And / or, the acquisition unit is specifically used for: For each readlevel of VT data, determining the variance of the readlevel of VT data; Substituting the variance and any two groups of VT data of the read level into a Gaussian distribution function, and calculating the mean of the VT data of the read level; Determine a Gaussian distribution model corresponding to the VT data of the read level based on the variance of the VT data of the read level and the mean of the VT data of the read level, and use the Gaussian distribution model as the VT fitting distribution information of the VT data of the read level; And / or, the determining unit is specifically configured to: A first Gaussian distribution model corresponding to a first read level and a second Gaussian distribution model corresponding to a second read level are combined to calculate an intersection point between the first read level and the second read level; The first read level and the second read level are any two adjacently distributed read levels in the plurality of VT fitting distribution information; And / or, the determining unit is specifically configured to: Obtaining a functional relationship between VT data and variance under the target read / write state, and substituting the VT data of the read level into the functional relationship to obtain the variance of the VT data of the read level; And / or, the determining unit is specifically configured to: Determine a target clustering result corresponding to the target read / write state, wherein the target clustering result is used to reflect the read / write state category to which the target read / write state belongs; Determine the functional relationship corresponding to the target clustering result from the corresponding relationships between the multiple clustering results and the multiple functional relationships, and use the functional relationship as the functional relationship between the VT data and the variance under the target read-write state; And / or, the parameters of the target read-write state include one or more of the following state parameters: a state parameter for indicating a write-erase cycle, a state parameter for indicating a read disturbance, a state parameter for indicating a write disturbance, and a state parameter for indicating a data shelf life.
13. An electronic device, characterized in that: include: Processor and memory; The memory stores instructions executable by the processor; When the processor is configured to execute the instructions, the electronic device implements the method according to any one of claims 1 to 10.
14. A computer-readable storage medium, characterized in that: The readable storage medium includes: software instructions; When the software instructions are executed in an electronic device, the electronic device implements the method according to any one of claims 1 to 10.
Citation Information
Cited By
Optimal read voltage determination method of storage device, electronic equipment and storage medium
CN122024798A
