FIFO Memory Dynamic Resizing via Shadow Pointers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing hardware implementations of FIFO memory buffers face inefficiencies when resizing, as they often require cumbersome and inefficient mechanisms like reallocation or data copying, leading to potential data loss or disruption during size changes.

Innovation Solution

A state machine with additional pointers 'new_base' and 'new_top' allows for dynamic resizing of FIFO memory by shifting existing pointers within unoccupied regions, enabling enlargement or shrinkage without data loss or operational disruption, and allowing real-time data access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If the FIFO buffer size is increased to accommodate more data elements, then the data storage capacity is improved, but the device complexity and memory resource usage increase

Engineering Contradiction:
Improvedata storage capacityVSAvoiddevice complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent implements dynamic buffer resizing by introducing shadow pointers (new_base, new_top) that allow the FIFO buffer size to be adjusted during runtime. The state machine monitors buffer occupancy and automatically triggers resizing operations when thresholds are reached, transforming the static buffer into a dynamic structure that adapts to varying data requirements without manual intervention.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of buffer size from a fixed constant to a variable that can be modified during operation. By using shadow pointers to define new buffer boundaries and implementing a state machine that manages the transition between old and new boundaries, the system enables flexible parameter adjustment while maintaining continuous operation.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If data copying mechanisms are implemented to preserve data during buffer resizing, then data loss is prevented, but the operation time and processing overhead increase

Engineering Contradiction:
Improvedata integrityVSAvoidresizing operation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts the resizing operation from the critical data path by using shadow pointers that define new buffer boundaries independently of the current data. The state machine manages the transition by selectively enabling write operations to new regions and read operations from valid regions, avoiding the need to copy or migrate existing data during the transition.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent performs preliminary allocation of shadow buffer regions before they are needed. The shadow pointers (new_base, new_top) predefine the boundaries of future buffer regions, and the state machine prepares the transition by validating that the new region is properly allocated and ready to receive data, eliminating the need for runtime data copying.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If the FIFO buffer is enlarged during operation to meet increasing data requirements, then adaptability is improved, but the device complexity and control mechanisms increase

Engineering Contradiction:
Improvebuffer size adaptabilityVSAvoidcontrol mechanism complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements self-service buffer management through an automatic state machine that monitors buffer occupancy levels and triggers resizing operations autonomously. The state machine evaluates current buffer status, determines when resizing is needed based on predefined thresholds, and executes the transition using shadow pointers without requiring external control logic or manual intervention, thereby simplifying the overall control architecture.

Inventive Principle:
Principle #25Self-service

4Productivity

If pointer shifting is implemented to modify the allocated memory region, then buffer resizing efficiency is improved, but the risk of pointer errors and data loss increases

Engineering Contradiction:
Improvebuffer resizing efficiencyVSAvoidpointer management reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces shadow pointers (new_base, new_top) as intermediaries between the control logic and the actual buffer boundaries. These shadow pointers serve as a safe abstraction layer that allows the state machine to plan and validate buffer transitions without directly manipulating the active pointers. The intermediary shadow pointers enable efficient resizing while maintaining reliability through validated transition sequences.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9996318B2FIFO memory having a memory region modifiable during operation
Publication Date: 2018.06.12 ROBERT BOSCH GMBH
  • US9996318B2 patent drawing
  • US9996318B2 patent drawing
  • US9996318B2 patent drawing

AI summary

A FIFO memory having a modifiable memory region; the FIFO memory being configured as a linear memory and as a circular buffer; the FIFO memory having a state machine that contains a new base value and a new top value for definition of a memory region allocated in the future, the lower boundary of which region is defined by the new base value and the upper boundary of which is defined by the new top value, and the state machine is configured in such a way that in a read mode and/or a write mode of the FIFO memory, the allocated memory region of the FIFO memory is modifiable by shifting the base pointer to the new base value, and/or by shifting the top pointer to the new top value.