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.
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
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.
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.
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.
Smart Images

Figure CN119961185A_ABST
Abstract
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