Synaptic Array Pipelining for Analog Neural Network Training
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Pipelining of deep neural network training is complicated by the need to store and retrieve large amounts of data for weight updates, which requires long-range data traffic and significant memory, limiting scalability as the number of neural network layers increases.
Innovation Solution
Implementing a 5-step sequence with two logical array-cores per neural network layer for short-term storage and crossbar functionality, where one array-core handles forward propagation, reverse propagation, and weight updates, eliminating the need for long-range data traffic by keeping storage and RPU/crossbar functionality local.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If large amounts of data are stored and retrieved for weight updates, then weight update accuracy is improved, but device complexity and memory requirements increase significantly
Solution Approach 1:
The patent divides the neural network processing into separate stages (forward propagation, backward propagation, weight update) that can be pipelined. Each stage processes data independently, allowing intermediate results to be stored temporarily in small local buffers rather than requiring large memory for all data simultaneously. This segmentation enables accurate weight updates while reducing overall memory requirements.
Solution Approach 2:
The patent performs preliminary computation of forward propagation results and stores them in local buffers before weight updates are needed. This preliminary action allows the system to have accurate weight update data ready without requiring large amounts of memory to hold all intermediate results indefinitely, as they are computed and stored in advance in compact local storage.
2Adaptability or versatility
If long-range data transmission is implemented for weight updates, then weight update capability is improved, but processing speed decreases due to data transmission bottlenecks
Solution Approach 1:
The patent implements local buffers at each neural network layer that store intermediate results locally. This local quality ensures that weight update data can be retrieved from nearby storage rather than requiring long-range transmission across the entire system. The local buffers provide both the adaptability for weight updates and the speed needed for efficient processing by minimizing data transmission distances.
3Productivity
If significant memory is allocated for storing intermediate results, then pipelining capability is improved, but scalability to large neural networks is limited
Solution Approach 1:
The patent segments the memory requirements into small local buffers at each layer rather than requiring large centralized memory. This segmentation allows the system to pipeline operations efficiently within each layer while maintaining scalability, as each layer independently manages its own small buffer rather than requiring proportional increases in total memory for larger networks.
Solution Approach 2:
The patent transitions from a centralized memory architecture to a distributed local buffer architecture across multiple layers. This dimensional change in memory organization enables pipelining capability by providing local storage at each stage, while simultaneously improving scalability by allowing the network to grow without requiring proportional increases in any single memory component.
4Measurement precision
If data is stored temporarily during forward propagation for later retrieval, then backward propagation accuracy is improved, but processing time increases
Solution Approach 1:
The patent performs preliminary storage of forward propagation results in local buffers during the forward pass. This preliminary action ensures that accurate data is available for backward propagation without requiring time-consuming re-computation or long-range data retrieval later. The local buffers provide both the accuracy needed for correct gradient computation and the speed needed for efficient backward propagation.
Data Source
AI summary
Pipelining for analog-memory-based neural networks with all-local storage is provided. In various embodiments, an array of inputs is received by a first synaptic array in a hidden layer from a prior layer during a feed forward operation. The array of inputs is stored by the first synaptic array during the feed forward operation. The array of inputs is received by a second synaptic array in the hidden layer during the feed forward operation. The second synaptic array computes outputs from array of inputs based on weights of the second synaptic array during the feed forward operation. The stored array of inputs is provided from the first synaptic array to the second synaptic array during a back propagation operation. Correction values are received by the second synaptic array during the back propagation operation. Based on the correction values and the stored array of inputs, the weights of the second synaptic array are updated.


