IP Library Granted Patent US 12,205,008
Granted Patent B2
US 12,205,008 · App. 17/319,518 · Granted Jan 21, 2025

Dropout in neutral networks using threshold switching selectors in non-volatile memories

Inventors: Wen Ma (Sunnyvale, CA); Tung Thanh Hoang (San Jose, CA); Martin Lueker-Boden (Fremont, CA)
Assignee: SanDisk Technologies LLC
G06N3/04G06F3/0604G06F3/0655G06F3/0679G06N3/063G06N5/04G11C11/1657G11C11/1659G11C11/54G11C13/0028G11C13/003
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,205,008
App. No.
17/319,518
Granted
Jan 21, 2025
Kind
B2
Abstract

A non-volatile memory device is configured for in-memory computation of layers of a neural network by storing weight values as conductance values in memory cells formed of a series combination of a threshold switching selector, such as an ovonic threshold switch, and a programmable resistive element, such as a ReRAM element. By scaling the input voltages (representing inputs for the layer of the neural network) relative to the threshold values of the threshold switching selectors, dropout for inputs can be implemented to reduce overfitting by the neural network.

Claims (50)

1. A non-volatile memory device, comprising:

a control circuit configured to connect to one or more arrays of non-volatile memory cells connected along word lines and bit lines, each memory cell comprising a programmable resistive element connected in series with a threshold switching selector configured to become conductive in response to application of a voltage level exceeding a threshold voltage, the control circuit is configured to:

receive a set of input values for a first layer of a neural network;

scale the set of input values relative to the threshold voltage of the threshold switching selectors;

convert the set of scaled input values to a corresponding set of scaled input voltages;

perform an inferencing operation for the first layer of the neural network by applying the scaled set of input voltages to word lines of a first of the arrays storing weight values of the first layer of the neural network in the memory cells thereof; and

determine a set of output values for the first layer of the neural network from a corresponding set of output currents on the bit lines of the first array.

2. The non-volatile memory device of claim 1 , wherein the control circuit is formed on a control die, the non-volatile memory device further comprising:

a memory die including the one or more of the arrays of non-volatile memory cells, the memory die formed separately from and bonded to the control die.

3. The non-volatile memory device of claim 1 , wherein the control circuit is further configured to:

receive the weight values of the first layer of the neural network; and

program the weight values of the first layer of the neural network in the memory cells of the first array.

4. The non-volatile memory device of claim 1 , wherein the control circuit is further configured to:

reprogram one or more of the weight values of the first layer of the neural network in the memory cells of the first array based on the set of output values of the first layer.

5. The non-volatile memory device of claim 1 , the control circuit comprising:

a plurality of current-steering circuits each configured to receive a corresponding one of the set of output currents, scale the corresponding output current, and provide the corresponding scaled output current as a corresponding one of the set of output values for the first layer of the neural network,

wherein the control circuit is further configured to:

provide the set of output values for the first layer of the neural network as inputs to a second layer of the neural network.

6. The non-volatile memory device of claim 1 , wherein the control circuit is further configured to:

digitize the set of output currents to determine a digitized value for each of the output currents;

determine the set of output values for the first layer of the neural network by truncating a number of least significant bits from the digitized values of the output currents; and

provide the set of output values for the first layer of the neural network as inputs to a second layer of the neural network.

7. The non-volatile memory device of claim 1 , wherein the input values for the first layer of the neural network and the weight values for the first layer of the neural network are analog values.

8. The non-volatile memory device of claim 1 , further comprising:

the one or more arrays of non-volatile memory cells, wherein the programmable resistive element comprises a resistive random-access memory (ReRAM) device.

9. The non-volatile memory device of claim 1 , further comprising:

the one or more arrays of non-volatile memory cells, wherein the programmable resistive element comprises a magnetic random-access memory (MRAM) device.

10. The non-volatile memory device of claim 1 , further comprising:

the one or more arrays of non-volatile memory cells, wherein the threshold switching selector comprises an ovonic threshold switch (OTS).

11. A method, comprising:

receiving a set of input values for a first layer of a neural network at an array of a plurality of non-volatile memory cells each comprising a programmable resistive element connected in series with a threshold switching selector, the programmable resistive element storing a weight value of the first layer of the neural network and the threshold switching selector configured to become conductive in response to application of a voltage level exceeding a threshold voltage;

scaling the set of input values relative to the threshold voltage of the threshold switching selectors;

converting the set of scaled input values to a corresponding set of scaled input voltages;

performing an inferencing operation for the first layer of the neural network by applying the scaled set of input voltages to the first of the array; and

determining a set of output values for the first layer of the neural network from a corresponding set of output currents on bit lines of the array.

12. The method of claim 11 , further comprising:

reprogramming one or more of the weight values of the first layer of the neural network in the memory cells of the array based on the set of output values of the first layer.

13. The method of claim 11 , wherein the input values for the first layer of the neural network are digital values and scaling the set of input values relative to the threshold voltage of the threshold switching selectors comprises:

truncating a number of least significant bits from the digital values of the input values for the first layer of the neural network.

14. The method of claim 11 , wherein the input values for the first layer of the neural network are analog current values and scaling the set of input values relative to the threshold voltage of the threshold switching selectors comprises:

scaling analog current values in a current mirror.

15. The method of claim 11 , further comprising:

prior to receiving the set of input values for a first layer of the neural network, programming the weight values of the first layer of the neural network in the memory cells of the array.

16. The method of claim 13 , further comprising:

providing the set of output values for the first layer of the neural network as inputs to a second layer of the neural network.

17. The method of claim 14 , further comprising:

providing the set of output values for the first layer of the neural network as inputs to a second layer of the neural network.

18. The method of claim 11 , wherein the input values for the first layer of the neural network and the weight values for the first layer of the neural network are analog values.

19. The method of claim 11 , wherein the programmable resistive element comprises a magnetic random-access memory (MRAM) device.

20. The method of claim 11 , wherein the threshold switching selector comprises an ovonic threshold switch (OTS).

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 24, 2025
From: SANDISK TECHNOLOGIES, INC.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 070313/0840 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2024
From: SANDISK TECHNOLOGIES LLC
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 069796/0423 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2021
From: MA, WEN; HOANG, TUNG THANH; LUEKER-BODEN, MARTIN
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 056236/0850 →
Continuity (1)
Related Publication 20220366211A1 · Nov 17, 2022
References Cited (55)
US 7936593B2 · Savransky · 2011 [cited by applicant]
US 8634247B1 · Sprouse et al. · 2014 [cited by applicant]
US 8634248B1 · Sprouse et al. · 2014 [cited by applicant]
US 8773909B2 · Li et al. · 2014 [cited by applicant]
US 8780632B2 · Sprouse et al. · 2014 [cited by applicant]
US 8780633B2 · Sprouse et al. · 2014 [cited by applicant]
US 8780634B2 · Sprouse et al. · 2014 [cited by applicant]
US 8780635B2 · Li et al. · 2014 [cited by applicant]
US 8792279B2 · Li et al. · 2014 [cited by applicant]
US 8811085B2 · Sprouse et al. · 2014 [cited by applicant]
US 8817541B2 · Li et al. · 2014 [cited by applicant]
US 9098403B2 · Sprouse et al. · 2015 [cited by applicant]
US 9104551B2 · Spouse et al. · 2015 [cited by applicant]
US 9116796B2 · Sprouse et al. · 2015 [cited by applicant]
US 9384126B1 · Sprouse et al. · 2016 [cited by applicant]
US 9430735B1 · Vali et al. · 2016 [cited by applicant]
US 10127150B2 · Sprouse et al. · 2018 [cited by applicant]
US 10192616B2 · O'Toole et al. · 2019 [cited by applicant]
US 10528643B1 · Choi et al. · 2020 [cited by applicant]
US 10643119B2 · Chiu et al. · 2020 [cited by applicant]
US 10643705B2 · Choi et al. · 2020 [cited by applicant]
US 20140133228A1 · Sprouse et al. · 2014 [cited by applicant]
US 20140133233A1 · Li et al. · 2014 [cited by applicant]
US 20140133237A1 · Sprouse et al. · 2014 [cited by applicant]
US 20140136756A1 · Sprouse et al. · 2014 [cited by applicant]
US 20140136757A1 · Sprouse et al. · 2014 [cited by applicant]
US 20140136758A1 · Sprouse et al. · 2014 [cited by applicant]
US 20140136760A1 · Sprouse et al. · 2014 [cited by applicant]
US 20140136762A1 · Li et al. · 2014 [cited by applicant]
US 20140136763A1 · Li et al. · 2014 [cited by applicant]
US 20140136764A1 · Li et al. · 2014 [cited by applicant]
US 20140156576A1 · Nugent · 2014 [cited by applicant]
US 20140136761A1 · Li et al. · 2014 [cited by applicant]
US 20140294272A1 · Madabhushi et al. · 2014 [cited by applicant]
US 20150324691A1 · Dropps et al. · 2015 [cited by applicant]
US 20160026912A1 · Falcon et al. · 2016 [cited by applicant]
US 20170098156A1 · Nino et al. · 2017 [cited by applicant]
US 20170228637A1 · Santoro et al. · 2017 [cited by applicant]
US 20180039886A1 · Umuroglu et al. · 2018 [cited by applicant]
US 20180075339A1 · Ma et al. · 2018 [cited by applicant]
US 20180144240A1 · Garbin et al. · 2018 [cited by applicant]
US 20200311523A1 · Hoang et al. · 2020 [cited by applicant]
Rastegari, Mohammad et al., “XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks,” proceedings ECCV 2016, Aug. 2016, 55 pages. [cited by applicant]
Wan, Diwen, et al., “TBN: Convolutional Neural Network with Ternary Inputs and Binary Weights,” ECCV 2018, Oct. 2018, 18 pages. [cited by applicant]
Chen, Yu-Hsin, et al., “Eyeriss: An Energy-Efficient Reconfigurable Accelerator for Deep Convolutional Neural Networks,” IEEE Journal of Solid-State Circuits, Feb. 2016, 12 pages. [cited by applicant]
Sun, Xiaoyu, et al., “Fully Parallel RRAM Synaptic Array for Implementing Binary Neural Network with (+1, −1) Weights and (+1, 0) Neurons,” 23rd Asia and South Pacific Design Automation Conference, Jan. 2018, 6 pages. [cited by applicant]
Gonugondla, Sujan K., et al., “Energy-Efficient Deep In-memory Architecture for NAND Flash Memories,” IEEE International Symposium on Circuits and Systems (ISCAS), May 2018, 5 pages. [cited by applicant]
Nakahara, Hiroki, et al., “A Memory-Based Realization of a Binarized Deep Convolutional Neural Network,” International Conference on Field-Programmable Technology (FPT), Dec. 2016, 4 pages. [cited by applicant]
Takeuchi, Ken, “Data-Aware NAND Flash Memory for Intelligent Computing with Deep Neural Network,” IEEE International Electron Devices Meeting (IEDM), Dec. 2017, 4 pages. [cited by applicant]
Mochida, Reiji, et al., “A 4M Synapses integrated Analog ReRAM based 66.5 TOPS/W Neural-Network Processor with Cell Current Controlled Writing and Flexible Network Architecture,” Symposium on VLSI Technology Digest of T… [cited by applicant]
Chiu, Pi-Feng, et al., “A Differential 2R Crosspoint RRAM Array With Zero Standby Current,” IEEE Transactions on Circuits and Systems—II: Express Briefs, vol. 62, No. 5, May 2015, 5 pages. [cited by applicant]
Chen, Wei-Hao, et al., “A 65nm 1Mb Nonvolatile Computing-in-Memory ReRAM Macro with Sub-16ns Mulitply-and-Accumulate for Binary DNN AI Edge Processors,” IEEE International Solid-State Circuits Conference, Feb. 2018, 3 p… [cited by applicant]
Liu, Rui, et al., “Parallelizing SRAM Arrays with Customized Bit-Cell for Binary Neural Networks,” DAC '18, Jun. 2018, 6 pages. [cited by applicant]
Courbariaux, Matthieu, et al., “Binarized Neural Networks: Training Neural Networks with Weights and Activations Constrained to +1 or −1,” arXiv.org, Mar. 2016, 11 pages. [cited by applicant]
U.S. Appl. No. 62/702,713, filed Jul. 24, 2018. [cited by applicant]
Cited By (1)
US 12,585,931