Memory Module Multiplexing for Controller Access Conflict Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In systems with both volatile and non-volatile memory, failure to respond to external memory controller requests within specified time intervals can lead to unexpected system behavior or crashes due to the inability to manage concurrent access between local and external memory controllers.

Innovation Solution

A memory module with multiplexing circuitry that selectively connects memory banks to either the local or external controller, ensuring timely responses to external requests by isolating memory banks and using shadowing or backup modes to maintain data integrity, and incorporating control logic to manage bank connections and refresh operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If memory banks are connected to both local and external memory controllers simultaneously, then memory access availability is improved, but system reliability deteriorates due to concurrent access conflicts and failure to respond to external requests within specified time intervals

Engineering Contradiction:
Improvememory access availabilityVSAvoidsystem stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements dynamic connection switching between local and external memory controllers based on operational mode. The memory module can transition between modes (e.g., local-only mode, external-only mode, or dual-mode with selective connection) allowing the system to adapt the memory controller connections dynamically. This resolves the contradiction by enabling high availability when needed while preventing concurrent access conflicts that would reduce system stability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent divides memory access functions into separate segments handled by different controllers. The local memory controller handles local CPU accesses while the external memory controller handles system bus accesses. By segmenting these functions and using mode-specific connection configurations, the system avoids concurrent access conflicts while maintaining high availability through proper mode selection.

Inventive Principle:
Principle #1Segmentation

2Reliability

If memory banks are isolated to respond to external requests, then response time reliability is improved, but memory access flexibility deteriorates due to restricted connection configurations

Engineering Contradiction:
Improveresponse time reliabilityVSAvoidconnection flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent uses dynamic mode switching to provide connection flexibility. The memory module can be configured in different operational modes (local mode, external mode, dual mode) allowing the system to adapt the connection topology dynamically. This enables the system to isolate memory banks for reliable external responses when needed while maintaining flexible access configurations when required.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The memory module is designed with multi-functionality to serve different access patterns. It can operate with local memory controller only, external memory controller only, or both simultaneously in coordinated modes. This universal design allows the same hardware to provide both reliable isolated responses and flexible concurrent access depending on the operational mode selected.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS9064562B2Memory module having multiple memory banks selectively connectable to a local memory controller and an external memory controller
Publication Date: 2015.06.23 HEWLETT PACKARD ENTERPRISE DEV LP
  • US9064562B2 patent drawing
  • US9064562B2 patent drawing
  • US9064562B2 patent drawing

AI summary

A memory module includes memory banks, a local memory controller to access data in the memory banks, and an interface to an external memory controller that is configured to access the memory module. Multiplexing circuitry selectively connects the memory banks to the local memory controller and to the interface to the external memory controller.