Cache Memory for Nonvolatile Data Block Retrieval

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing methods for reading and writing data blocks in emulated EEPROMs within flash memories are time-consuming due to the need to search multiple sectors for the current version of a data block, leading to long initialization and shutdown times, particularly problematic in safety-critical control units like those in motor vehicles.

Innovation Solution

Implementing a cache memory system that stores addresses of current data block versions, allowing direct access and reducing the need for sector-by-sector searches, thereby speeding up reading and writing processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If sector-by-sector search is performed to locate the current version of a data block, then the correctness of data retrieval is ensured, but the reading time increases significantly

Engineering Contradiction:
Improvedata retrieval correctnessVSAvoidreading time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies preliminary action by performing a complete search of all sectors and storing the results in a search cache before actual data reading operations. This preliminary search establishes a lookup table that maps data block identifiers to their current version locations, eliminating the need for time-consuming sector-by-sector searches during subsequent reading operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a copy of the search results in a search cache data structure. Instead of repeatedly scanning the original memory sectors, the system copies the essential information (data block identifier to location mapping) into a faster-accessible cache structure, enabling rapid retrieval without re-scanning the source memory.

Inventive Principle:
Principle #26Copying

2Measurement precision

If the search process is repeated before each reading and writing operation, then the current version is accurately identified, but the processing speed decreases

Engineering Contradiction:
Improvecurrent version identification accuracyVSAvoidprocessing speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system performs the search and version identification process as a preliminary action during initialization or when data structures are modified, storing the results in the search cache. This eliminates the need to repeat the search before each reading or writing operation, significantly improving processing speed while maintaining accuracy through the pre-computed lookup table.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms where the search cache is updated based on writing operations. When data blocks are modified, the system updates the cache entries to reflect the new locations of current versions, ensuring that subsequent reading operations retrieve accurate information without repeating the search process.

Inventive Principle:
Principle #23Feedback

3Reliability

If complete sector searches are performed repeatedly, then data integrity is maintained, but the initialization and shutdown times increase

Engineering Contradiction:
Improvedata integrityVSAvoidinitialization and shutdown times
Core Design Contradiction:
ReliabilityVSDuration of action of moving object

Solution Approach 1:

The patent applies preliminary action by performing complete sector searches and building the search cache during the initialization phase. Once the search cache is populated, subsequent initialization operations can quickly query the cache without re-scanning sectors, significantly reducing initialization and shutdown times while maintaining data integrity through the cached lookup table.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9390005B2Method for reading a data block of a nonvolatile memory of a control unit
Publication Date: 2016.07.12 ROBERT BOSCH GMBH
  • US9390005B2 patent drawing
  • US9390005B2 patent drawing
  • US9390005B2 patent drawing

AI summary

A method for reading a data block of a nonvolatile memory of a processing unit, the nonvolatile memory being subdivided into sectors; the sectors being written to consecutively in each case from a sector beginning to a sector end with different versions of different data blocks; a current version of a data block being written to a current position in a current sector; in a cache memory, for each data block, an entry being present that characterizes the respective data block.