Flexible Memory Controller Address Decoding for Non-Power-of-Two Sizes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory controllers struggle to efficiently interface with non-power-of-two memory sizes and effectively manage memory access to avoid page conflicts, leading to inefficiencies and increased costs.

Innovation Solution

A memory controller with flexible address decoding capabilities, including non-power-of-two address decoders and programmable interleaving mechanisms, such as chip select interleaving and hashing, to optimize memory access across multiple ranks and banks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If memory controllers use fixed power-of-two address decoding, then circuit design is simplified, but compatibility with non-power-of-two memory sizes is lost

Engineering Contradiction:
Improvecircuit design simplicityVSAvoidmemory size compatibility
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic address decoding where the decode logic can be reconfigured at runtime based on the actual memory size detected during initialization. The controller transitions from a static power-of-two decode scheme to a dynamic scheme that adapts to non-power-of-two memory configurations, allowing the same hardware to serve multiple memory size requirements without redesign

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the decoding parameters by introducing configurable decode depth and block size parameters that can be adjusted based on memory configuration. Instead of fixed power-of-two boundaries, the decoder uses variable parameters to define address translation boundaries, enabling support for arbitrary memory sizes while maintaining efficient decoding performance

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If memory controllers support non-power-of-two memory sizes, then memory size flexibility is improved, but circuit complexity increases

Engineering Contradiction:
Improvememory size flexibilityVSAvoidcircuit complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the address decoding function into multiple independent stages: a first decode stage that handles power-of-two boundaries, a second decode stage that handles non-power-of-two adjustments, and an interleaving stage. This segmentation allows each stage to remain relatively simple while the combination provides comprehensive support for various memory configurations

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements nested decoding where a primary power-of-two decoder is embedded within a broader address translation scheme that includes additional adjustment logic. The inner decoder handles the regular power-of-two cases efficiently, while outer logic layers add the necessary complexity only for non-power-of-two cases, keeping the overall structure organized and manageable

Inventive Principle:
Principle #7Nested doll (Nesting)

3Productivity

If memory controllers use fixed bank interleaving patterns, then access efficiency is improved for specific workloads, but adaptability to different system characteristics is reduced

Engineering Contradiction:
Improvememory access efficiencyVSAvoidsystem characteristic adaptability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic bank interleaving where the interleaving pattern is not fixed but can be reconfigured based on workload characteristics. The controller monitors access patterns and system state, then dynamically adjusts the interleaving parameters to optimize performance for the current workload, whether that be sequential access, random access, or specific access patterns

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent incorporates feedback mechanisms that monitor memory access patterns and system performance metrics, then use this information to adjust the interleaving configuration. The controller receives feedback about access efficiency and bank utilization, and dynamically modifies the interleaving pattern to improve overall system performance based on actual usage conditions

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP3485383B1Memory controller with flexible address decoding
Publication Date: 2025.04.02 ADVANCED MICRO DEVICES INC
  • EP3485383B1 patent drawingFigure 1
  • EP3485383B1 patent drawingFigure 2
  • EP3485383B1 patent drawingFigure 3~4

AI summary

A memory controller includes a host interface for receiving memory access requests including access addresses, a memory interface for providing memory accesses to a memory system, and an address decoder coupled to the host interface for programmably mapping the access addresses to selected ones of a plurality of regions. The address decoder is programmable to map the access addresses to a first region having a non-power-of-two size using a primary decoder and a secondary decoder each having power-of-two sizes, and providing a first region mapping signal in response. A command queue stores the memory access requests and region mapping signals. An arbiter picks the memory access requests from the command queue based on a plurality of criteria, which are evaluated based in part on the region mapping signals, and provides corresponding memory accesses to the memory interface in response.