Registers for Restricted Memory Banks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Integrated circuits face challenges in designing on-chip memory due to area constraints and timing issues caused by long wires, leading to limitations in memory access and efficiency, particularly when multiple memory banks need to be accessed simultaneously for parallel computations.

Innovation Solution

The implementation of separate memory banks with independent address spaces and the use of a set of registers that allow for parallel and serial data loading and storing, enabling efficient data movement between memory banks without the need for extensive wiring or crossbars.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If memory is divided into multiple banks with separate wiring, then memory access efficiency is improved, but chip area and wiring complexity increase

Engineering Contradiction:
Improvememory access efficiencyVSAvoidchip area
Core Design Contradiction:
ProductivityVSArea of stationary object

Solution Approach 1:

The patent merges multiple memory banks into a single monolithic memory structure that is shared by all execution components. This eliminates the need for separate wiring for each memory bank, reducing chip area and wiring complexity while maintaining efficient memory access through a unified memory interface.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The single monolithic memory bank is designed to serve multiple execution components simultaneously, making it a universal resource. The memory can be accessed by any execution component in the array, eliminating the need for dedicated memory banks for each component and reducing overall chip area.

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

2Device complexity

If memory is divided into partitions with limited access, then wiring complexity is reduced, but memory access flexibility deteriorates

Engineering Contradiction:
Improvewiring complexityVSAvoidmemory access flexibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The monolithic memory bank is designed as a universal resource that can be accessed by any execution component in the array. This maintains memory access flexibility and adaptability while reducing wiring complexity through the unified memory structure.

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

Solution Approach 2:

The patent introduces a memory interface and control logic as intermediaries between execution components and the monolithic memory bank. These intermediaries manage access requests from multiple execution components, maintaining flexibility and adaptability while simplifying the physical wiring structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If crossbar is used to connect memory to multiple components, then memory access efficiency is improved, but area requirements increase significantly

Engineering Contradiction:
Improvememory access efficiencyVSAvoidchip area
Core Design Contradiction:
ProductivityVSArea of stationary object

Solution Approach 1:

The patent merges multiple memory access paths into a single monolithic memory bank, eliminating the need for a crossbar structure. This significantly reduces chip area while maintaining memory access efficiency through the unified memory interface that can service multiple execution components.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent extracts the crossbar structure from the design and replaces it with a simpler monolithic memory bank approach. This removes the area-consuming crossbar while preserving the essential function of providing memory access to multiple execution components.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11294599B1Registers for restricted memory
Publication Date: 2022.04.05 AMAZON TECH INC
  • US11294599B1 patent drawing
  • US11294599B1 patent drawing
  • US11294599B1 patent drawing

AI summary

Provided are integrated circuits and methods for operating integrated circuits. An integrated circuit can include a plurality of memory banks and an execution engine including a set of execution components. Each execution component can be associated with a respective memory bank and can read from and write to the respective memory bank. The integrated circuit can further include a set of registers each associated with a respective memory bank from the plurality of memory banks. The integrated circuit can further be operable to load to or store from the set of registers in parallel, and load to or store from the set of registers serially. A parallel operation followed by a serial operation enables data to be moved from many memory banks into one memory bank. A serial operation followed by a parallel operation enables data to be moved from one memory bank into many memory banks.