A method and device for improving solid-state hardware storage performance
By recording the write time of the SSD block area and using the corresponding relationship between the storage time and the offset voltage for data reading, the problem of SSD reading errors after long-term storage is solved, which improves the reading performance and success rate and reduces the overhead of error processing.
Patent Information
- Application Number
- CN202111369308.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-15
- Publication Date
- 2025-05-16
- Estimated Expiration
- 2041-11-15
AI Technical Summary
After long-term storage, solid-state drives (SSDs) read code errors due to data signal changes, the prior art requires multiple repeated read attempts to obtain the correct data, which increases error processing overhead and host command processing delay.
Record the writing time of the data written to each SSD block area, and use the matching offset voltage to read the data according to the correspondence between the storage time and the offset voltage to reduce the number of rereads.
Improves the data read performance of SSD, reduces the overhead of host response delay and SSD error handling, and improves the read success rate.
Smart Images

Figure CN114300027B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of solid state hard disk storage, and in particular to a method and device for improving solid state hardware storage performance. Background Art
[0002] SSD (Solid State Drive) is a storage device composed of several NAND flash memory arrays. Taking Micron B47R Flash as an example, a 512GB SSD is composed of 8 Nand Flash Dies. The blocks with the same serial number on each die constitute a logical storage unit of the SSD, called a row block, or rblock for short.
[0003] Usually, when the host needs to read data from the SSD, the SSD controller uses its internal FTL algorithm to determine the die and rblock where the data is located, and then uses the read-from-NAND flash underlying operation command to read the data from the corresponding flash particles, and then returns the data to the host through the SSD and host interface.
[0004] However, Nand flash itself has data retention reliability issues - the data signals written into the flash will change over time, which will cause bit errors when the SSD reads directly after a period of time.
[0005] At present, the SSD architecture is designed to deal with this situation: after a bit error occurs, the physical location where the error occurs is repeatedly read by trying various reading methods provided by the Flash manufacturer, which is called read retry. In the worst case, it may be necessary to try all the reading methods provided by the Flash manufacturer before the correct data can be read. Summary of the invention
[0006] In view of the defects existing in the prior art, the purpose of the present invention is to provide a method and device for improving the storage performance of solid-state hardware, which can reduce the error handling overhead of SSD, improve the data reading performance of SSD, and reduce the delay of SSD in processing host commands.
[0007] To achieve the above objectives, in a first aspect, an embodiment of the present invention provides a method for improving solid-state hardware storage performance, which includes:
[0008] Record the writing time of each SSD (Solid State Drive) block to write the data to be read;
[0009] After receiving any SSD block read command, the to-be-read data is read with the corresponding offset voltage according to the corresponding relationship between the storage time and the offset voltage;
[0010] The corresponding relationship between the storage time and the offset voltage is obtained by recording the offset voltage used to successfully read the test data after the test data is stored in different SSD blocks for different periods of time.
[0011] As an optional implementation, if the SSD is powered off for a long time and has no timing module, after the SSD is powered on, the SSD power off time is calculated according to the recommended voltage provided by the SSD self-calibration function, and the write time of each SSD block is created or updated.
[0012] As an optional implementation scheme, the SSD generates multiple rereads due to a long period of power failure, and the SSD self-calibration function is activated;
[0013] The SSD power-off time is calculated based on the recommended voltage provided by the SSD self-calibration function, and the write time of each SSD block is created or updated.
[0014] As an optional implementation scheme, if the SSD is powered off for a long time and has a timing module, after the SSD is powered on, the write time of each SSD block is created or updated according to the timing module.
[0015] As an optional implementation scheme, after receiving any SSD block read command, reading the to-be-read data with the corresponding offset voltage according to the corresponding relationship between the storage time and the offset voltage includes:
[0016] In response to the SSD block read command, the write time of the SSD block is obtained, and based on the read time, the storage duration corresponding to the SSD block is calculated;
[0017] Obtaining a corresponding relationship between the storage duration and the offset voltage, and obtaining an offset voltage corresponding to the SSD block area according to the storage duration corresponding to the SSD block area;
[0018] The to-be-read data stored in the SSD block is read using the offset voltage corresponding to the SSD block.
[0019] As an optional implementation scheme, after the test data is stored in different SSD blocks for different periods of time, the offset voltage used to successfully read the test data is recorded to obtain a corresponding relationship between the storage time and the offset voltage, including:
[0020] Record the writing time of each SSD block storing test data;
[0021] After a preset time, read the SSD block area with different offset voltages, and record the reading time and corresponding offset voltage of the successful reading of the test data;
[0022] The storage duration is obtained according to the read time and the read time calculation, and a corresponding relationship between the storage duration and the offset voltage is established.
[0023] As an optional implementation scheme, the preset duration corresponding to the continuous SSD blocks is continuously increased or shortened according to the preset length.
[0024] As an optional implementation scheme, a power-off protection module stores the corresponding relationship between the storage time and the offset voltage.
[0025] In a second aspect, an embodiment of the present invention provides a system for improving solid-state hardware storage performance, comprising:
[0026] The writing module is used to write the data to be read in each SSD block area and record the writing time;
[0027] The reading module is used for reading the to-be-read data with the corresponding offset voltage according to the corresponding relationship between the preset storage time and the offset voltage after receiving any SSD block read command.
[0028] As an optional implementation, it also includes a test module, which is used to record the offset voltage used to successfully read the test data after storing different SSD blocks for different periods of time, and obtain the corresponding relationship between the storage time and the offset voltage.
[0029] Compared with the prior art, the advantages of the present invention are:
[0030] In this case, the write time is recorded each time data is written. This allows the user to confirm the time the data to be read has been stored in the SSD when reading the data, and then directly use the matching offset voltage to successfully read the data, reducing the number of rereads caused by long-term storage degradation, thereby improving the data reading performance of the SSD, reducing host response delays, and reducing the overhead of SSD error handling. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, a brief introduction is given below to the drawings corresponding to the embodiments. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0032] Figure 1 It is a structural diagram of an SSD;
[0033] Figure 2 A flowchart of a method for improving solid-state hardware storage performance according to an embodiment of the present invention;
[0034] Figure 3 A detailed flowchart of step S2 of a method for improving solid-state hardware storage performance according to the present invention;
[0035] Figure 4 A flowchart of the steps of a method for obtaining the corresponding relationship between storage duration and offset voltage in an embodiment of a method for improving solid-state hardware storage performance of the present invention;
[0036] Figure 5 The present invention is a schematic structural diagram of an embodiment of a device for improving solid-state hardware storage performance. DETAILED DESCRIPTION
[0037] Glossary:
[0038] SSD (Solid State Drive): A hard disk made of an array of solid-state electronic storage chips, including a data storage device composed of several NAND Flash arrays.
[0039] NAND: A non-volatile storage medium that can store data even after power failure. It is also called NAND Flash chip.
[0040] Die: Flash memory die. In integrated circuits, a die is a small piece of semiconductor material on which a given functional circuit is manufactured. It consists of a storage block and a logic circuit. In this case, the die is the smallest unit for NAND Flash to execute commands.
[0041] Rblock: Logical storage unit, the basic unit of SSD operation, composed of logical blocks with the same sequence number in concurrently operated dies.
[0042] FTL: (Flash Translation Layer) is a software middle layer, also known as a NAND Flash management algorithm, which is used to simulate the flash memory into a virtual block device, so that block device-like file systems such as FAT can be implemented on the flash memory.
[0043] Offset voltage: In the present invention, it is the decision voltage used when reading data inside the flash, and the voltage is software adjustable.
[0044] The embodiments of the present invention are further described in detail below with reference to the accompanying drawings.
[0045] See also Figure 1As shown, an embodiment of the present invention provides a method and device for improving the storage performance of solid-state hardware. The method and device start recording the storage time of the corresponding data while writing the data. According to the storage time, the offset voltage required to successfully read the corresponding data is directly confirmed, thereby ensuring the success rate of the reading, improving the successful reading rate, improving the data reading performance and response time of the SSD, and reducing the error handling overhead of the SSD.
[0046] In order to achieve the above technical effects, the overall idea of this application is as follows:
[0047] Record the writing time of each SSD block for writing the data to be read;
[0048] After receiving any SSD block read command, the to-be-read data is read with the corresponding offset voltage according to the corresponding relationship between the storage time and the offset voltage;
[0049] The corresponding relationship between the storage time and the offset voltage is obtained by recording the offset voltage used to successfully read the test data after the test data is stored in different SSD (Solid State Drive) blocks for different periods of time.
[0050] In summary, when performing read and write operations in an SSD, it is inevitable that the electrical signal changes after the data is stored for a certain period of time, resulting in reading difficulties. The commonly used method is to continuously adjust the offset voltage used to read the electrical signal until the data can be successfully read. The present invention creatively proposes that there is a corresponding relationship between the storage time and the offset voltage, and proposes a detailed recording step - starting to record the time when writing, so that the storage duration can be directly obtained when reading, and then due to the corresponding relationship between the storage time and the offset voltage, the corresponding offset voltage that can be successfully read is directly obtained, thereby improving the read success rate, reducing the SSD response time, and reducing the overhead of SSD error attempts.
[0051] In order to better understand the above technical solution, a detailed description is given below in conjunction with specific implementation methods.
[0052] like Figure 2 As shown, an embodiment of the present invention provides a method for improving solid-state hardware storage performance, which includes:
[0053] S1: recording the writing time of each SSD (Solid State Drive) block for writing the data to be read;
[0054] There are many ways to record time, such as configuring a clock unit for real-time timing, or counting heartbeats to use the total number of heartbeats as the unit of time. However, the above methods are greatly affected by the environment, such as the timing counting being stopped due to a sudden power outage.
[0055] The present invention proposes to directly record the time when data is written, without configuring the time unit or starting the heartbeat count, and can directly and simply store a time point. It is very simple and reliable and not easily affected by the environment.
[0056] It should also be noted that, as a storage device, SSD may face the reading and writing of various types of data, and the reading and writing time of each data in each block area may be different. Therefore, the present invention proposes to record according to the block area of SSD as the basic unit, rather than the write time of the entire SSD.
[0057] Specifically, when writing data, the SSD needs to read the rblocks in sequence, such as Figure 1 As shown, when the SSD writes data, it writes from the first rblock to the last rblock in sequence:
[0058] die 0 / rblock 0, die1 / rblock 0,…, die7 / rblock 0, die0 / rblock 1,
[0059] die 1 / rblock 1, die1 / rblock 1,…, die7 / rblock 1, die1 / rblock 1,
[0060] die 1 / rblock 2, die1 / rblock 2,…, die7 / rblock 2, die1 / rblock 2,
[0061] …
[0062] die 1 / rblock 551, die1 / rblock 551, ..., die7 / rblock 551, die1 / rblock 551, when each rblock is written, time is recorded.
[0063] For example, when the host starts writing data, each time a new rblock is written, the start writing time of the current rblock is recorded (the relative time starting from each power-on of the SSD). In this example, the writing time of rblock 0 is set to T1.
[0064] That is, different rblocks may have different write times, so they need to be recorded according to rblock.
[0065] S2: after receiving a read command from any SSD block, reading the to-be-read data with a corresponding offset voltage according to a corresponding relationship between storage duration and offset voltage;
[0066] When reading is required, that is, the SSD block area receives a read command, the storage time of the corresponding data in the block area can be obtained according to the difference between the current reading time point and the recorded writing time. Furthermore, since the storage time and the offset voltage are in a one-to-one correspondence, the present invention can directly obtain the offset voltage for successfully reading the corresponding data according to the storage time and the corresponding relationship, and then directly perform reading without the delay and loss of repeated attempts to read due to changes in electrical signals after a certain storage period.
[0067] Specifically, if Figure 3 As shown, step S2 includes the following steps:
[0068] S201: Responding to an SSD block read command, obtaining the write time of the SSD block, and calculating the storage duration corresponding to the SSD block according to the read time;
[0069] S202: Acquire the corresponding relationship between the storage time and the offset voltage, and obtain the offset voltage corresponding to the SSD block area according to the storage time corresponding to the SSD block area;
[0070] S203: Reading the to-be-read data stored in the SSD block area with the offset voltage corresponding to the SSD block area.
[0071] For example, when the host needs to read data, the SSD firmware performs the reading operation through a dedicated software module. When it is necessary to read the data of rblock 0, the write time of rblock 0 is read first, and then the NAND flash offset voltage mapping table is obtained to obtain the flash offset voltage offset 1 corresponding to the storage duration, and then the read offset voltage is adjusted to offset 1 in advance through the flash command, and then the data of rblock 0 is directly read successfully.
[0072] Furthermore, if the data of rblock 0 is erased because it is no longer needed, then its write time T1 and offset 1 are cleared; conversely, if the data of rblock 0 does not need to be erased, then its write time T1 and offset 1 still maintain a corresponding relationship therewith.
[0073] The corresponding relationship between the storage time and the offset voltage is obtained by recording the offset voltage used to successfully read the test data after the test data is stored in different SSD blocks for different time periods.
[0074] The electrical signal of the SSD data storage changes according to time, so the key to successfully reading data is to obtain the corresponding relationship between the offset voltage and the storage time. Therefore, the present invention proposes to store test data, record the storage time of the test data, try to read the test data, and record the read time of the test data and the offset voltage of the successful reading, wherein the storage time = the read time of the successful reading - the write time, that is, the corresponding relationship between the storage time and the offset voltage is recorded. The application of the corresponding relationship between the storage time and the offset voltage in step S2 is provided.
[0075] like Figure 4 As shown, obtaining the corresponding relationship between the storage time and the offset voltage includes the following steps:
[0076] T1: records the writing time of each SSD block storing test data;
[0077] T2: after a preset time, read the SSD block area with different offset voltages, and record the reading time and corresponding offset voltage of the successful reading of the test data;
[0078] T3: Calculate the storage time according to the reading time and the writing time, and establish a corresponding relationship between the storage time and the offset voltage.
[0079] It should be noted that the preset time length corresponding to the continuous SSD blocks is continuously increased or shortened according to the preset length.
[0080] For example, data is written to the SSD at the same time, and the data of an SSD block is read at intervals, so that the storage time increases continuously. Data can also be written to the next SSD block at intervals, and then the data is read at the same time, and the storage time also increases continuously. That is, as long as the corresponding relationship between the storage time and the offset voltage is guaranteed to be established during the test, the storage time is different.
[0081] Based on the above embodiments, the present invention proposes: if the SSD is powered off for a long time and has no timing module, then after the SSD is powered on, the SSD power off time is calculated according to the recommended voltage provided by the SSD self-calibration function, and the write time of each SSD block area is created or updated.
[0082] As a storage device, it does not need to remain powered on all the time, but when it is in a power-off state for a long time and there is no timing module, the SSD may be unable to calculate the storage time. For example, the write time only records hours, while the power-off time reaches days, or the write time only records days, while the power-off time reaches months, which exceeds the maximum time that the write time can record. For example, the old data does not record the write time. The present invention proposes to call the SSD's own SSD self-calibration function, and the SSD self-calibration function can provide a recommended voltage according to the current situation of the SSD. Generally, the recommended voltage has a higher probability of successfully realizing data reading. Therefore, the present invention further proposes to reverse the storage time according to the recommended voltage based on the relationship between the storage time and the offset voltage, and then create or update the write time of each SSD block area.
[0083] For example, if the SSD is powered off for a long time, and it does not have an RCT (REAL-TIME clock) module that can work independently after power failure, then the SSD itself cannot know how long it has been powered off, and cannot obtain the storage duration, and further does not know how high the offset voltage should be for data reading operations. The embodiment of the present invention uses the self-calibration function of NAND flash, which can provide a recommended offset voltage based on the state of the data written to the rblock through the flash. The example of the present invention calculates the approximate storage duration and write time of the rblock through this recommended offset voltage. If the SSD is powered on, if the power is off for a long time, resulting in an inaccurate offset, or even the corresponding rblock write time is inaccurate, the autocalibration can be directly started to obtain the recommended voltage, and then the storage duration and write duration can be deduced and updated accordingly.
[0084] Based on the above embodiments, the present invention further proposes that: after the SSD is powered off for a long time, it will first perform multiple reread attempts according to a preset data reading method. If all reread attempts fail, the SSD self-calibration function will be started to obtain a recommended voltage. The SSD power-off time is calculated according to the recommended voltage provided by the SSD self-calibration function, and the write time of each SSD block area is created or updated.
[0085] For example, when the SSD is powered on, if the power is off for a long time and the rbock write time and offset table are inaccurate, more read retries will be generated. When the number of read retries exceeds a certain threshold, the autocalibration function is started to reversely infer the approximate SSD power-off time, and the time is updated to the write time, storage duration and offset table of the rblock.
[0086] By using the above two recommended voltages to infer the storage time and update the write time of each SSD block, the present invention can improve the data reading success rate of an SSD without a timing module during a long power outage.
[0087] It should also be noted that if the SSD is powered off for a long time and has a timing module, then after the SSD is powered on, the write time of each SSD block is created or updated according to the timing module.
[0088] Furthermore, the embodiment of the present invention further proposes, based on the above embodiment: using a power-off protection module to store the corresponding relationship between the storage time and the offset voltage.
[0089] SSD may lose power. Therefore, it is extremely unsafe to store the corresponding relationship between storage time and offset voltage in a volatile memory device. The present invention further proposes to use a power-off protection module to store the corresponding relationship between storage time and offset voltage.
[0090] Specifically, the mapping table of storage duration and offset voltage is stored in NAND Flash, so that when power is turned on again, the mapping table of storage duration and offset voltage can be read from NAND Flash to restore data.
[0091] For example, since each rblock has a mapping table of write time, storage duration and offset voltage, each time this table is updated or created, it is also written to the NAND flash for backup. When the SSD loses power, the data is already saved in the NAND flash, and the corresponding data will not be lost, which is very safe.
[0092] Furthermore, when the SSD is powered on again, the corresponding write time and the mapping table of storage duration and offset voltage can be directly re-read from the NAND flash.
[0093] like Figure 5 As shown, based on the same inventive concept, the present application provides a device for improving solid-state hardware storage performance, which specifically includes:
[0094] The writing module is used to write the data to be read in each SSD block area and record the writing time;
[0095] The reading module is used to read the to-be-read data with the corresponding offset voltage according to the corresponding relationship between the preset storage time and the offset voltage after receiving any SSD block read command.
[0096] Furthermore, the device also includes a testing module, which is used to record the offset voltage used to successfully read the test data after storing different SSD blocks for different periods of time, and obtain the corresponding relationship between the storage time and the offset voltage.
[0097] The various variations and specific examples in the aforementioned method embodiment are also applicable to the device of this embodiment. Through the detailed description of the aforementioned method, those skilled in the art can clearly understand the implementation method of the device in this embodiment, so for the sake of brevity of the specification, it will not be described in detail here.
[0098] Note that the above are only preferred embodiments of the present invention and the technical principles used. Those skilled in the art will understand that the present invention is not limited to the specific embodiments described herein, and that various obvious changes, readjustments and substitutions can be made by those skilled in the art without departing from the scope of protection of the present invention. Therefore, although the present invention has been described in more detail through the above embodiments, the present invention is not limited to the above embodiments, and may include more other equivalent embodiments without departing from the concept of the present invention, and the scope of the present invention is determined by the scope of the appended claims.
[0099] The electronic device of the embodiment of the present invention may include a memory and a processor, wherein the memory stores a computer program running on the processor, and when the processor executes the computer program, all or part of the method steps in the first embodiment are implemented.
[0100] The processor may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc. The processor is the control center of the computer device, and uses various interfaces and lines to connect various parts of the entire computer device.
[0101] In general, the embodiments of the present invention provide a method and device for improving the storage performance of solid-state hardware. By starting to record the storage time of the corresponding data while writing the data, the offset voltage required to successfully read the corresponding data is directly confirmed based on the storage time. Compared with the traditional technology that usually uses a method of continuously adjusting the offset voltage used to read the electrical signal until the data can be successfully read, the present invention can ensure the success rate of reading, improve the successful reading rate, improve the data reading performance and response time of the SSD, and reduce the error handling overhead of the SSD.
[0102] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) containing computer-usable program code.
[0103] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0104] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0105] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1The steps for the functions specified in one or more boxes.
[0106] Obviously, those skilled in the art can make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include these modifications and variations.
Claims
1. A method for improving solid-state hardware storage performance, characterized in that: It includes: Record the writing time of each SSD (Solid State Drive) block to write the data to be read; After receiving any SSD block read command, the to-be-read data is read with the corresponding offset voltage according to the corresponding relationship between the storage time and the offset voltage; The corresponding relationship between the storage time and the offset voltage is obtained by recording the offset voltage used to successfully read the test data after the test data is stored in different SSD blocks for different periods of time; The SSD is powered off for a long time, and multiple re-reading occurs, so the SSD self-calibration function is started; The storage time is inferred based on the recommended voltage provided by the SSD self-calibration function and the corresponding relationship between the storage time and the offset voltage, and then the write time of each SSD block is created or updated.
2. A method for improving solid-state hardware storage performance as claimed in claim 1, characterized in that: If the SSD is powered off for a long time and there is no timing module, after the SSD is powered on, the SSD power-off time is calculated according to the recommended voltage provided by the SSD self-calibration function, and the write time of each SSD block is created or updated.
3. A method for improving solid-state hardware storage performance as claimed in claim 1, characterized in that: If the SSD is powered off for a long time and has a timing module, after the SSD is powered on, the write time of each SSD block is created or updated according to the timing module.
4. A method for improving solid-state hardware storage performance as claimed in claim 1, characterized in that: After receiving any SSD block read command, reading the to-be-read data with the corresponding offset voltage according to the corresponding relationship between the storage time and the offset voltage, comprises: In response to the SSD block read command, the write time of the SSD block is obtained, and based on the read time, the storage duration corresponding to the SSD block is calculated; Obtaining a corresponding relationship between the storage duration and the offset voltage, and obtaining an offset voltage corresponding to the SSD block area according to the storage duration corresponding to the SSD block area; The to-be-read data stored in the SSD block is read using the offset voltage corresponding to the SSD block.
5. A method for improving solid-state hardware storage performance as claimed in claim 1, characterized in that: After the test data is stored in different SSD blocks for different periods of time, an offset voltage used to successfully read the test data is recorded to obtain a corresponding relationship between the storage time and the offset voltage, including: Record the writing time of each SSD block storing test data; After a preset time, read the SSD block area with different offset voltages, and record the reading time and corresponding offset voltage of the successful reading of the test data; The storage duration is obtained according to the read time and the read time calculation, and a corresponding relationship between the storage duration and the offset voltage is established.
6. A method for improving solid-state hardware storage performance as claimed in claim 5, characterized in that: The preset time length corresponding to the continuous SSD blocks is continuously increased or shortened according to the preset length.
7. A method for improving solid-state hardware storage performance as claimed in claim 1, characterized in that: The corresponding relationship between the storage time and the offset voltage is stored in the power-off protection module.
8. A device for improving solid-state hardware storage performance, characterized in that: It includes The writing module is used to write the data to be read in each SSD block area and record the writing time; A reading module, configured to read the to-be-read data with a corresponding offset voltage according to a preset correspondence between a storage duration and an offset voltage after receiving a read command from any SSD block area; The SSD is powered off for a long time, and multiple re-reading occurs, so the SSD self-calibration function is started; The storage time is inferred based on the recommended voltage provided by the SSD self-calibration function and the corresponding relationship between the storage time and the offset voltage, and then the write time of each SSD block is created or updated.
9. The device for improving solid-state hardware storage performance as claimed in claim 8, characterized in that: It also includes a test module, which is used to record the offset voltage used for successfully reading the test data after storing different SSD blocks for different periods of time, and obtain the corresponding relationship between the storage time and the offset voltage.
Citation Information
Patent Citations
Solid state disk access method, device, equipment and medium
CN111880736A