Storage Controller Mapping-Table Caching for Random LBA Reads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The inefficiency in reading data from non-volatile memory due to the need to repeatedly load multiple mapping tables when dealing with large numbers of files stored in discontinuous and random logical block addresses, leading to decreased reading speed.

Innovation Solution

A storage controller and method that optimizes data reading by loading a mapping table for a first file, identifying and copying target content from that table for subsequent files to a buffer memory, and overwriting it with a new mapping table, thereby reducing the need for repeated loading.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple mapping tables are loaded to handle files stored in discontinuous and random logical block addresses, then the storage device can access files distributed across different mapping tables, but the reading time increases due to the need to load multiple mapping tables

Engineering Contradiction:
Improveability to access files distributed across different mapping tablesVSAvoidreading time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by loading mapping tables into the buffer memory in advance before actual data reading operations. The storage controller pre-loads mapping tables that may be needed for subsequent file access operations, so when reading commands arrive, the mapping information is already available in the buffer memory, eliminating the need to load mapping tables from non-volatile memory during the actual reading process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements beforehand cushioning by maintaining multiple mapping tables simultaneously in the buffer memory, creating a cushion of pre-loaded mapping information. This cushion allows the system to handle multiple file access requests without needing to repeatedly load mapping tables from non-volatile memory, thus reducing reading time for files distributed across different mapping tables.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

2Adaptability or versatility

If mapping tables are repeatedly loaded to read files with discontinuous logical block addresses, then all files can be accessed, but the reading speed decreases

Engineering Contradiction:
Improveability to read files with discontinuous logical block addressesVSAvoidreading speed
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The storage controller performs preliminary loading of mapping tables into buffer memory before data reading operations. By having mapping tables pre-loaded in the buffer memory, the system can quickly translate logical block addresses to physical block addresses without repeated loading delays, thus maintaining high reading speed for files with discontinuous logical block addresses.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies copying by creating copies of mapping tables in the buffer memory. Instead of loading mapping tables from non-volatile memory repeatedly during data reading, the system copies the necessary mapping table data into the buffer memory once, and then uses these copies for multiple address translations, significantly improving reading speed.

Inventive Principle:
Principle #26Copying

3Speed

If the mapping table containing an LBA is loaded into RAM, then the LBA can be quickly translated to PBA, but additional loading operations are required if the mapping table is not already in RAM

Engineering Contradiction:
ImproveLBA to PBA translation speedVSAvoidmemory management complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The storage controller loads mapping tables into buffer memory in advance based on prediction of which mapping tables will be needed for upcoming read operations. This preliminary loading ensures that when LBA to PBA translation is needed, the mapping table is already in RAM, providing fast translation speed without requiring additional loading operations during data reading.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The storage controller implements a self-service mechanism by automatically managing the loading and caching of mapping tables in the buffer memory. The controller monitors read commands and proactively loads required mapping tables before they are needed for translation, making the system self-sufficient in managing its own memory resources without external intervention.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS20250244901A1Storage controller, data reading method and storage device
Publication Date: 2025.07.31 HEFEI CORE STORAGE ELECTRONICS LTD
  • US20250244901A1 patent drawing
  • US20250244901A1 patent drawing
  • US20250244901A1 patent drawing

AI summary

A storage controller, a data reading method and a storage device. data reading method: identifying a plurality of logical addresses corresponding to files based on file read commands; determining a plurality of mapping tables corresponding to files based on logical addresses; loading a first mapping table corresponding to a first file to a first memory section of a buffer memory; identifying one or more second logical addresses of one or more second files corresponding to first mapping table among files or than first file; determining target content of first mapping table based on one or more second logical addresses, and copying target content to a second memory section of buffer memory; and from target content, finding a fourth physical address corresponding to a fourth logical address of a fourth file among second files, to read fourth data of fourth file, so as to respond to a fourth file read command.