Dual Buffer Memory Controller with Mode Selector

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory controller devices face inefficiencies in receiving memory location contents, particularly in heterogeneous multi-core memory systems, where energy consumption and execution speed are compromised due to suboptimal data retrieval strategies.

Innovation Solution

A device with dual buffers and a mode selector, utilizing multiplexers to enable simultaneous or sequential filling of buffers based on address bits, allowing for efficient data retrieval from alternate memory locations, thereby optimizing energy consumption and execution speed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single buffer is used in the memory controller, then the device complexity is reduced, but the execution speed and energy efficiency are compromised due to inability to perform parallel buffer operations

Engineering Contradiction:
Improvebuffer structureVSAvoiddata retrieval speed
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The memory controller is segmented into two independent buffers (buffer A and buffer B) that can operate independently. This segmentation allows parallel data retrieval operations where one buffer can be filled while the other is being read, thereby increasing execution speed without proportionally increasing device complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The second buffer is pre-filled with data from alternate memory locations while the first buffer is being read. This preliminary action ensures that when the first buffer is exhausted, the second buffer is already ready for immediate reading, eliminating idle time and improving overall data retrieval speed.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If both buffers are filled simultaneously from any memory locations, then the data retrieval flexibility is improved, but the energy consumption increases due to redundant memory access operations

Engineering Contradiction:
Improvebuffer filling flexibilityVSAvoidenergy consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

Different filling strategies are applied to different buffers based on their current state and the access pattern requirements. Buffer A and Buffer B can be filled from alternate memory locations (e.g., even addresses for one buffer, odd addresses for the other), optimizing energy consumption by avoiding redundant accesses while maintaining flexibility through the mode selector.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The memory controller dynamically switches between simultaneous filling mode and sequential filling mode based on the current operational requirements. The mode selector allows the system to adapt its buffer filling strategy in real-time, choosing the most energy-efficient mode for the current data retrieval pattern while maintaining operational flexibility.

Inventive Principle:
Principle #15Dynamics

3Use of energy by moving object

If the memory controller uses sequential buffer filling mode, then the energy consumption is reduced, but the execution speed decreases due to sequential rather than parallel operations

Engineering Contradiction:
Improveenergy consumptionVSAvoiddata retrieval speed
Core Design Contradiction:
Use of energy by moving objectVSSpeed

Solution Approach 1:

The memory controller alternates between filling buffer A and buffer B in a periodic sequential manner. While one buffer is being filled sequentially (saving energy), the other buffer is being read, maintaining continuous data flow. This periodic alternation ensures that the system maintains good execution speed while consuming less energy compared to simultaneous filling.

Inventive Principle:
Principle #19Periodic action

4Device complexity

If the memory controller does not include a mode selector, then the device complexity is reduced, but the adaptability to different access patterns is compromised

Engineering Contradiction:
Improvecontrol logicVSAvoidaccess pattern adaptation
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

A mode selector (multiplexer) is introduced as an intermediary component that controls the buffer filling operation based on the current access pattern requirements. This simple control element allows the memory controller to adapt between simultaneous and sequential filling modes without significantly increasing device complexity, enabling flexibility for different data access patterns.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP3611623B1Memory controller comprising two buffers and means for selecting a filling mode for said buffers
Publication Date: 2023.05.10 STMICROELECTRONICS (GRENOBLE 2) SAS
  • EP3611623B1 patent drawingFigure 1
  • EP3611623B1 patent drawingFigure 2
  • EP3611623B1 patent drawingFigure 3

AI summary

The present description relates to a device comprising two buffers (102, 104) that can be filled with contents of memory locations (112, 114), and a selector (140) of a filling mode between simultaneous filling of said buffers and sequential filling of said buffers.