Vector Multiply Unit for CNN Matrix Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Convolutional neural networks (CNNs) face significant computational and data complexity due to their wide and deep network structures, leading to performance bottlenecks and high computational requirements, especially in matrix multiplication operations, which existing hardware implementations, such as FPGAs and ASICs, struggle to efficiently address.

Innovation Solution

An integrated circuit with a vector multiply unit featuring a plurality of multiply/accumulate nodes that performs outer products of input vectors, along with data feeders that provide data in vector format, optimizing the processing of convolution and fully connected layers by efficiently interleaving weights and data for faster matrix operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional FPGA or ASIC implementations are used for CNN matrix operations, then the system provides dedicated hardware acceleration, but the performance is limited to 10's or 100's GOPS and severely bottlenecked by data movements

Engineering Contradiction:
Improvematrix operation throughputVSAvoiddata movement complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the input data and weight matrices into multiple tiles that can be processed in parallel. The matrix multiplication is divided into block-wise operations where sub-matrices are processed independently and concurrently, allowing the system to overcome data movement bottlenecks by distributing computation across multiple processing elements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a spatial dimension to data processing by organizing computations in a two-dimensional mesh topology of processing elements. Data flows through multiple dimensions (row-wise and column-wise) enabling parallel processing across the network, transforming a sequential data movement problem into a parallel spatial computation problem.

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

2Reliability

If wide and deep CNN networks are used, then robust feature identification is achieved, but computational complexity reaches hundreds of GOPS or TOPS

Engineering Contradiction:
Improvefeature identification accuracyVSAvoidcomputational power requirement
Core Design Contradiction:
ReliabilityVSPower

Solution Approach 1:

The patent applies segmentation by dividing large matrix operations into smaller tile-based computations. This allows deep and wide networks to be processed in manageable blocks, reducing the peak computational power requirement while maintaining the overall accuracy of feature identification through systematic processing of all network layers.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary tiling and organization of weight and input data before computation. By pre-processing and arranging data in optimal formats for parallel processing, the system reduces the computational burden during actual inference, enabling deployment of wide and deep networks with reduced real-time power requirements.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If fully connected layers are implemented with huge data bandwidth, then classification accuracy is improved, but data movement requirements increase significantly

Engineering Contradiction:
Improveclassification accuracyVSAvoiddata bandwidth requirement
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent segments the large-scale matrix operations in fully connected layers into tile-based computations. This segmentation reduces the instantaneous data bandwidth requirement by processing data in smaller, manageable blocks that can be handled by available memory interfaces, while still achieving the same classification accuracy through complete processing of all input features.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10824934B2Methods and apparatus for matrix processing in a convolutional neural network
Publication Date: 2020.11.03 TEXAS INSTRUMENTS INC
  • US10824934B2 patent drawing
  • US10824934B2 patent drawing
  • US10824934B2 patent drawing

AI summary

Described examples include an integrated circuit including a vector multiply unit including a plurality of multiply/accumulate nodes, in which the vector multiply unit is operable to provide an output from the multiply/accumulate nodes, a first data feeder operable to provide first data to the vector multiply unit in vector format, and a second data feeder operable to provide second data to the vector multiply unit in vector format.