Programmable Memory Controller Selective Chip Activation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current processor-based systems face inefficiencies in memory access due to the need to activate all memory chips for a memory access, even when only a subset of data is required, leading to wasted power and bandwidth, especially in workloads with low spatial locality.

Innovation Solution

A programmable memory controller that selectively activates specific memory chips based on a memory access policy, using dedicated chip select lines to allow for flexible data line sizing and efficient memory access by enabling burst chops and sequential access to individual memory chips.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If all memory chips are activated for a memory access, then the data bandwidth is maximized, but power consumption increases and bandwidth is wasted when only a subset of data is required

Engineering Contradiction:
Improvepower consumptionVSAvoidmemory access efficiency
Core Design Contradiction:
Loss of energyVSProductivity

Solution Approach 1:

The memory system divides the memory chips into multiple independently selectable groups or banks. Each memory chip can be individually activated or deactivated through separate chip select lines, allowing the system to segment memory access operations. This segmentation enables selective activation of only the necessary memory chips for a given access pattern, reducing power consumption and avoiding bandwidth waste while maintaining efficient access to the required data subsets.

Inventive Principle:
Principle #1Segmentation

2Loss of energy

If all memory chips are activated for a memory access, then the data transfer speed is maximized, but available bandwidth decreases when only a subset of data is needed

Engineering Contradiction:
Improvebandwidth wasteVSAvoidmemory access speed
Core Design Contradiction:
Loss of energyVSSpeed

Solution Approach 1:

The memory controller dynamically configures the number and combination of activated memory chips based on the specific access requirements. The system can adaptively adjust which memory chips are active for each memory access operation, optimizing the balance between access speed and bandwidth utilization. This dynamic configuration allows the system to maintain high access speed for required data while minimizing unnecessary bandwidth consumption by activating only the necessary subset of memory chips.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If dedicated chip select lines are provided to each memory chip, then selective access to subsets of memory chips is enabled, but device complexity increases

Engineering Contradiction:
Improvememory access flexibilityVSAvoidmemory interconnect complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The chip select lines are designed to serve multiple functions: they can individually select specific memory chips, group chips into banks, and support various access patterns including sequential and random access. This multi-functionality allows the same set of chip select lines to handle diverse memory access requirements without requiring additional dedicated control signals for each function, thereby reducing the overall complexity increase while maintaining high adaptability.

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

Data Source

PatentUS11093416B1Memory system supporting programmable selective access to subsets of parallel-arranged memory chips for efficient memory accesses
Publication Date: 2021.08.17 QUALCOMM INTELLIGENT SOLUTIONS INC
  • US11093416B1 patent drawing
  • US11093416B1 patent drawing
  • US11093416B1 patent drawing

AI summary

A memory system supporting programmable selective access to subsets of parallel-arranged memory chips for efficient memory accesses is disclosed. A memory controller is programmable to selectively control a number of parallel-arranged memory chips in the memory system activated in a grouping for a memory access based on a memory access policy. The memory access policy is based on the number of memory chips to be activated to achieve the desired data line size for a given memory access. This programmability of the memory controller is made possible by separate dedicated chip select lines being coupled to each memory chip. Being able to only activate a subset of the memory chips for a memory access allows conservation of data bus bandwidth and power that would otherwise by consumed by asserting unused data on the data buses.