Data pre-reading and data caching method for solid state disk

By introducing a data reading controller into a solid-state drive and adopting parallel data pre-reading and caching methods, the existing solid-state drives have improved data reading and cache speed, and achieved more efficient data processing and cache efficiency.

CN119961185AActive Publication Date: 2025-05-09SICHUAN HENTAI SEMICON CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202510437556.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-09
Publication Date
2025-05-09
Estimated Expiration
2045-04-09

AI Technical Summary

Technical Problem

Existing solid-state drives have room for improvement in data reading and cache speed, especially when dealing with multiple reading requirements, it is difficult to effectively improve the parallel reading and cache efficiency of data.

Method used

By introducing a data read controller in a solid-state drive, the data pre-read and data cache methods are used to change the serial reading of the data to parallel pre-read and cache output. Specific steps include receiving read requirements, calculating cache space size, dividing intervals and read sequences, parallel pre-reading and cache, and processing by priority in the presence of output congestion.

Benefits of technology

This method can effectively improve the data reading and cache speed of solid-state drives under the same conditions, especially in the case of multiple reading requirements. Through parallel processing and priority management, output congestion is avoided and overall data processing efficiency is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119961185A_ABST
    Figure CN119961185A_ABST
Patent Text Reader

Abstract

The invention discloses a data pre-reading and data caching method for a solid state disk. The data pre-reading and data caching method comprises the following steps that S1, a data reading controller firstly receives a reading requirement; s2, the data reading controller calculates the size of a cache space required by the reading requirement, and divides the cache space in the data reading cache region to meet the reading requirement according to the size of the cache space; s3, the data reading controller divides the cache space into N sub-intervals, and meanwhile, files needing to be read are divided into N reading sequences; s4, the reading controller carries out parallel pre-reading on the N reading sequences at the same time; s5, when a plurality of reading requirements exist, executing the steps S1 to S4 for each reading requirement at the same time; and S6, setting M data output ports for the data reading cache region, judging whether an output congestion phenomenon exists or not, and simultaneously outputting the data. According to the method, serial reading of the data is modified into parallel pre-reading and cache output, and the reading speed of the data can be effectively increased under the condition of the same solid state disk.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of data storage, and in particular to a method for pre-reading and caching data of a solid state hard disk. Background Art

[0002] In the field of data storage, solid-state drives are gradually replacing traditional mechanical hard drives with faster data storage and reading speeds. With the development of technology, higher requirements are placed on the data storage and reading speeds of solid-state drives. However, most of the current methods for improving solid-state drives start with the solid-state drive itself. With the increasingly mature technology, it is difficult to achieve greater breakthroughs. Summary of the invention

[0003] The purpose of the present invention is to overcome the shortcomings of the prior art and provide a method for pre-reading and caching data for a solid-state hard disk. Data pre-reading and data caching are performed based on a data reading controller, and the serial reading of data is modified into parallel pre-reading and caching output, which can effectively improve the data reading and caching speed for the same solid-state hard disk.

[0004] The object of the present invention is to achieve the following technical solution: a method for pre-reading and caching data of a solid state drive, comprising the following steps: S1. The data reading controller first receives a reading request; S2. The data read controller calculates the cache space size required for the read demand, and divides the cache space in the data read cache area to the read demand according to the cache space size; S3. The data reading controller divides the cache space into N sub-intervals, numbered 1 to N, and divides each data block contained in the file to be read in the reading demand into N read sequences, numbered 1 to N according to the order in which they appear in the file to be read; S4. The read controller pre-reads N read sequences in parallel and caches them into N sub-intervals; S5. When there are multiple read requests, steps S1 to S4 are performed simultaneously for each read request; S6. Set M data output ports for the data read cache area to determine whether there is output congestion. If so, select a read request with a higher priority for data output according to the priority of the read request. If not, output data of multiple read requests simultaneously.

[0005] The beneficial effects of the present invention are: data pre-reading and data caching are performed based on a data reading controller, and the serial reading of data is modified into parallel pre-reading and caching output, which can effectively improve the data reading and caching speed for the same solid-state hard disk. BRIEF DESCRIPTION OF THE DRAWINGS

[0006] Figure 1 The present invention is a flow chart of the method. DETAILED DESCRIPTION

[0007] The technical solution of the present invention is further described in detail below in conjunction with the accompanying drawings, but the protection scope of the present invention is not limited to the following.

[0008] like Figure 1 As shown, a method for pre-reading and caching data of a solid state drive comprises the following steps: S1. The data reading controller first receives a reading request; The read demand includes the priority of the read demand, the name of the file to be read, the data blocks contained in the file, the size of each data block and the storage address of each data block; the priority of the read demand is divided into 1 to 3 levels, and the higher the priority, the more urgent the demand.

[0009] S2. The data read controller calculates the cache space size required for the read demand, and divides the cache space in the data read cache area to the read demand according to the cache space size; The data reading controller calculates the cache space required for the reading demand, including: the data reading controller accumulates the sizes of each data block contained in the file to be read to obtain the storage space size required for the reading demand.

[0010] The cache space is divided in the data read cache area to the read demand, and the size of the cache space needs to be larger than the size of the cache space required by the read demand.

[0011] S3. The data reading controller divides the cache space into N sub-intervals, numbered 1 to N, and divides each data block contained in the file to be read in the reading demand into N read sequences, numbered 1 to N according to the order in which they appear in the file to be read; S4. The read controller pre-reads N read sequences in parallel and caches them into N sub-intervals; including: When n=1, 2, ..., N, the read controller stores the read sequence numbered n into the sub-interval numbered n.

[0012] S5. When there are multiple read requests, steps S1 to S4 are performed simultaneously for each read request; S6. Set M data output ports for the data read cache area to determine whether there is output congestion. If so, select a read request with a higher priority for data output according to the priority of the read request. If not, output data of multiple read requests simultaneously.

[0013] The step S6 comprises: S601. Set M data output ports for the data read buffer area, and set the number of read requirements to k. If M is not less than k*N, there is no output congestion, and the data of multiple read requirements are output simultaneously; if M is less than k*N, it is considered that there is output congestion, and enter step S602; S602. Calculate M / N and round it up. If the rounded result is L, then output only L read-required data each time according to the order of priority from high to low until all read-required data are output.

[0014] For each reading requirement, after the data is output through the data output port, the reading sequence of the read data is pieced together in the order of numbers 1 to N, and the required file is obtained.

[0015] The above description shows and describes a preferred embodiment of the present invention, but as mentioned above, it should be understood that the present invention is not limited to the form disclosed herein, and should not be regarded as excluding other embodiments, but can be used in various other combinations, modifications and environments, and can be modified within the scope of the invention concept described herein through the above teachings or the technology or knowledge of the relevant field. And the changes and modifications made by those skilled in the art do not depart from the spirit and scope of the present invention, and should be within the scope of protection of the claims attached to the present invention.

Claims

1. A method for pre-reading and caching data of a solid state drive, characterized in that: The following steps are involved: S1. The data reading controller first receives a reading request; S2. The data read controller calculates the cache space size required for the read demand, and divides the cache space in the data read cache area to the read demand according to the cache space size; S3. The data reading controller divides the cache space into N sub-intervals, numbered 1 to N, and divides each data block contained in the file to be read in the reading demand into N read sequences, numbered 1 to N according to the order in which they appear in the file to be read; S4. The read controller pre-reads N read sequences in parallel and caches them into N sub-intervals; S5. When there are multiple read requests, steps S1 to S4 are performed simultaneously for each read request; S6. Set M data output ports for the data read cache area to determine whether there is output congestion. If so, select a read request with a higher priority for data output according to the priority of the read request. If not, output data of multiple read requests simultaneously.

2. The method for pre-reading and caching data of a solid state drive according to claim 1, characterized in that: The read demand includes the priority of the read demand, the name of the file to be read, the data blocks contained in the file, the size of each data block and the storage address of each data block; the priority of the read demand is divided into 1 to 3 levels, and the higher the priority, the more urgent the demand.

3. The method for pre-reading and caching data of a solid state drive according to claim 2, characterized in that: The data reading controller calculates the cache space required for the reading demand, including: the data reading controller accumulates the sizes of each data block contained in the file to be read to obtain the storage space size required for the reading demand.

4. The method for pre-reading and caching data of a solid state drive according to claim 2, characterized in that: The cache space is divided in the data read cache area to the read demand, and the size of the cache space needs to be larger than the size of the cache space required by the read demand.

5. The method for pre-reading and caching data of a solid state drive according to claim 1, characterized in that: The read controller reads the N read sequences in parallel and caches them into N sub-intervals, including: When n=1, 2, ..., N, the read controller stores the read sequence numbered n into the sub-interval numbered n.

6. The method for pre-reading and caching data of a solid state drive according to claim 1, characterized in that: The step S6 comprises: S601. Set M data output ports for the data read buffer area, and set the number of read requirements to k. If M is not less than k*N, there is no output congestion, and the data of multiple read requirements are output simultaneously; if M is less than k*N, it is considered that there is output congestion, and enter step S602; S602. Calculate M / N and round it up. If the rounded result is L, then output only L read-required data each time according to the order of priority from high to low until all read-required data are output.

7. The method for pre-reading and caching data of a solid state drive according to claim 1, characterized in that: For each reading requirement, after the data is output through the data output port, the reading sequence of the read data is pieced together in the order of numbers 1 to N, and the required file is obtained.

Citation Information

Patent Citations

  • Data reading method, device and system

    CN113220233A

  • Non-volatile memory with optimized read

    CN115295046A

  • Unified prefetch circuit for multi-level caches

    US10180905B1

  • Magnetic disk unit, file management system, and file management method

    US20050021900A1

  • Scalable traffic management for multiple levels of quality of service

    US20190199646A1