IP Library › Granted Patent US 12,327,182
Granted Patent B2
US 12,327,182 · App. 17/199,373 · Granted Jun 10, 2025

Optimizations for analog hardware realization of trained neural networks

Inventors: Aleksandrs Timofejevs (Riga, LV); Boris Maslov (Newport Beach, CA); Nikolai Kovshov (Moscow, RU); Dmitri Godovskiy (Moscow, RU)
Assignee: PolyN Technology Limited
G06N3/065G06F1/3206G06F1/3287G06F30/39G06N3/044G06N3/049G06N3/0499G06N3/063G06N3/082G06N5/04
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,327,182
App. No.
17/199,373
Granted
Jun 10, 2025
Kind
B2
Abstract

Systems and methods are provided for analog hardware realization of neural networks. The method includes obtaining a neural network topology and weights of a trained neural network. The method also includes transforming the neural network topology to an equivalent analog network of analog components including operational amplifiers and resistors. Each operational amplifier represents an analog neuron of the equivalent analog network, and each resistor represents a connection between two analog neurons. The method also includes computing a weight matrix based on the weights of the trained neural network. The method also includes generating a resistance matrix for the weight matrix. The method also includes pruning the equivalent analog network to reduce the number of operational amplifiers or the resistors, based on the resistance matrix, to obtain an optimized analog network of analog components.

Claims (74)

1. A method for hardware realization of neural networks, comprising:

obtaining a neural network topology and weights of a trained neural network;

transforming the neural network topology to an equivalent analog network of analog components including a plurality of operational amplifiers and a plurality of resistors, wherein each operational amplifier represents an analog neuron of the equivalent analog network and each resistor represents a connection between two analog neurons;

computing a weight matrix for the equivalent analog network based on the weights of the trained neural network, wherein each element of the weight matrix represents a respective connection;

generating a resistance matrix for the weight matrix, wherein each element of the resistance matrix corresponds to a respective weight of the weight matrix;

pruning the equivalent analog network to reduce number of the plurality of operational amplifiers or the plurality of resistors, based on the resistance matrix, to obtain an optimized analog network of analog components; and

generating a schematic model for implementing the optimized analog network as electronic circuitry based on the resistance matrix, including:

selecting component values for each individual operational amplifier and each individual resistor, and

for each analog neuron of the equivalent analog network:

computing a respective bias value for the respective analog neuron based on the weights of the trained neural network, while computing the weight matrix;

in accordance with a determination that the respective bias value is above a predetermined maximum bias threshold, removing the respective analog neuron from the equivalent analog network; and

in accordance with a determination that the respective bias value is below a predetermined minimum bias threshold, replacing the respective analog neuron with a linear junction in the equivalent analog network.

2. The method of claim 1 , wherein pruning the equivalent analog network comprises:

substituting, with conductors, resistors corresponding to one or more elements of the resistance matrix that have resistance values below a predetermined minimum threshold resistance value.

3. The method of claim 1 , wherein pruning the equivalent analog network comprises:

removing one or more connections of the equivalent analog network corresponding to one or more elements of the resistance matrix that are above a predetermined maximum threshold resistance value.

4. The method of claim 1 , wherein pruning the equivalent analog network comprises:

removing one or more connections of the equivalent analog network corresponding to one or more elements of the weight matrix that are approximately zero.

5. The method of claim 4 , wherein pruning the equivalent analog network further comprises:

removing one or more analog neurons of the equivalent analog network without any input connections.

6. The method of claim 1 , wherein pruning the equivalent analog network comprises:

ranking analog neurons of the equivalent analog network based on detecting use of the analog neurons when making calculations for one or more data sets;

selecting one or more analog neurons of the equivalent analog network based on the ranking; and

removing the one or more analog neurons from the equivalent analog network.

7. The method of claim 6 , wherein detecting use of the analog neurons comprises:

building a model of the equivalent analog network using a modelling software; and

measuring propagation of analog signals by using the model to generate calculations for the one or more data sets.

8. The method of claim 6 , wherein detecting use of the analog neurons comprises:

building a model of the equivalent analog network using a modelling software; and

measuring output signals of the model by using the model to generate calculations for the one or more data sets.

9. The method of claim 6 , wherein detecting use of the analog neurons comprises:

building a model of the equivalent analog network using a modelling software; and

measuring power consumed by the analog neurons by using the model to generate calculations for the one or more data sets.

10. The method of claim 1 , further comprising:

subsequent to pruning the equivalent analog network and prior to generating one or more lithographic masks for fabricating a circuit implementing the equivalent analog network, recomputing the weight matrix for the equivalent analog network and updating the resistance matrix based on the recomputed weight matrix.

11. The method of claim 1 , further comprising reducing number of neurons of the equivalent analog network, prior to generating the weight matrix, by increasing number of connections from one or more analog neurons of the equivalent analog network.

12. The method of claim 1 , further comprising:

prior to transforming the neural network topology, pruning the trained neural network to update the neural network topology and the weights of the trained neural network, using pruning techniques for neural networks, so that the equivalent analog network includes less than a predetermined number of analog components.

13. The method of claim 12 , wherein the pruning is performed iteratively taking into account accuracy or a level of match in output between the trained neural network and the equivalent analog network.

14. The method of claim 1 , further comprising:

prior to transforming the neural network topology to the equivalent analog network, performing network knowledge extraction.

15. A system for hardware realization of neural networks, comprising:

one or more processors; and

memory;

wherein the memory stores one or more programs configured for execution by the one or more processors, and the one or more programs comprise instructions for:

obtaining a neural network topology and weights of a trained neural network;

transforming the neural network topology to an equivalent analog network of analog components including a plurality of operational amplifiers and a plurality of resistors, wherein each operational amplifier represents an analog neuron of the equivalent analog network and each resistor represents a connection between two analog neurons;

computing a weight matrix for the equivalent analog network based on the weights of the trained neural network, wherein each element of the weight matrix represents a respective connection;

generating a resistance matrix for the weight matrix, wherein each element of the resistance matrix corresponds to a respective weight of the weight matrix;

pruning the equivalent analog network to reduce number of the plurality of operational amplifiers or the plurality of resistors, based on the resistance matrix, to obtain an optimized analog network of analog components; and

generating a schematic model for implementing the optimized analog network as electronic circuitry based on the resistance matrix, including:

selecting component values for each individual operational amplifier and each individual resistor; and

for each analog neuron of the equivalent analog network:

computing a respective bias value for the respective analog neuron based on the weights of the trained neural network, while computing the weight matrix;

in accordance with a determination that the respective bias value is above a predetermined maximum bias threshold, removing the respective analog neuron from the equivalent analog network; and

in accordance with a determination that the respective bias value is below a predetermined minimum bias threshold, replacing the respective analog neuron with a linear junction in the equivalent analog network.

16. The system of claim 15 , wherein pruning the equivalent analog network comprises:

substituting, with conductors, resistors corresponding to one or more elements of the resistance matrix that have resistance values below a predetermined minimum threshold resistance value.

17. The system of claim 15 , wherein pruning the equivalent analog network comprises:

removing one or more connections of the equivalent analog network corresponding to one or more elements of the resistance matrix that are above a predetermined maximum threshold resistance value.

18. The system of claim 15 , wherein pruning the equivalent analog network comprises:

removing one or more connections of the equivalent analog network corresponding to one or more elements of the weight matrix that are approximately zero.

19. A non-transitory computer readable storage medium storing one or more programs configured for execution by a computer system having one or more processors, the one or more programs comprising instructions for:

obtaining a neural network topology and weights of a trained neural network;

transforming the neural network topology to an equivalent analog network of analog components including a plurality of operational amplifiers and a plurality of resistors, wherein each operational amplifier represents an analog neuron of the equivalent analog network and each resistor represents a connection between two analog neurons;

computing a weight matrix for the equivalent analog network based on the weights of the trained neural network, wherein each element of the weight matrix represents a respective connection;

generating a resistance matrix for the weight matrix, wherein each element of the resistance matrix corresponds to a respective weight of the weight matrix;

pruning the equivalent analog network to reduce number of the plurality of operational amplifiers or the plurality of resistors, based on the resistance matrix, to obtain an optimized analog network of analog components; and

generating a schematic model for implementing the optimized analog network as electronic circuitry based on the resistance matrix, including:

selecting component values for each individual operational amplifier and each individual resistor; and

for each analog neuron of the equivalent analog network:

computing a respective bias value for the respective analog neuron based on the weights of the trained neural network, while computing the weight matrix;

in accordance with a determination that the respective bias value is above a predetermined maximum bias threshold, removing the respective analog neuron from the equivalent analog network; and

in accordance with a determination that the respective bias value is below a predetermined minimum bias threshold, replacing the respective analog neuron with a linear junction in the equivalent analog network.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 15, 2021
From: TIMOFEJEVS, ALEKSANDRS; MASLOV, BORIS; KOVSHOV, NIKOLAI; GODOVSKIY, DMITRI
To: POLYN TECHNOLOGY LIMITED
Reel/Frame 056872/0764 →
Continuity (4)
Continuation 17189109 · Mar 1, 2021
Continuation PCTRU2020000306 · Jun 25, 2020
Continuation PCTEP2020067800 · Jun 25, 2020
Related Publication 20210406664A1 · Dec 30, 2021
References Cited (119)
US 3628053A · Weiss · 1971 [cited by examiner]
US 5047655A · Chambost et al. · 1991 [cited by applicant]
US 5315163A · Karinthi · 1994 [cited by applicant]
US 5361327A · Takahashi · 1994 [cited by applicant]
US 6507641B1 · Kondo et al. · 2003 [cited by applicant]
US 7966992B2 · Glugla et al. · 2011 [cited by applicant]
US 10090005B2 · Rumberg et al. · 2018 [cited by applicant]
US 10157629B2 · Van Der Made et al. · 2018 [cited by applicant]
US 10217512B1 · Leobandung · 2019 [cited by applicant]
US 10810471B1 · Perumalla et al. · 2020 [cited by applicant]
US 10825536B1 · Yang · 2020 [cited by applicant]
US 10970441B1 · Zhang · 2021 [cited by applicant]
US 11092130B2 · Senda et al. · 2021 [cited by applicant]
US 20010000427A1 · Miller · 2001 [cited by examiner]
US 20060166107A1 · Chen · 2006 [cited by applicant]
US 20100106044A1 · Linderman · 2010 [cited by applicant]
US 20150120629A1 · Matsuoka et al. · 2015 [cited by applicant]
US 20160283842A1 · Pescianschi · 2016 [cited by applicant]
US 20160328642A1 · Himebaugh et al. · 2016 [cited by applicant]
US 20170017879A1 · Kataeva et al. · 2017 [cited by applicant]
US 20170140262A1 · Wilson et al. · 2017 [cited by applicant]
US 20170169327A1 · Nestler et al. · 2017 [cited by applicant]
US 20170249445A1 · Devries et al. · 2017 [cited by applicant]
US 20180018553A1 · Bach · 2018 [cited by applicant]
US 20180091240A1 · Noda et al. · 2018 [cited by applicant]
US 20180197485A1 · Jose et al. · 2018 [cited by applicant]
US 20180356771A1 · Basu · 2018 [cited by examiner]
US 20180357533A1 · Inoue · 2018 [cited by applicant]
US 20190026625A1 · Vorenkamp · 2019 [cited by examiner]
US 20190034791A1 · Busch et al. · 2019 [cited by applicant]
US 20190069795A1 · Kiranya et al. · 2019 [cited by applicant]
US 20190104951A1 · Valys et al. · 2019 [cited by applicant]
US 20190251426A1 · Busch et al. · 2019 [cited by applicant]
US 20200026992A1 · Zhang et al. · 2020 [cited by applicant]
US 20200043477A1 · Busch et al. · 2020 [cited by applicant]
US 20200046240A1 · Angle et al. · 2020 [cited by applicant]
US 20200105287A1 · Chang et al. · 2020 [cited by applicant]
US 20200110991A1 · Kataeva et al. · 2020 [cited by applicant]
US 20200166922A1 · Cella et al. · 2020 [cited by applicant]
US 20200202206A1 · Rummens et al. · 2020 [cited by applicant]
US 20200211566A1 · Kang et al. · 2020 [cited by applicant]
US 20200222010A1 · Howard · 2020 [cited by applicant]
US 20200311535A1 · Shrivastava · 2020 [cited by applicant]
US 20200364548A1 · Chang et al. · 2020 [cited by applicant]
US 20200380192A1 · MacRae et al. · 2020 [cited by applicant]
US 20210125049A1 · Khwa · 2021 [cited by applicant]
US 20210256988A1 · Mauri et al. · 2021 [cited by applicant]
US 20210326393A1 · Aggarwal et al. · 2021 [cited by applicant]
US 20220028051A1 · Asano · 2022 [cited by applicant]
US 20220083865A1 · Riazi · 2022 [cited by examiner]
US 20220222513A1 · Paramasivam · 2022 [cited by applicant]
US 20220253675A1 · Ren · 2022 [cited by examiner]
US 20230206036A1 · Labreuche et al. · 2023 [cited by applicant]
EP 0432462A1 · 1991 [cited by applicant]
EP 3663988A1 · 2020 [cited by applicant]
JP 2003021032A · 2003 [cited by applicant]
JP 2019003464A · 2019 [cited by applicant]
JP 2019016159A · 2019 [cited by applicant]
JP 7371235B2 · 2022 [cited by applicant]
KR 20190052587A · 2019 [cited by applicant]
KR 102120756B1 · 2020 [cited by applicant]
KR 102191736B1 · 2020 [cited by applicant]
WO WO2006104144A1 · 2006 [cited by applicant]
WO WO2020082080A1 · 2020 [cited by applicant]
WO WO2021170735A1 · 2021 [cited by applicant]
WO WO2021262023A1 · 2021 [cited by applicant]
WO WO2023167607A1 · 2023 [cited by applicant]
Chen et al. (Accelerator-friendly Neural-network Training: Learning Variations and Defects in RRAM Crossbar; Design, Automation & Test in Europe Conference & Exhibition; published 2017, pp. 19-24). (Year: 2017). [cited by examiner]
Liu et al. (Training an Artificial Neural Network with Op-amp Integrators Based Analog Circuits; IEEE Csaa Guidance, Navigation and Control Conference (CGNCC); published 2018, pp. 1-6). (Year: 2018). [cited by examiner]
Lin et al. (Learning the sparsity for ReRAM: mapping and pruning sparse neural network for ReRAM based accelerator; ASPDAC ' 19: Proceedings of the 24th Asia and South Pacific Design Automation Conference; published 201… [cited by examiner]
Chakma et al. (A Mixed-Signal Approach to Memristive Neuromorphic System Design; Published in: 2017 IEEE 60th International Midwest Symposium on Circuits and Systems (MWSCAS), pp. 1-4). (Year: 2017). [cited by examiner]
Cadence Design Systems: “From TensorFlow to RTL in three months,” Youtube, Nov. 14, 2018, XP054981600, retrieved from the Internet: URL: XP054981600, https://www.youtube.com > watch, 2 pgs. [cited by applicant]
Cadence: “Engineering Change Orders,” Dec. 8, 2019, XP055789511, Retrieved from the Internet: URL:https://web.archive.org/web/20191208162944if_https://www.cadence.com/content/dam/cadence-www/global/en_US/documents/tools… [cited by applicant]
Guyue Huang et al., “Machine Learning for Electronic Design Automation: A Survey,” arxiv.org, Cornell University Library, Mar. 8, 2021, arXiv:2102-03357v2, 44 pgs. [cited by applicant]
Monsen, Analog neural network-based helicopter gearbox health monitoring system, Acoustical Society of America, vol. 96, No. Dec. 6, 1995, 15 pgs. [cited by applicant]
Polyn Technology Limited, International Search Report and Written Opinion, PCT/EP2020/067800, Apr. 12, 2021, 10 pgs. [cited by applicant]
Polyn Technology Limited, International Preliminary Report on Patentability, PCT/EP2020/067800, Dec. 13, 2022, 8 pgs. [cited by applicant]
Polyn Technology Limited, International Search Report and Written Opinion, PCT/RU2020/000306, Mar. 4, 2021, 12 pgs. [cited by applicant]
Polyn Technology Limited, International Preliminary Report on Patentability, PCT/RU2020/000306, Dec. 13, 2022, 9 pgs. [cited by applicant]
Polyn Technology Limited, International Search Report and Written Opinion, PCT/US2021/058266, Feb. 18, 2022, 16 pgs. [cited by applicant]
Ronao, Charissa Ann, Human activity recognition with smartphone sensors using deep learning neural networks, Expert Systems with Applications 59, (2016) 235-244, 10 pgs. [cited by applicant]
Timofejevs, Office Action, U.S. Appl. No. 17/733,932, Apr. 21, 2023, 20 pgs. [cited by applicant]
Chapeton et al. (Effects of homeostatic constraints on associative memory storage and synaptic connectivity of cortical circuits, Frontiers in Computational Neuroscience, vol. 9, Article 74, published Jun. 18, 2015, pp.… [cited by applicant]
Himavathi et al. (Feedforward Neural Network Implementation in FPGA Using Layer Multiplexing for Effective Resource Utilization, IEEE Transactions on Neural Networks, vol. 18, No. 3, May 2007, pp. 880-888) (Year: 2007). [cited by applicant]
Liew et al. (Bounded activation functions for enhanced training stability of deep neural networks on visual pattern recognition problems; Neurocomputing; published 2016, pp. 718-734). (Year: 2016). [cited by applicant]
Polyn Technology Limited, International Search Report and Written Opinion, PCT/RU2021/000630, Mar. 17, 2022, 11 pgs. [cited by applicant]
Timofejevs, Office Action, U.S. Appl. No. 17/189,109, Mar. 25, 2024, 34 pgs. [cited by applicant]
Timofejevs, Office Action, U.S. Appl. No. 17/198,198, Apr. 23, 2024, 20 pgs. [cited by applicant]
Wang et al. (Prandtl-Ishlinskii Modeling for Giant Magnetostrictive Actuator Based on Internal Time-Delay Recurrent Neural Network; Published in: IEEE Transactions on Magnetics ( vol. 54, Issue: 11, Nov. 2018); pp. 1-4)… [cited by applicant]
Amelia Dalton, “TensorFlow to RTL with High-Level Synthesis—Cadence Design Systems”, EE Journal, Apr. 17, 2020, 1 page. [cited by applicant]
Andrew Muscat et al., “Electromagnetic Vibrational Energy Harvesters: A Review”, Sensors 2022, vol. 22, No. 15, Jul. 25, 2022, 17 pgs. [cited by applicant]
Anonymous, “Thoughts on Interfacing Piezo Vibration Sensor”, Aug. 22, 2013, 7 pgs., Retrieved from the Internet: https://scienceprog.com/thoughts-on-interfacing-piezo-vibration-sensor/. [cited by applicant]
Fredrik Sandin et al., “Synaptic Delays for Insect-Inspired Temporal Feature Detection in Dynamic Neuromorphic Processors”, Embedded Intelligent Systems Lab (EISLAB), Frontiers in Neuroscience, vol. 14, Article 150, Feb… [cited by applicant]
Hossam Abdelbaki et al., “Analog Hardware Implementation of the Random Neural Network Model”, Neural Networks, IJCNN 2000, Proceedings of the IEEE-INNS-ENNS International Joint Conference on Jul. 24, 2000, 5 pgs. [cited by applicant]
Hyeong-Ju Kang, “Accelerator-Aware Pruning for Convolutional Neural Networks”, arXiv, Sep. 5, 2020, 11 pgs. [cited by applicant]
Kaveri Mahapatra et al., “Power System Disturbance Classification with Online Event-Driven Neuromorphic Computing”, arXiv, Dec. 15, 2020, 11 pgs. [cited by applicant]
Khoa Van Pham et al., “Partial-Gated Memristor Crossbar for Fast and Power-Efficient Defect-Tolerant Training”, Micromachines, Apr. 13, 2019, 18 pgs., Retrieved from the Internet: www.mdpi.com/journal/micromachines. [cited by applicant]
M.V. Valueva et al., “Application of the Residue Number System to Reduce Hardware Costs of the Convolutional Neural Network Implementation”, Mathematics and Computers in Simulation, vol. 177 Nov. 2020, 8 pgs. [cited by applicant]
Min Cheng et al., “Multi-Scale LSTM Model for BGP Anomaly Classification”, Abstract, City University of Hong Kong, CityU Scholars, IEEE Transactions on Services Computing, Apr. 10, 2018, 2 pgs. [cited by applicant]
P. Sibi et al., “Analysis of Different Activation Functions Using Back Propagation Neural Networks”, Journal of Theoretical and Applied Information Technology, Jan. 31, 2013, vol. 47, No. 3, 5 pgs. [cited by applicant]
Paul M. Solomon, “Analog Neuromorphic Computing Using Programmable Resistor Arrays”, Solid State Electronics, vol. 155, May 2019, 10 pgs. [cited by applicant]
Peng Yao et al., “Fully Hardware-implemented Memristor Convolutional Neural Network”, Nature, vol. 577, Jan. 30, 2020, 21 pgs. [cited by applicant]
PolyN Technology Limited, Supplementary International Search Report, PCT/RU2020/000306, Jul. 26, 2022, 15 pgs. [cited by applicant]
PolyN Technology Limited, International Preliminary Report on Patentability, PCT/US2021/058266, Sep. 12, 2023, 13 pgs. [cited by applicant]
PolyN Technology Limited, International Search Report and Written Opinion, PCT/RU2022/000064, Dec. 1, 2022, 9 pgs. [cited by applicant]
PolyN Technology Limited, International Preliminary Report on Patentability, PCT/RU2022/000064, Sep. 10, 2024, 8 pgs. [cited by applicant]
PolyN Technology Limited, International Search Report and Written Opinion, PCT/US2023/022139, Oct. 2, 2023, 13 pgs. [cited by applicant]
PolyN Technology Limited, International Preliminary Report on Patentability, PCT/US2023/022139, Nov. 7, 2024, 9 pgs. [cited by applicant]
PolyN Technology Limited, International Search Report and Written Opinion, PCT/US2024/028993, Sep. 30, 2024, 11 pgs. [cited by applicant]
PolyN Technology Limited, International Search Report and Written Opinion, PCT/US2023/031692, Dec. 6, 2023, 15 pgs. [cited by applicant]
Qiang Wang et al., “Compressive Sensing Reconstruction for Vibration Signals Based on the Improved Fast Iterative Shrinkage-Thresholding Algorithm”, Measurement, vol. 142, Aug. 31, 2019, 9 pgs. [cited by applicant]
Renée St. Amant et al., “General-Purpose Code Acceleration with Limited-Precision Analog Computation”, Proceedings of the 41st International Symposium on Computer Architecture, 2014, 12 pgs. [cited by applicant]
Renesas, “Introduction to Electronic Circuits: Op-Amp Comparator”, Tutorial, published 2015, 22 pgs. [cited by applicant]
Sharon Shea: “What is LPWAN (Low-Power Wide Area Network) ?: Definition from Tech Target”, Sep. 30, 2017, 4 pgs., Retrieved from the Internet: https://www.techtarget.com/iotagenda/definition/LPWAN-low-power-wide-area-ne… [cited by applicant]
Siddharth Sharma et al., “Activation Functions in Neural Networks”, International Journal of Engineering Applied Sciences and Technology, 2020, vol. 4, Issue 12, ISSN No. 2455-2143, 7 pgs. [cited by applicant]
Talha Furkan Canan et al., “4-Input NAND and NOR Gates Based on Two Ambipolar Schottky Barrier FinFETs”, 2020 27th IEEE International Conference on Electronics, Circuits and Systems (ICECS), 4 pgs. [cited by applicant]
Tiago Oliveira Weber et al., “Amplifier-based MOS Analog Neural Network Implementation and Weights Optimization”, 2019 32nd Symposium on Integrated Circuits and Systems Design (SBCCI), ACM, Aug. 26, 2019, 6 pgs. [cited by applicant]
Yu Sang et al., “Micro Hand Gesture Recognition System Using Ultrasonic Active Sensing”, IEEE Access, vol. 6, Sep. 3, 2018, 9 pgs. [cited by applicant]
Yun Long et al., “ReRAM-Based Processing-in-Memory Architecture for Recurrent Neural Network Acceleration”, Abstract, IEEE Journals & Magazine, Jul. 3, 2018, 4 pgs. [cited by applicant]
Cited By (1)
US 12,737,692