Storage Controller Boot Data Pre-loading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current booting procedures for computer systems are hindered by significant data access response times, which are not adequately addressed by existing acceleration methods, leading to prolonged booting times and a poor user experience.

Innovation Solution

A storage device and controller system that includes a non-volatile storage medium and a volatile cache memory, where booting data is pre-loaded into the cache memory using a booting data table and address mapping, allowing for rapid data access by associating non-physical addresses with cache addresses, thereby reducing the need for frequent address conversions during data access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Stability of the object's composition

If booting data is stored in non-volatile storage medium and read during booting procedure, then data persistence is improved, but data access response time deteriorates

Engineering Contradiction:
Improvedata persistenceVSAvoiddata access response time
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The patent pre-loads booting data from the non-volatile storage medium into the volatile cache memory before the computer system needs to access it during booting. This preliminary action stores frequently accessed booting data in faster volatile memory, so when the booting procedure requires this data, it can be retrieved quickly without the time-consuming process of reading from the non-volatile storage medium, thus resolving the contradiction between data persistence and fast access

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If address mapping conversion is performed for every data access instruction, then data access accuracy is improved, but booting time deteriorates

Engineering Contradiction:
Improvedata access accuracyVSAvoidbooting time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent performs address mapping conversion in advance by creating an address mapping table that maps logical addresses to physical addresses before the booting procedure begins. During booting, the system can directly use this pre-computed mapping table to translate addresses quickly without performing complex conversion calculations for every data access instruction, thus maintaining accurate address translation while significantly reducing the time consumed during booting

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a copy of the address mapping relationship in the form of a mapping table that can be quickly referenced. Instead of performing the actual address conversion process repeatedly, the system uses the copied mapping information from the table to quickly determine physical addresses during booting operations, reducing the computational overhead while maintaining accuracy

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10025598B2Storage device, booting procedure acceleration method and storage controller
Publication Date: 2018.07.17 RAYMX MICROELECTRONICS CORP
  • US10025598B2 patent drawing
  • US10025598B2 patent drawing
  • US10025598B2 patent drawing

AI summary

The present disclosure provides a storage device for accelerating a booting procedure. The storage device includes a non-volatile storage medium, a volatile cache memory and a storage controller. The non-volatile storage medium stores booting data and is configured to output the booting data according to a read instruction. The storage controller is configured to store the booting data to the volatile cache memory by executing the following steps: reading a booting data table including non-physical addresses of the booting data; generating a read instruction according to the booting data table, in which the read instruction indicates the physical addresses of the booting data in the non-volatile storage medium; storing the booting data from the non-volatile storage medium to the volatile cache memory; and associating the non-physical addresses of the booting data with the cache addresses of the booting data in the volatile cache memory.