Analog Neural Memory Precision Tuning for Floating-Gate Weight Programming
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing technologies face challenges in precisely programming non-volatile memory cells in vector-by-matrix multiplication (VMM) arrays within artificial neural networks, requiring extreme precision for storing different weight values.
Innovation Solution
A precision tuning algorithm and apparatus that accurately deposit the correct amount of charge on the floating gate of non-volatile memory cells, utilizing a combination of CMOS technology and non-volatile memory arrays to enable continuous and precise programming of memory cells.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If conventional programming methods are used for non-volatile memory cells in VMM arrays, then the programming process is simple, but the precision for storing weight values is insufficient
Solution Approach 1:
The programming process is divided into multiple sequential steps with decreasing pulse widths (e.g., initial wide pulses followed by narrower precision pulses). Each step refines the charge deposition on the floating gate, enabling precise weight value storage by breaking down the complex programming task into manageable segments that progressively achieve the desired precision.
Solution Approach 2:
The programming method employs periodic pulse sequences with varying characteristics (width, amplitude) applied to the control gate. These periodic actions allow systematic control of electron tunneling into the floating gate, enabling precise accumulation of charge to achieve accurate weight values while maintaining a structured and controllable programming process.
2Manufacturing precision
If multiple programming steps are used to achieve precision, then the programming precision improves, but the programming time increases
Solution Approach 1:
The programming process is segmented into phases with decreasing pulse widths, where each phase deposits a controlled amount of charge. This segmentation allows the system to quickly establish coarse weight values with wider pulses and then refine them with narrower pulses, optimizing the trade-off between precision and time by allocating programming effort across different time scales.
Solution Approach 2:
The method applies a sequence of pulses that collectively deposit the exact required charge, using partial actions (individual pulses) that sum to the precise target. By carefully controlling the number and characteristics of pulses, the system achieves exact weight values without excessive programming time, as each pulse contributes a calculated portion of the total required charge.
3Manufacturing precision
If high precision programming is implemented, then the neural network performance improves, but the energy consumption increases
Solution Approach 1:
The energy-intensive programming process is segmented into multiple low-energy pulse applications rather than one high-energy operation. Each pulse delivers a controlled, small amount of energy to deposit a specific quantity of charge, allowing the system to accumulate the required precision through many small energy investments rather than a single large energy expenditure.
Solution Approach 2:
The programming uses periodic pulse sequences where energy is delivered in discrete, controlled intervals. This periodic action allows the system to manage energy consumption by applying power only when needed for each pulse, with rest periods between pulses, thereby reducing overall energy consumption compared to continuous high-power programming while maintaining precision through cumulative charge deposition.
Applied Scientific Principles
This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.
Function Achieved in This Case
Enables precise and efficient programming of memory cells, allowing for high-performance information processing in artificial neural networks with improved energy efficiency and reduced computational complexity.
Implementation Method 1
deposit the correct amount of charge on the floating gate of a non-volatile memory cell
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Numerous embodiments of a precision tuning algorithm and apparatus are disclosed for precisely and quickly depositing the correct amount of charge on the floating gate of a nonvolatile memory cell within a vector-by-matrix multiplication (VAM) array in an artificial neural network. Selected cells thereby can be programmed with extreme precision to hold one of N different values.