A method and system for adaptive voltage adjustment of solid-state drives under high and low temperatures
Patent Information
- Application Number
- CN202210994166.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-18
- Publication Date
- 2026-09-01
- Estimated Expiration
- 2042-08-18
AI Technical Summary
[0005]1、只有在出错时才会开始去触发,不能提前预防出错
[0045]本申请提供的固态硬盘高低温下自适应调整电压方法,根据固态硬盘写数据时和固态硬盘读数据时的温度差,计算获取修正电压阈值,不需要从基础电压微调多次读取数据至能够正确读取到正确数据为止,不会引发固态硬盘读干扰;并在数据读取出错前,及时进行阈值电压修正,有效提升的数据读取效率。
Smart Images

Figure CN115458019B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of solid-state drive (SSD) data read / write technology, specifically to a method and system for adaptive voltage adjustment of SSDs under high and low temperatures. Background Technology
[0002] For storage products, it is usually necessary to ensure the correctness of data writing and reading throughout the entire service life. At the same time, the temperature reliability of NAND Flash memory also needs to be guaranteed, that is, the correctness of memory reading should not be affected by different temperatures.
[0003] However, temperature changes can cause errors in the written data reading process, and the greater the temperature difference between writing and reading, the greater the number of error bits, leading to data corruption.
[0004] The existing solution involves adjusting the threshold voltage to read the erroneous data when a read error occurs, starting from the base voltage and gradually fine-tuning until the correct data can be read. However, the existing solution has the following technical problems:
[0005] 1. It only triggers when an error occurs, and cannot prevent errors in advance.
[0006] 2. Constantly adjusting the threshold voltage to read data can significantly impact the performance of a solid-state drive.
[0007] 3. When reading a data cell, voltage needs to be applied to other adjacent data cells, causing minor writes to other flash memory pages. If too many reads are performed, the accumulated minor writes will shift the threshold voltage distribution to the right, leading to misjudgments when reading adjacent data. Existing solutions require multiple data reads, which may pose a risk of read interference.
[0008] Among them, NAND Flash is a non-volatile storage medium, also known as NAND flash memory chip; read interference is the error that can occur when flash memory is read multiple times, causing errors in the contents of adjacent storage cells in the same block; threshold voltage is usually the input voltage corresponding to the midpoint of the inflection point where the output current changes drastically with the input voltage in the transfer characteristic curve. Summary of the Invention
[0009] The purpose of this invention is to overcome the shortcomings of the above-mentioned background technology and provide a method and system for adaptive voltage adjustment of solid-state drives under high and low temperatures.
[0010] In a first aspect, this application provides a method for adaptive voltage adjustment of a solid-state drive under high and low temperatures, comprising the following steps:
[0011] When the solid-state drive (SSD) is writing data, its initial temperature is measured.
[0012] When the solid-state drive (SSD) is reading data, its second temperature is measured.
[0013] Obtain the temperature difference between the first temperature and the second temperature;
[0014] Compare temperature difference with temperature difference threshold;
[0015] When the temperature difference is greater than the temperature difference threshold, the corrected voltage threshold is calculated based on the temperature difference.
[0016] Control the solid-state drive to perform data read operations using the acquired voltage value.
[0017] According to the first aspect, in a first possible implementation of the first aspect, after the step of comparing the temperature difference and the temperature difference threshold, the following step is further included:
[0018] When the temperature difference is not greater than the temperature difference threshold, the solid-state drive is controlled to use the unadjusted voltage threshold to perform data read operations.
[0019] According to the first possible implementation of the first aspect, in the second possible implementation of the first aspect, after the step of controlling the solid-state drive to perform a data read operation using an unadjusted voltage value, the following steps are further included:
[0020] Verify the correctness of the data read from the solid-state drive and obtain the verification result;
[0021] Based on the obtained verification results, different temperature threshold update strategies are implemented.
[0022] According to the first aspect, in a third possible implementation of the first aspect, the step of calculating and obtaining a corrected voltage threshold based on the temperature difference when the temperature difference is greater than a temperature difference threshold specifically includes the following steps:
[0023] Obtain historical temperature values for writing data to a solid-state drive;
[0024] Based on the historical temperature values of SSD write data and the temperature values of current read data, obtain the linear coefficient between the temperature difference and the voltage adjustment value;
[0025] Based on the obtained linear coefficients, a linear relationship between temperature difference and threshold voltage offset is constructed;
[0026] When the temperature difference is greater than the temperature difference threshold, the corrected voltage threshold is calculated based on the obtained linear relationship and temperature difference.
[0027] According to the third possible implementation of the first aspect, in the fourth possible implementation of the first aspect, after the step of controlling the solid-state drive to perform a data read operation using the acquired voltage value, the following steps are further included:
[0028] Verify the correctness of the data read from the solid-state drive and obtain the correctness of the linear relationship;
[0029] Based on the correctness of the obtained linear relationship, different linear relationship correction strategies are implemented.
[0030] According to the fourth possible implementation of the first aspect, in the fifth possible implementation of the first aspect, the step of controlling the execution of different linear relationship correction strategies based on the correctness of the obtained linear relationship specifically includes the following steps:
[0031] When the obtained linear relationship is incorrect, control the linear correction of the linear relationship.
[0032] Secondly, this application provides a solid-state drive (SSD) adaptive voltage adjustment system under high and low temperatures, comprising:
[0033] The first temperature acquisition module is used to acquire the first temperature of the solid-state drive when writing data.
[0034] The second temperature acquisition module is used to acquire the second temperature of the solid-state drive when the solid-state drive is reading data;
[0035] A temperature difference acquisition module is communicatively connected to the first temperature acquisition module and the second temperature acquisition module, and is used to acquire the temperature difference between the first temperature and the second temperature.
[0036] The comparison module is communicatively connected to the temperature difference acquisition module and is used to compare the temperature difference and the temperature difference threshold.
[0037] The corrected voltage threshold acquisition module is communicatively connected to the comparison module and is used to calculate and acquire the corrected voltage threshold based on the temperature difference when the temperature difference is greater than the temperature difference threshold.
[0038] The first data read control module is communicatively connected to the corrected voltage threshold acquisition module and is used to control the solid-state drive to perform data read operations using the acquired voltage value.
[0039] According to the second aspect, the first possible implementation of the second aspect also includes:
[0040] The second data reading control module is communicatively connected to the comparison module and is used to control the solid-state drive to perform data reading operations using the unadjusted voltage threshold when the temperature difference is not greater than the temperature difference threshold.
[0041] According to the first possible implementation of the second aspect, the second possible implementation of the second aspect further includes:
[0042] The data correctness verification module is communicatively connected to the second data reading control module and is used to verify the correctness of the data read by the solid-state drive and obtain the verification result;
[0043] The temperature threshold update module is communicatively connected to the data correctness verification module and is used to control the execution of different temperature threshold update strategies based on the obtained verification results.
[0044] Compared with the prior art, the advantages of the present invention are as follows:
[0045] The adaptive voltage adjustment method for solid-state drives (SSDs) under high and low temperatures provided in this application calculates and obtains the correction voltage threshold based on the temperature difference between when the SSD is writing data and when it is reading data. This eliminates the need for multiple data reads from the base voltage until the correct data can be read, thus avoiding read interference in the SSD. Furthermore, it corrects the threshold voltage in a timely manner before data read errors occur, effectively improving data read efficiency. Attached Figure Description
[0046] Figure 1 This is a flowchart of the method for adaptive voltage adjustment of solid-state drives under high and low temperatures according to an embodiment of the present invention;
[0047] Figure 2 This is another flowchart of the method for adaptive voltage adjustment of solid-state drives under high and low temperatures according to an embodiment of the present invention;
[0048] Figure 3 This is a functional block diagram of the adaptive voltage adjustment system for solid-state drives under high and low temperatures according to an embodiment of the present invention. Detailed Implementation
[0049] Referring now to specific embodiments of the invention, examples of which are illustrated in the accompanying drawings. Although the invention will be described in conjunction with specific embodiments, it will be understood that it is not intended to limit the invention to the described embodiments. Rather, it is intended to cover variations, modifications, and equivalents included within the spirit and scope of the invention as defined by the appended claims. It should be noted that the method steps described herein can be implemented by any functional block or functional arrangement, and any functional block or functional arrangement can be implemented as a physical entity or a logical entity, or a combination of both.
[0050] To enable those skilled in the art to better understand the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0051] Note: The examples described below are merely specific examples and are not intended to limit the embodiments of the present invention to the specific steps, values, conditions, data, order, etc. Those skilled in the art can utilize the concept of the present invention to construct more embodiments not mentioned herein by reading this specification.
[0052] The purpose of this invention is to overcome the shortcomings of the above-mentioned background technology and provide a method and system for adaptive voltage adjustment of solid-state drives under high and low temperatures.
[0053] Firstly, please refer to Figure 1 and Figure 2 This application provides a method for adaptive voltage adjustment of a solid-state drive under high and low temperatures, including the following steps:
[0054] Step S1: When the solid-state drive is writing data, obtain the first temperature of the solid-state drive;
[0055] Step S2: When the solid-state drive is reading data, obtain the second temperature of the solid-state drive;
[0056] Step S3: Obtain the temperature difference between the first temperature and the second temperature;
[0057] Step S4: Compare the temperature difference with the temperature difference threshold;
[0058] Step S5: When the temperature difference is greater than the temperature difference threshold, calculate and obtain the correction voltage threshold based on the temperature difference;
[0059] Step S6: Control the solid-state drive to perform data reading operations using the acquired voltage value.
[0060] The adaptive voltage adjustment method for solid-state drives (SSDs) under high and low temperatures provided in this application calculates and obtains the correction voltage threshold based on the temperature difference between when the SSD is writing data and when it is reading data. This eliminates the need for multiple data reads from the base voltage until the correct data can be read, thus avoiding read interference caused by multiple data reads. Furthermore, the threshold voltage is corrected in a timely manner before data read errors occur, effectively improving data read efficiency.
[0061] In one embodiment, after the step of comparing the temperature difference and the temperature difference threshold, the following step is further included:
[0062] When the temperature difference is not greater than the temperature difference threshold, the solid-state drive is controlled to use the unadjusted voltage threshold, i.e., the base voltage threshold, to perform data read operations.
[0063] In one embodiment, after the step of controlling the solid-state drive to perform a data read operation using an unadjusted voltage value, the method further includes the following steps:
[0064] Verify the correctness of the data read from the solid-state drive and obtain the verification result;
[0065] Based on the obtained verification results, different temperature threshold update strategies are implemented.
[0066] In one embodiment, after the step of controlling the solid-state drive to perform a data read operation using an unadjusted voltage value, the method further includes the following steps:
[0067] Verify the correctness of the data read from the solid-state drive and obtain the verification result;
[0068] When the verification result indicates that the data read by the solid-state drive is incorrect, the control reduces the temperature difference threshold according to the preset temperature difference gradient value, and repeatedly verifies the correctness of the data read by the solid-state drive to obtain the verification result until the data read by the solid-state drive is correct, so as to adjust to the temperature difference threshold that is compatible with the solid-state drive.
[0069] In one embodiment, the temperature difference threshold is 5° and the preset temperature difference gradient value is 1°.
[0070] In one embodiment, the temperature difference threshold is -5° and the preset temperature difference gradient value is -1°.
[0071] Previous data on SSD voltage threshold adjustments show that temperature changes primarily affect the read threshold voltage. As temperature increases, the threshold voltage decreases, and as temperature decreases, the threshold voltage increases. Therefore, by recording historical write and read temperatures of SSDs, as well as threshold voltage adjustment data, a mathematical relationship between temperature difference and threshold voltage offset can be established.
[0072] In one embodiment, in historical data, a temperature difference of 10 degrees corresponds to a threshold voltage offset of 10mV, and a temperature difference of 20 degrees corresponds to a threshold voltage offset of 20mV. Therefore, the linearity coefficient between the temperature difference and the threshold voltage offset is 1. That is, for every degree the temperature difference increases, the corresponding voltage offset is subtracted from the base voltage; conversely, for every degree the temperature difference decreases, the corresponding voltage offset is added to the base voltage.
[0073] The corrected threshold voltage is the sum of the threshold voltage offset and the base voltage.
[0074] In one embodiment, the mathematical relationship can be implemented as a linear relationship or a curve-fitted relationship. Preferably, it is a linear relationship.
[0075] In one embodiment, the step of calculating and obtaining a corrected voltage threshold based on the temperature difference when the temperature difference is greater than a temperature difference threshold specifically includes the following steps:
[0076] Obtain historical temperature values for writing data to a solid-state drive;
[0077] Based on the historical temperature values of solid-state drive data writing and the threshold voltage adjustment values corresponding to different historical temperature values, obtain the linear coefficient between the temperature difference and the voltage adjustment value;
[0078] Based on the obtained linear coefficients, a linear relationship between temperature difference and threshold voltage offset is constructed;
[0079] When the temperature difference is greater than the temperature difference threshold, the corrected voltage threshold is calculated based on the obtained linear relationship and temperature difference.
[0080] In one embodiment, after the step of controlling the solid-state drive to perform a data read operation using the acquired voltage value, the method further includes the following steps:
[0081] Verify the correctness of the data read from the solid-state drive and obtain the correctness of the linear relationship;
[0082] Based on the correctness of the obtained linear relationship, different linear relationship correction strategies are implemented.
[0083] In one embodiment, the step of controlling the execution of different linear relationship correction strategies based on the correctness of the obtained linear relationship specifically includes the following steps:
[0084] When the obtained linear relationship is incorrect, control the linear correction of the linear relationship.
[0085] Secondly, please refer to Figure 3 This application provides a solid-state drive (SSD) adaptive voltage adjustment system under high and low temperatures, including a first temperature acquisition module 100, a second temperature acquisition module 200, a temperature difference acquisition module 300, a comparison module 400, a correction voltage threshold acquisition module 500, and a first data read control module 600. The first temperature acquisition module 100 acquires a first temperature of the SSD when writing data; the second temperature acquisition module 200 acquires a second temperature of the SSD when reading data; the temperature difference acquisition module 300 is communicatively connected to the first temperature acquisition module 100 and the second temperature acquisition module 200, and acquires the temperature difference between the first and second temperatures; the comparison module 400 is communicatively connected to the temperature difference acquisition module 300, and compares the temperature difference with a temperature difference threshold; the correction voltage threshold acquisition module 400 is communicatively connected to the comparison module 300, and calculates and acquires a correction voltage threshold based on the temperature difference when the temperature difference is greater than the temperature difference threshold; the first data read control module 600 is communicatively connected to the correction voltage threshold acquisition module 500, and controls the SSD to perform data read operations using the acquired voltage value.
[0086] In one embodiment, a second data reading control module is further included, which is communicatively connected to the comparison module, and is used to control the solid-state drive to perform data reading operations using an unadjusted voltage threshold when the temperature difference is not greater than the temperature difference threshold.
[0087] In one embodiment, the system further includes a data correctness verification module and a temperature threshold update module. The data correctness verification module is communicatively connected to the second data read control module and is used to verify the correctness of the data read by the solid-state drive and obtain the verification result. The temperature threshold update module is communicatively connected to the data correctness verification module and is used to control the execution of different temperature threshold update strategies based on the obtained verification result.
[0088] Based on the same inventive concept, embodiments of this application also provide a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements all or part of the method steps of the above method.
[0089] The present invention can implement all or part of the processes in the above methods, or it 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 file, or some intermediate form. The computer-readable medium can include: any entity or device capable of carrying computer program code, recording media, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in the computer-readable medium can be appropriately added or removed according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, the computer-readable medium does not include electrical carrier signals and telecommunication signals.
[0090] Based on the same inventive concept, embodiments of this application also provide an electronic device, including a memory and a processor. The memory stores a computer program that runs on the processor. When the processor executes the computer program, it implements all or part of the method steps described above.
[0091] 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. The processor is the control center of the computer device, connecting all parts of the computer device through various interfaces and lines.
[0092] Memory can be used to store computer programs and / or modules. The processor performs various functions of the computer device by running or executing the computer programs and / or modules stored in the memory, and by accessing data stored in the memory. Memory can primarily include a program storage area and a data storage area. The program storage area can store the operating system and at least one application program required for a function (e.g., sound playback, image playback, etc.); the data storage area can store data created based on the use of the mobile phone (e.g., audio data, video data, etc.). Furthermore, memory can include high-speed random access memory, and can also include non-volatile memory, such as hard disks, RAM, plug-in hard disks, SmartMedia Cards (SMC), Secure Digital (SD) cards, Flash Cards, at least one disk storage device, flash memory device, or other volatile solid-state storage devices.
[0093] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, servers, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage and optical storage) containing computer-usable program code.
[0094] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), servers, and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0095] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0096] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0097] Obviously, those skilled in the art can make various modifications and variations to this invention without departing from its spirit and scope. Therefore, if these modifications and variations fall within the scope of the claims of this invention and their equivalents, this invention also intends to include these modifications and variations.
Claims
1. A method for adaptive voltage adjustment of a solid-state drive under high and low temperatures, characterized in that, Includes the following steps: When the solid-state drive (SSD) is writing data, its initial temperature is measured. When the solid-state drive (SSD) is reading data, its second temperature is measured. Obtain the temperature difference between the first temperature and the second temperature; Compare temperature difference with temperature difference threshold; When the temperature difference is greater than the temperature difference threshold, the corrected voltage threshold is calculated based on the temperature difference. Control the solid-state drive to perform data read operations using the acquired voltage value; The step of calculating and obtaining the corrected voltage threshold based on the temperature difference when the temperature difference is greater than the temperature difference threshold specifically includes the following steps: Obtain historical temperature values for writing data to a solid-state drive; Based on the historical temperature values of SSD write data and the temperature values of current read data, obtain the linear coefficient between the temperature difference and the voltage adjustment value; Based on the obtained linear coefficients, a linear relationship between temperature difference and threshold voltage offset is constructed; When the temperature difference is greater than the temperature difference threshold, the corrected voltage threshold is calculated based on the obtained linear relationship and temperature difference. After the step of controlling the solid-state drive to perform data read operations using the acquired voltage value, the method further includes the following steps: Verify the correctness of the data read from the solid-state drive and obtain the correctness of the linear relationship; Based on the correctness of the obtained linear relationship, different linear relationship correction strategies are implemented.
2. The method for adaptive voltage adjustment of a solid-state drive under high and low temperatures as described in claim 1, characterized in that, Following the step of comparing the temperature difference and the temperature difference threshold, the following steps are also included: When the temperature difference is not greater than the temperature difference threshold, the solid-state drive is controlled to use the unadjusted voltage threshold to perform data read operations.
3. The method for adaptive voltage adjustment of a solid-state drive under high and low temperatures as described in claim 2, characterized in that, Following the step of controlling the solid-state drive to perform data read operations using an unadjusted voltage value, the method further includes the following steps: Verify the correctness of the data read from the solid-state drive and obtain the verification result; Based on the obtained verification results, different temperature threshold update strategies are implemented.
4. The method for adaptive voltage adjustment of a solid-state drive under high and low temperatures as described in claim 1, characterized in that, The step of controlling the execution of different linear relationship correction strategies based on the correctness of the obtained linear relationship specifically includes the following steps: When the obtained linear relationship is incorrect, control the linear correction of the linear relationship.
5. A voltage adaptive adjustment system for solid-state drives under high and low temperatures, characterized in that, include: The first temperature acquisition module is used to acquire the first temperature of the solid-state drive when writing data. The second temperature acquisition module is used to acquire the second temperature of the solid-state drive when the solid-state drive is reading data; A temperature difference acquisition module is communicatively connected to the first temperature acquisition module and the second temperature acquisition module, and is used to acquire the temperature difference between the first temperature and the second temperature. The comparison module is communicatively connected to the temperature difference acquisition module and is used to compare the temperature difference and the temperature difference threshold. The corrected voltage threshold acquisition module is communicatively connected to the comparison module and is used to calculate and acquire the corrected voltage threshold based on the temperature difference when the temperature difference is greater than the temperature difference threshold. The first data reading control module is communicatively connected to the corrected voltage threshold acquisition module and is used to control the solid-state drive to perform data reading operations using the acquired voltage value; The step of calculating and obtaining the corrected voltage threshold based on the temperature difference when the temperature difference is greater than the temperature difference threshold specifically includes: Obtain historical temperature values for writing data to a solid-state drive; Based on the historical temperature values of SSD write data and the temperature values of current read data, obtain the linear coefficient between the temperature difference and the voltage adjustment value; Based on the obtained linear coefficients, a linear relationship between temperature difference and threshold voltage offset is constructed; When the temperature difference is greater than the temperature difference threshold, the corrected voltage threshold is calculated based on the obtained linear relationship and temperature difference. After the step of controlling the solid-state drive to perform data read operations using the acquired voltage value, the method further includes: Verify the correctness of the data read from the solid-state drive and obtain the correctness of the linear relationship; Based on the correctness of the obtained linear relationship, different linear relationship correction strategies are implemented.
6. The solid-state drive adaptive voltage adjustment system under high and low temperatures as described in claim 5, characterized in that, Also includes: The second data reading control module is communicatively connected to the comparison module and is used to control the solid-state drive to perform data reading operations using the unadjusted voltage threshold when the temperature difference is not greater than the temperature difference threshold.
7. The solid-state drive adaptive voltage adjustment system under high and low temperatures as described in claim 6, characterized in that, Also includes: The data correctness verification module is communicatively connected to the second data reading control module and is used to verify the correctness of the data read by the solid-state drive and obtain the verification result; The temperature threshold update module is communicatively connected to the data correctness verification module and is used to control the execution of different temperature threshold update strategies based on the obtained verification results.
Citation Information
Patent Citations
Solid state disk cross-temperature data reading method, storage medium and SSD equipment
CN114067892A