WO2021066100A1 - シナプス回路の駆動方法 - Google Patents
シナプス回路の駆動方法 Download PDFInfo
- Publication number
- WO2021066100A1 WO2021066100A1 PCT/JP2020/037440 JP2020037440W WO2021066100A1 WO 2021066100 A1 WO2021066100 A1 WO 2021066100A1 JP 2020037440 W JP2020037440 W JP 2020037440W WO 2021066100 A1 WO2021066100 A1 WO 2021066100A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- pulse
- circuit
- post
- load
- spike
- Prior art date
Links
- 210000000225 synapse Anatomy 0.000 title claims abstract description 93
- 238000000034 method Methods 0.000 title claims abstract description 19
- 210000002569 neuron Anatomy 0.000 claims abstract description 60
- 230000008878 coupling Effects 0.000 claims description 154
- 238000010168 coupling process Methods 0.000 claims description 154
- 238000005859 coupling reaction Methods 0.000 claims description 154
- 230000000946 synaptic effect Effects 0.000 claims description 84
- 230000005415 magnetization Effects 0.000 claims description 64
- 230000008859 change Effects 0.000 claims description 29
- 230000003111 delayed effect Effects 0.000 claims description 14
- 238000012421 spiking Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 8
- 230000005291 magnetic effect Effects 0.000 claims description 7
- 230000001360 synchronised effect Effects 0.000 abstract description 3
- 230000013016 learning Effects 0.000 description 36
- 238000013528 artificial neural network Methods 0.000 description 23
- 239000003990 capacitor Substances 0.000 description 20
- 230000001149 cognitive effect Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- 230000015654 memory Effects 0.000 description 9
- 101150005648 polB gene Proteins 0.000 description 7
- 230000007423 decrease Effects 0.000 description 6
- 239000000470 constituent Substances 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003956 synaptic plasticity Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000010304 firing Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 239000012782 phase change material Substances 0.000 description 2
- 239000002885 antiferromagnetic material Substances 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005684 electric field Effects 0.000 description 1
- 239000003302 ferromagnetic material Substances 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 239000012212 insulator Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000000149 penetrating effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
- G06N3/065—Analogue means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/02—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
- G11C11/16—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/02—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
- G11C11/16—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
- G11C11/165—Auxiliary circuits
- G11C11/1675—Writing or programming circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/02—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
- G11C11/16—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
- G11C11/165—Auxiliary circuits
- G11C11/1693—Timing circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/54—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L27/00—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
- H01L27/02—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
- H01L27/04—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body
- H01L27/10—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a repetitive configuration
- H01L27/105—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a repetitive configuration including field-effect components
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L29/00—Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
- H01L29/66—Types of semiconductor device ; Multistep manufacturing processes therefor
- H01L29/82—Types of semiconductor device ; Multistep manufacturing processes therefor controllable by variation of the magnetic field applied to the device
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10B—ELECTRONIC MEMORY DEVICES
- H10B10/00—Static random access memory [SRAM] devices
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10B—ELECTRONIC MEMORY DEVICES
- H10B99/00—Subject matter not provided for in other groups of this subclass
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10N—ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10N50/00—Galvanomagnetic devices
- H10N50/10—Magnetoresistive devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
Definitions
- the present invention relates to a method for driving a synaptic circuit.
- a neural network that processes information on a computer using the mechanism of the brain of a living body as a model is known. Further, in order to realize a neural network using semiconductor elements and the like, research on its constituent elements and circuits is underway.
- Various models of neural network circuit devices have been proposed. For example, in one model, neurons are connected to each other via a synaptic circuit, and the synaptic circuit is given a synaptic connection load that indicates the strength of the connection, and one neuron is combined with the voltage of a pulse input from another neuron. When the integrated value with the load reaches a predetermined threshold value, the neuron fires and transmits a pulse to the next neuron.
- the synaptic coupling load is stored in the synaptic circuit
- learning is performed based on a synaptic model having, for example, Spike Timing Dependent Synaptic Plasticity (hereinafter referred to as STDP).
- STDP Spike Timing Dependent Synaptic Plasticity
- the synaptic coupling load based on the time difference between the pulse from the pre-neuron circuit connected to the front stage of the synaptic circuit and the pulse from the post-neuron circuit connected to the rear stage is stored in the synaptic circuit.
- non-volatile storage elements for example, ReRAM (Resistive Random Access Memory) equipped with a resistance change type memory element whose electrical resistance changes due to an electric field-induced giant resistance change, phase change memory (Phase Change Random Access Memory), and the like are known.
- ReRAM Resistive Random Access Memory
- phase change memory Phase Change Random Access Memory
- the present invention has been made in view of the above circumstances, and an object of the present invention is to provide a simplified method for driving a synaptic circuit.
- the present invention has a load storage unit that stores either the first connection load or the second connection load as a synaptic connection load, and is located between the preneuron circuit and the postneuron circuit.
- a weighted pre-spike pulse that is connected and weighted with the synaptic coupling load to the pre-spike pulse input from the pre-neuron circuit is output to the post-neuron circuit, and the pre-spike pulse and the post output by the post-neuron circuit are output.
- the pre-spike pulse is transmitted from either the pre-neuron circuit or the post-neuron circuit to the post-spike pulse.
- a first time window pulse defining a first time window that allows writing of the synaptic coupling load to the load storage unit is input to the synapse circuit, and the synapse is input to the load storage unit from the other side.
- a first write pulse having a pulse width shorter than that of the first time window pulse, which is a write timing of the coupling load, is input to the synapse circuit, and the post is transmitted from either the preneuron circuit or the postneuron circuit.
- a second time window pulse defining a second time window that allows writing of the synaptic coupling load to the load storage unit is input to the synapse circuit.
- a second write pulse having a pulse width shorter than that of the second time window pulse, which is a timing for writing the synapse coupling load is input to the synapse circuit, and the first time window pulse and the first time window pulse are input to the load storage unit.
- the post-spiking pulse precedes the pre-spiking pulse and the case where the pre-spiking pulse precedes the post-spiking pulse from either the pre-neuron circuit or the post-neuron circuit.
- a time window pulse that allows writing of the synaptic coupling load is input to the synaptic circuit, and a short write pulse that is the timing for writing the synaptic coupling load is input to the synaptic circuit from the other side, and these are simultaneously input to the synaptic circuit. Since the load storage unit performs the writing operation when the input is input to, the drive for storing the synaptic coupling load based on STDP can be simplified.
- It is a block diagram which shows the outline of the neural network circuit apparatus of 1st Embodiment. 6 is a graph showing the relationship between the pulse time difference ⁇ T between the first post-spike pulse and the first pre-spike pulse and the coupling load. It is a circuit diagram which shows the structure of a synaptic circuit. It is a block diagram which shows an example of the main part composition of the main body part of a neuron circuit. It is a timing chart which shows various signals in a cognitive mode. 6 is a timing chart showing various signals in the learning mode when the first pre-spike pulse precedes. It is a timing chart which shows various signals in the learning mode when the 1st post spike pulse precedes.
- 6 is a timing chart showing various signals in the learning mode when the first pre-spike pulse in the second embodiment precedes. 6 is a timing chart showing various signals in the learning mode when the first post-spike pulse in the second embodiment precedes. 6 is a timing chart showing various signals in the learning mode when the first pre-spike pulse in the third embodiment precedes. 6 is a timing chart showing various signals in the learning mode when the first post-spike pulse in the third embodiment precedes.
- FIG. 5 is a circuit diagram showing another example in which a load storage unit having an SRAM configuration outputs a current signal as a weighted pre-spike pulse.
- each synapse circuit 11 has a load storage unit 14 and a selection unit 15, respectively. Further, the neural network circuit device 10 is provided with a plurality of neuron circuits 17, and a plurality of synapse circuits 11 are provided corresponding to the respective neuron circuits 17.
- each row 16 of the synaptic circuit 11 is provided with a neuron circuit 17 at the end in the row direction (vertical direction in FIG. 1), and one neuron circuit 17 is provided with one row of synaptic circuits. 11 corresponds.
- the neuron circuit 17 has a main body 18 and a bit line driver 19.
- Bit lines BL, BLB, first post spike line POLa, and second post spike line POLb are extended in the column direction corresponding to each row 16 of the synapse circuit 11.
- the bit wires BL and BLB are connected to each load storage unit 14 and the bit wire driver 19 in the corresponding column 16.
- the first post-spike line POLa and the second post-spike line POLb are connected to the selection unit 15 and the main body unit 18 in the corresponding row 16.
- an output line OL is provided for each load storage unit 14, and each load storage unit 14 is connected to the main body 18 of the neuron circuit 17 in the row 16 in which the load storage unit 14 is arranged by an output line OL. ..
- the power supply line PL for supplying the power supply voltage to the load storage unit 14 in the row direction (left-right direction in the figure), the grounded source line SL, the pre-spiked line PrL, and the word line corresponding to each line of the synapse circuit 11.
- Each WL is extended.
- the power supply line PL, the source line SL, and the pre-spike line PrL are connected to each load storage unit 14 in the corresponding line. Further, the pre-spike line PrL and the word line WL are connected to each selection unit 15 in the corresponding line.
- the front stage portion 20 is provided with an input circuit 20a for each row.
- the pre-spike line PrL of each line is connected to the input circuit 20a via the inverter 20b, and the word line WL is directly connected to the input
- the neural network circuit device 10 refers to a synaptic model having spike timing-dependent synaptic plasticity (Spike Timing Dependent Synaptic Plasticity (hereinafter referred to as STDP)).
- STDP spike Timing Dependent Synaptic Plasticity
- the input circuit 20a in the neural network circuit device 10 is provided as a preneuron circuit and corresponds to a preneuron.
- the neuron circuit 17 is provided as a post-neuron circuit and corresponds to a post-neuron.
- the input circuit 20a outputs a first pre-spike pulse as a pre-spike pulse
- the neuron circuit 17 outputs a first post-spike pulse as a post-spike pulse.
- the first pre-spike pulse is output at a timing corresponding to the firing timing of the pre-neuron
- the first post-spike pulse is output at a timing corresponding to the firing timing of the post-neuron.
- the synaptic circuit 11 corresponds to a synapse that synapse-connects a pre-neuron and a post-neuron, and stores a synaptic connection load (hereinafter, simply referred to as a connection load).
- the STDP When focusing on one synapse, the STDP is between the preneuron and the postneuron depending on the timing at which the preneurons and postneurons connected before and after that synapse fire and output spike pulses. It is a property that the binding load with the located synapse changes.
- the pulse time difference ⁇ T between the first post-spike pulse and the first pre-spike pulse is preset in each of the cases where the first pre-spike pulse precedes and follows the first post-spike pulse.
- the coupling load of the synaptic circuit 11 is updated when it is within the specified time Tw.
- the synapse circuit 11 has the first coupling load as the coupling load when the former of the first pre-spike pulse and the first post-spike pulse precedes, and the second coupling load as the coupling load when the latter precedes. Memorize the coupling load.
- the pulse time difference ⁇ T is defined as the magnitude of the time difference between the first post-spike pulse and the first pre-spike pulse, but when distinguishing between positive and negative, the first pre-spike pulse is compared with the first post-spike pulse. Is positive, and the case where the first post-spike pulse precedes the first pre-spike pulse is negative.
- the weight of the first coupling load is relatively large and the weight of the second coupling load is small. That is, as shown in FIG. 2, the coupling load of the synapse circuit 11 is based on the timing at which the first post spike pulse is output from the neuron circuit 17 to which the synapse circuit 11 is connected, and the first post spike pulse is output. If the first pre-spike pulse is input to the synapse circuit 11 within a period of time Tw retroactively from the time point, a large first coupling load is obtained, and within time Tw of the time when the first post-spike pulse is output. When the first pre-spike pulse is input to the synaptic circuit 11 during the period, it becomes a small second coupling load. Therefore, this example is different from the general symmetric STDP and asymmetric STDP in which the coupling load is gradually increased or decreased by increasing the pulse time difference ⁇ T when updating the coupling load.
- the neural network circuit device 10 has a cognitive mode and a learning mode.
- the cognitive mode for example, by inputting a signal corresponding to the image to be processed such as image recognition from the front stage portion 20 to the neural network circuit device 10, the output from each neuron circuit 17 is processed according to the result of image recognition.
- the learning mode the coupling load stored in each synaptic circuit 11 is used.
- the learning mode is an operation mode in which a signal based on a prepared image is input from the front stage portion 20 to the neural network circuit device 10 to update the coupling load stored in each synapse circuit 11.
- the input circuit 20a of the front stage portion 20 has a first pre-spike pulse and a pulse generator that generates a second pre-spike pulse synchronized with the first pre-spike pulse, and pre-spikes the first pre-spike pulse.
- the second pre-spike pulse is output to the line PrL and the second pre-spike pulse is output to the word line WL, respectively.
- the first pre-spike pulse in the synapse circuit 11 is low-active, and the first pre-spike pulse from the input circuit 20a is output to the pre-spike line PrL via the inverter 20b.
- the first pre-spike pulse is output in both the cognitive mode and the learning mode, while the second pre-spike pulse is output only in the learning mode.
- the first pre-spike pulse also functions as a second write pulse used for controlling the write timing of the coupling load when the first post-spike pulse precedes the first pre-spike pulse. ..
- the pulse width of the first pre-spike pulse is shorter than that of the second pre-spike pulse.
- the pulse width of the first pre-spike pulse can be set to 10 nsec or less.
- the second pre-spike pulse is a time window that allows the coupling load to be written to the synaptic circuit 11 in the case where the first pre-spike pulse precedes the first post-spike pulse in the learning mode. It is the first time window pulse in this example. Writing is allowed while the second pre-spike pulse is being input to the synaptic circuit 11.
- This second pre-spike pulse has the same pulse width as the specified time Tw. In this example, the output of the second pre-spike pulse is started at the same time as the first pre-spike pulse, but it can be delayed from the first pre-spike pulse.
- the generation timing of the second post-spike pulse and the timing of changing the potential of the bit line BL / BLB, which will be described later, are also delayed in the same manner.
- the first post-spike pulse output from the neuron circuit 17 is used in the learning mode to control the writing timing of the coupling load when the first pre-spike pulse precedes the first post-spike pulse. It also functions as one write pulse.
- the pulse width of the first post-spike pulse is shorter than that of the second pre-spike pulse. Similar to the first pre-spike pulse, in the configuration in which the load is stored in the load storage unit 14 using the MTJ element, the pulse width of the first post-spike pulse can be set to 10 nsec or less.
- the second post-spike pulse is output from the neuron circuit 17 in synchronization with the first post-spike pulse.
- the output of the second post-spike pulse is started at the same time as the first post-spike pulse.
- This second post-spike pulse is a time window (time window) that allows writing of a coupling load to the synaptic circuit 11 when the first post-spike pulse precedes the first pre-spike pulse in the learning mode. ), which is the second time window pulse in this example.
- writing is allowed while the second post-spike pulse is being input to the synaptic circuit 11.
- This second pre-spike pulse has the same pulse width as the specified time Tw.
- the synapse circuit 11 is used when the second post-spike pulse and the first pre-spike pulse are simultaneously input and when the first post-spike pulse and the second pre-spike pulse are simultaneously input. , Performs the writing operation of the coupling load.
- the load storage unit 14 of the synapse circuit 11 transmits a voltage signal Vpre as a weighted pre-spike pulse weighted by the stored coupling load via the output line OL. Is output to the main body 18 of the neuron circuit 17.
- the main body 18 of the neuron circuit 17 responds to the sum of the voltage levels of the voltage signals Vpre from each load storage 14 in the row 16 in which it is arranged being equal to or greater than a predetermined threshold value. Occurs.
- the main body 18 outputs the first post spike pulse to the first post spike line POLa, and in the learning mode, outputs the first post spike pulse and the second post synchronized with the first post spike pulse.
- the spike pulse is output to the second post spike line POLb.
- the first post-spike pulse is sent to, for example, a synapse circuit provided between the neuron circuit 17 and the next-stage neuron circuit.
- the potential of the line BL is set higher than the potential VB1 (the bit line potential difference ⁇ VB is negative) so that a current flows from the bit line BLB toward the bit line BL via the load storage unit 14.
- the bit line potential difference ⁇ VB is set to 0V when the specified time Tw has elapsed from the time when the first post-spike pulse is generated.
- the potentials of the bit lines BL and BLB when the bit line potential difference ⁇ VB is positive are the first potentials
- the potentials of the bit lines BL and BLB when the bit line potential difference ⁇ VB is negative are the second potentials.
- the selection unit 15 of the synapse circuit 11 sets the first post-spike pulse and the first post-spike pulse based on the first pre-spike pulse, the second pre-spike pulse, the first post-spike pulse, and the second post-spike pulse in the learning mode.
- a selection signal is generated when the pulse time difference ⁇ T from the pre-spike pulse is within the specified time Tw.
- the load storage unit 14 stores the coupling load based on the potential difference between the bit lines BL and BLB at the timing when the selection signal is input.
- the load storage unit 14 of the synapse circuit 11 includes inverters 21 and 22, a pair of MOS transistors 23 and 24 as transfer gates, and a MOS transistor 25.
- the inverter 21 is composed of an MTJ element (magnetic tunnel junction element) 31 connected in series and a MOS transistor 32
- the inverter 22 is composed of an MTJ element 33 and a MOS transistor 34 connected in series.
- the MOS transistors 23, 24, 32, and 34 are N-type MOSFETs
- the MOS transistor 25 is a P-type MOSFET.
- the MOS transistors 32 and 34 are inverter MOS transistors.
- the MTJ element 31 has a structure in which a magnetization fixed layer 31a and a magnetization free layer 31b are laminated with an insulating film 31c interposed therebetween.
- the magnetization direction of the magnetization fixing layer 31a is fixed.
- the magnetization direction of the magnetization free layer 31b can be changed by passing a write current of a predetermined threshold value or more through the MTJ element 31, and the magnetization direction is determined by the direction of the write current.
- the MTJ element 31 has a low resistance with a small resistance value when the magnetization fixed layer 31a and the magnetization free layer 31b are in a parallel state in which the magnetization directions match, and the magnetization free layer 31b is relative to the magnetization fixed layer 31a.
- the MTJ element 31 In the antiparallel state where the magnetization directions of are opposite to each other, the resistance value becomes large and the resistance becomes high.
- the MTJ element 31 is in a parallel state by passing a write current in the direction from the magnetization fixed layer 31a to the magnetization free layer 31b, and is in an antiparallel state by passing a write current in the opposite direction.
- the MTJ element 33 also has a structure in which a magnetization fixed layer 33a, a magnetization free layer 33b, and an insulating film 33c are laminated, and like the MTJ element 31, the magnetization direction of the magnetization free layer 33b can be changed by a write current.
- the resistance value changes in the parallel state and the antiparallel state.
- the load storage unit 14 non-volatilely stores the coupling load by the MTJ elements 31 and 33.
- one of the MTJ elements 31 and 33 is in a parallel state, the other is in an antiparallel state.
- the MTJ element 31 is in an antiparallel state
- the MTJ element 33 is in a parallel state
- the second coupling load is stored
- the MTJ element 31 is stored. Is in a parallel state
- the MTJ element 33 is in an antiparallel state.
- the MTJ elements 31 and 33 are advantageous elements from the viewpoint that they can be rewritten at high speed as compared with other ReRAMs, phase change memories, etc., the maximum number of rewrites is considerably large, and the number of learnings can be increased. ..
- the inverter 21 is connected to the magnetization free layer 31b of the MTJ element 31 and the drain of the MOS transistor 32, and the inverter 22 is connected to the magnetization free layer 33b of the MTJ element 33 and the drain of the MOS transistor 34.
- the magnetization fixing layers 31a and 33a of the MTJ elements 31 and 33 are connected to the power supply line PL via the MOS transistor 25.
- Each source of the MOS transistors 32 and 34 is grounded via the source line SL.
- connection node SN between the MTJ element 31 and the MOS transistor 32, which is the output end of the inverter 21, is connected to the gate of the MOS transistor 34, which is the input end of the inverter 22, and the MTJ element 33 and the MOS transistor, which are the output ends of the inverter 22.
- the connection node SNB with 34 is connected to the gate of the MOS transistor 32 which is the input end of the inverter 21.
- connection node SN is connected to the bit line BL via the MOS transistor 23, and the connection node SNB is connected to the bit line BLB via the MOS transistor 24.
- Each gate of the MOS transistors 23 and 24 is connected to the selection unit 15, and is turned on and off by a selection signal from the selection unit 15.
- a writing unit is composed of the selection unit 15 and the MOS transistors 23 and 24.
- the bit line BL reaches the bit line BLB via the connection node SN, the MTJ element 31, the MTJ element 33, and the connection node SNB.
- a write current flows in the path, the MTJ element 31 is in an antiparallel state, and the MTJ element 33 is in a parallel state.
- the MOS transistors 23 and 24 are turned on when the bit line potential difference ⁇ VB is negative, the bit line passes from the bit line BLB through the connection node SNB, MTJ element 33, MTJ element 31, and connection node SN.
- a write current flows along the path leading to the BL, and the MTJ element 31 is in a parallel state and the MTJ element 33 is in an antiparallel state.
- connection node SNB The potential (voltage) of the connection node SNB is output to the output line OL as a voltage signal Vpre via the capacitor 36 as the output circuit unit. That is, one electrode of the capacitor 36 is connected to the connection node SNB, and the other electrode is connected to the main body 18 of the neuron circuit 17 via the output line OL. As will be described later, the capacitor 36 is connected to the control gate CG (see FIG. 4) in the main body 18. The capacitor 36 is used to prevent the generation of conduction current between the load storage units 14 of the synaptic circuits 11 that are capacitively coupled to the same floating gate FG (see FIG. 4) via the control gate CG. It is provided. As the capacitor 36, for example, a MOS capacitor utilizing the gate capacitance of the transistor can also be used.
- the actual coupling capacitance between the load storage unit 14 and the floating gate FG is determined by the capacitance of the capacitor 36 and the coupling capacitance of the control gate CG with respect to the floating gate FG. Further, the substantial coupling capacitance between the load storage unit 14 and the floating gate FG can be made different, and by doing so, for example, the voltage signal Vpre can be weighted. Further, the output circuit unit may be connected to the connection node SN instead of the connection node SNB.
- the MOS transistor 25 is a switching element for power gating in the cognitive mode, and at the same time, is a switching element for driving a signal, that is, as a reading unit for outputting a voltage signal Vpre.
- the MOS transistor 25 is turned on when its gate is connected to the pre-spike line PrL and the first pre-spike pulse as an input signal is output.
- the inverters 21 and 22, that is, the MOS transistors 32 and 34 forming the differential pair are operated by receiving the power supply from the power supply line PL.
- the voltage of the connection node SNB which is the output end of the inverter 22, is output to the output line OL as a voltage signal Vpre.
- the voltage signal Vpre is relatively high in the case of the first coupling load, that is, when the MTJ element 31 is in the antiparallel state and the MTJ element 33 is in the parallel state, and in the case of the second coupling load, that is, when the MTJ element 31 is in the parallel state, MTJ.
- the case where the element 33 is in an antiparallel state is relatively low.
- the selection unit 15 uses the combination of the logic circuits 15a to 15c when the first pre-spike pulse is output while the second post-spike pulse is being output, or while the first post-spike pulse is being output.
- the selection signal is activated (H level) when the second pre-spike pulse is output.
- the selection signal is activated and the MOS transistors 23 and 24 are turned on only when the pulse time difference ⁇ T between the first post-spike pulse and the first pre-spike pulse is within the specified time Tw.
- the main body 18 includes a MOS transistor 41 which is a P-type MOSFET, a MOS transistor 42 which is an N-type MOSFET, an inverter 43, and a pulse generator 44.
- the pulse generator 44 generates a first post-spike pulse and a second post-spike pulse.
- a first post-spike pulse and a second post-spike pulse can be generated by using a pulse generator whose pulse waveform, output timing, delay time, and the like can be controlled.
- MOS transistors 41 and 42 as MOS transistors for neurons are connected in series to form an inverter. That is, the drains of the MOS transistors 41 and 42 are connected to each other, the source of the MOS transistor 41 is connected to the power supply (voltage VDD), and the source of the MOS transistor 42 is grounded.
- the input end of the inverter 43 is connected to the connection node of the MOS transistor 41 and the MOS transistor 42, and when the connection node reaches the ground potential (0V), the output logic of the inverter 43 is inverted from the L level to the H level. To do.
- the pulse generator 44 generates a first post-spike pulse and a second post-spike pulse in response to the output of the inverter 43 changing from the L level to the H level.
- the MOS transistors 41 and 42 share a common floating gate FG. Further, the MOS transistors 41 and 42 are provided with a plurality of control gate CGs capacitively coupled to the floating gate FG.
- the control gate CG of the main body 18 is provided corresponding to each load storage unit 14 in the row 16 in which the main body 18 is arranged, and each control gate CG has an output line from the corresponding load storage unit 14. The OL is connected.
- On / off of the MOS transistors 41 and 42 is controlled by the potential of the floating gate FG, and when one is on, the other is off.
- the potential of the floating gate FG is determined by the voltage of the voltage signal Vpre applied to each control gate CG and the coupling capacitance between each control gate CG and the floating gate FG.
- the coupling capacitance of each control gate CG with respect to the floating gate FG is the same. Therefore, the total voltage applied to each control gate CG can be controlled so that one of the MOS transistors 41 and 42 is turned on and the other is turned off.
- the main body 18 may be configured to generate a first post-spike pulse and a second post-spike pulse based on the sum of the voltages of the voltage signals Vpre from each synapse circuit 11 to which the main body 18 is connected.
- the cognitive mode as shown in FIG. 5, the first pre-spike pulse is output from each input circuit 20a to the pre-spike line PrL via the inverter 20b at a timing corresponding to the processing content of the front stage portion 20. ..
- the second pre-spike pulse is not output, so the selection unit 15 does not output the selection signal.
- the MOS transistor 25 in the load storage unit 14 Focusing on one synaptic circuit 11, when the first pre-spike pulse is input to the synaptic circuit 11 via the pre-spike line PrL to which it is connected, the MOS transistor 25 in the load storage unit 14 is turned on. .. When the MOS transistor 25 is turned on, a current from the power supply line PL flows through the MTJ element 31 and the MTJ element 33, and the inverters 21 and 22 operate. As described above, in the cognitive mode, the load storage unit 14 is effective in suppressing power consumption because the current flows only while the MOS transistor 25 is on.
- the coupling load stored in the synapse circuit 11 is the first coupling load, that is, when the MTJ element 31 has a high resistance and the MTJ element 33 has a low resistance, the potential of the connection node SNB is connected. A potential difference is generated that is higher than the potential of the node SN. This potential difference is amplified by the action of the cross-coupled inverters 21 and 22, and stabilizes in a state where the potential difference becomes large.
- the coupling load stored in the synapse circuit 11 is the second coupling load, that is, when the MTJ element 31 has a low resistance and the MTJ element 33 has a high resistance, the potential of the connection node SNB. A potential difference is generated that is lower than the potential of the connection node SN, and the potential difference is amplified by the action of the cross-coupled inverters 21 and 22, and is stabilized in a state where the potential difference is large.
- connection node SN Since the potential difference between the connection node SN and the connection node SNB is amplified and stabilized by the differential pair of the MOS transistors 32 and 34, the time required for stabilization is very short. Therefore, high-speed operation is possible.
- the current flowing through the MTJ elements 31 and 33 when the MOS transistor 25 is turned on is adjusted to a magnitude that does not change their magnetization state.
- the change has no effect on generating the desired potential difference in the connection nodes SN and SNB.
- the degree is very small.
- the slight magnetization direction of the magnetization free layers 31b and 33b returns to the original magnetization direction by stopping the current.
- the potentials of the connection nodes SN and SNB change according to the coupling load stored in the synapse circuit 11.
- a high voltage voltage signal Vpre is output to the output line OL connected to the connection node SNB via the capacitor 36
- a low voltage voltage signal Vpre is output.
- the voltage signal Vpre from the synapse circuit 11 is applied to the control gate CG of the main body 18 via the output line OL.
- the MOS transistor 25 is turned off, the capacitor 36 is discharged and the voltage of the voltage signal Vpre is lowered.
- the voltage of the voltage signal Vpre is increased. It gradually decreases and does not immediately reach 0V.
- the voltage of the voltage signal Vpre output from each synaptic circuit 11 in the column 16 in which it is arranged is applied to the corresponding control gate CG.
- no voltage is applied to the control gate CG from the synapse circuit 11 to which the first pre-spike pulse is not input.
- the MOS transistor 41 is turned off and the MOS transistor 42 is turned on.
- the output of the inverter 43 is inverted from the L level to the H level, and the first post spike pulse is output from the pulse generator 44. If the potential of the floating gate FG does not reach the threshold value, the MOS transistor 41 is not turned off and the MOS transistor 42 is not turned on, so that the first post spike pulse is not output.
- each column 16 is provided according to the timing of the first pre-spike pulse output from the front stage portion 20 to the pre-spike line PrL of each row and the coupling load stored in each synaptic circuit 11.
- the first post-spike pulse is output from the neuron circuit 17.
- the first post-spike pulse is sent to, for example, a synaptic circuit provided between the neuron circuit 17 and the next-stage neuron circuit.
- the weight applied to the pre-spike is transmitted from the load storage unit 14 to the main body unit 18 as the magnitude of the voltage of the voltage signal Vpre, and the sum of the voltages is capacitively coupled to the control gate CG. Obtained by floating gate FG. Therefore, the first post-spike pulse corresponding to the post-spike pulse based on the result of the product-sum calculation can be obtained without providing the calculation circuit for calculating the sum of products of the coupling load and the pre-spike pulse.
- the two MTJ elements 31 and 33 are always written with opposite resistance states. Therefore, when the voltage signal Vpre is output, a current flows through one (low resistance) MTJ element, and almost no current flows through the other (high resistance) MTJ element.
- the direction of the current flowing through one (low resistance) MTJ element is the direction of the write current that makes the MTJ element low resistance. Therefore, neither the high-resistance MTJ element nor the low-resistance MTJ element causes a read disturb in which the direction of magnetization is reversed by the current flowing when the voltage signal Vpre is output.
- the learning mode As in the cognitive mode, the first pre-spike pulse is output from each input circuit 20a to the pre-spike line PrL at a timing corresponding to the processing content of the front stage portion 20. Also in this learning mode, when the first pre-spike pulse is output, the load storage unit 14 operates and the voltage signal Vpre is output as in the case of the cognitive mode.
- a second pre-spike pulse having a pulse width Tw is output from the input circuit 20a to the word line WL in synchronization with the first pre-spike pulse.
- FIG. 6 shows a case where the first pre-spike pulse precedes the first post-spike pulse
- FIG. 7 shows a case where the first post-spike pulse precedes the first pre-spike pulse.
- the pulse time difference ⁇ T between the first pre-spike pulse and the first post-spike pulse is within the specified time Tw.
- the synaptic circuit 11 to which the first pre-spike pulse is input via the pre-spike line PrL displays a voltage signal Vpre corresponding to the coupling load stored in the load storage unit 14 of the synapse circuit 11 as in the case of the cognitive mode.
- the output is output to the main body 18 arranged in the same row 16.
- the main body 18 when the voltage of the voltage signal Vpre is applied to the control gate CG and the potential of the floating gate FG reaches the threshold value, the MOS transistor 41 is turned off and the MOS transistor 42 is turned on.
- the first post-spike pulse is output from the pulse generator 44 to the first post-spike line POLA.
- a second post-spike pulse having a pulse width Tw is output from the main body 18 to the second post-spike line POLb.
- bit line driver 19 sets the bit line potential difference ⁇ VB to be positive and then the bit line potential difference ⁇ VB to be negative for a period substantially the same as the pulse width of the first post spike pulse at the same time as the output of the first post spike pulse. To. After that, the bit linear potential difference ⁇ VB is set to 0 V when the specified time Tw elapses from the time when the first post spike pulse is generated.
- the output of the second pre-spike pulse is started at the same time as the first pre-spike pulse as described above, and has the same pulse width as the specified time Tw. Therefore, for example, as shown in FIG. 6, when the first pre-spike pulse is input to the synapse circuit 11 within a period of time Tw back from the timing at which the first post-spike pulse is output, The first post-spike pulse is input to the selection unit 15 of the synapse circuit 11 during the input of the second pre-spike pulse. As a result, the selection signal is output from the selection unit 15 to the load storage unit 14 almost at the same time as the first post spike pulse, and the MOS transistor 23 in the load storage unit 14 is in the period when the bit line potential difference ⁇ VB is positive. , 24 are turned on respectively.
- the potential of the bit line BL is higher than that of the bit line BLB, so that the write current is changed from the bit line BL to the MOS transistor 23, MTJ element 31, MTJ element 33, and MOS. It flows through the transistor 24 and reaches the bit line BLB.
- the MTJ element 31 has a high resistance
- the MTJ element 33 has a low resistance.
- the synapse circuit 11 is in a state of storing the first coupling load.
- the MOS transistor 25 When the pulse time difference ⁇ T is equal to or less than the specified time Tw and the first pre-spike pulse precedes the first post-spike pulse, the MOS transistor 25 is turned on at the same time as the MOS transistors 23 and 24.
- the voltage of the power supply line PL is set to about
- the write current flows, and the first coupling load is stored by the MTJ elements 31 and 33.
- the output of the second post-spike pulse is started at the same time as the first post-spike pulse, and has the same pulse width as the specified time Tw. Therefore, as shown in FIG. 7, when the first pre-spike pulse is input to the synapse circuit 11 within the period from the output of the first post-spike pulse to the elapse of the specified time Tw, The first pre-spike pulse is input to the selection unit 15 of the synapse circuit 11 during the input of the second post-spike pulse. As a result, since the selection signal is output from the selection unit 15 to the load storage unit 14 almost at the same time as the first pre-spike pulse, the MOS in the load storage unit 14 is in the period when the bit line potential difference ⁇ VB is negative. Transistors 23 and 24 are turned on, respectively.
- the potential of the bit line BLB is higher than that of the bit line BL, so that the write current is changed from the bit line BLB to the MOS transistor 24, MTJ element 33, MTJ element 31, and MOS. It flows through the transistor 23 and reaches the bit line BL.
- the MTJ element 31 has a low resistance
- the MTJ element 33 has a high resistance.
- the synapse circuit 11 is in a state of storing the second coupling load.
- the first post-spike pulse When the first pre-spike pulse exceeds the time Tw with respect to the first post-spike pulse, the first post-spike pulse is input to the selection unit 15 in which the second pre-spike pulse is not input. Will be done. Further, when the first post-spike pulse is preceded by the first pre-spike pulse beyond the time Tw, the first pre-spike pulse is input to the selection unit 15 in which the second post-spike pulse is not input. Will be done. In these cases, since the selection signal is not generated, the load storage unit 14 does not write the combined load.
- each synapse circuit 11 When the coupling load of each synapse circuit 11 is rewritten as described above and the first pre-spike pulse is input after the rewriting, the voltage signal Vpre corresponding to the new coupling load is transmitted to the neuron circuit 17 in the same manner as described above. Output. Further, when the potential of the floating gate FG reaches the threshold value, the neuron circuit 17 outputs the first post-spike pulse and the second post-spike pulse in the same manner as described above. Then, in each synapse circuit 11, when the first pre-spike pulse is input within each period of the time Tw before and after the timing at which the first post-spike pulse is input, the coupling load is rewritten again. As described above, the coupling load of each synapse circuit 11 is updated, and the final one is held in each synapse circuit 11.
- the magnetization state of the MTJ elements 31 and 33 is changed by passing a write current, but the time required for the MTJ elements 31 and 33 to change between the parallel state and the antiparallel state. Since the rewriting time (hereinafter referred to as rewriting time) is very short, high-speed operation is possible. For example, the rewriting time of the MTJ elements 31 and 33 is about 1/10 of that of the ReRAM.
- the neural network circuit device 10 can operate at high speed and with low power in both the cognitive mode and the learning mode, and has a more optimal configuration. Further, when the first pre-spike pulse precedes the first post-spike pulse in the time window that allows the writing of the coupling load, the second pre-spike pulse from the input circuit 20a as the first time window pulse When the first post-spike pulse precedes the first pre-spike pulse, the second post-spike pulse from the neuron circuit 17 as the second time window pulse is used to define each of them, and the coupling load is specified. When the first pre-spike pulse precedes the first post-spike pulse, the write timing is controlled by using the first post-spike pulse from the neuron circuit 17 as the first write control pulse.
- the first post-spike pulse precedes the pre-spike pulse it is specified by using the first pre-spike pulse from the input circuit 20a as the second write control pulse, so that the synapse circuit based on STDP is used. Can be easily driven. As a result, driving based on STDP can be realized with a simple circuit configuration.
- the coupling load stored in the synaptic circuit is a binary one that is either a first coupling load having a relatively large weight and a second coupling load having a small weight, or any of three or more coupling loads having different weights. It may be a multi-valued one.
- each synapse circuit is provided with a plurality of storage units (for example, M) including a load storage unit and a selection unit, and each load storage unit is described above. Similarly, it is configured to store either the first coupling load or the second coupling load, respectively.
- the pulse widths of the second post-spike pulses input to each selection unit in one synaptic circuit are set to be different from each other within the time Tw (Tw is the specified time), and similarly, the pulse width of the second pre-spike pulse is set to the time. It shall be different from each other within Tw (Tw is a specified time).
- Tw is the specified time
- one synapse circuit stores the first coupling load in 0 to M load storage units (the second coupling load is stored in the load storage unit that does not store the first coupling load). It is possible to store M + 1 type of coupling load corresponding to the above.
- each load storage unit outputs a voltage or current corresponding to the stored coupling load to the main body unit when the first pre-spike pulse as an input signal is output.
- each voltage or each current corresponding to the coupling load stored in each load storage unit is output to the main body unit. Since the main body operates based on the sum of each input voltage or each current, each voltage or each current from one synapse circuit also operates based on the sum of them, and as a result, the synapse
- the coupling load of any of the M + 1 types of coupling loads stored in the circuit is output to the main body.
- the time window is controlled only by the signal from the pre-neuron circuit side, and the connection load writing timing is controlled only by the signal from the post-neuron circuit side.
- substantially the same constituent members are designated by the same reference numerals, and the detailed description thereof will be omitted.
- the neural network circuit device 60 according to the second embodiment has the same configuration as the neural network circuit device according to the first embodiment, but is not provided with the first and second post-spike lines.
- the main body 18 of the neuron circuit 17 sends the first post spike only to the synaptic circuit provided between the first post spike and the neuron circuit of the next stage.
- the main body 18 does not output the second post spike.
- the bit line driver 19 controls the potentials of the bit lines BL and BLB in the learning mode, and at the same time as the first post spike pulse, the bit line potential difference ⁇ VB takes about the same time as the pulse width of the first post spike pulse. Is positive in a pulse shape, and the bit linear potential difference ⁇ VB is made negative in a pulse shape at approximately the same time as the pulse width of the first post spike pulse after a lapse of time Tw from the generation of the first post spike pulse.
- the positive change in the pulsed bit line potential difference ⁇ VB is the first write pulse
- the negative change in the pulsed bit line potential difference ⁇ VB functions as the second write pulse.
- the synapse circuit 11 is composed of only the load storage unit 64, and the load storage unit 64 includes a power supply line PL, a source line SL, a bit line BL, BLB, a pre-spiked line PrL, and a word line WL. It is connected.
- the gates of the MOS transistors 23 and 24 constituting the load storage unit 64 are connected to the word line WL. Therefore, the MOS transistors 23 and 24 are turned on while the second pre-spike pulse is being output.
- the configuration of the load storage unit 64 is the same as that of the load storage unit of the first embodiment except for the connection of these MOS transistors 23 and 24.
- the operation of the load storage unit 64 and the operation of the neural network circuit device 60 in the cognitive mode are the same as those in the first embodiment.
- the second pre-spike pulse from the input circuit as the pre-neuron circuit precedes the first post-spike pulse and the first pre-spike pulse is preceded by the first pre-spike pulse.
- a time window is specified when the first post-spike pulse precedes the pre-spike pulse. Therefore, in this example, the second pre-spike pulse is the common time window pulse.
- the bit line potential difference ⁇ VB is substantially equal to the pulse width of the first post-spike pulse by the bit line driver 19. It is positive for the same amount of time, and then "0V".
- the bit line potential difference ⁇ VB is negative for approximately the same time as the pulse width of the first post-spike pulse, and then is set to “0V”.
- the pulse width of the second pre-spike pulse output at the same time as the first pre-spike pulse is the time Tw. Therefore, for example, as shown in FIG. 10, when the first pre-spike pulse precedes the first post-spike pulse and their pulse time difference ⁇ T is within the specified time Tw, the second pre-spike While the MOS transistors 23 and 24 are turned on by the pulse, the bit line potential difference ⁇ VB becomes positive. As a result, the write current flows from the bit line BL through the MOS transistor 23, the MTJ element 31, the MTJ element 33, and the MOS transistor 24 to the bit line BLB. As a result, the MTJ element 31 has a high resistance, the MTJ element 33 has a low resistance, and the load storage unit 64 is in a state of storing the first coupling load.
- the pulse width of the second pre-spike pulse output at the same time as the first pre-spike pulse is the time Tw
- the bit line potential difference ⁇ VB becomes negative with a delay of the time Tw from the first post-spike pulse. Therefore, for example, as shown in FIG. 11, when the first post-spike pulse precedes the first pre-spike pulse and their pulse time difference ⁇ T is within the specified time Tw, the second pre-spike While the MOS transistors 23 and 24 are turned on by the pulse, the bit line potential difference ⁇ VB becomes negative.
- the write current flows from the bit line BLB through the MOS transistor 24, the MTJ element 33, the MTJ element 31, and the MOS transistor 23 to the bit line BL.
- the MTJ element 31 has a low resistance
- the MTJ element 33 has a high resistance
- the synaptic circuit 11 stores the second coupling load.
- the bit line potential difference ⁇ VB becomes positive or negative outside the period during which the second pre-spike pulse is input to the load storage unit 64. Therefore, in this case, the load storage unit 64 does not perform the writing operation of the combined load.
- the time window that allows the writing of the coupling load is defined by using the second pre-spike pulse from the input circuit 20a as the common time window pulse, and the control of the writing timing of the coupling load is controlled. Since it is specified by using a positive change of the pulse-shaped bit line potential difference ⁇ VB as one write pulse and a negative change of the pulse-like bit line potential difference ⁇ VB as the second write pulse, it is a synapse circuit based on STDP. Can be easily driven. In addition, driving based on STDP can be realized with a simple circuit configuration.
- the time window is controlled only by the signal from the post-neuron circuit side, and the connection load writing timing is controlled only by the signal from the pre-neuron circuit side. is there.
- the changes in the bit line potential difference ⁇ VB by the bit line driver and the pulse width of the second pre-spiked pulse are different from each other, as in the second embodiment. 8 and 9 are referred to as synaptic circuits, substantially the same constituent members are designated by the same reference numerals, and detailed description thereof will be omitted.
- the input circuit 20a of the neural network circuit device 60 outputs the second pre-spike pulse with a delay of time Tw from the first pre-spike pulse, as shown in FIGS. 12 and 13.
- the second pre-spike pulse has the same pulse width as the first pre-spike pulse.
- the second pre-spike pulse is a common write pulse when the first pre-spike pulse precedes the first post-spike pulse and when the first post-spike pulse precedes the first pre-spike pulse.
- the bit line driver 19 sets the bit line potential difference ⁇ VB to a positive pulse shape almost at the same time as the first post spike pulse, continues this bit line potential difference ⁇ VB for a period of time Tw, and then bits.
- the linear potential difference ⁇ VB is continuously pulsed negative for a period of time Tw.
- the pulse-like change of the positive bit line potential difference ⁇ VB is the first time window pulse
- the pulse-like change of the negative bit line potential difference ⁇ VB is the second time window pulse.
- the second pre-spike pulse is output with a delay of time Tw with respect to the first pre-spike pulse, and the bit line potential difference ⁇ VB becomes positive almost at the same time as the first post-spike pulse, and the positive bit thereof.
- the linear potential difference ⁇ VB is continued for the time Tw. Therefore, for example, as shown in FIG. 12, when the first pre-spike pulse precedes the first post-spike pulse and their pulse time difference ⁇ T is within the specified time Tw, the bit line potential difference ⁇ VB.
- the MOS transistors 23 and 24 are turned on by the second pre-spike pulse.
- the MTJ element 31 has a high resistance
- the MTJ element 33 has a low resistance
- the load storage unit 64 is in a state of storing the first coupling load.
- the second pre-spike pulse is output with a delay of time Tw with respect to the first pre-spike pulse, and the bit linear potential difference ⁇ VB becomes negative with a delay of time Tw from the first post-spike pulse.
- the bit line potential difference ⁇ VB of is continued for the time Tw. Therefore, for example, as shown in FIG. 13, when the first post-spike pulse precedes the first pre-spike pulse and their pulse time difference ⁇ T is within the specified time Tw, the bit line potential difference ⁇ VB.
- the MOS transistors 23 and 24 are turned on by the second pre-spike pulse.
- the MTJ element 31 has a low resistance
- the MTJ element 33 has a high resistance.
- the synapse circuit 11 is in a state of storing the second coupling load.
- the third embodiment also makes it possible to simplify the driving of the synaptic circuit based on the STDP as in the second embodiment.
- driving based on STDP can be realized with a simple circuit configuration.
- the synaptic circuit is composed of a plurality of load storage units, and the coupling load stored in the synaptic circuit is stepwise according to the pulse time difference between the first post-spike pulse and the first pre-spike pulse. It is something to change.
- the synaptic circuit 11 has a plurality of load storage units 64A to 64D arranged in the column direction, and in this example, four load storage units 64A to 64D.
- the load storage units 64A to 64D have the same configuration as the load storage units 64 (see FIG. 9) of the third embodiment, and are similarly connected to the bit line BL, BLB, the pre-spike line PrL, the word line WL, and the output line OL. Has been done. Further, the power line and the source line are also connected in the same manner, but they are omitted in FIG.
- the load storage units 64A to 64D are connected to the common bit lines BL and BLB, but the pre-spike line PrL and the word line WL are connected to lines different from each other. Further, the output lines OL from the load storage units 64A to 64D are each connected to the neuron circuits 17 in the same row.
- the input circuit 20a has delay circuits 66a to 66d corresponding to the load storage units 64A to 64D of the synapse circuit 11, and is connected to the corresponding load storage units 64A to 64D via the word line WL.
- the first pre-spike pulse is input, and the input first pre-spike pulse is delayed by a preset delay time, and the second to fifth pre-spike pulses (hereinafter, these are distinguished). If not, it is called a delayed pre-spike pulse) is output to the corresponding word line WL.
- each of the second to fifth pre-spike pulses is a common write pulse.
- the delay circuits 66a to 66d are set with different delay times.
- the delay time of the delay circuit 66a is 1 / 4Tw
- the delay time of the delay circuit 66b is 1 / 2Tw
- the delay time of the delay circuit 66c is 3/4Tw
- the delay time of the delay circuit 66d is Tw. Is set in 1/4 Tw steps.
- the delay time can be set as appropriate, and for example, the delay time may be set so as to increase non-linearly (unequal intervals).
- the fourth pre-spike pulse delayed by 3/4 Tw and the fifth pre-spike pulse delayed by the delay time Tw are generated.
- the above delay time is an example, and the delay time can be set as appropriate.
- the delay time may be set to increase non-linearly (unequal intervals).
- the value S is set as an integer of 2 or more, the delay time is 1 / S ⁇ Tw, 2 / S ⁇ Tw, ..., (S-1) / S ⁇ Tw, Tw, and the value S is arbitrarily set. May be good.
- the second to fifth pre-spike pulses having different delay times that is, mutual time differences from the first pre-spike pulse are output from the input circuit 20a to the corresponding word line WL.
- the load storage unit 64A has the second pre-spike pulse
- the load storage unit 64B has the third pre-spike pulse
- the load storage unit 64C has the fourth pre-spike pulse
- the load storage unit 64D has the fourth pre-spike pulse. 5 Pre-spike pulses are input at different timings.
- the number of load storage units in the synaptic circuit 11 to which the spike pulse is input increases stepwise. Therefore, in this case, as the pulse time difference ⁇ T becomes smaller, the number of load storage units in which the first coupling load is written in the synapse circuit 11 increases stepwise.
- the bit linear potential difference ⁇ VB is positive in the range in which the first pre-spike pulse precedes the first post-spike pulse and the pulse time difference ⁇ T is less than or equal to the time Tw and larger than 3/4 Tw.
- the fifth pre-spike pulse is input to the load storage unit 64D, and the first coupling load is written to the load storage unit 64D.
- the second to fourth pre-spike pulses are input to the load storage units 64A to 64C before the bit line potential difference ⁇ VB becomes positive, the combined load of the load storage units 64A to 64C is not rewritten.
- the bit line potential difference is in the range in which the first pre-spike pulse precedes the first post-spike pulse and the pulse time difference ⁇ T is larger than 1 / 2Tw and 3/4Tw or less.
- the fourth and fifth pre-spike pulses are input to the load storage units 64C and 64D during the period when ⁇ VB is positive. Therefore, the first coupling load is written in the load storage units 64C and 64D, respectively.
- the second and third pre-spike pulses are input to the load storage units 64A to 64B before the bit line potential difference ⁇ VB becomes positive, the combined load of the load storage units 64A and 64B cannot be rewritten. ..
- the first coupling load is written in the load storage units 64B to 64D, respectively, and the coupling load of the load storage unit 64A is not rewritten. Further, in the range where the pulse time difference ⁇ T is 1/4 Tw or less, the first coupling load is written in each of the load storage units 64A to 64D.
- the pulse time difference ⁇ T is less than or equal to the time Tw
- the number of load storage units in the synaptic circuit 11 to which the second to fifth pre-spike pulses are input increases. Further, in this case, as the pulse time difference ⁇ T increases significantly, the load memory in the synapse circuit 11 to which the second to fifth pre-spiked pulses are input during the period when the bit line potential difference ⁇ VB is positive The number of parts decreases.
- the second coupling load in the synapse circuit 11 is written in the range in which the first post-spike pulse precedes the first pre-spike pulse and the pulse time difference ⁇ T exceeds the specified time Tw and reaches the time 2Tw.
- the number of load storage units decreases stepwise, and the number of load storage units whose combined load cannot be rewritten increases stepwise.
- the combined load of the load storage units 64A to 64D is not rewritten in the range in which the first post-spike pulse precedes the first pre-spike pulse and the pulse time difference ⁇ T exceeds the time 2Tw.
- the main body 18 of the neuron circuit 17 refers to the sum of the voltage levels of the voltage signals Vpre output from each load storage unit of each synaptic circuit 11. Therefore, paying attention to one synapse circuit 11, the main body 18 refers to the sum of the voltage levels of the voltage signals Vpre output from the load storage units 64A to 64D in the one synapse circuit 11. become. Therefore, substantially, the synapse circuit 11 produces a weighted pre-spike pulse determined by the number of load storage units that store the first coupling load and the number of load storage units that store the second coupling load. It will be output to the neuron circuit 17.
- the weighted pre-spike pulse is weighted more as the number of load storage units that store the first coupling load increases, and as the number of load storage units that store the second coupling load increases, the weight is increased. Since a small weight is applied, a multi-valued coupling load can be stored in the synapse circuit 11.
- the first coupling load and the second coupling load in the synaptic circuit 11 are written by the pre-post relationship of the first post-spike pulse and the first pre-spike pulse and the pulse time difference ⁇ T.
- the number of load storage units can be changed step by step.
- the change mode can be easily changed by adjusting the delay time of the second to fifth pre-spike pulses, which are the common write pulses.
- first period the period in which the bit linear potential difference ⁇ VB is positive
- second period the period in which the bit linear potential difference ⁇ VB is negative
- first period the period in which the bit linear potential difference ⁇ VB is positive
- second period the period in which the bit linear potential difference ⁇ VB is negative
- first period the period in which the bit linear potential difference ⁇ VB is positive
- second period the period in which the bit linear potential difference ⁇ VB is negative
- Tw the specified time
- the length of the first period and the specified time may be the same, and these may be different from the length of the second period
- the length of the second period and the specified time may be the same
- these and the length of the first period may be the same. May be different from.
- the lengths of the first period and the second period may be the same, and these may be different from the specified time Tw, and the length of the first period, the length of the second period, and the specified time Tw may be different from each other. It may be a thing.
- the number of load storage units in which delayed pre-spike pulses having different delay times are input is set to one in one synapse circuit, but a part or all of them may be a plurality. Further, the amount of change in the coupling load based on the pulse time difference ⁇ T is different by changing the number of load storage units to which the delayed pre-spike pulse is input and the delay time for each delay time of the delayed pre-spike pulse. You can also do it. In this case, for example, the number of load storage units in one synapse circuit is increased as the delay pre-spike pulse with a smaller delay time is input. It is also preferable that the number of load storage units to which the delay pre-spike pulse of each delay time is input and the delay time can be arbitrarily set (programmable), and these are appropriately set in advance to operate the neural network circuit device.
- Each row of a plurality of synaptic circuits arranged in a matrix is provided with a delay circuit for generating a delayed pre-spiked pulse by delaying the first pre-spiked pulse with an arbitrarily set delay time as described above, and one. If the circuit configuration is such that the line (delay circuit) to be assigned to the input circuit can be set arbitrarily, the number of load storage units and the delay time of each synapse circuit can be adjusted arbitrarily, and various synapse circuits can be driven based on STDP. Can be realized.
- a pulsed writing current is passed once to the load storage unit between the pair of bit lines, but in one coupling load writing operation.
- the write current may be passed a plurality of times in a pulse shape.
- writing may not be performed correctly even if a writing current is applied.
- the writing current by applying the writing current a plurality of times in this way, the coupling load can be reliably written. ..
- a plurality of pulses first pre-spiked pulse, first post-spiked pulse, pulse-like change in bit line potential
- the configuration of the load storage unit in each of the above examples is an example, and is not particularly limited thereto.
- the load storage unit of each of the above examples has a configuration in which a pair of inverters including an MTJ element are cross-coupled, but for example, a circuit configuration using only one MTJ element may be used.
- the load storage unit is composed of a two-terminal MTJ element of the spin injection magnetization reversal (STT) method, but the method of magnetization reversal of the MTJ element, the number of terminals, etc. are limited to this. Not done.
- STT spin injection magnetization reversal
- SOT Spin Orbital Torque
- the load storage unit 70 shown in FIG. 16 is a configuration example using one MTJ element 71.
- the load storage unit 70 is provided with an MTJ element 71 and MOS transistors 72 and 73, which are N-type MOSFETs.
- the MTJ element 71 has a structure in which the magnetization fixing layer 71a and the magnetization free layer 71b are laminated with the insulating film 71c interposed therebetween.
- the load storage unit 70 stores the magnitude of the coupling load depending on the height of the resistance of the MTJ element 71 (the direction of magnetization of the magnetization free layer 71b).
- the antiparallel state of the MTJ element 71 is the first coupling load
- the parallel state is the second coupling load.
- the magnetization fixed layer 71a is connected to the power supply line PL via the MOS transistor 72, and the magnetization free layer 71b is connected to the source line SL.
- the gate of the MOS transistor 72 is connected to the pre-spiked wire PrL, and the connection node between the MTJ element 71 and the MOS transistor 72 is grounded via the MOS transistor 73.
- the gate of the MOS transistor 73 is connected to the second post spike wire POLb.
- One electrode of the capacitor 36 is connected to a connection node between the MTJ element 71 and the MOS transistor 72. As a result, the potential (voltage) corresponding to the resistance value of the MTJ element 71 is output to the output line OL as a voltage signal Vpre via the capacitor 36.
- the first pre-spike pulse is highly active.
- the potential of the source line SL is controlled by the input circuit 20a.
- the potential of the source line SL is set to the ground level (0V) in the cognitive mode.
- the potential of the source line SL is normally set to the ground level, but is changed in synchronization with the output of the first pre-spike pulse.
- the potential of the source line SL is positive in the period of time Tw from the time when the first pre-spike pulse falls, that is, the potential of the source line SL is raised above the ground level, and in the subsequent period of time Tw, the potential of the source line SL becomes positive. Negative, that is, below the ground level.
- the magnitude (absolute value) of the potential of the source line SL with respect to the ground level at this time is determined so that the write current required to change the magnetization state of the MTJ element 71 can be passed through the MTJ element 71. ..
- the second post-spike pulse from the neuron circuit 17 is supplied to the second post-spike line POLb.
- the second post-spike pulse is generated in the neuron circuit 17 as having a pulse width equal to, for example, the first post-spike pulse, which is delayed by a time Tw from the first post-spike pulse.
- the first post-spike pulse is not supplied to the synapse circuit 11.
- the input circuit 20a makes the potential of the source line SL positive for the time Tw immediately after outputting the first pre-spike pulse, and makes the potential of the source line SL negative during the subsequent time Tw.
- the neuron circuit 17 outputs the first post-spike pulse
- the neuron circuit 17 outputs the second post-spike pulse with a delay of time Tw from the first post-spike pulse.
- the second post spike pulse turns on the MOS transistor 73, and the MTJ element 71 is connected between the source line SL and the ground.
- the second post-spike occurs when the potential of the source line SL is positive.
- the pulse is input to the load storage unit 70. Therefore, when the MOS transistor 73 is turned on, a write current flows from the source line SL toward the MTJ element 71, and the MTJ element 71 is in an antiparallel state. Therefore, the first coupling load is written in the load storage unit 70.
- the second post-spike pulse is when the potential of the source line is negative. Is input to the load storage unit 70. Therefore, when the MOS transistor 73 is turned on, a write current flows from the MTJ element 71 toward the source line SL, and the MTJ element 71 is in a parallel state. Therefore, the second coupling load is written in the load storage unit 70.
- the load storage unit 80 shown in FIG. 17 has a configuration using a three-terminal type MTJ element 81.
- the MTJ element 81 has a structure in which a laminated body in which a magnetization fixed layer 81a and a magnetization free layer 81b are laminated with an insulating film 81c interposed therebetween is provided on a channel layer 81d.
- the laminate is laminated in the order of the magnetization free layer 81b, the insulating film 81c, and the magnetization fixing layer 81a from the channel layer 81d side.
- the magnetization fixed layer 81a and the magnetization free layer 81b are formed of a ferromagnetic material.
- the insulating film 81c is formed of a non-magnetic insulator.
- the channel layer 81d is a conductive layer containing an antiferromagnetic material, and is formed in a plate shape extending in one direction.
- a laminate is provided at the center of one surface of the channel layer
- the magnetization fixed layer 81a is fixed in the direction of magnetization in one direction perpendicular to the film surface (vertical direction in FIG. 17), and the magnetization free layer 81b is easily magnetized in the direction perpendicular to the film surface.
- the direction of magnetization can be changed to either a parallel state in the same direction as the magnetization fixed layer 81a or an antiparallel state in the opposite direction.
- the MTJ element 81 can change the magnetization direction of the magnetization free layer 81b by the action of spin-orbit torque generated by passing a write current in the extending direction of the channel layer 81d, and can change the magnetization direction of the magnetization free layer 81b by the write current. It can be according to the direction of.
- the magnetization direction of the magnetization fixed layer 81a and the magnetization free layer 81b may be parallel to the film surface.
- the MTJ element 81 is connected to each part by using the upper surface of the magnetization fixing layer 81a (the surface opposite to the surface on which the insulating film 81c is formed) and one end and the other end of the channel layer 81d in the extending direction as terminals, respectively. ing.
- the upper surface of the magnetization fixing layer 81a is connected to the power supply line PL via the MOS transistor 82, one end of the channel layer 81d is grounded via the MOS transistor 83, and the other end is connected to the source line SL. There is.
- the MOS transistors 82 and 83 are connected to the pre-spike wire PrL and the second post-spike wire POLb, similarly to the MOS transistors 72 and 73 in the example of FIG. Further, the control of the potential of the source line SL and the generation timing of the second post spike pulse are the same as in the example of FIG.
- the MTJ element 81 applies a read-out voltage to the laminate and allows a read-out current in a direction penetrating the laminate to flow, and the high or low resistance of the MTJ element 81 (laminate) can be determined from the read-out voltage and the read-out current. ..
- the voltage signal Vpre of the voltage corresponding to the magnetization state (resistance value) of the MTJ element 81 is taken out. Specifically, the potential on the upper surface of the magnetization fixed layer 81a when the MOS transistor 82 is turned on is output to the output line OL as a voltage signal Vpre via the capacitor 36.
- the second post-spike pulse is input to the load storage unit 80 during the period when the potential of the source line SL is controlled to be positive or negative.
- the direction of the write current flowing through the channel layer 81d changes.
- the MTJ element 81 has the first post-spike.
- the magnetized state is set according to the relationship between the pulse and the first pre-spike pulse.
- the coupling load can be written to the synapse circuit 11 according to the pre-sequential of the first post-spike pulse and the first pre-spike pulse.
- the change in the potential of the source line that changes in a pulse shape higher than the ground level is the first time window pulse, and changes in a pulse shape lower than the ground level.
- the change in the potential of the source line is the second time window pulse.
- the second post spike pulse is a common write pulse.
- the storage element that non-volatilely stores the coupling load is not limited to the MTJ element.
- a storage element one that stores data by utilizing the difference in electrical resistance can be preferably used.
- a phase used in a phase change memory PCRAM: Phase Change Random Access Memory
- PCRAM Phase Change Random Access Memory
- Examples include a resistance changing element used for a changing element, ReRAM (Resistive RAM, Resistive Random Access Memory), and changing the resistance value of the oxide layer of the load storage unit by applying a voltage pulse.
- a ferroelectric memory element having a ferroelectric capacitor used for a ferroelectric memory can also be used.
- other binary non-volatile storage elements for example, NAND / NOR type flash memory elements can also be used.
- the coupling load is stored non-volatilely as the load storage unit, but a volatile circuit that stores the coupling load only while power is being supplied, such as SRAM and DRAM. Available for configuration.
- the load storage unit 90A shown in FIG. 18 cross-couples an inverter 21A composed of MOS transistors 91a and MOS transistors 91b connected in series and an inverter 22A composed of MOS transistors 92a and MOS transistors 92b connected in series. It has a circuit configuration similar to that of an SRAM. It is the same as the second embodiment or the third embodiment except that the details will be described below.
- the MOS transistors 91a and 92a as drive transistors are N-type MOSFETs, and the MOS transistors 91b and 92b as load transistors are P-type MOSFETs.
- the sources of the MOS transistors 91b and 92b are directly connected to the power supply line PL, and the sources of the MOS transistors 91a and 92a are connected to the source line SL.
- power is continuously supplied to the inverters 21A and 22A to maintain the coupling load.
- the coupling load is held as an on / off combination of the MOS transistors 91a and 91b (or the MOS transistors 91b and 92b).
- connection node SN to which the drains of the MOS transistors 91a and 91b are connected is connected to the bit line BL via the MOS transistor 23 and is also connected to the gates of the MOS transistors 92a and 92b of the inverter 22A.
- the connection node SNB to which the drains of the MOS transistors 92a and 92b are connected is connected to the bit line BLB via the MOS transistor 24 and is also connected to the gates of the MOS transistors 91a and 92a of the inverter 21A.
- a switch unit 93 is provided together with the capacitor 36 as an output circuit unit.
- the capacitor 36 and the switch unit 93 are connected in series, and one end of the capacitor 36 is connected to the connection node SNB via the switch unit 93.
- the switch unit 93 is turned on when the first pre-spike pulse is input, and is connected to the pre-spike line PrL.
- a voltage signal Vpre corresponding to the coupling load stored in the load storage unit 90A is output from the other end of the capacitor 36.
- the switch unit 93 preferably has a circuit configuration using, for example, CMOS, which has characteristics close to an ideal switch in which the on resistance when on is 0 ⁇ and the off resistance when off is infinite.
- connection node SNB becomes L level (0V) and a 0V voltage signal is output. Will be done.
- MOS transistor 91a is on (MOS transistor 91b is off) and the MOS transistor 92a is off (MOS transistor 92b is on)
- the connection node SNB becomes H level and a relatively high voltage signal is output.
- the second post-spike pulse is generated as in the second embodiment or the third embodiment, and the first coupling load or the first coupling load or by switching the potentials of the bit lines BL and BLB. Controls the writing of the second coupling load.
- the potentials of the bit line BL and BLB instead of the positive and negative of the bit line potential difference ⁇ VB, the bit line BL is at H level and the bit line BLB is at L level, and the bit line BL is at L level and the bit line BLB is at H level. Change to state.
- bit line BL when writing the first coupling load, the bit line BL is set to L level and the bit line BLB is set to H level, and when writing the second coupling load, the bit line BL is set to H level and the bit line BLB is set to L level. And.
- a resistance element 96 may be used instead of each load transistor as in the load storage unit 90B shown in FIG.
- the output circuit unit of the load storage unit 64 is configured to output a current signal as a weighted pre-spike pulse.
- the output circuit section is composed of a MOS transistor 98 made of a P-type MOSFET. Therefore, a MOS transistor 98 is provided in place of the capacitor 36 (see FIG. 9).
- the source is connected to the connection node SNB and the drain is connected to the output line OL.
- the gate of the MOS transistor 98 is connected to the pre-spike wire PrL.
- the MOS transistors 25 and 98 are turned on in response to the first pre-spike pulse, so that the current signal Ipre corresponding to the coupling load stored in the load storage unit 97 can be output.
- the neuron circuit may be provided with a circuit that integrates the current.
- the output circuit unit of the load storage unit 14 described above is configured to output the current signal Ipre.
- the example shown in FIG. 22 has a configuration in which the output circuit unit of the load storage unit 70 and the example shown in FIG. 23 have a configuration in which the output circuit unit of the load storage unit 80 outputs a current signal Ipre. ..
- the MOS transistor 98A which is an N-type MOSFET, is used as the output circuit unit because the first pre-spike pulse is highly active.
- Neural network circuit device 11 Synapse circuit 14, 64, 64A to 64D, 70, 80, 90A, 90B Load storage 17 Neuron circuit 20a Input circuit 31, 33, 71, 81 MTJ element 66a to 66d Delay circuit
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Physics & Mathematics (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Power Engineering (AREA)
- Neurology (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Ceramic Engineering (AREA)
- Semiconductor Memories (AREA)
- Read Only Memory (AREA)
Abstract
Description
図1において、第1実施形態に係るニューラルネットワーク回路装置10は、複数のシナプス回路11がマトリクス状に配列されている。各シナプス回路11は、荷重記憶部14と選択部15とをそれぞれ有している。また、ニューラルネットワーク回路装置10には、複数のニューロン回路17が設けられており、各々のニューロン回路17に対応して複数のシナプス回路11が設けられている。この例では、シナプス回路11の各列16に、その列方向(図1の上下方向)の端部にニューロン回路17がそれぞれ設けられており、1個のニューロン回路17に1列分のシナプス回路11が対応する。ニューロン回路17は、本体部18とビット線ドライバ19とを有している。
第2実施形態は、時間窓の制御をプレニューロン回路側からの信号だけで行い、結合荷重の書き込みタイミングの制御をポストニューロン回路側からの信号だけで行うものである。なお、以下に詳細を説明する他は、第1実施形態と同様であり、実質的に同じ構成部材には同一の符号を付して、その詳細な説明を省略する。
第3実施形態は、第2実施形態とは逆に時間窓の制御をポストニューロン回路側からの信号だけで行い、結合荷重の書き込みタイミングの制御をプレニューロン回路側からの信号だけで行うものである。なお、以下に詳細を説明するように、ビット線ドライバによるビット線電位差ΔVBの変化と、第2プレスパイクパルスのパルス幅が異なる他は、第2実施形態と同様であり、ニューラルネットワーク回路装置及びシナプス回路として図8、図9を参照し、実質的に同じ構成部材には同一の符号を付して、その詳細な説明を省略する。
第4実施形態は、シナプス回路を複数の荷重記憶部で構成し、第1ポストスパイクパルスと第1プレスパイクパルスとのパルス時間差に応じて、シナプス回路が記憶している結合荷重を段階的に変化させるものである。なお、以下に詳細を説明する他は、第3実施形態と同様であり、実質的に同じ構成部材には同一の符号を付して、その詳細な説明を省略する。
11 シナプス回路
14、64、64A~64D、70、80、90A、90B 荷重記憶部
17 ニューロン回路
20a 入力回路
31、33、71、81 MTJ素子
66a~66d 遅延回路
Claims (10)
- 第1結合荷重または第2結合荷重のいずれか一方をシナプス結合荷重として記憶する荷重記憶部を有し、プレニューロン回路とポストニューロン回路との間に接続され、前記プレニューロン回路から入力されるプレスパイクパルスに前記シナプス結合荷重で重み付けをした重み付けプレスパイクパルスを前記ポストニューロン回路に出力するとともに、前記プレスパイクパルスと前記ポストニューロン回路が出力するポストスパイクパルスの先後及びパルス時間差に基づいて前記シナプス結合荷重を書き込むシナプス回路の駆動方法において、
前記プレニューロン回路と前記ポストニューロン回路とのいずれか一方から、前記プレスパイクパルスが前記ポストスパイクパルスに対して先行する場合についての、前記荷重記憶部に前記シナプス結合荷重の書き込みを許容する第1時間窓を規定する第1時間窓パルスを前記シナプス回路に入力し、他方から前記荷重記憶部に前記シナプス結合荷重の書き込みタイミングとなる、パルス幅が前記第1時間窓パルスよりも短い第1書き込みパルスを前記シナプス回路に入力し、
前記プレニューロン回路と前記ポストニューロン回路とのいずれか一方から、前記ポストスパイクパルスが前記プレスパイクパルスに対して先行する場合についての、前記荷重記憶部に前記シナプス結合荷重の書き込みを許容する第2時間窓を規定する第2時間窓パルスを前記シナプス回路に入力し、他方から前記荷重記憶部に前記シナプス結合荷重の書き込みタイミングとなる、パルス幅が前記第2時間窓パルスよりも短い第2書き込みパルスを前記シナプス回路に入力し、
前記第1時間窓パルスと前記第1書き込みパルスとが同時に前記シナプス回路に入力されているとき、及び前記第2時間窓パルスと前記第2書き込みパルスとが同時に前記シナプス回路に入力されているときに前記荷重記憶部が書き込み動作を行う
ことを特徴とするシナプス回路の駆動方法。 - 前記ポストニューロン回路から、前記ポストスパイクパルスに同期させて前記第2時間窓パルスを出力するとともに、前記ポストスパイクパルスを前記第1書き込みパルスとして前記シナプス回路に入力し、
前記プレニューロン回路から、前記プレスパイクパルスに同期させて前記第1時間窓パルスを出力するとともに、前記プレスパイクパルスを前記第2書き込みパルスとして前記シナプス回路に入力する
ことを特徴とする請求項1に記載のシナプス回路の駆動方法。 - 前記ポストニューロン回路によって書き込む前記シナプス結合荷重に対応した電位とされるビット線が前記荷重記憶部に接続されており、
前記プレニューロン回路から前記プレスパイクパルスに同期させて前記第1時間窓パルス及び前記第2時間窓パルスとなる1個の共通時間窓パルスを出力し、
前記ポストニューロン回路により、
前記第1書き込みパルスとして、前記ポストスパイクパルスに同期させて、前記ビット線の電位を前記第1結合荷重に対応した第1電位にパルス状に変化させ、この第1電位への変化から前記共通時間窓パルスで規定する時間窓の長さの経過後に、前記第2書き込みパルスとして、前記ビット線の電位を前記第2結合荷重に対応した第2電位にパルス状に変化させる
ことを特徴とする請求項1に記載のシナプス回路の駆動方法。 - 前記ポストニューロン回路によって書き込む前記シナプス結合荷重に対応した電位とされるビット線が前記荷重記憶部に接続されており、
前記ポストニューロン回路により、前記プレスパイクパルスに同期させて前記ビット線の電位を前記第1結合荷重に対応した第1電位にパルス状に変化させることで前記第1時間窓パルスを前記シナプス回路に入力してから、前記ビット線の電位を前記第2結合荷重に対応した第2電位にパルス状に変化させることで前記第2時間窓パルスを前記シナプス回路に入力し、
前記プレニューロン回路により、前記第1書き込みパルス及び前記第2書き込みパルスとなる1個の共通書き込みパルスを前記プレスパイクパルスから遅延させて出力する
ことを特徴とする請求項1に記載のシナプス回路の駆動方法。 - 前記シナプス回路は、前記荷重記憶部を複数有し、
前記荷重記憶部の各々に対して、前記プレスパイクパルスから互いに異なる遅延時間で遅延させた前記共通書き込みパルスを入力し、前記ポストスパイクパルスの先後及び前記パルス時間差に基づいて、前記第1結合荷重及び前記第2結合荷重を書き込む前記シナプス回路内の前記荷重記憶部の個数を変化させる
ことを特徴とする請求項4に記載のシナプス回路の駆動方法。 - 前記共通書き込みパルスの各々の遅延時間及び前記シナプス回路内の各遅延時間に対応する前記荷重記憶部の個数を予め設定することを特徴とする請求項5に記載のシナプス回路の駆動方法。
- 1個の前記荷重記憶部に対する1回の前記シナプス結合荷重の書き込みの際に、前記第1書き込みパルス及び前記第2書き込みパルスをそれぞれ前記シナプス回路に複数回入力することを特徴とする請求項1ないし3のいずれか1項に記載のシナプス回路の駆動方法。
- 1個の前記荷重記憶部に対する1回の前記シナプス結合荷重の書き込みの際に、前記共通書き込みパルスをそれぞれ前記シナプス回路に複数回入力することを特徴とする請求項4または5に記載のシナプス回路の駆動方法。
- 前記荷重記憶部は、クロスカップルされ、それぞれが直列接続されたインバータ用MOSトランジスタと磁気トンネル接合素子とからなる一対のインバータを有し、
前記プレスパイクパルスの入力に応答して、前記一対のインバータを作動させ、前記一対のインバータのうちの一方のインバータの出力端の電位に基づいて前記重み付けプレスパイクパルスを出力し、
書き込み動作の際に、前記シナプス結合荷重に基づいた書き込み電流を前記一対のインバータの各々の前記磁気トンネル接合素子にそれぞれ流し、前記磁気トンネル接合素子を互いに異なる磁化状態にする
ことを特徴とする請求項1に記載のシナプス回路の駆動方法。 - 前記荷重記憶部は、磁気トンネル接合素子の磁化状態により、前記シナプス結合荷重を不揮発的に記憶し、
前記プレスパイクパルスの入力に応答して、電源線と前記磁気トンネル接合素子とを接続することにより、磁化状態に応じた前記重み付けプレスパイクパルスを出力することを特徴とする請求項1に記載のシナプス回路の駆動方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/765,721 US20230013081A1 (en) | 2019-10-02 | 2020-10-01 | Driving method of synapse circuit |
JP2021551453A JPWO2021066100A1 (ja) | 2019-10-02 | 2020-10-01 | |
KR1020227014230A KR20220075366A (ko) | 2019-10-02 | 2020-10-01 | 시냅스 회로의 구동 방법 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019-182549 | 2019-10-02 | ||
JP2019182549 | 2019-10-02 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021066100A1 true WO2021066100A1 (ja) | 2021-04-08 |
Family
ID=75337032
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2020/037440 WO2021066100A1 (ja) | 2019-10-02 | 2020-10-01 | シナプス回路の駆動方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230013081A1 (ja) |
JP (1) | JPWO2021066100A1 (ja) |
KR (1) | KR20220075366A (ja) |
WO (1) | WO2021066100A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102571118B1 (ko) * | 2021-11-17 | 2023-08-25 | 한국과학기술연구원 | 뉴로모픽 장치 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013111200A1 (ja) * | 2012-01-23 | 2013-08-01 | パナソニック株式会社 | ニューラルネットワーク回路の学習方法 |
US20180107922A1 (en) * | 2016-10-14 | 2018-04-19 | Intel Corporation | Pre-synaptic learning using delayed causal updates |
WO2019189895A1 (ja) * | 2018-03-30 | 2019-10-03 | 国立大学法人東北大学 | ニューラルネットワーク回路装置 |
-
2020
- 2020-10-01 KR KR1020227014230A patent/KR20220075366A/ko unknown
- 2020-10-01 US US17/765,721 patent/US20230013081A1/en active Pending
- 2020-10-01 WO PCT/JP2020/037440 patent/WO2021066100A1/ja active Application Filing
- 2020-10-01 JP JP2021551453A patent/JPWO2021066100A1/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013111200A1 (ja) * | 2012-01-23 | 2013-08-01 | パナソニック株式会社 | ニューラルネットワーク回路の学習方法 |
US20180107922A1 (en) * | 2016-10-14 | 2018-04-19 | Intel Corporation | Pre-synaptic learning using delayed causal updates |
WO2019189895A1 (ja) * | 2018-03-30 | 2019-10-03 | 国立大学法人東北大学 | ニューラルネットワーク回路装置 |
Non-Patent Citations (1)
Title |
---|
TANAKA, HIDEKI ET AL.: "Evaluation of a CMOS Spiking Neural Network LSI with STDP Function", IEICE TECHNICAL REPORT, vol. 107, no. 328, 11 November 2007 (2007-11-11), pages 37 - 42, ISSN: 0913-5685 * |
Also Published As
Publication number | Publication date |
---|---|
JPWO2021066100A1 (ja) | 2021-04-08 |
US20230013081A1 (en) | 2023-01-19 |
KR20220075366A (ko) | 2022-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7216436B2 (ja) | ニューラルネットワーク回路装置 | |
US10388350B2 (en) | Memory system, semiconductor storage device, and signal processing system | |
JP4133149B2 (ja) | 半導体記憶装置 | |
KR100626505B1 (ko) | 프로그래머블 컨덕터 램 및 상기 프로그래머블 컨덕터램에 쓰는 방법 | |
US7382672B2 (en) | Differential and hierarchical sensing for memory circuits | |
US6842366B2 (en) | Thin film magnetic memory device executing self-reference type data read | |
TWI396198B (zh) | 使用相變材料記憶元件的非揮發性內容可定址記憶體 | |
US11651820B2 (en) | Fast read speed memory device | |
EP3136398B1 (en) | Ternary content addressable memory (tcam) with programmable resistive elements | |
TWI556243B (zh) | 儲存裝置及用於操作該儲存裝置之操作方法 | |
US10546623B2 (en) | Resistive memory device having memory cell array and system including the same | |
US11449740B2 (en) | Synapse circuit with memory | |
US9311999B2 (en) | Memory sense amplifiers and memory verification methods | |
JP5748877B1 (ja) | 抵抗変化型メモリ | |
KR102094551B1 (ko) | 저항변화형 메모리 디바이스 및 그 동작 방법 | |
US20200303003A1 (en) | Multiplier-accumulator | |
WO2021066100A1 (ja) | シナプス回路の駆動方法 | |
DE102021115236A1 (de) | Signalerhaltung im mram während des lesens | |
Shaarawy et al. | 2T2M memristor-based memory cell for higher stability RRAM modules | |
Levisse et al. | Resistive switching memory architecture based on polarity controllable selectors | |
DE102021115377A1 (de) | Signalverstärkung im mram während des lesens | |
US11984163B2 (en) | Processing unit with fast read speed memory device | |
El-Shaarawy | DESIGN AND ANALYSIS OF 2T2M RRAM-BASED MEMRISTOR | |
Sehgal et al. | Advancements in memory technologies for artificial synapses | |
KR20230065007A (ko) | 두 개의 트랜지스터로 구성된 메모리 셀, 이를 이용한 시냅스 셀과 뉴런 모방 셀 및 그 동작방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20872678 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2021551453 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 20227014230 Country of ref document: KR Kind code of ref document: A |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20872678 Country of ref document: EP Kind code of ref document: A1 |