Interleaving Memory Requests for Neural Network Hardware

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing hardware circuits face inefficiencies in processing multiple small memory access operations across large system memory, leading to increased idle cycles and reduced bandwidth when handling non-linear requests that span various memory banks.

Innovation Solution

The implementation of a hardware circuit with an improved architecture that interleaves memory access requests to optimize data retrieval from multiple memory banks, reducing the need for idle cycles by processing sub-requests across different bank groups, thereby enhancing processing efficiency and bandwidth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple small memory access operations are processed sequentially across large system memory, then memory access completeness is ensured, but system bandwidth decreases and idle cycles increase

Engineering Contradiction:
Improvesystem bandwidthVSAvoididle cycles
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments memory banks into different bank groups and divides memory access requests into sub-requests that can be processed in parallel across different bank groups. This segmentation allows simultaneous processing of multiple sub-requests without conflicts, thereby increasing system bandwidth and reducing idle cycles caused by sequential processing bottlenecks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of parallelism by processing sub-requests from different bank groups simultaneously rather than sequentially. By utilizing multiple bank groups as separate processing dimensions, the system can execute multiple memory operations in parallel, effectively increasing throughput and reducing the time loss from idle cycles.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If back-to-back read requests are issued to the same memory bank, then data retrieval completeness is achieved, but power consumption increases due to repeated bank activations

Engineering Contradiction:
Improvedata retrieval speedVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent segments consecutive read requests into sub-requests distributed across different bank groups. By doing so, it avoids repeated activations of the same memory bank, thereby reducing power consumption while maintaining data retrieval speed through parallel access to multiple banks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent merges multiple read requests targeting the same bank into a single coordinated operation across bank groups. This merging strategy reduces redundant bank activations and associated power consumption while maintaining the completeness and speed of data retrieval through efficient request consolidation.

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If memory access requests are processed without interleaving, then processing simplicity is maintained, but processing efficiency decreases due to sequential handling

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidrequest processing architecture
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments memory access requests into sub-requests that can be independently processed and interleaved across bank groups. This segmentation enables parallel processing improvement while managing complexity through structured subdivision of requests into manageable units that can be handled by existing memory control mechanisms.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary ordering and organization of sub-requests before they are issued to memory banks. This preliminary action ensures that interleaved requests are properly sequenced and managed, improving processing efficiency while controlling complexity through advance preparation rather than complex real-time arbitration.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11928580B2Interleaving memory requests to accelerate memory accesses
Publication Date: 2024.03.12 GOOGLE LLC
  • US11928580B2 patent drawing
  • US11928580B2 patent drawing
  • US11928580B2 patent drawing

AI summary

Methods, systems, and apparatus, including computer-readable media, are described for interleaving memory requests to accelerate memory accesses at a hardware circuit configured to implement a neural network model. A system generates multiple requests that are processed against a memory of the system. Each request is used to retrieve data from the memory. For each request, the system generates multiple sub-requests based on a respective size of the data to be retrieved using the request. The system generates a sequence of interleaved sub-requests that includes respective sub-requests of a first request interleaved among respective sub-requests of a second request. Based on the sequence of interleaved sub-requests, a module of the system receives respective portions of data accessed from different address locations of the memory. The system processes each of the respective portions of data to generate a neural network inference using the neural network model implemented at the hardware circuit.