Memory Interface Load Balancing via Interleaving Circuit

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Commercially available memory interface load balancing solutions fail to fully exploit multiplied memory bandwidth, especially when processing-modules do not access the entire memory space, and are resource-intensive and time-consuming for non-power of 2 interleaving ranks, limiting real interleaving for every possible value of interleaving rank.

Innovation Solution

A system and method that determine an arbitrary integer number of connected memory devices and apply interleaving functions to map original processor addresses to memory cluster addresses, using a controller and interleaving circuit to split and concatenate address sections, incorporating division, modulo, and hash functions to achieve efficient load balancing across memory devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If address interleaving algorithm is applied using division and modulo operations, then memory bandwidth is increased through multiple memory interfaces, but hardware resource consumption and timing complexity increase significantly for non-power-of-2 interleaving ranks

Engineering Contradiction:
Improvememory bandwidthVSAvoidhardware resource consumption
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent changes the mathematical approach from division and modulo operations to multiplication and addition operations. Specifically, it uses a multiplier to multiply the lower address bits by a pre-calculated constant (interleaving factor), then adds the upper address bits. This parameter transformation enables efficient hardware implementation for any interleaving rank value, not just power-of-2 values, resolving the contradiction between supporting arbitrary interleaving ranks and maintaining hardware efficiency.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent replaces the mechanical division and modulo operations with a purely arithmetic multiplication and addition system. By using a multiplier circuit instead of a divider circuit, and a adder circuit instead of a modulo operator, the system achieves the same address mapping function with significantly reduced hardware complexity and faster execution time, especially for non-power-of-2 interleaving ranks.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Productivity

If address interleaving is implemented with fixed address interval access patterns, then mapping to same memory interface occurs, but memory bandwidth utilization becomes suboptimal

Engineering Contradiction:
Improvememory access throughputVSAvoidbandwidth exploitation efficiency
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent introduces asymmetry in the address mapping function by using an odd interleaving factor (when interleaving rank is even) or a non-trivial multiplier constant. This asymmetric multiplication causes addresses with fixed intervals to map to different memory interfaces, breaking the periodic mapping pattern that occurs with simple division-based interleaving. The asymmetric transformation ensures better distribution of sequential accesses across multiple memory interfaces, improving bandwidth utilization.

Inventive Principle:
Principle #4Asymmetry

3Adaptability or versatility

If division and modulo operations are used for address mapping, then arbitrary interleaving ranks are supported, but additional clock cycles and timing constraints are required

Engineering Contradiction:
Improveinterleaving rank flexibilityVSAvoidclock cycles required
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent performs preliminary calculation of the interleaving factor (multiplier constant) during system initialization or configuration, storing it in a lookup table or register. This pre-computed value is then reused for all subsequent address mapping operations, eliminating the need for repeated division and modulo calculations. The preliminary action of pre-calculating the multiplier enables fast, constant-time address mapping for any interleaving rank, resolving the time loss issue while maintaining arbitrary rank support.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10642733B1System and method for memory interface load balancing
Publication Date: 2020.05.05 LIGHTBITS LABS LTD
  • US10642733B1 patent drawing
  • US10642733B1 patent drawing
  • US10642733B1 patent drawing

AI summary

A system and a method of balancing a load of access of at least one computing device to an arbitrary integer number of connected memory devices associated with a memory cluster address space, the method including: determining, by a controller, a number N corresponding to an arbitrary integer number of memory devices connected to a plurality of memory interfaces, wherein N is between 1 and the number of memory interfaces; receiving, by the controller, at least one data object, corresponding to an original processor address (OPA) from the at least one computing device; computing, by the controller, at least one interleaving function according to N; and mapping, by an interleaving circuit, the OPA to a memory cluster address (MCA), according to the at least one interleaving function, so that the data object is equally interleaved among the N connected devices.