Dynamic Overlay Regrouping for Flash Memory Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The performance of embedded systems is impacted by excessive overlay swapping in and out of RAM due to arbitrary grouping of overlay functions, leading to increased function call latency and inefficient use of RAM resources.

Innovation Solution

Dynamic re-grouping of overlay functions based on consecutive function call activity, where the system monitors and re-organizes overlay functions into new overlays stored in flash memory, ensuring that frequently called functions are resident together in RAM, reducing the need for swapping.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If overlay functions are stored in arbitrary groups in flash memory, then the system can accommodate large firmware, but excessive swapping occurs between overlays in RAM

Engineering Contradiction:
Improvesystem performanceVSAvoidoverlay swapping time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements dynamic overlay regrouping where the overlay management system continuously monitors function call patterns and reorganizes overlays in flash memory based on observed consecutive call activity. This dynamic adaptation allows the system to optimize overlay placement in real-time, reducing swapping operations as functions that are called together are progressively grouped into the same overlay, directly resolving the contradiction between accommodating large firmware and minimizing swapping time

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system employs feedback mechanisms by monitoring function call patterns and using this information to dynamically reorganize overlays. The overlay manager tracks which functions are called consecutively and uses this feedback to merge related functions into the same overlay, thereby reducing the frequency of overlay swaps and improving system performance without requiring additional memory resources

Inventive Principle:
Principle #23Feedback

2Adaptability or versatility

If overlays are swapped frequently between RAM and flash, then different functions can be executed, but execution latency increases

Engineering Contradiction:
Improvefunction execution capabilityVSAvoidfunction call latency
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent applies preliminary action by proactively merging functions into the same overlay based on predicted call patterns. The system monitors function call sequences and preemptively groups functions that are likely to be called together into the same overlay before swapping occurs, thereby reducing execution latency while maintaining the ability to execute diverse functions

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The overlay structure dynamically adapts to actual runtime behavior by continuously reorganizing based on monitored function call patterns. This dynamic regrouping ensures that frequently co-called functions reside in the same overlay, reducing swap operations and latency while preserving system versatility

Inventive Principle:
Principle #15Dynamics

3Device complexity

If overlay functions are grouped arbitrarily, then firmware can be organized simply, but RAM resource utilization becomes inefficient

Engineering Contradiction:
Improveoverlay organization complexityVSAvoidRAM memory utilization
Core Design Contradiction:
Device complexityVSQuantity of substance

Solution Approach 1:

The system implements self-service by automatically monitoring its own operation and autonomously reorganizing overlays based on observed function call patterns. The overlay manager tracks which functions are called together and automatically merges them into the same overlay, improving RAM utilization efficiency without requiring complex manual organization or external intervention

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent changes the organizational parameters of overlays from static arbitrary grouping to dynamic pattern-based grouping. By monitoring function call frequencies and patterns, the system adjusts overlay composition to match actual usage, thereby improving RAM resource utilization while maintaining simple automated management

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11809750B1Automated overlay regrouping
Publication Date: 2023.11.07 SANDISK TECHNOLOGIES LLC
  • US11809750B1 patent drawing
  • US11809750B1 patent drawing
  • US11809750B1 patent drawing

AI summary

In one example, a system includes a flash memory, a Random-Access Memory (RAM), and a controller. The flash memory stores first and second initial overlays, where the first initial overlay includes a first overlay function and the second initial overlay includes a second overlay function. The controller copies the first initial overlay into the RAM based on the first overlay function being called, swaps the first initial overlay with the second initial overlay based on the second overlay function being called, and monitors functions calls between the first and second overlay functions over a monitoring period. The controller determines whether a number of the function calls is greater than a threshold value, and based at least in part on the number of function calls being greater than the threshold value, re-groups the first and second overlay functions into a new overlay, and stores the new overlay in the flash memory.