CN117891405A - Method and device for realizing improvement of reading performance of solid state disk and computer equipment - Google Patents

Method and device for realizing improvement of reading performance of solid state disk and computer equipment Download PDF

Info

Publication number
CN117891405A
CN117891405A CN202410076870.0A CN202410076870A CN117891405A CN 117891405 A CN117891405 A CN 117891405A CN 202410076870 A CN202410076870 A CN 202410076870A CN 117891405 A CN117891405 A CN 117891405A
Authority
CN
China
Prior art keywords
read
command
nand
data
data transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202410076870.0A
Other languages
Chinese (zh)
Inventor
宗名扬
罗宗扬
刘孟雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Yilian Information System Co Ltd
Original Assignee
Suzhou Yilian Information System Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Yilian Information System Co Ltd filed Critical Suzhou Yilian Information System Co Ltd
Priority to CN202410076870.0A priority Critical patent/CN117891405A/en
Publication of CN117891405A publication Critical patent/CN117891405A/en
Pending legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

The application relates to a method, a device, computer equipment and a storage medium for realizing the improvement of the read performance of a solid state disk, wherein the method comprises the following steps: acquiring a plurality of read requests under a multi-plane concurrent read scene; changing the sequence of the read request issued to the NAND, and preferentially sending a data read command to the NAND; judging whether data transmission is needed or not after the data reading command is sent; if data transmission is required, issuing a data transmission command and ensuring that a data read command issued to the sequence of NAND takes precedence over the data transmission command. Aiming at a large number of read scenes, the invention ensures that the read command is issued in preference to the data transmission command by changing the sequence of issuing the read request to the NAND, reduces the delay on the read path, and further effectively improves the read performance of the SSD.

Description

Method and device for realizing improvement of reading performance of solid state disk and computer equipment
Technical Field
The present invention relates to the field of solid state hard drives, and in particular, to a method and apparatus for implementing improvement of read performance of a solid state hard disk, a computer device, and a storage medium.
Background
SSD (Solid State Drive, solid state Disk) is a new type of storage medium, which uses NAND particles as data storage, and has been widely used in various fields such as PC, notebook, server, etc., and gradually replaces HDD (Hard Disk Drive) as a mainstream application product in the storage field. As NAND die evolves, most NAND die support asynchronous Independent plane read features that represent how random a controller can issue read requests onto the NAND die in a pure read scenario.
However, in the prior art, a common controller issues a stack of read requests to the NAND granule to wait for the NAND to complete the read requests and then immediately transmit data to the host, so that the subsequent read requests cannot be issued at the same time, the NAND cannot process the subsequent read requests completely and concurrently, and additional delay is caused in a read path, thereby affecting the read performance of the SSD.
Disclosure of Invention
Based on this, it is necessary to provide a method, a device, a computer device and a storage medium for improving the read performance of a solid state disk in order to solve the above technical problems.
A method for improving the read performance of a solid state disk comprises the following steps:
acquiring a plurality of read requests under a multi-plane concurrent read scene;
changing the sequence of the read request issued to the NAND, and preferentially sending a data read command to the NAND;
judging whether data transmission is needed or not after the data reading command is sent;
if data transmission is required, issuing a data transmission command and ensuring that a data read command issued to the sequence of NAND takes precedence over the data transmission command.
In one embodiment, after the step of obtaining the plurality of read requests in the multi-plane concurrent read scenario, the method further includes:
judging whether the issuing command plane needs to be subjected to state inquiry or not;
if not, a data read command is sent directly to the NAND.
In one embodiment, after the step of determining whether the issuing command plane needs to be subjected to the status query, the method further includes:
if so, the current state of the plane is queried, and then a data read command is sent to the NAND.
In one embodiment, the step of changing the sequence in which the read request is issued to the NAND, and preferentially sending the data read command to the NAND further includes:
in the multi-plane concurrent read scenario, the NAND is always kept in a state where data is transmitted to ensure that the NAND is always in a full-load state.
The device for improving the reading performance of the solid state disk comprises:
the request acquisition module is used for acquiring a plurality of read requests in a multi-plane concurrent read scene;
the sequence changing module is used for changing the sequence of the read request issued to the NAND and preferentially sending a data read command to the NAND;
the first judging module is used for judging whether data transmission is needed after the data reading command is sent;
and the command issuing module is used for issuing a data transmission command and ensuring that the data reading command issued to the NAND sequence is prior to the data transmission command if the data transmission is required.
In one embodiment, the apparatus further includes a second determining module, where the second determining module is configured to:
judging whether the issuing command plane needs to be subjected to state inquiry or not;
if not, a data read command is sent directly to the NAND.
In one embodiment, the second determining module is further configured to:
if so, the current state of the plane is queried, and then a data read command is sent to the NAND.
In one embodiment, the sequence altering module is further configured to:
in the multi-plane concurrent read scenario, the NAND is always kept in a state where data is transmitted to ensure that the NAND is always in a full-load state.
A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the steps of any one of the methods described above when the computer program is executed.
A computer readable storage medium having stored thereon a computer program which when executed by a processor performs the steps of any of the methods described above.
The method, the device, the computer equipment and the storage medium for realizing the improvement of the read performance of the solid state disk acquire a plurality of read requests under a multi-plane concurrent read scene; changing the sequence of the read request issued to the NAND, and preferentially sending a data read command to the NAND; judging whether data transmission is needed or not after the data reading command is sent; if data transmission is required, issuing a data transmission command and ensuring that a data read command issued to the sequence of NAND takes precedence over the data transmission command. Aiming at a large number of read scenes, the invention ensures that the read command is issued in preference to the data transmission command by changing the sequence of issuing the read request to the NAND, reduces the delay on the read path, and further effectively improves the read performance of the SSD.
Drawings
FIG. 1 is a schematic diagram of command sequence issuing in a prior art plane read scheme;
FIG. 2 is a flow chart of a method for implementing the read performance improvement of the solid state disk in one embodiment;
FIG. 3 is a schematic diagram of command sequence issuing in a plane read scheme, according to one embodiment;
FIG. 4 is a flowchart illustrating a method for implementing the read performance enhancement of a solid state disk in another embodiment;
FIG. 5 is a flowchart illustrating a method for implementing read performance enhancement of a solid state disk according to still another embodiment;
FIG. 6 is a block diagram illustrating an apparatus for implementing read performance enhancement of a solid state disk according to an embodiment;
FIG. 7 is a block diagram illustrating an apparatus for implementing read performance enhancement of a solid state disk according to another embodiment;
fig. 8 is an internal structural diagram of a computer device in one embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application will be further described in detail with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the present application.
Referring now to the schematic diagram of command sequence issuing in the prior art plane read scheme shown in fig. 1, the method specifically includes:
1. transmitting a command of transmitting data by the plane0 page 0;
2. transmitting a command of transmitting data by the plane1 page 0;
3. sending a command read by the plane0 page 1;
4. transmitting a command of transmitting data by the plane2 page 0;
5. sending a command read by the plane1 page 1;
6. transmitting a command of transmitting data by the plane3 page 0;
7. sending commands read by the plane2 page1 and the plane3 page 1;
8. after waiting for a period of time, a command for transmitting data by the plane0 page1 is sent.
It can be seen that this solution has the following drawbacks for many read commands:
the execution time of a transfer data command is approximately 8us, the completion time of a read command is approximately 22us, and the transfer data (16 us) is only transferred 2 times after the read command of the plane0 page1 is sent, so that the idle on the bus is approximately 4-6 us after the read command of the plane3 page1 is sent. In addition, the priority of the transfer data operation results in the controller not fully exploiting the performance of NAND, so that the read performance of SSD has a serious bottleneck.
Based on the above, the invention provides a method for improving the read performance of a solid state disk, which aims to improve the read performance of SSD.
In one embodiment, as shown in fig. 2, a method for improving the read performance of a solid state disk is provided, where the method includes:
step 202, obtaining a plurality of read requests in a multi-plane concurrent read scene;
step 204, changing the sequence of the read request issued to the NAND, and preferentially sending the data read command to the NAND;
step 206, judging whether data transmission is needed after the data reading command is sent;
if data transfer is required, step 208, a data transfer command is issued and the data read command issued to the NAND sequence is guaranteed to take precedence over the transfer data command.
In this embodiment, a method for improving the read performance of a solid state disk is provided, in which by changing the sequence in which a read request is issued to a NAND (the read request is issued in preference to transmission data), the read request is distributed more uniformly on the NAND, the read time is more coincident, and the additional read request waiting time is reduced. The delay on the read path is reduced, and the read performance is improved. The specific implementation process is as follows:
first, a plurality of read requests in a multi-plane concurrent read scenario are acquired. The sequence in which read requests are issued to the NAND is changed, and data read commands are sent to the NAND in preference.
Judging whether data transmission is needed after the data reading command is sent; and if the data transmission is not needed, directly ending. If data transmission is required, issuing a data transmission command and ensuring that a data read command issued to the sequence of NAND takes precedence over the data transmission command.
Reference may be made to the schematic diagram of command sequence issuing in the plane read scheme shown in fig. 3:
1. transmitting a command of transmitting data by the plane0 page 0;
2. sending a command read by the plane0 page 1;
3. transmitting a command of transmitting data by the plane1 page 0;
4. sending a command read by the plane1 page 1;
5. transmitting a command of transmitting data by the plane2 page 0;
6. sending a command read by the plane2 page 1;
7. transmitting a command of transmitting data by the plane3 page 0;
8. sending a command read by the plane3 page 1;
9. and sending a command for transmitting data by the plane0 page 1.
In one embodiment, the step of changing the sequence in which the read request is issued to the NAND, and preferentially sending the data read command to the NAND further comprises: in a multi-plane concurrent read scenario, the NAND is always kept in a state where data is transferred to ensure that the NAND is always in a full-load state.
Specifically, the read request must be issued in preference to the transmission data on the sequence issued to the NAND, so that the scenario of concurrent reading in multiple planes can be ensured, the data must always be transmitted on the NAND, the reading time is hidden, the NAND is fully loaded, the performance of the NAND is fully loaded, and the reading performance of the SSD is fully loaded.
In the above embodiment, a plurality of read requests under a multi-plane concurrent read scene are acquired; changing the sequence of the read request issued to the NAND, and preferentially sending a data read command to the NAND; judging whether data transmission is needed or not after the data reading command is sent; if data transmission is required, issuing a data transmission command and ensuring that a data read command issued to the sequence of NAND takes precedence over the data transmission command. Aiming at a large number of reading scenes, the scheme ensures that the reading command is issued in preference to the data transmission command by changing the sequence of issuing the reading request to the NAND, reduces the delay on a reading path, and further effectively improves the reading performance of the SSD.
In one embodiment, as shown in fig. 4, a method for implementing improvement of read performance of a solid state disk is provided, where after the step of obtaining multiple read requests in a multiple plane concurrent read scenario, the method further includes:
step 402, judging whether the issuing command plane needs to perform state query;
step 404, if not needed, directly sending a data read command to the NAND;
step 406, query the current state of the plane if needed, and then send the data read command to the NAND.
Referring to a flow chart of a method for implementing the improvement of the read performance of the solid state disk shown in fig. 5, the specific flow is as follows:
and 5.1, judging whether the machine issuing the command needs to perform state inquiry.
5.2, if necessary, inquiring the current state of the plane, and then sending a data reading command to the NAND.
And 5.3, directly sending a data reading command to the NAND if not needed.
5.4, judging whether data transmission is needed or not;
and 5.5, if the data transmission is not needed, directly ending.
And 5.6, if data transmission is required, issuing a data transmission command and ensuring that a data reading command issued to the NAND sequence takes precedence over the data transmission command.
In this embodiment, a scheme of Plane Read is designed based on NAND grains supporting Plane independent Read, so that Read requests are distributed more uniformly on NAND, read times are more coincident, additional Read request waiting time is reduced, delay on a Read path is reduced, and Read performance is improved.
It should be understood that, although the steps in the flowcharts of fig. 1-5 are shown in order as indicated by the arrows, these steps are not necessarily performed in order as indicated by the arrows. The steps are not strictly limited to the order of execution unless explicitly recited herein, and the steps may be executed in other orders. Moreover, at least some of the steps in fig. 1-5 may include multiple sub-steps or stages that are not necessarily performed at the same time, but may be performed at different times, nor do the order in which the sub-steps or stages are performed necessarily occur sequentially, but may be performed alternately or alternately with at least a portion of the sub-steps or stages of other steps or steps.
In one embodiment, as shown in fig. 6, there is provided a device 600 for implementing the read performance improvement of a solid state disk, the device including:
a request acquisition module 601, configured to acquire a plurality of read requests in a multi-plane concurrent read scenario;
a sequence modification module 602, configured to modify a sequence of the read request issued to the NAND, and preferentially send a data read command to the NAND;
a first judging module 603, configured to judge whether data transmission is required after the data reading command is sent;
the command issuing module 604 is configured to issue a data transmission command and ensure that a data read command issued to the NAND sequence is prioritized over a data transmission command if data transmission is required.
In one embodiment, as shown in fig. 7, a device 600 for implementing the improvement of the read performance of a solid state disk is provided, where the device further includes a second determining module 605, where the second determining module is configured to:
judging whether the issuing command plane needs to be subjected to state inquiry or not;
if not, a data read command is sent directly to the NAND.
In one embodiment, the second determining module 605 is further configured to:
if so, the current state of the plane is queried, and then a data read command is sent to the NAND.
In one embodiment, the sequence alteration module 602 is further configured to:
in the multi-plane concurrent read scenario, the NAND is always kept in a state where data is transmitted to ensure that the NAND is always in a full-load state.
For specific limitation of the device for implementing the improvement of the read performance of the solid state disk, reference may be made to the limitation of the method for implementing the improvement of the read performance of the solid state disk, which is not described herein.
In one embodiment, a computer device is provided, the internal structure of which may be as shown in FIG. 8. The computer device includes a processor, a memory, and a network interface connected by a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The network interface of the computer device is used for communicating with an external terminal through a network connection. The computer program is executed by a processor to realize a method for improving the reading performance of the solid state disk.
It will be appreciated by those skilled in the art that the structure shown in fig. 8 is merely a block diagram of some of the structures associated with the present application and is not limiting of the computer device to which the present application may be applied, and that a particular computer device may include more or fewer components than shown, or may combine certain components, or have a different arrangement of components.
In one embodiment, a computer device is provided that includes a memory, a processor, and a computer program stored on the memory and executable on the processor, the processor implementing the steps in the method embodiments above when executing the computer program.
In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored which, when executed by a processor, carries out the steps of the above method embodiments.
Those skilled in the art will appreciate that implementing all or part of the above described methods may be accomplished by way of a computer program stored on a non-transitory computer readable storage medium, which when executed, may comprise the steps of the embodiments of the methods described above. Any reference to memory, storage, database, or other medium used in the various embodiments provided herein may include non-volatile and/or volatile memory. The nonvolatile memory can include Read Only Memory (ROM), programmable ROM (PROM), electrically Programmable ROM (EPROM), electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms such as Static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double Data Rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous Link DRAM (SLDRAM), memory bus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), among others.
The technical features of the above embodiments may be arbitrarily combined, and all possible combinations of the technical features in the above embodiments are not described for brevity of description, however, as long as there is no contradiction between the combinations of the technical features, they should be considered as the scope of the description.
The above examples merely represent a few embodiments of the present application, which are described in more detail and are not to be construed as limiting the scope of the invention. It should be noted that it would be apparent to those skilled in the art that various modifications and improvements could be made without departing from the spirit of the present application, which would be within the scope of the present application. Accordingly, the scope of protection of the present application is to be determined by the claims appended hereto.

Claims (10)

1. A method for improving the read performance of a solid state disk comprises the following steps:
acquiring a plurality of read requests under a multi-plane concurrent read scene;
changing the sequence of the read request issued to the NAND, and preferentially sending a data read command to the NAND;
judging whether data transmission is needed or not after the data reading command is sent;
if data transmission is required, issuing a data transmission command and ensuring that a data read command issued to the sequence of NAND takes precedence over the data transmission command.
2. The method for implementing the read performance enhancement of the solid state disk according to claim 1, further comprising, after the step of obtaining the plurality of read requests in the multi-plane concurrent read scenario:
judging whether the issuing command plane needs to be subjected to state inquiry or not;
if not, a data read command is sent directly to the NAND.
3. The method for implementing the read performance improvement of the solid state disk according to claim 2, further comprising, after the step of determining whether the command issuing plane needs to perform the status query:
if so, the current state of the plane is queried, and then a data read command is sent to the NAND.
4. The method for implementing the read performance enhancement of the solid state disk according to any one of claims 1 to 3, wherein the step of changing the sequence of issuing the read request to the NAND and preferentially sending the data read command to the NAND further comprises:
in the multi-plane concurrent read scenario, the NAND is always kept in a state where data is transmitted to ensure that the NAND is always in a full-load state.
5. The device for improving the reading performance of the solid state disk is characterized by comprising the following components:
the request acquisition module is used for acquiring a plurality of read requests in a multi-plane concurrent read scene;
the sequence changing module is used for changing the sequence of the read request issued to the NAND and preferentially sending a data read command to the NAND;
the first judging module is used for judging whether data transmission is needed after the data reading command is sent;
and the command issuing module is used for issuing a data transmission command and ensuring that the data reading command issued to the NAND sequence is prior to the data transmission command if the data transmission is required.
6. The device for implementing the improvement of the read performance of the solid state disk of claim 5, further comprising a second judging module, wherein the second judging module is configured to:
judging whether the issuing command plane needs to be subjected to state inquiry or not;
if not, a data read command is sent directly to the NAND.
7. The device for improving the read performance of the solid state disk of claim 6, wherein the second judging module is further configured to:
if so, the current state of the plane is queried, and then a data read command is sent to the NAND.
8. The device for implementing the improvement of the read performance of the solid state disk according to any one of claims 5 to 7, wherein the sequence changing module is further configured to:
in the multi-plane concurrent read scenario, the NAND is always kept in a state where data is transmitted to ensure that the NAND is always in a full-load state.
9. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the steps of the method according to any one of claims 1 to 4 when the computer program is executed.
10. A computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when being executed by a processor, implements the steps of the method of any of claims 1 to 4.
CN202410076870.0A 2024-01-18 2024-01-18 Method and device for realizing improvement of reading performance of solid state disk and computer equipment Pending CN117891405A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410076870.0A CN117891405A (en) 2024-01-18 2024-01-18 Method and device for realizing improvement of reading performance of solid state disk and computer equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410076870.0A CN117891405A (en) 2024-01-18 2024-01-18 Method and device for realizing improvement of reading performance of solid state disk and computer equipment

Publications (1)

Publication Number Publication Date
CN117891405A true CN117891405A (en) 2024-04-16

Family

ID=90651823

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410076870.0A Pending CN117891405A (en) 2024-01-18 2024-01-18 Method and device for realizing improvement of reading performance of solid state disk and computer equipment

Country Status (1)

Country Link
CN (1) CN117891405A (en)

Similar Documents

Publication Publication Date Title
US8667229B2 (en) Data access method of a memory device
US11360705B2 (en) Method and device for queuing and executing operation commands on a hard disk
WO2020169065A1 (en) Pre-reading method and apparatus based on memory limited ssd, and computer device
US10146475B2 (en) Memory device performing control of discarding packet
US11010094B2 (en) Task management method and host for electronic storage device
CN114968102B (en) Data caching method, device, system, computer equipment and storage medium
CN114285676B (en) Intelligent network card, network storage method and medium of intelligent network card
CN111124314A (en) SSD performance improving method and device for mapping table dynamic loading, computer equipment and storage medium
CN110781107A (en) Low-delay fusion IO control method and device based on DRAM interface
CN116414735A (en) Data storage method, system, storage access configuration method and related equipment
CN110058819A (en) Host Command treating method and apparatus based on variable cache administrative mechanism
CN117891405A (en) Method and device for realizing improvement of reading performance of solid state disk and computer equipment
CN110825326A (en) Method and device for improving SSD random reading performance, computer equipment and storage medium
US9087050B2 (en) Memory controller and operating method thereof
CN115563021A (en) Method and device for improving repeated reading performance based on solid state disk and computer equipment
US20220261354A1 (en) Data access method and apparatus and storage medium
CN114115745B (en) RAID optimization method and device for multi-Pass programming NAND and computer equipment
CN116225314A (en) Data writing method, device, computer equipment and storage medium
CN109634875A (en) Order data method for caching and processing, device, computer equipment and storage medium
CN116032498A (en) Memory area registration method, device and equipment
CN114442925A (en) Nonvolatile storage hard disk multi-queue submission scheduling method, device and storage medium
CN113076070A (en) Data processing method and device
CN114327274B (en) Mapping table loading checking method and device based on solid state disk and computer equipment
CN116501266B (en) Message context processing method, device, computer equipment and storage medium
CN116048420A (en) Method and device for improving read-write performance of solid state disk based on small batch data

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination