Distributed Memory Hazard Detection in Spatial Processing Arrays

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current processor architectures face challenges in achieving exascale performance and energy efficiency due to out-of-order scheduling, complex register files, and high energy costs, making it difficult to support high throughput and low energy consumption per operation.

Innovation Solution

A spatial array of processing elements with a configurable spatial accelerator (CSA) architecture that executes dataflow graphs, utilizing lightweight communication networks and dataflow operators to enable parallel memory accesses and dynamic hazard detection, allowing for energy-efficient and high-performance execution of applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If out-of-order scheduling is implemented to improve throughput, then productivity increases, but device complexity increases due to complex register files and control mechanisms

Engineering Contradiction:
ImprovethroughputVSAvoidcomplex register files
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the centralized memory system into distributed memory interfaces at each processing element. Each PE has its own memory interface that independently manages memory operations, eliminating the need for complex centralized register files and control logic while maintaining out-of-order execution capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each processing element's memory interface autonomously detects hazards and manages its own memory operations without requiring complex centralized control. The hazard detection circuitry at each PE interface self-manages memory access ordering, reducing overall system complexity while preserving throughput.

Inventive Principle:
Principle #25Self-service

2Reliability

If centralized memory systems are used to manage memory operations, then reliability is improved, but device complexity increases and energy consumption rises

Engineering Contradiction:
Improvememory operation managementVSAvoidcentralized memory system
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The centralized memory system is segmented into distributed memory interfaces at each processing element. This segmentation maintains reliability through localized hazard detection and management while reducing device complexity by eliminating the need for a complex centralized memory controller.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Hazard detection circuitry is introduced as an intermediary at each memory interface to manage memory operations locally. This intermediary detects potential hazards and coordinates memory access ordering, maintaining reliability without requiring a complex centralized memory system.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If traditional hazard detection methods are used, then measurement precision is improved, but device complexity increases due to centralized tracking mechanisms

Engineering Contradiction:
Improvehazard detection accuracyVSAvoidcentralized tracking mechanisms
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

Centralized hazard tracking is segmented into distributed hazard detection circuitry at each processing element's memory interface. Each interface independently tracks hazards for its own memory operations, maintaining detection precision while eliminating complex centralized tracking mechanisms.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each memory interface performs self-service hazard detection for its own memory operations. The hazard detection circuitry at each interface autonomously monitors and detects hazards without requiring centralized tracking, maintaining measurement precision while reducing device complexity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10515049B1Memory circuits and methods for distributed memory hazard detection and error recovery
Publication Date: 2019.12.24 TAHOE RES LTD
  • US10515049B1 patent drawing
  • US10515049B1 patent drawing
  • US10515049B1 patent drawing

AI summary

Methods and apparatuses relating to distributed memory hazard detection and error recovery are described. In one embodiment, a memory circuit includes a memory interface circuit to service memory requests from a spatial array of processing elements for data stored in a plurality of cache banks; and a hazard detection circuit in each of the plurality of cache banks, wherein a first hazard detection circuit for a speculative memory load request from the memory interface circuit, that is marked with a potential dynamic data dependency, to an address within a first cache bank of the first hazard detection circuit, is to mark the address for tracking of other memory requests to the address, store data from the address in speculative completion storage, and send the data from the speculative completion storage to the spatial array of processing elements when a memory dependency token is received for the speculative memory load request.