DSP Slice Operand Forwarding for ML Processing Speed

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing digital signal processing (DSP) architectures, such as those in FPGAs, are inefficient in processing less complex operands common to machine learning applications, as they often require processing all operands equally, leading to suboptimal processing speed and efficiency.

Innovation Solution

Implementing a DSP architecture that allows for the forwarding of a common operand between DSP slices, enabling parallel computation of branches in a decision tree, thereby optimizing processing by skipping unnecessary operations and focusing on frequently used operands.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If DSP architectures process all operands equally through sequential retrieval and processing, then hardware implementation simplicity is maintained, but processing speed and efficiency deteriorate for machine learning applications with common operands

Engineering Contradiction:
Improveprocessing speedVSAvoidhardware implementation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-forwarding common operands from one DSP slice to another before they are needed for processing. This allows the receiving DSP slice to immediately use the forwarded operand without sequential retrieval, thereby improving processing speed for machine learning workloads that frequently use common operands across multiple computations

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary mechanism where one DSP slice acts as a forwarder for common operands to other DSP slices. This intermediary approach enables efficient sharing of operands across the DSP fabric without requiring complex centralized memory management, balancing the trade-off between processing efficiency and hardware complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If DSP slices process complex operands with full precision, then computation accuracy is maintained, but processing efficiency deteriorates for machine learning applications that use less complex operands

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidoperand processing precision
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent applies local quality by allowing different DSP slices to handle operands with different precision requirements based on local needs. Machine learning DSP slices can efficiently process less complex operands (e.g., 1, 2, or 4 bits) while other DSP slices maintain full precision processing capabilities, optimizing overall system efficiency without sacrificing necessary accuracy

Inventive Principle:
Principle #3Local quality

3Loss of time

If all operands are processed sequentially through a single processing thread, then hardware resource usage is simplified, but processing time increases for operations involving common operands used in multiple computations

Engineering Contradiction:
Improveprocessing timeVSAvoidprocessing thread complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent reduces processing time by pre-forwarding common operands to the destination DSP slice before the computation is initiated. This eliminates the need for sequential retrieval during processing, allowing multiple computations sharing common operands to proceed in parallel without increasing overall processing thread complexity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements skipping by allowing DSP slices to bypass the sequential operand retrieval step when operands have been previously forwarded. This enables the system to rush through the processing of common operands by directly using the pre-positioned data, significantly reducing processing time for machine learning workloads with repeated operand usage

Inventive Principle:
Principle #21Skipping (Rushing through)

Data Source

PatentUS11061674B2DSP slice configured to forward operands to associated DSP slices
Publication Date: 2021.07.13 MICRON TECHNOLOGY INC
  • US11061674B2 patent drawing
  • US11061674B2 patent drawing
  • US11061674B2 patent drawing

AI summary

Apparatuses and methods are disclosed for an FPGA architecture that may improve processing speed and efficiency in processing less complex operands. Some applications may utilize operands that are less complex, such as operands that are 1, 2, or 4 bits, for example. In some examples, the DSP architecture may skip or avoid processing all received operands or may process a common operand more frequently than other operands. An example apparatus may include configurable logic blocks including DSP slices and an interconnected coupling the configurable logic blocks. An operand register of a DSP slice may include an operand input that is coupled to an output of that DSP slice.