WO2020188755A1 - 積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法 - Google Patents
積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法 Download PDFInfo
- Publication number
- WO2020188755A1 WO2020188755A1 PCT/JP2019/011504 JP2019011504W WO2020188755A1 WO 2020188755 A1 WO2020188755 A1 WO 2020188755A1 JP 2019011504 W JP2019011504 W JP 2019011504W WO 2020188755 A1 WO2020188755 A1 WO 2020188755A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- product
- signal generation
- type mosfet
- sum
- output
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
- G06F7/5443—Sum of products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06G—ANALOGUE COMPUTERS
- G06G7/00—Devices in which the computing operation is performed by varying electric or magnetic quantities
- G06G7/48—Analogue computers for specific processes, systems or devices, e.g. simulators
- G06G7/60—Analogue computers for specific processes, systems or devices, e.g. simulators for living beings, e.g. their nervous systems ; for problems in the medical field
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/48—Indexing scheme relating to groups G06F7/48 - G06F7/575
- G06F2207/4802—Special implementations
- G06F2207/4814—Non-logic devices, e.g. operational amplifiers
Definitions
- the present invention relates to a product-sum calculation device, a logic operation device, a neuromorphic device, and a product-sum calculation method.
- Patent Document 1 a first input signal corresponding to a multiplicand is input to one terminal of two terminals of a resistance change type variable resistance element, and a second input signal corresponding to a multiplier to be multiplied by the multiplicand is input to the other terminal.
- a product-sum calculation device including a product calculation device characterized in that an output value corresponding to the result of a product calculation of a multiplicand and a multiplier is output by inputting an input signal is disclosed. There is.
- the above-mentioned product-sum calculation device executes an accurate product-sum calculation because when the resistance-changing variable resistance element fails, a signal different from the normal state may be output from the resistance-changing variable resistance element. You may not be able to do it.
- an object of the present invention is to provide a product-sum calculation device, a logic calculation device, a neuromorphic device, and a product-sum calculation method capable of performing an accurate product-sum calculation even if the product calculation element fails. To do.
- One aspect of the present invention has a plurality of product calculation elements, and a plurality of first intermediate signals generated from input signals corresponding to input values are input to each of the plurality of product calculation elements, and the plurality of product calculations are performed. Based on a plurality of redundant circuits that generate and output a plurality of second intermediate signals corresponding to each of the plurality of signals obtained by multiplying each of the plurality of first intermediate signals by each element, and a plurality of the second intermediate signals.
- a product-sum calculation including a plurality of output signal generation circuits that generate an output signal and output the output signal, and a sum calculation circuit that calculates the sum of the output signals output by each of the plurality of output signal generation circuits. It is a vessel.
- each of the plurality of product calculation elements is a resistance changing element having a write terminal, a common terminal, and a read terminal.
- each of the plurality of first intermediate signals is generated by using a source follower.
- each of the plurality of first intermediate signals is generated by using each of the plurality of resistors connected in series to each of the plurality of product calculation elements.
- each of the plurality of first intermediate signals is generated by using the internal resistance of each of the plurality of current mirrors connected in series to each of the plurality of product calculation elements.
- the output signal generation circuit is a minimum value selection circuit in which a signal corresponding to the minimum value from the plurality of second intermediate signals is used as the output signal.
- the output signal generation circuit is a majority decision circuit in which the signal corresponding to the mode value among the plurality of second intermediate signals is used as the output signal.
- one aspect of the present invention is a logical operation device including any one of the above-mentioned product-sum operation units.
- one aspect of the present invention is a neuromorphic device including any one of the above-mentioned multiply-accumulate units.
- a plurality of first intermediate signals generated from an input signal corresponding to an input value are input to each of the plurality of product calculation elements, and the plurality of first intermediate signals are input by each of the plurality of product calculation elements.
- a second intermediate signal generation step of generating and outputting a plurality of second intermediate signals corresponding to each signal obtained by multiplying each intermediate signal by a weight, and generating an output signal based on the plurality of second intermediate signals are performed.
- This is a product-sum calculation method including a plurality of output signal generation steps for outputting the output signal and a sum calculation step for calculating the sum of the output signals output by each of the plurality of output signal generation circuits.
- the product-sum calculation device and the logic calculation can execute an accurate product-sum calculation even if the product calculation element fails.
- Devices, neuromorphic devices and multiply-accumulate methods can be provided.
- FIG. 1 is a diagram showing an example of a partial configuration of the product-sum calculation unit according to the first embodiment.
- the product-sum calculation unit 10 includes input units 1E, 3E, 5E, ..., K-1E (k: even number) and product calculation units 1, 2, 3, 4, 5, 6, ... , K-1, k (k: even number), read terminals 1X, 2X, 3X, 4X, 5X, 6X, ..., k-1X, kX (k: even number), and common terminals 1Y, 2Y, 3Y, 4Y , 5Y, 6Y, ..., k-1Y, kY (k: even number), write terminals 1Z, 2Z, 3Z, 4Z, 5Z, 6Z, ..., k-1Z, kZ (k: even number), and sum calculation circuit It includes 10S and 20S.
- the read terminal 1X is a component of the product calculation unit 1, and is connected to the gate of the N-type MOSFET 111a, the gate of the N-type MOSFET 111b, and the gate of the N-type MOSFET 111c, which will be described later with reference to FIG.
- the read terminals 2X, 3X, 4X, 5X, 6X, ..., K-1X and kX are each a component of the product calculation unit 2, 3, 4, 5, 6, ..., K-1 and k. It is connected to the gate of each N-type MOSFET.
- the common terminal 1Y is a component of the product calculation unit 1, and is connected to the common terminal of the product calculation element 113a, the common terminal of the product calculation element 113b, and the common terminal of the product calculation element 113c, which will be described later with reference to FIG. ing.
- the common terminals 2Y, 3Y, 4Y, 5Y, 6Y, ..., K-1Y and kY are each a component of the product calculation unit 2, 3, 4, 5, 6, ..., K-1 and k. It is connected to the common terminal of each product calculation element.
- the write terminal 1Z is a component of the product calculation unit 1, and is connected to a write terminal of the product calculation element 113a, a write terminal of the product calculation element 113b, and a write terminal of the product calculation element 113c, which will be described later with reference to FIG. ing.
- the write terminals 2Z, 3Z, 4Z, 5Z, 6Z, ..., K-1Z and kZ are each a component of the product calculation unit 2, 3, 4, 5, 6, ..., K-1 and k. It is connected to the write terminal of each of a certain product calculation element.
- the input unit 1E is connected to the read terminals 1X and 2X.
- the input unit 3E is connected to the read terminals 3X and 4X.
- the input unit 5E is connected to the read terminals 5X and 6X.
- the input unit k-1E is connected to the read terminals k-1X and kX.
- the input unit 1E inputs the input signal corresponding to the input value to the read terminals 1X and 2X.
- the input unit 3E inputs the input signal corresponding to the input value to the read terminals 3X and 4X.
- the input unit 5E inputs the input signal corresponding to the input value to the read terminals 5X and 6X.
- the input unit k-1E inputs the input signal corresponding to the input value to the read terminals k-1X and kX. All of these input signals are voltage signals that are subjected to pulse width modulation (PWM) according to the input value.
- PWM pulse width modulation
- FIG. 2 is a diagram showing an example of the product calculation unit according to the first embodiment.
- the product calculation unit 1 includes a redundancy circuit 11 and an output signal generation circuit 12.
- the product calculation units 2, 3, 4, 5, 6, ..., K-1 and k have the same configuration as the product calculation unit 1 and operate in the same manner as the product calculation unit 1. Therefore, the product calculation unit 1, 2, 3, 4, 5, 6, ..., K-1 and k will be described below by taking the product calculation unit 1 as an example.
- the redundancy circuit 11 includes a first intermediate signal generation circuit 11a, a first intermediate signal generation circuit 11b, and a first intermediate signal generation circuit 11c.
- the first intermediate signal generation circuit 11b and the first intermediate signal generation circuit 11c have the same configuration as the first intermediate signal generation circuit 11a, and operate in the same manner as the first intermediate signal generation circuit 11a. Therefore, in the following description, the redundancy circuit 11 will be described focusing on the first intermediate signal generation circuit 11a.
- the first intermediate signal generation circuit 11a includes an N-type MOSFET 111a, an N-type MOSFET 112a, a product calculation element 113a, an N-type MOSFET 114a, a P-type MOSFET 115a, and a P-type MOSFET 116a.
- the gate is connected to the read terminal 1X
- the drain is connected to VDD
- the source is connected to the drain of the N-type MOSFET 112a, the read terminal of the product calculation element 113a, and the gate of the N-type MOSFET 114a.
- a predetermined bias voltage is input to the gate
- the drain is connected to the source of the N-type MOSFET 111a, the read terminal of the product arithmetic element 113a, and the gate of the N-type MOSFET 114a, and the sources are VSS and FIG. It is connected to the common terminal 1Y.
- the N-type MOSFET 111a and the N-type MOSFET 112a form a source follower.
- the read terminal is connected to the source of the N-type MOSFET 111a and the drain of the N-type MOSFET 112a, the common terminal is connected to VSS and the common terminal 1Y shown in FIG. 1, and the write terminal is CTR. That is, it is connected to the writing terminal 1Z shown in FIG.
- the gate is connected to the source of the N-type MOSFET 111a, the drain of the N-type MOSFET 112a, and the read terminal of the product calculation element 113a, the drain is connected to the drain of the P-type MOSFET 115a, and the source is VSS and the figure. It is connected to the common terminal 1Y shown in 1.
- the gate of the P-type MOSFET 115a is connected to the drain of the N-type MOSFET 114a, the drain of the P-type MOSFET 115a, and the gate of the P-type MOSFET 116a, and the drains are connected to the drain of the N-type MOSFET 114a, the gate of the P-type MOSFET 115a, and the gate of the P-type MOSFET 116a. It is connected and the source is connected to VDD.
- the gate is connected to the drain of the N-type MOSFET 114a, the gate of the P-type MOSFET 115a, and the drain of the P-type MOSFET 115a, the drain is connected to the source of the P-type MOSFET 121a described later, and the source is connected to VDD.
- the P-type MOSFET 115a and the P-type MOSFET 116a form a current mirror.
- the first intermediate signal generation circuit 11a When the input signal corresponding to the input value, for example, the voltage vi shown in FIG. 2 is input from the read terminal 1X, the first intermediate signal generation circuit 11a receives the gate-source voltage of the N-type MOSFET 111a and the N-type MOSFET 112a. A voltage v1 corresponding to the bias voltage is applied to the read terminal of the product calculation element 113a. This voltage v1 is an example of the first intermediate signal.
- a current i1 corresponding to the voltage applied to the gate of the N-type MOSFET 114a flows between the drain and the source of the N-type MOSFET 114a.
- This current i1 is an example of a second intermediate signal, which also flows between the drain and the source of the P-type MOSFET 115a constituting the current mirror, is transferred as a current flowing between the drain and the source of the P-type MOSFET 116a, and is second. It is output to the intermediate signal generation circuit 12a.
- the first intermediate signal generation circuit 11b includes an N-type MOSFET 111b, an N-type MOSFET 112b, a product calculation element 113b, an N-type MOSFET 114b, a P-type MOSFET 115b, and a P-type MOSFET 116b.
- the first intermediate signal generation circuit 11c includes an N-type MOSFET 111c, an N-type MOSFET 112c, a product calculation element 113c, an N-type MOSFET 114c, a P-type MOSFET 115c, and a P-type MOSFET 116c.
- the configuration and operation of the first intermediate signal generation circuit 11b and the first intermediate signal generation circuit 11c are the same as those of the first intermediate signal generation circuit 11a.
- the first intermediate signal generation circuit 11b outputs the first intermediate signal, for example, the current i2 shown in FIG. 2 to the second intermediate signal generation circuit 12b by the same configuration and operation as the first intermediate signal generation circuit 11a. .. Further, the first intermediate signal generation circuit 11c outputs the first intermediate signal, for example, the current i3 shown in FIG. 2 to the second intermediate signal generation circuit 12c by the same configuration and operation as the first intermediate signal generation circuit 11a. ..
- the redundancy circuit 11 includes a product calculation element 113a, a product calculation element 113b, and a product calculation element 113c.
- the redundancy circuit 11 combines the first intermediate signals, voltage v1, voltage v2, and voltage v3, which are generated from the voltage vi, which is the input signal corresponding to the input value, into the product calculation element 113a, the product calculation element 113b, and the product calculation element 113c. Enter in each.
- the redundancy circuit 11 corresponds to each of the signals obtained by multiplying each of the first intermediate signals, voltage v1, voltage v2, and voltage v3, by the product calculation element 113a, the product calculation element 113b, and the product calculation element 113c.
- the second intermediate signals, current i1, current i2, and current i3, are generated and output.
- the output signal generation circuit 12 includes a second intermediate signal generation circuit 12a, a second intermediate signal generation circuit 12b, a second intermediate signal generation circuit 12c, and a current output circuit 124.
- the second intermediate signal generation circuit 12b and the second intermediate signal generation circuit 12c have the same configuration as the second intermediate signal generation circuit 12a, and operate in the same manner as the second intermediate signal generation circuit 12a. Therefore, in the following description, the output signal generation circuit 12 will be described focusing on the second intermediate signal generation circuit 12a.
- the second intermediate signal generation circuit 12a includes a P-type MOSFET 121a, an N-type MOSFET 122a, and an N-type MOSFET 123a.
- the gate is connected to the drain of the P-type MOSFET 121a, the drain of the N-type MOSFET 122a, and the gate of the N-type MOSFET 123a, and is connected to the gate of the N-type MOSFET 123a, and the drain is the gate of the P-type MOSFET 121a, N. It is connected to the drain of the type MOSFET 122a and the gate of the N-type MOSFET 123a, and the source is connected to the drain of the P-type MOSFET 116a.
- the gate of the N-type MOSFET 122a is connected to the source of the N-type MOSFET 123a and the gate of the N-type MOSFET constituting the current output circuit 124, and the drain is the gate of the P-type MOSFET 121a, the drain of the P-type MOSFET 121a, and the N-type MOSFET 123a. It is connected to the gate of, and the source is connected to VSS.
- the gate is connected to the gate of the P-type MOSFET 121a, the drain of the P-type MOSFET 121a and the drain of the N-type MOSFET 122a, the drain is connected to VDD, and the source is the gate of the N-type MOSFET 122a and the current output circuit. It is connected to the gate of the N-type MOSFET that constitutes 124.
- the current i1 output from the first intermediate signal generation circuit 11a is input to the second intermediate signal generation circuit 12a.
- the current i1 flows between the source and drain of the P-type MOSFET 121a and the drain-source of the N-type MOSFET 122a.
- a current corresponding to the current i1 flows between the drain and the source of the N-type MOSFET 123a, and a voltage corresponding to the current and the internal resistance of the N-type MOSFET 123a is applied to the gate of the N-type MOSFET 122a and the source of the N-type MOSFET 123a. Will be done.
- the second intermediate signal generation circuit 12b includes a P-type MOSFET 121b, an N-type MOSFET 122b, and an N-type MOSFET 123b. Further, the second intermediate signal generation circuit 12c includes a P-type MOSFET 121c, an N-type MOSFET 122c, and an N-type MOSFET 123c. The configuration and operation of the second intermediate signal generation circuit 12b and the second intermediate signal generation circuit 12c are the same as those of the second intermediate signal generation circuit 12a.
- the current output circuit 124 includes an N-type MOSFET.
- the gate is connected to the gate of the N-type MOSFET 122a, the gate of the N-type MOSFET 122b, and the gate of the N-type MOSFET 122c, and the source is connected to VSS.
- a voltage determined based on a voltage applied to the gate of the N-type MOSFET 122a, a voltage applied to the gate of the N-type MOSFET 122b, and a voltage applied to the gate of the N-type MOSFET 122c is applied to the gate.
- the current i shown in FIG. 2 flows between the drain and the source of this N-type MOSFET.
- This current i is an example of an output signal, for example, is transferred by a current mirror and output from the product calculation element 1 to the common terminal 1Y.
- the output signal generation circuit 12 generates and outputs an output signal, current i, based on the second intermediate signals, current i1, current i2, and current i3.
- FIG. 3 is a diagram showing an example of the resistance changing element according to the first embodiment.
- the product calculation element 113a, the product calculation element 113b, and the product calculation element 113c described above are, for example, the resistance changing elements shown in FIG. In the following description, the product calculation element 113a will be described as an example. Further, in the description using FIG. 3, the x-axis, y-axis, and z-axis shown in FIG. 3 are used. The x-axis, y-axis and z-axis form three-dimensional Cartesian coordinates of the right-handed system.
- the product calculation element 113a is, for example, a resistance changing element having a variable resistor 113R, a read terminal 113X, a common terminal 113Y, and a write terminal 113Z.
- the variable resistor 113R includes, for example, the magnetization fixing layer 1131, the non-magnetic layer 1132, the first region 1133, the magnetic wall 1134, the second region 1135, the first magnetization supply layer 1136, and the second magnetization supply layer 1137.
- the magnetized fixed layer 1131, the non-magnetic layer 1132, the first region 1133, the second region 1135, the first magnetized supply layer 1136, and the second magnetized supply layer 1137 are formed in a thin rectangular shape laminated in the z-axis direction.
- the plane with the largest area is parallel to the xy plane and is electrically and magnetically connected to the first region 1133 and the second region 1135.
- the stacking order of the magnetized fixed layer 1131, the non-magnetic layer 1132, the first region 1133, the second region 1135, the first magnetized supply layer 1136 and the second magnetized supply layer 1137 is the same, but the stacking direction is also opposite. good. In that case, the positions of the read terminal 113X, the common terminal 113Y, and the write terminal 113Z are also reversed.
- the magnetization direction of the magnetization fixing layer 1131 is fixed in the z direction.
- the fact that the magnetization is fixed means that the magnetization direction does not change at the time of initialization for introducing the domain wall 1134 and before and after writing using the writing current.
- the magnetization fixing layer 1131 may be, for example, an in-plane magnetic anisotropy or a perpendicular magnetic anisotropy.
- One surface of the non-magnetic layer 1132 is in contact with a surface opposite to the surface on which the magnetization fixing layer 1131 in the z direction is in contact with the read terminal 113X.
- the other surface in the z direction is in contact with the first region 1133 and the second region 1135.
- the surface of the magnetization fixed layer 1131 facing the z direction and the surface of the non-magnetic layer facing the z direction may have the same shape and area, but the non-magnetic layer 1132 is on the xy plane. It extends so as to cover the first region 1133 and the second region 1135, and may be larger than the magnetization fixing layer 1131.
- the non-magnetic layer 1132 is used by the product calculation element 113a to read out a change in the magnetization state of the magnetization free layer with respect to the magnetization fixed layer 1131 as a change in resistance value.
- the first region 1133, the domain wall 1134, and the second region 1135 form a magnetization free layer.
- the magnetization free layer is made of a ferromagnetic material, and the magnetization directions of the first region 1133 and the second region 1135 are opposite to each other in the z direction.
- the magnetic wall 1134 faces in a direction substantially intermediate between the first region 1133 and the second region 1135. For example, when the magnetization direction of the first region 1133 is fixed in the + z direction, the magnetization fixing layer 1131 and the non-magnetic layer 1132 are in contact with each other on a surface opposite to the surface in which they are in contact with each other in the z direction.
- the magnetization fixing layer 1131 and the non-magnetic layer 1132 are in contact with each other on a surface opposite to the surface in which they are in contact in the z direction.
- the domain wall 1134 is sandwiched between the first region 1133 and the second region 1135 in the y direction.
- the first magnetization supply layer 1136 does not overlap with the magnetization fixing layer 1131 in the z direction, and the surface facing the + z direction is in contact with the surface of the first region 1133 facing the ⁇ z direction. .. Further, the first magnetization supply layer 1136 has a function of fixing the magnetization direction in the range of the first region 1133 that overlaps with the first magnetization supply layer 1136 in the z direction in a desired direction. Further, the writing terminal 113Z is connected to the surface of the first magnetization supply layer 1136 facing the ⁇ z direction.
- the first magnetization supply layer 1136 is, for example, the same material as the ferromagnetic material that can be used for the magnetization fixing layer 1131, an antiferromagnetic material such as IrMn, and a ferromagnetic material sandwiching a non-magnetic intermediate layer such as Ru and Ir. It is manufactured by a synthetic antiferromagnetic structure (Synthetic antiferromagnetic) composed of / non-magnetic material / ferromagnetic material.
- the second magnetization supply layer 1137 does not overlap with the magnetization fixing layer 1131 in the z direction, and the surface facing the + z direction is in contact with the surface of the second region 1135 facing the ⁇ z direction. .. Further, the second magnetization supply layer 1137 has a function of fixing the magnetization direction in the range of the second region 1135 that overlaps with the second magnetization supply layer 1137 in the z direction in a desired direction. Further, a common terminal 113Y is connected to the surface of the second magnetization supply layer 1137 facing the ⁇ z direction.
- the second magnetization supply layer 1137 is, for example, the same material as the ferromagnetic material that can be used for the magnetization fixing layer 1131, an antiferromagnetic material such as IrMn, and a ferromagnetic material sandwiching a non-magnetic intermediate layer such as Ru and Ir. It is manufactured by a synthetic antiferromagnetic structure consisting of / non-magnetic material / ferromagnetic material.
- the magnetization direction of the magnetization fixed layer 1131 in the variable resistor 113R and the magnetization directions of the first region 1133, the second region 1135, the first magnetization supply layer 1136, and the second magnetization supply layer 1137 are not only in the z direction but also in the x direction and y. It may be in the direction. In that case, it is desirable that the magnetization direction of the magnetization fixing layer 1131 and the magnetization directions of the first region 1133, the second region 1135, the first magnetization supply layer 1136, and the second magnetization supply layer 1137 are the same.
- the magnetization direction of the magnetization fixed layer 1131 is the + y direction
- the magnetization direction of the first region is the + y direction
- the magnetization direction of the second region is the ⁇ y direction
- the magnetization direction of the first magnetization supply layer 1136 is the + y direction
- the magnetization direction of the second magnetization supply layer 1137 is the ⁇ y direction.
- the product calculation element 113a changes the position of the domain wall 1134 in the y direction by adjusting the magnitude and time of the write current flowing between the common terminal 113Y and the write terminal 113Z.
- the product calculation element 113a can continuously change the ratio of the area between the region where the magnetization direction is parallel and the region where the magnetization direction is antiparallel, and can change the resistance value of the variable resistor 113R substantially linearly.
- the region in which the magnetization directions are parallel is the area of the portion of the first region 1133 that overlaps with the magnetization fixing layer 1131 in the z direction.
- the region in which the magnetization directions are antiparallel is the area of the portion of the second region 1135 that overlaps with the magnetization fixing layer 1131 in the z direction. Further, the write current is input to the write terminal 113Z. The magnitude and time of the write current is adjusted by at least one of the number and width of current pulses.
- the product calculation element 113a may be a tunnel magnetoresistive effect element.
- the tunnel magnetoresistive element includes a magnetization fixed layer, a magnetization free layer, and a tunnel barrier layer as a non-magnetic layer.
- the magnetized fixed layer and the magnetized free layer are made of a ferromagnetic material and have magnetization.
- the tunnel barrier layer is sandwiched between the magnetized fixed layer and the magnetized free layer.
- the tunnel magnetoresistive element can change the resistance value by changing the relationship between the magnetization of the magnetization fixed layer and the magnetization of the magnetization free layer.
- the sum calculation circuit 10S calculates the sum of the output signals output by each of the product calculation units 1, 3, 5, ..., K-1. Similarly, the sum calculation circuit 20S calculates the sum of the output signals output by each of the product calculation units 2, 4, 6, ..., K.
- FIG. 4 is a diagram for explaining an example of a neural network operation executed by the product-sum calculation unit according to the first embodiment.
- Nodes 100, 300, ..., K00 form an input layer.
- the perceptrons 1000 and 2000 form a hidden layer or an output layer.
- the node 100 corresponds to the input unit 1E shown in FIG. 1, and outputs the input value corresponding to the input signal to the perceptrons 1000 and 2000.
- the nodes 300, 500, ..., K00 correspond to the input units 3E, 5E ..., K-1E, respectively, and output the input values corresponding to the input signals to the perceptrons 1000 and 2000.
- the arrow 1A corresponds to the product calculation unit 1, and indicates that the input value output by the node 100 is multiplied by a weight and the value corresponding to the output signal is input to the perceptron 1000.
- the arrow 2A corresponds to the product calculation unit 2, and indicates that the input value output by the node 100 is multiplied by a weight and the value corresponding to the output signal is input to the perceptron 2000.
- the perceptron 1000 corresponds to the sum calculation circuit 10S shown in FIG. 1, calculates the sum of the values input from arrows 1A, 3A, 5A ..., K-1A, and performs activation function processing on this sum. And output.
- the perceptron 20 corresponds to the sum calculation circuit 20S shown in FIG. 1, calculates the sum of the values input from the arrows 2A, 4A, 6A ..., KA, and performs activation function processing on this sum. Apply and output.
- the product-sum calculation unit 10 has been described above.
- the product-sum calculator 10 combines the first intermediate signals, voltage v1, voltage v2, and voltage v3, which are generated from the voltage vi, which is an input signal corresponding to the input value, into the product calculation element 113a, the product calculation element 113b, and the product calculation element. Enter in each of 113c.
- the product-sum calculation unit 10 gives each of the signals obtained by multiplying each of the first intermediate signals, voltage v1, voltage v2, and voltage v3, by the product calculation element 113a, the product calculation element 113b, and the product calculation element 113c.
- the corresponding second intermediate signals, current i1, current i2, and current i3, are generated and output.
- the product-sum calculator 10 generates a current i, which is an output signal, based on the second intermediate signals, current i1, current i2, and current i3, and outputs a current i, which is an output signal.
- the product-sum calculation unit 10 at least one of the product calculation elements included in the product calculation units 1, 2, 3, 4, 5, 6, ..., K-1 or k fails, and the failed product calculation element is used. Even if a first intermediate signal different from the normal state is output, an appropriate output signal can be output based on a plurality of second intermediate signals. As a result, the product-sum calculation unit 10 can execute an accurate product-sum calculation even if the product-sum calculation element fails.
- the failure referred to here is, for example, a short mode failure or an open mode failure.
- the short mode failure the non-magnetic layer of the product-sum calculation element, for example, the non-magnetic layer of the product-sum calculation element 113a is destroyed, causing dielectric breakdown, and an extremely large current flows between the read terminal and the common terminal. It is a phenomenon that ends up.
- the open mode failure is a phenomenon in which the resistance value of the product-sum calculation element, for example, the product-sum calculation element 113a becomes extremely large, and the current flowing between the read terminal and the common terminal becomes extremely small.
- the product-sum calculator 10 generates each of the first intermediate signals, voltage v1, voltage v2, and voltage v3, by the source follower. Therefore, the multiply-accumulate unit 10 can automatically generate the first intermediate signals, voltage v1, voltage v2, and voltage v3, just by inputting an input signal, without executing any particular control or the like. ..
- the redundancy circuit 11 includes the first intermediate signal generation circuit 11a, the first intermediate signal generation circuit 11b, and the first intermediate signal generation circuit 11c, and the output signal generation circuit 12 is the second intermediate.
- the case where the signal generation circuit 12a, the second intermediate signal generation circuit 12b, and the second intermediate signal generation circuit 12c are provided has been described as an example, but the present invention is not limited thereto.
- the redundancy circuit 11 may not include the first intermediate signal generation circuit 11a, and the output signal generation circuit 12 may not include the second intermediate signal generation circuit 12a.
- the redundancy circuit 11 may further include at least one other first intermediate signal generation circuit
- the output signal generation circuit 12 may further include at least one other second intermediate signal generation circuit.
- FIG. 5 is a diagram showing an example of the product calculation unit according to the second embodiment.
- the product-sum calculation unit according to the second embodiment is different from the product-sum calculation unit 10 according to the first embodiment in that it includes the redundancy circuit 13 shown in FIG. 5 instead of the redundancy circuit 11 described above. Therefore, in the description of the second embodiment, only the matters different from those of the first embodiment will be described, and duplicate description will be omitted.
- the redundancy circuit 13 includes a first intermediate signal generation circuit 13a, a first intermediate signal generation circuit 13b, and a first intermediate signal generation circuit 13c.
- the first intermediate signal generation circuit 13b and the first intermediate signal generation circuit 13c have the same configuration as the first intermediate signal generation circuit 13a, and operate in the same manner as the first intermediate signal generation circuit 13a. Therefore, in the following description, the redundant circuit 13 will be described focusing on the first intermediate signal generation circuit 13a.
- the first intermediate signal generation circuit 13a includes a resistor 131a, a product calculation element 132a, an N-type MOSFET 133a, a switch 134a, a P-type MOSFET 135a, and a P-type MOSFET 136a.
- One end of the resistor 131a is connected to VDD, and the other end is connected to the read terminal of the product calculation element 132a and the gate of the N-type MOSFET 133a.
- the read terminal is connected to the other end of the resistor 131a and the gate of the N-type MOSFET 133a
- the common terminal is connected to VSS and the common terminal 1Y shown in FIG. 1
- the write terminal is CTR. That is, it is connected to the writing terminal 1Z shown in FIG.
- the gate is connected to the other end of the resistor 131a and the read terminal of the product calculation element 132a, the drain is connected to one end of the switch 134a, and the source is connected to VSS.
- One end of the switch 134a is connected to the drain of the N-type MOSFET 133a, and the other end is connected to the drain of the P-type MOSFET 135a, the gate of the P-type MOSFET 135a, and the gate of the P-type MOSFET 136a.
- the gate of the P-type MOSFET 135a is connected to the other end of the switch 134a, the drain of the P-type MOSFET 135a and the gate of the P-type MOSFET 136a, and the drain is connected to the other end of the switch 134a, the gate of the P-type MOSFET 135a and the gate of the P-type MOSFET 136a. It is connected and the source is connected to VDD.
- the gate is separated from the other end of the switch 134a, the drain of the P-type MOSFET 135a and the gate of the P-type MOSFET 135a, the drain is connected to the source of the P-type MOSFET 121a, and the source is connected to VDD. ing. Further, the P-type MOSFET 135a and the P-type MOSFET 136a form a current mirror.
- the first intermediate signal generation circuit 13a When the voltage vi, which is an input signal, is applied to the read terminal 1X, the first intermediate signal generation circuit 13a loads the voltage v1 according to the magnitude of the resistance of the resistor 131a and the magnitude of the resistance of the product calculation element 132a. It is applied to the read terminal of the arithmetic element 132a. This voltage v1 is an example of the first intermediate signal. Then, a current corresponding to the voltage flows between the read terminal and the common terminal of the product calculation element 132a, and corresponds to the current, the magnitude of the resistance of the product calculation element 132a, and the magnitude of the resistance of the resistor 131a. A voltage is applied to the gate of the N-type MOSFET 133a.
- a current i1 corresponding to the voltage applied to the gate of the N-type MOSFET 133a flows between the drain and the source of the N-type MOSFET 133a.
- This current i1 is an example of the second intermediate signal, flows between the drain and the source of the P-type MOSFET 135a constituting the current mirror, is transferred as a current flowing between the drain and the source of the P-type MOSFET 136a, and is second. It is output to the intermediate signal generation circuit 12a.
- the switch 134a is in the non-conducting state, no current flows between the source and drain of the P-type MOSFET 135a. Further, the switch 134a is in a conductive state when the product-sum operation is executed, and is in a non-conducting state when the product-sum operation is not executed.
- the first intermediate signal generation circuit 13b includes a resistor 131b, a product calculation element 132b, an N-type MOSFET 133b, a switch 134b, a P-type MOSFET 135b, and a P-type MOSFET 136b. Further, the first intermediate signal generation circuit 13c includes a resistor 131c, a product calculation element 132c, an N-type MOSFET 133c, a switch 134c, a P-type MOSFET 135c, and a P-type MOSFET 136c. The configuration and operation of the first intermediate signal generation circuit 13b and the first intermediate signal generation circuit 13c are the same as those of the first intermediate signal generation circuit 13a.
- the first intermediate signal generation circuit 13b outputs the first intermediate signal, for example, the current i2 shown in FIG. 5 to the second intermediate signal generation circuit 12b by the same configuration and operation as the first intermediate signal generation circuit 13a. .. Further, the first intermediate signal generation circuit 13c outputs the first intermediate signal, for example, the current i3 shown in FIG. 5 to the second intermediate signal generation circuit 12c by the same configuration and operation as the first intermediate signal generation circuit 13a. ..
- the product-sum calculation unit according to the second embodiment has been described above.
- the product-sum calculation unit according to the second embodiment can exert the same effect as the product-sum calculation unit 10 according to the first embodiment.
- the product-sum calculation unit according to the second embodiment is connected in series to each of the product calculation element 132a, the product calculation element 132b, and the product calculation element 132c instead of the source follower included in the product-sum calculation unit 10 according to the first embodiment.
- the resistor 131a, the resistor 131b and the resistor 131c are provided.
- the product-sum calculation unit according to the second embodiment has a simpler configuration than the product-sum calculation unit 10 according to the first embodiment, it is possible to suppress an increase in the circuit scale and suppress the manufacturing cost. ..
- FIG. 6 is a diagram showing an example of the product calculation unit according to the third embodiment.
- the product-sum calculation device according to the third embodiment is provided with the redundancy circuit 15 shown in FIG. 6 instead of the redundancy circuit 11 and the redundancy circuit 13 described above. It is different from the product-sum calculator according to the device 10 and the second embodiment. Therefore, in the description of the third embodiment, only the matters different from those of the first embodiment and the second embodiment will be described, and duplicate description will be omitted.
- the redundancy circuit 15 includes a first intermediate signal generation circuit 15a, a first intermediate signal generation circuit 15b, and a first intermediate signal generation circuit 15c.
- the first intermediate signal generation circuit 15b and the first intermediate signal generation circuit 15c have the same configuration as the first intermediate signal generation circuit 15a, and operate in the same manner as the first intermediate signal generation circuit 15a. Therefore, in the following description, the redundant circuit 15 will be described focusing on the first intermediate signal generation circuit 15a.
- the first intermediate signal generation circuit 15a includes a product calculation element 152a, a switch 154a, a P-type MOSFET 155a, and a P-type MOSFET 156a.
- a read terminal is connected to one end of a switch 154a, a common terminal is connected to VSS and a common terminal 1Y shown in FIG. 1, and a write terminal is a CTR, that is, a write shown in FIG. It is connected to terminal 1Z.
- One end of the switch 154a is connected to the read terminal of the product calculation element 152a, and the other end is connected to the drain of the P-type MOSFET 155a, the gate of the P-type MOSFET 155a, and the gate of the P-type MOSFET 156a.
- the gate is connected to the other end of the switch 154a, the drain of the P-type MOSFET 155a and the gate of the P-type MOSFET 156a, and the drain is connected to the other end of the switch 154a, the gate of the P-type MOSFET 155a and the gate of the P-type MOSFET 156a. It is connected and the source is connected to VDD.
- the gate is separated from the other end of the switch 154a, the drain of the P-type MOSFET 155a and the gate of the P-type MOSFET 155a, the drain is connected to the source of the P-type MOSFET 121a, and the source is connected to VDD. ing. Further, the P-type MOSFET 155a and the P-type MOSFET 156a form a current mirror.
- the operation of the first intermediate signal generation circuit 15a will be described.
- the first intermediate signal generation circuit 15a when a voltage vi which is an input signal is applied to the read terminal 1X, the magnitude of the resistance of the current mirror formed by the P-type MOSFET 155a and the P-type MOSFET 156a and the product calculation element 152a A voltage v1 corresponding to the magnitude of the resistor is applied to the read terminal of the product calculation element 152a.
- This voltage v1 is an example of the first intermediate signal.
- a current corresponding to the voltage flows between the read terminal and the common terminal of the product calculation element 152a, and a voltage corresponding to the current, the magnitude of the resistance of the current mirror, and the magnitude of the resistance of the product calculation element 152a. Is applied to the gate of the N-type MOSFET 153a.
- a current i1 corresponding to the magnitude of the voltage v1 and the resistance of the product calculation element 152a flows between the read terminal and the common terminal of the product calculation element 152a.
- This current i1 is an example of a second intermediate signal, which also flows between the drain and the source of the P-type MOSFET 155a constituting the current mirror, is transferred as a current flowing between the drain and the source of the P-type MOSFET 156a, and is second. It is output to the intermediate signal generation circuit 12a.
- the switch 154a is in the non-conducting state, no current flows between the source and drain of the P-type MOSFET 155a. Further, the switch 154a is in a conductive state when the product-sum operation is executed, and is in a non-conducting state when the product-sum operation is not executed.
- the first intermediate signal generation circuit 15b includes a product calculation element 152b, a switch 154b, a P-type MOSFET 155b, and a P-type MOSFET 156b. Further, the first intermediate signal generation circuit 15c includes a product calculation element 152c, a switch 154c, a P-type MOSFET 155c, and a P-type MOSFET 156c.
- the configuration and operation of the first intermediate signal generation circuit 15b and the first intermediate signal generation circuit 15c are the same as those of the first intermediate signal generation circuit 15a. That is, the first intermediate signal generation circuit 15b outputs the first intermediate signal, for example, the current i2 shown in FIG.
- the first intermediate signal generation circuit 15c outputs the first intermediate signal, for example, the current i3 shown in FIG. 6 to the second intermediate signal generation circuit 12c by the same configuration and operation as the first intermediate signal generation circuit 15a. ..
- the product-sum calculation unit according to the third embodiment has been described above.
- the product-sum calculation unit according to the third embodiment can exert the same effect as the product-sum calculation unit 10 according to the first embodiment and the product-sum calculation unit according to the second embodiment.
- the product-sum calculator according to the third embodiment does not have the source follower included in the product-sum calculator 10 according to the first embodiment.
- the multiply-accumulate unit according to the third embodiment includes the resistor 131a, the resistor 131b, the resistor 131c, the N-type MOSFET 133a, the N-type MOSFET 133b, and the N-type MOSFET 133c according to the second embodiment. I don't have it.
- the product-sum calculation device according to the third embodiment is the first intermediate signal using the internal resistance of each of the current mirrors connected in series to the product calculation element 152a, the product calculation element 152b, and the product calculation element 152c. Generates voltage v1, voltage v2 and voltage v3.
- the product-sum calculation unit according to the third embodiment has a simpler configuration than the product-sum calculation unit 10 according to the first embodiment and the product-sum calculation unit according to the second embodiment, so that the circuit scale can be increased. It can be suppressed and the manufacturing cost can be suppressed.
- the output signal generation circuit 12 generates the current i, which is an output signal, based on the current i1, the current i2, and the current i3, which are the second intermediate signals, has been described as an example. However, it is not limited to this.
- the output signal generation circuit 12 may be a minimum value selection circuit in which a signal corresponding to the minimum value from the second intermediate signals, current i1, current i2, and current i3, is used as the output signal.
- the output signal generation circuit 12 may be a majority-decision circuit in which the signal corresponding to the mode among the second intermediate signals i1, current i2, and current i3 is used as the output signal.
- the redundancy circuit 11, the redundancy circuit 13, and the redundancy circuit 15 may be applied with voltage v1, voltage v2, and voltage v3, which are externally generated first intermediate signals.
- the product-sum calculation unit 10 described above may be included in a logical operation device or a neuromorphic device.
- the logical operation device referred to here is a logic circuit formed by combining a plurality of product-sum operation units 10, for example, an AND circuit and an ⁇ R circuit.
- the logical operation referred to here is a concept including deep learning.
- the neuromorphic device referred to here is a device that applies the structure of the brain and the mechanism by which nerve cells called neurons are fired, and is used for machine learning and the like.
- a program for realizing the functions of each device such as the product-sum calculator 10 according to the first embodiment described above is recorded on a computer-readable recording medium, and the program recorded on the recording medium is stored in the computer system. Processing may be performed by reading and executing.
- the computer system referred to here may include hardware such as an operating system (OS) and peripheral devices, for example.
- the computer-readable recording medium is, for example, a portable medium or a storage device.
- the portable medium is, for example, a floppy disk, a magneto-optical disk, a ROM (Read Only Memory), a writable non-volatile memory such as a flash memory, or a DVD (Digital Versatile Disc).
- the storage device is, for example, a hard disk built in a computer system.
- the computer-readable recording medium may be a volatile memory inside a computer system that becomes a server or a client when a program is transmitted via a network or a communication line.
- the above-mentioned program may be transmitted from a computer system in which this program is stored in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium.
- the transmission medium for transmitting a program means a medium having a function of transmitting information, such as a network such as the Internet or a communication line such as a telephone line.
- the above-mentioned program may be for realizing a part of the above-mentioned functions, and is a program that can realize the above-mentioned functions in combination with a program already recorded in the computer system, a so-called difference program. There may be.
- the above-mentioned program is read and executed by a processor such as a CPU (Central Processing Unit) provided in the computer, for example.
- a processor such as a CPU (Central Processing Unit) provided in the computer, for example.
- CPU Central Processing Unit
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Neurology (AREA)
- Neurosurgery (AREA)
- Physiology (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Logic Circuits (AREA)
Abstract
積和演算器は、複数の積演算素子を有し、入力値に対応する入力信号から生成された複数の第一中間信号を複数の前記積演算素子各々に入力し、複数の前記積演算素子各々により複数の前記第一中間信号各々に重みが乗算された信号各々に対応する複数の第二中間信号を生成して出力する複数の冗長化回路と、複数の前記第二中間信号に基づいて出力信号を生成し、前記出力信号を出力する複数の出力信号生成回路と、複数の前記出力信号生成回路各々が出力した前記出力信号の総和を演算する和演算回路と、を備える。
Description
本発明は、積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法に関する。
現在、積演算素子が搭載された積和演算器の開発が活発に進められている。例えば、特許文献1には、抵抗変化型可変抵抗素子の2つの端子の一方の端子に被乗数に対応する第1入力信号を入力し、他方の端子に被乗数に乗算される乗数に対応する第2入力信号を入力することにより、被乗数と乗数との積演算の結果に対応する出力値が出力されるように構成されていることを特徴とする積演算装置を備える積和演算装置が開示されている。
しかし、上述した積和演算装置は、抵抗変化型可変抵抗素子が故障した場合、抵抗変化型可変抵抗素子から正常時と異なる信号が出力されることがあるため、正確な積和演算を実行することができなくなることがある。
そこで、本発明は、積演算素子が故障しても正確な積和演算を実行することができる積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法を提供することを目的とする。
本発明の一態様は、複数の積演算素子を有し、入力値に対応する入力信号から生成された複数の第一中間信号を複数の前記積演算素子各々に入力し、複数の前記積演算素子各々により複数の前記第一中間信号各々に重みが乗算された信号各々に対応する複数の第二中間信号を生成して出力する複数の冗長化回路と、複数の前記第二中間信号に基づいて出力信号を生成し、前記出力信号を出力する複数の出力信号生成回路と、複数の前記出力信号生成回路各々が出力した前記出力信号の総和を演算する和演算回路と、を備える積和演算器である。
また、本発明の一態様において、複数の前記積演算素子各々は、書き込み端子と、共通端子と、読み出し端子とを有する抵抗変化素子である。
また、本発明の一態様において、複数の前記第一中間信号各々は、ソースフォロワを使用して生成される。
また、本発明の一態様において、複数の前記第一中間信号各々は、複数の前記積演算素子各々に直列接続された複数の抵抗器各々を使用して生成される。
また、本発明の一態様において、複数の前記第一中間信号各々は、複数の前記積演算素子各々に直列接続された複数のカレントミラー各々の内部抵抗を使用して生成される。
また、本発明の一態様において、前記出力信号生成回路は、複数の前記第二中間信号の中から最小値に対応する信号を前記出力信号とする最小値選択回路である。
また、本発明の一態様において、前記出力信号生成回路は、複数の前記第二中間信号の中から最頻値に対応する信号を前記出力信号とする多数決回路である。
また、本発明の一態様は、上述した積和演算器のいずれか一つを備える論理演算デバイスである。
また、本発明の一態様は、上述した積和演算器のいずれか一つを備えるニューロモーフィックデバイスである。
また、本発明の一態様は、入力値に対応する入力信号から生成された複数の第一中間信号を複数の積演算素子各々に入力し、複数の前記積演算素子各々により複数の前記第一中間信号各々に重みが乗算された信号各々に対応する複数の第二中間信号を生成して出力する第二中間信号生成工程と、複数の前記第二中間信号に基づいて出力信号を生成し、前記出力信号を出力する複数の出力信号生成工程と、複数の前記出力信号生成回路各々が出力した前記出力信号の総和を演算する和演算工程と、を含む積和演算方法である。
上述した積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法によれば、積演算素子が故障しても正確な積和演算を実行することができる積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法を提供することができる。
[第一実施形態]
図1から図3を参照しながら、第一実施形態に係る積和演算器の構成の一例について説明する。図1は、第一実施形態に係る積和演算器の一部の構成の一例を示す図である。
図1から図3を参照しながら、第一実施形態に係る積和演算器の構成の一例について説明する。図1は、第一実施形態に係る積和演算器の一部の構成の一例を示す図である。
図1に示すように、積和演算器10は、入力部1E、3E、5E、…、k-1E(k:偶数)と、積演算部1、2、3、4、5、6、…、k-1、k(k:偶数)と、読み出し端子1X、2X、3X、4X、5X、6X、…、k-1X、kX(k:偶数)と、共通端子1Y、2Y、3Y、4Y、5Y、6Y、…、k-1Y、kY(k:偶数)と、書き込み端子1Z、2Z、3Z、4Z、5Z、6Z、…、k-1Z、kZ(k:偶数)と、和演算回路10S、20Sとを備える。
読み出し端子1Xは、積演算部1の構成要素であり、後に図2を参照しながら説明するN型MOSFET111aのゲート、N型MOSFET111bのゲート及びN型MOSFET111cのゲートに接続されている。同様に、読み出し端子2X、3X、4X、5X、6X、…、k-1X及びkX各々は、積演算部2、3、4、5、6、…、k-1及びk各々の構成要素であるN型MOSFET各々のゲートに接続されている。
共通端子1Yは、積演算部1の構成要素であり、後に図2を参照しながら説明する積演算素子113aの共通端子、積演算素子113bの共通端子及び積演算素子113cの共通端子に接続されている。同様に、共通端子2Y、3Y、4Y、5Y、6Y、…、k-1Y及びkY各々は、積演算部2、3、4、5、6、…、k-1及びk各々の構成要素である積演算素子各々の共通端子に接続されている。
書き込み端子1Zは、積演算部1の構成要素であり、後に図2を参照しながら説明する積演算素子113aの書き込み端子、積演算素子113bの書き込み端子及び積演算素子113cの書き込み端子に接続されている。同様に、書き込み端子2Z、3Z、4Z、5Z、6Z、…、k-1Z及びkZ各々は、積演算部2、3、4、5、6、…、k-1及びk各々の構成要素である積演算素子各々の書き込み端子に接続されている。
入力部1Eは、読み出し端子1X、2Xに接続されている。同様に、入力部3Eは、読み出し端子3X、4Xに接続されている。また、入力部5Eは、読み出し端子5X、6Xに接続されている。また、入力部k-1Eは、読み出し端子k-1X、kXに接続されている。
入力部1Eは、入力値に対応する入力信号を読み出し端子1X、2Xに入力する。同様に、入力部3Eは、入力値に対応する入力信号を読み出し端子3X、4Xに入力する。また、入力部5Eは、入力値に対応する入力信号を読み出し端子5X、6Xに入力する。また、入力部k-1Eは、入力値に対応する入力信号を読み出し端子k-1X、kXに入力する。これらの入力信号は、いずれも入力値に応じたパルス幅変調(Pulse Width Modulation:PWM)が施されている電圧信号である。
図2は、第一実施形態に係る積演算部の一例を示す図である。図2に示すように、積演算部1は、冗長化回路11と、出力信号生成回路12とを備える。また、積演算部2、3、4、5、6、…、k-1及びkは、積演算部1と同様の構成を有し、積演算部1と同様に動作する。そこで、以下、積演算部1、2、3、4、5、6、…、k-1及びkについて積演算部1を例に挙げて説明する。
冗長化回路11は、第一中間信号生成回路11aと、第一中間信号生成回路11bと、第一中間信号生成回路11cとを備える。
ここで、第一中間信号生成回路11b及び第一中間信号生成回路11cは、第一中間信号生成回路11aと同様の構成を有し、第一中間信号生成回路11aと同様に動作する。そこで、以下の説明では、冗長化回路11について第一中間信号生成回路11aを中心に説明する。
まず、第一中間信号生成回路11aの構成について説明する。図2に示すように、第一中間信号生成回路11aは、N型MOSFET111aと、N型MOSFET112aと、積演算素子113aと、N型MOSFET114aと、P型MOSFET115aと、P型MOSFET116aとを備える。
N型MOSFET111aは、ゲートが読み出し端子1Xに接続されており、ドレインがVDDに接続されており、ソースがN型MOSFET112aのドレイン、積演算素子113aの読み出し端子及びN型MOSFET114aのゲートに接続されている。N型MOSFET112aは、ゲートに所定のバイアス電圧が入力され、ドレインがN型MOSFET111aのソース、積演算素子113aの読み出し端子及びN型MOSFET114aのゲートに接続されており、ソースがVSS及び図1に示した共通端子1Yに接続されている。また、N型MOSFET111a及びN型MOSFET112aは、ソースフォロワを形成している。
積演算素子113aは、読み出し端子がN型MOSFET111aのソース及びN型MOSFET112aのドレインに接続されており、共通端子がVSS及び図1に示した共通端子1Yに接続されており、書き込み端子がCTR、すなわち図1に示した書き込み端子1Zに接続されている。
N型MOSFET114aは、ゲートがN型MOSFET111aのソース、N型MOSFET112aのドレイン及び積演算素子113aの読み出し端子に接続されており、ドレインがP型MOSFET115aのドレインに接続されており、ソースがVSS及び図1に示した共通端子1Yに接続されている。
P型MOSFET115aは、ゲートがN型MOSFET114aのドレイン、P型MOSFET115aのドレイン及びP型MOSFET116aのゲートに接続されており、ドレインがN型MOSFET114aのドレイン、P型MOSFET115aのゲート及びP型MOSFET116aのゲートに接続されており、ソースがVDDに接続されている。P型MOSFET116aは、ゲートがN型MOSFET114aのドレイン、P型MOSFET115aのゲート及びP型MOSFET115aのドレインに接続されており、ドレインが後述するP型MOSFET121aのソースに接続されており、ソースがVDDに接続されている。また、P型MOSFET115a及びP型MOSFET116aは、カレントミラーを形成している。
次に、第一中間信号生成回路11aの動作について説明する。第一中間信号生成回路11aは、読み出し端子1Xから入力値に対応する入力信号、例えば、図2に示した電圧viが入力されると、N型MOSFET111aのゲート‐ソース間電圧及びN型MOSFET112aのバイアス電圧に応じた電圧v1を積演算素子113aの読み出し端子に印加する。この電圧v1は、第一中間信号の一例である。そして、積演算素子113aの読み出し端子と共通端子との間に、当該電圧に応じた電流が流れ、当該電流及び積演算素子113aの抵抗の大きさに応じた電圧がN型MOSFET114aのゲートに印加される。
N型MOSFET114aのドレイン‐ソース間には、N型MOSFET114aのゲートに印加された電圧に応じた電流i1が流れる。この電流i1は、第二中間信号の一例であり、カレントミラーを構成しているP型MOSFET115aのドレイン‐ソース間にも流れ、P型MOSFET116aのドレイン‐ソース間に流れる電流として転写され、第二中間信号生成回路12aへ出力される。
なお、第一中間信号生成回路11bは、N型MOSFET111bと、N型MOSFET112bと、積演算素子113bと、N型MOSFET114bと、P型MOSFET115bと、P型MOSFET116bとを備える。また、第一中間信号生成回路11cは、N型MOSFET111cと、N型MOSFET112cと、積演算素子113cと、N型MOSFET114cと、P型MOSFET115cと、P型MOSFET116cとを備える。第一中間信号生成回路11b及び第一中間信号生成回路11cの構成及び動作は、第一中間信号生成回路11aと同様である。つまり、第一中間信号生成回路11bは、第一中間信号生成回路11aと同様の構成及び動作により第一中間信号、例えば、図2に示した電流i2を第二中間信号生成回路12bに出力する。また、第一中間信号生成回路11cは、第一中間信号生成回路11aと同様の構成及び動作により第一中間信号、例えば、図2に示した電流i3を第二中間信号生成回路12cに出力する。
以上の説明の通り、冗長化回路11は、積演算素子113a、積演算素子113b及び積演算素子113cを有する。冗長化回路11は、入力値に対応する入力信号である電圧viから生成された第一中間信号である電圧v1、電圧v2及び電圧v3を積演算素子113a、積演算素子113b及び積演算素子113c各々に入力する。そして、冗長化回路11は、積演算素子113a、積演算素子113b及び積演算素子113c各々により第一中間信号である電圧v1、電圧v2及び電圧v3各々に重みが乗算された信号各々に対応する第二中間信号である電流i1、電流i2及び電流i3を生成して出力する
出力信号生成回路12は、第二中間信号生成回路12aと、第二中間信号生成回路12bと、第二中間信号生成回路12cと、電流出力回路124とを備える。
ここで、第二中間信号生成回路12b及び第二中間信号生成回路12cは、第二中間信号生成回路12aと同様の構成を有し、第二中間信号生成回路12aと同様に動作する。そこで、以下の説明では、出力信号生成回路12について第二中間信号生成回路12aを中心に説明する。
まず、第二中間信号生成回路12aの構成について説明する。図2に示すように、第二中間信号生成回路12aは、P型MOSFET121aと、N型MOSFET122aと、N型MOSFET123aとを備える。
P型MOSFET121aは、ゲートがP型MOSFET121aのドレイン、N型MOSFET122aのドレイン及びN型MOSFET123aのゲートに接続されており、N型MOSFET123aのゲートに接続されており、ドレインがP型MOSFET121aのゲート、N型MOSFET122aのドレイン及びN型MOSFET123aのゲートに接続されており、ソースがP型MOSFET116aのドレインに接続されている。
N型MOSFET122aは、ゲートがN型MOSFET123aのソース及び電流出力回路124を構成しているN型MOSFETのゲートに接続されており、ドレインがP型MOSFET121aのゲート、P型MOSFET121aのドレイン及びN型MOSFET123aのゲートに接続されており、ソースがVSSに接続されている。
N型MOSFET123aは、ゲートがP型MOSFET121aのゲート、P型MOSFET121aのドレイン及びN型MOSFET122aのドレインに接続されており、ドレインがVDDに接続されており、ソースがN型MOSFET122aのゲート及び電流出力回路124を構成しているN型MOSFETのゲートに接続されている。
次に、第二中間信号生成回路12aの動作について説明する。第二中間信号生成回路12aは、第一中間信号生成回路11aから出力された電流i1が入力される。電流i1は、P型MOSFET121aのソース‐ドレイン間及びN型MOSFET122aのドレイン‐ソースを流れる。これにより、N型MOSFET123aのドレイン‐ソース間には、電流i1に応じた電流が流れ、当該電流及びN型MOSFET123aの内部抵抗に応じた電圧がN型MOSFET122aのゲート及びN型MOSFET123aのソースに印加される。
なお、第二中間信号生成回路12bは、P型MOSFET121bと、N型MOSFET122bと、N型MOSFET123bとを備える。また、第二中間信号生成回路12cは、P型MOSFET121cと、N型MOSFET122cと、N型MOSFET123cとを備える。第二中間信号生成回路12b及び第二中間信号生成回路12cの構成及び動作は、第二中間信号生成回路12aと同様である。
図2に示すように、電流出力回路124は、N型MOSFETを含む。このN型MOSFETは、ゲートがN型MOSFET122aのゲート、N型MOSFET122bのゲート及びN型MOSFET122cゲートに接続されており、ソースがVSSに接続されている。このN型MOSFETは、N型MOSFET122aのゲートに印加される電圧、N型MOSFET122bのゲートに印加される電圧及びN型MOSFET122cのゲートに印加される電圧に基づいて決まる電圧がゲートに印加される。これにより、このN型MOSFETのドレイン‐ソース間に図2に示した電流iが流れる。この電流iは、出力信号の一例であり、例えば、カレントミラーにより転写され、積演算素子1から共通端子1Yに出力される。
以上の説明の通り、出力信号生成回路12は、第二中間信号である電流i1、電流i2及び電流i3に基づいて出力信号である電流iを生成して出力する。
次に、図3を参照しながら、第一実施形態に係る積演算素子の一例について説明する。図3は、第一実施形態に係る抵抗変化素子の一例を示す図である。上述した積演算素子113a、積演算素子113b及び積演算素子113cは、例えば、図3に示した抵抗変化素子である。以下の説明では、積演算素子113aを例に挙げて説明する。また、図3を使用した説明では、図3に示したx軸、y軸及びz軸を使用する。x軸、y軸及びz軸は、右手系の三次元直交座標を形成している。
図3に示すように、積演算素子113aは、例えば、可変抵抗113Rと、読み出し端子113Xと、共通端子113Yと、書き込み端子113Zとを有する抵抗変化素子である。
可変抵抗113Rは、例えば、磁化固定層1131と、非磁性層1132と、第1領域1133と、磁壁1134と、第2領域1135と、第1磁化供給層1136と、第2磁化供給層1137とを備える。磁化固定層1131、非磁性層1132、第1領域1133、第2領域1135、第1磁化供給層1136及び第2磁化供給層1137は、z軸方向に積層された薄い直方体状に形成されており、最も面積が大きな面がxy平面と平行で第1領域1133と第2領域1135と電気的、磁気的に接続されている。磁化固定層1131、非磁性層1132、第1領域1133、第2領域1135、第1磁化供給層1136及び第2磁化供給層1137の積層順序はこの通りであるが、積層方向は逆の方向でも良い。その場合、読み出し端子113Xおよび共通端子113Y及び書き込み端子113Zの位置も逆になる。
磁化固定層1131は、磁化方向がz方向に固定されている。ここで、磁化が固定されるとは、磁壁1134導入するための初期化時及び書き込み電流を使用した書き込み前後において磁化方向が変化しないことを意味する。また、磁化固定層1131は、例えば、面内磁気異方性を有する面内磁化膜、垂直磁気異方性を有する垂直磁化膜であってもよい。
非磁性層1132は、ひとつの面がz方向の磁化固定層1131が読み出し端子113Xと接する面と反対側の面と接している。z方向のもうひとつの面は、第1領域1133及び第2領域1135と接している。磁化固定層1131のz方向側を向いている面と非磁性層1132z方向側を向いている面とは、互いに形状及び面積が等しくなっていてもよいが、非磁性層1132が、xy平面上で第1領域1133、第2領域1135を覆うように広がっていて、磁化固定層1131よりも大きくてもよい。また、非磁性層1132は、積演算素子113aが磁化固定層1131に対する磁化自由層の磁化状態の変化を抵抗値の変化として読み出すために使用される。
第1領域1133、磁壁1134及び第2領域1135は、磁化自由層を形成している。磁化自由層は、強磁性材料により作製されており、第1領域1133と第2領域1135の磁化方向はz方向において互いに反対の方向である。磁壁1134は第1領域1133と第2領域1135の略中間の方向を向いている。例えば、第1領域1133の磁化方向が+z方向に固定されている場合、磁化固定層1131と非磁性層1132がz方向で接する面と反対の面で接している。一方、第2領域1135の磁化方向が-z方向に固定されている場合、磁化固定層1131と非磁性層1132がz方向で接する面と反対の面で接している。磁壁1134は、y方向において第1領域1133と第2領域1135とに挟まれている。
第1磁化供給層1136は、z方向において磁化固定層1131と重なっていないことが望ましく、+z方向側を向いている面が第1領域1133の-z方向側を向いている面と接している。また、第1磁化供給層1136は、第1領域1133のうちz方向において第1磁化供給層1136と重なる範囲の磁化方向を所望の方向に固定する機能を有する。さらに、第1磁化供給層1136の-z方向側を向いている面には、書き込み端子113Zが接続されている。なお、第1磁化供給層1136は、例えば、磁化固定層1131に使用可能な強磁性材料と同じ材料、IrMn等の反強磁性体、Ru、Ir等の非磁性中間層を挟んだ強磁性体/非磁性体/強磁性体からなる合成反強磁性構造(Synthetic antiferromagnetic)により作製されている。
第2磁化供給層1137は、z方向において磁化固定層1131と重なっていないことが望ましく、+z方向側を向いている面が第2領域1135の-z方向側を向いている面と接している。また、第2磁化供給層1137は、第2領域1135のうちz方向において第2磁化供給層1137と重なる範囲の磁化方向を所望の方向に固定する機能を有する。さらに、第2磁化供給層1137の-z方向側を向いている面には、共通端子113Yが接続されている。なお、第2磁化供給層1137は、例えば、磁化固定層1131に使用可能な強磁性材料と同じ材料、IrMn等の反強磁性体、Ru、Ir等の非磁性中間層を挟んだ強磁性体/非磁性体/強磁性体からなる合成反強磁性構造により作製されている。
可変抵抗113Rにおける磁化固定層1131の磁化方向と、第1領域1133、第2領域1135、第1磁化供給層1136、第2磁化供給層1137の磁化方向はz方向だけでなく、x方向、y方向であっても良い。その場合、磁化固定層1131の磁化方向と、第1領域1133、第2領域1135、第1磁化供給層1136、第2磁化供給層1137の磁化方向は同じであることが望ましい。例えば、磁化固定層1131の磁化方向が+y方向であった場合、第1領域の磁化方向は+y方向、第2領域の磁化方向は-y方向、第1磁化供給層1136の磁化方向は+y方向、第2磁化供給層1137の磁化方向は-y方向である。
積演算素子113aは、共通端子113Yと書き込み端子113Zとの間に流す書き込み電流の大きさ及び時間を調整することにより、y方向における磁壁1134の位置を変化させる。これにより、積演算素子113aは、磁化方向が平行な領域と磁化方向が反平行な領域との面積の比率を連続的に変化させ、可変抵抗113Rの抵抗値を略線形に変化させることができる。ここで、磁化方向が平行な領域とは、第1領域1133のうちz方向において磁化固定層1131と重なっている部分の面積である。また、磁化方向が反平行な領域とは、第2領域1135のうちz方向において磁化固定層1131と重なっている部分の面積である。また、書き込み電流は、書き込み端子113Zに入力される。書き込み電流の大きさ及び時間は、電流パルスの数及び幅の少なくとも一方により調整される。
なお、積演算素子113aは、トンネル磁気抵抗効果素子であってもよい。トンネル磁気抵抗効果素子は、磁化固定層と、磁化自由層と、非磁性層としてのトンネルバリア層とを備える。磁化固定層及び磁化自由層は、強磁性材料で作製されており、磁化を有する。トンネルバリア層は、磁化固定層と磁化自由層との間に挟まれている。トンネル磁気抵抗効果素子は、磁化固定層が有する磁化と磁化自由層が有する磁化との関係を変化させることにより、抵抗値を変化させることができる。
和演算回路10Sは、積演算部1、3、5、…、k-1各々が出力する出力信号の総和を演算する。同様に、和演算回路20Sは、積演算部2、4、6、…、k各々が出力する出力信号の総和を演算する。
次に、図4を参照しながら、第一実施形態に係る積和演算器が実行するニューラルネットワーク演算の一例について説明する。図4は、第一実施形態に係る積和演算器が実行するニューラルネットワーク演算の一例を説明するための図である。
ノード100、300、…、k00は、入力層を形成している。パーセプトロン1000、2000は、隠れ層又は出力層を形成している。ノード100は、図1に示した入力部1Eに対応しており、入力信号に対応する入力値をパーセプトロン1000、2000に対して出力する。同様に、ノード300、500、…、k00は、それぞれ入力部3E、5E…、k-1Eに対応しており、入力信号に対応する入力値をパーセプトロン1000、2000に対して出力する。
矢印1Aは、積演算部1に対応しており、ノード100が出力した入力値に重みが乗算され、出力信号に対応する値がパーセプトロン1000に入力されることを表している。同様に、矢印2Aは、積演算部2に対応しており、ノード100が出力した入力値に重みが乗算され、出力信号に対応する値がパーセプトロン2000に入力されることを表している。これらは、矢印3A、4A、5A、6A…、k-1A、kAについても同様である。
パーセプトロン1000は、図1に示した和演算回路10Sに対応しており、矢印1A、3A、5A…、k-1Aから入力された値の総和を演算し、この総和に活性化関数処理を施して出力する。同様に、パーセプトロン20は、図1に示した和演算回路20Sに対応しており、矢印2A、4A、6A…、kAから入力された値の総和を演算し、この総和に活性化関数処理を施して出力する。
以上、第一実施形態に係る積和演算器10について説明した。積和演算器10は、入力値に対応する入力信号である電圧viから生成された第一中間信号である電圧v1、電圧v2及び電圧v3を積演算素子113a、積演算素子113b及び積演算素子113c各々に入力する。次に、積和演算器10は、積演算素子113a、積演算素子113b及び積演算素子113c各々により第一中間信号である電圧v1、電圧v2及び電圧v3各々に重みが乗算された信号各々に対応する第二中間信号である電流i1、電流i2及び電流i3を生成して出力する。そして、積和演算器10は、第二中間信号である電流i1、電流i2及び電流i3に基づいて出力信号である電流iを生成し、出力信号である電流iを出力する。
したがって、積和演算器10は、積演算部1、2、3、4、5、6、…、k-1又はkに含まれる積演算素子の少なくとも一つが故障し、故障した積演算素子から正常時と異なる第一中間信号が出力されても、複数の第二中間信号に基づいて適切な出力信号を出力することができる。これにより、積和演算器10は、積演算素子が故障しても正確な積和演算を実行することができる。
なお、ここで言う故障は、例えば、ショートモード故障、オープンモード故障である。ショートモード故障は、積和演算素子の非磁性層、例えば、積演算素子113aの非磁性層が破壊されることにより絶縁破壊が起こり、読み出し端子と共通端子との間に極端に大きな電流が流れてしまう現象である。オープンモード故障は、積和演算素子、例えば、積演算素子113aの抵抗値が極端に大きくなり、読み出し端子と共通端子との間に流れる電流が極端に小さくなってしまう現象である。
また、積和演算器10は、第一中間信号である電圧v1、電圧v2及び電圧v3各々をソースフォロワにより生成する。したがって、積和演算器10は、特に制御等を実行しなくても、入力信号が入力されただけで自動的に第一中間信号である電圧v1、電圧v2及び電圧v3を生成することができる。
なお、第一実施形態では、冗長化回路11が第一中間信号生成回路11a、第一中間信号生成回路11b及び第一中間信号生成回路11cを備えており、出力信号生成回路12が第二中間信号生成回路12a、第二中間信号生成回路12b及び第二中間信号生成回路12cを備えている場合を例に挙げて説明したが、これに限定されない。例えば、冗長化回路11が第一中間信号生成回路11aを備えておらず、出力信号生成回路12が第二中間信号生成回路12aを備えていなくてもよい。或いは、冗長化回路11が別の第一中間信号生成回路を少なくとも一つ更に備えており、出力信号生成回路12が別の第二中間信号生成回路を少なくとも一つ更に備えていてもよい。
[第二実施形態]
図5を参照しながら、第二実施形態に係る積和演算器について説明する。図5は、第二実施形態に係る積演算部の一例を示す図である。第二実施形態に係る積和演算器は、上述した冗長化回路11の代わりに図5に示した冗長化回路13を備えている点が第一実施形態に係る積和演算器10と異なる。
そこで、第二実施形態の説明では、第一実施形態と異なる事項のみを説明し、重複する説明を省略する。
図5を参照しながら、第二実施形態に係る積和演算器について説明する。図5は、第二実施形態に係る積演算部の一例を示す図である。第二実施形態に係る積和演算器は、上述した冗長化回路11の代わりに図5に示した冗長化回路13を備えている点が第一実施形態に係る積和演算器10と異なる。
そこで、第二実施形態の説明では、第一実施形態と異なる事項のみを説明し、重複する説明を省略する。
冗長化回路13は、第一中間信号生成回路13aと、第一中間信号生成回路13bと、第一中間信号生成回路13cとを備える。
ここで、第一中間信号生成回路13b及び第一中間信号生成回路13cは、第一中間信号生成回路13aと同様の構成を有し、第一中間信号生成回路13aと同様に動作する。そこで、以下の説明では、冗長化回路13について第一中間信号生成回路13aを中心に説明する。
まず、第一中間信号生成回路13aの構成について説明する。図5に示すように、第一中間信号生成回路13aは、抵抗器131aと、積演算素子132aと、N型MOSFET133aと、スイッチ134aと、P型MOSFET135aと、P型MOSFET136aとを備える。
抵抗器131aは、一端がVDDに接続されており、他端が積演算素子132aの読み出し端子及びN型MOSFET133aのゲートに接続されている。積演算素子132aは、読み出し端子が抵抗器131aの他端及びN型MOSFET133aのゲートに接続されており、共通端子がVSS及び図1に示した共通端子1Yに接続されており、書き込み端子がCTR、すなわち図1に示した書き込み端子1Zに接続されている。
N型MOSFET133aは、ゲートが抵抗器131aの他端及び積演算素子132aの読み出し端子に接続されており、ドレインがスイッチ134aの一端に接続されており、ソースがVSSに接続されている。スイッチ134aは、一端がN型MOSFET133aのドレインに接続されており、他端がP型MOSFET135aのドレイン、P型MOSFET135aのゲート及びP型MOSFET136aのゲートに接続されている。
P型MOSFET135aは、ゲートがスイッチ134aの他端、P型MOSFET135aのドレイン及びP型MOSFET136aのゲートに接続されており、ドレインがスイッチ134aの他端、P型MOSFET135aのゲート及びP型MOSFET136aのゲートに接続されており、ソースがVDDに接続されている。P型MOSFET136aは、ゲートがスイッチ134aの他端、P型MOSFET135aのドレイン及びP型MOSFET135aのゲートに絶族されており、ドレインがP型MOSFET121aのソースに接続されており、ソースがVDDに接続されている。また、P型MOSFET135a及びP型MOSFET136aは、カレントミラーを形成している。
次に、第一中間信号生成回路13aの動作について説明する。第一中間信号生成回路13aは、読み出し端子1Xに入力信号である電圧viが印加されると、抵抗器131aの抵抗の大きさ及び積演算素子132aの抵抗の大きさに応じた電圧v1を積演算素子132aの読み出し端子に印加する。この電圧v1は、第一中間信号の一例である。そして、積演算素子132aの読み出し端子と共通端子との間に、当該電圧に応じた電流が流れ、当該電流、積演算素子132aの抵抗の大きさ及び抵抗器131aの抵抗の大きさに応じた電圧がN型MOSFET133aのゲートに印加される。
スイッチ134aが導通状態になっている場合、N型MOSFET133aのドレイン‐ソース間には、N型MOSFET133aのゲートに印加された電圧に応じた電流i1が流れる。この電流i1は、第二中間信号の一例であり、カレントミラーを構成しているP型MOSFET135aのドレイン‐ソース間にも流れ、P型MOSFET136aのドレイン‐ソース間に流れる電流として転写され、第二中間信号生成回路12aへ出力される。なお、スイッチ134aが非導通状態になっている場合、P型MOSFET135aのソース‐ドレイン間に電流は流れない。また、スイッチ134aは、積和演算が実行される場合、導通状態になり、積和演算が実行されない場合、非導通状態になる。
なお、第一中間信号生成回路13bは、抵抗器131bと、積演算素子132bと、N型MOSFET133bと、スイッチ134bと、P型MOSFET135bと、P型MOSFET136bとを備える。また、第一中間信号生成回路13cは、抵抗器131cと、積演算素子132cと、N型MOSFET133cと、スイッチ134cと、P型MOSFET135cと、P型MOSFET136cとを備える。第一中間信号生成回路13b及び第一中間信号生成回路13cの構成及び動作は、第一中間信号生成回路13aと同様である。つまり、第一中間信号生成回路13bは、第一中間信号生成回路13aと同様の構成及び動作により第一中間信号、例えば、図5に示した電流i2を第二中間信号生成回路12bに出力する。また、第一中間信号生成回路13cは、第一中間信号生成回路13aと同様の構成及び動作により第一中間信号、例えば、図5に示した電流i3を第二中間信号生成回路12cに出力する。
以上、第二実施形態に係る積和演算器について説明した。第二実施形態に係る積和演算器は、第一実施形態に係る積和演算器10と同様の効果を奏することができる。
また、第二実施形態に係る積和演算器は、第一実施形態に係る積和演算器10が備えるソースフォロワの代わりに積演算素子132a、積演算素子132b及び積演算素子132c各々に直列接続された抵抗器131a、抵抗器131b及び抵抗器131cを備える。
したがって、第二実施形態に係る積和演算器は、第一実施形態に係る積和演算器10よりも簡易な構成となるため、回路規模の増加を抑制し、製造コストを抑制することができる。
[第三実施形態]
図6を参照しながら、第三実施形態に係る積和演算器について説明する。図6は、第三実施形態に係る積演算部の一例を示す図である。第三実施形態に係る積和演算器は、上述した冗長化回路11及び冗長化回路13の代わりに図6に示した冗長化回路15を備えている点が第一実施形態に係る積和演算器10及び第二実施形態に係る積和演算器と異なる。そこで、第三実施形態の説明では、第一実施形態及び第二実施形態と異なる事項のみを説明し、重複する説明を省略する。
図6を参照しながら、第三実施形態に係る積和演算器について説明する。図6は、第三実施形態に係る積演算部の一例を示す図である。第三実施形態に係る積和演算器は、上述した冗長化回路11及び冗長化回路13の代わりに図6に示した冗長化回路15を備えている点が第一実施形態に係る積和演算器10及び第二実施形態に係る積和演算器と異なる。そこで、第三実施形態の説明では、第一実施形態及び第二実施形態と異なる事項のみを説明し、重複する説明を省略する。
冗長化回路15は、第一中間信号生成回路15aと、第一中間信号生成回路15bと、第一中間信号生成回路15cとを備える。
ここで、第一中間信号生成回路15b及び第一中間信号生成回路15cは、第一中間信号生成回路15aと同様の構成を有し、第一中間信号生成回路15aと同様に動作する。そこで、以下の説明では、冗長化回路15について第一中間信号生成回路15aを中心に説明する。
まず、第一中間信号生成回路15aの構成について説明する。図5に示すように、第一中間信号生成回路15aは、積演算素子152aと、スイッチ154aと、P型MOSFET155aと、P型MOSFET156aとを備える。
積演算素子152aは、読み出し端子がスイッチ154aの一端に接続されており、共通端子がVSS及び図1に示した共通端子1Yに接続されており、書き込み端子がCTR、すなわち図1に示した書き込み端子1Zに接続されている。
スイッチ154aは、一端が積演算素子152aの読み出し端子に接続されており、他端がP型MOSFET155aのドレイン、P型MOSFET155aのゲート及びP型MOSFET156aのゲートに接続されている。
P型MOSFET155aは、ゲートがスイッチ154aの他端、P型MOSFET155aのドレイン及びP型MOSFET156aのゲートに接続されており、ドレインがスイッチ154aの他端、P型MOSFET155aのゲート及びP型MOSFET156aのゲートに接続されており、ソースがVDDに接続されている。P型MOSFET156aは、ゲートがスイッチ154aの他端、P型MOSFET155aのドレイン及びP型MOSFET155aのゲートに絶族されており、ドレインがP型MOSFET121aのソースに接続されており、ソースがVDDに接続されている。また、P型MOSFET155a及びP型MOSFET156aは、カレントミラーを形成している。
次に、第一中間信号生成回路15aの動作について説明する。第一中間信号生成回路15aは、読み出し端子1Xに入力信号である電圧viが印加されると、P型MOSFET155a及びP型MOSFET156aにより形成されているカレントミラーの抵抗の大きさ及び積演算素子152aの抵抗の大きさに応じた電圧v1を積演算素子152aの読み出し端子に印加する。この電圧v1は、第一中間信号の一例である。そして、積演算素子152aの読み出し端子と共通端子との間に、当該電圧に応じた電流が流れ、当該電流、カレントミラーの抵抗の大きさ及び積演算素子152aの抵抗の大きさに応じた電圧がN型MOSFET153aのゲートに印加される。
スイッチ154aが導通状態になっている場合、積演算素子152aの読み出し端子と共通端子との間には、電圧v1及び積演算素子152aの抵抗の大きさに応じた電流i1が流れる。この電流i1は、第二中間信号の一例であり、カレントミラーを構成しているP型MOSFET155aのドレイン‐ソース間にも流れ、P型MOSFET156aのドレイン‐ソース間に流れる電流として転写され、第二中間信号生成回路12aへ出力される。なお、スイッチ154aが非導通状態になっている場合、P型MOSFET155aのソース‐ドレイン間に電流は流れない。また、スイッチ154aは、積和演算が実行される場合、導通状態になり、積和演算が実行されない場合、非導通状態になる。
なお、第一中間信号生成回路15bは、積演算素子152bと、スイッチ154bと、P型MOSFET155bと、P型MOSFET156bとを備える。また、第一中間信号生成回路15cは、積演算素子152cと、スイッチ154cと、P型MOSFET155cと、P型MOSFET156cとを備える。第一中間信号生成回路15b及び第一中間信号生成回路15cの構成及び動作は、第一中間信号生成回路15aと同様である。つまり、第一中間信号生成回路15bは、第一中間信号生成回路15aと同様の構成及び動作により第一中間信号、例えば、図6に示した電流i2を第二中間信号生成回路12bに出力する。また、第一中間信号生成回路15cは、第一中間信号生成回路15aと同様の構成及び動作により第一中間信号、例えば、図6に示した電流i3を第二中間信号生成回路12cに出力する。
以上、第三実施形態に係る積和演算器について説明した。第三実施形態に係る積和演算器は、第一実施形態に係る積和演算器10及び第二実施形態に係る積和演算器と同様の効果を奏することができる。
また、第三実施形態に係る積和演算器は、第一実施形態に係る積和演算器10が備えるソースフォロワを有しない。さらに、第三実施形態に係る積和演算器は、第二実施形態に係る抵抗器131aと、抵抗器131bと、抵抗器131cと、N型MOSFET133aと、N型MOSFET133bと、N型MOSFET133cとを有しない。一方、第三実施形態に係る積和演算器は、積演算素子152a、積演算素子152b及び積演算素子152c各々に直列接続されたカレントミラー各々の内部抵抗を使用して第一中間信号である電圧v1、電圧v2及び電圧v3を生成する。
したがって、第三実施形態に係る積和演算器は、第一実施形態に係る積和演算器10及び第二実施形態に係る積和演算器よりも簡易な構成となるため、回路規模の増加を抑制し、製造コストを抑制することができる。
なお、上述した三つの実施形態では、出力信号生成回路12が第二中間信号である電流i1、電流i2及び電流i3に基づいて出力信号である電流iを生成する場合を例に挙げて説明したが、これに限定されない。
例えば、出力信号生成回路12は、第二中間信号である電流i1、電流i2及び電流i3の中から最小値に対応する信号を出力信号とする最小値選択回路であってもよい。或いは、出力信号生成回路12は、第二中間信号である電流i1、電流i2及び電流i3の中から最頻値に対応する信号を出力信号とする多数決回路であってもよい。
また、上述した三つの実施形態では、第一中間信号である電圧v1、電圧v2及び電圧v3が冗長化回路11、冗長化回路13又は冗長化回路15により生成される場合を例に挙げたが、これに限定されない。例えば、冗長化回路11、冗長化回路13及び冗長化回路15は、外部で生成された第一中間信号である電圧v1、電圧v2及び電圧v3が印加されてもよい。
また、上述した積和演算器10は、論理演算デバイス又はニューロモーフィックデバイスに含まれていてもよい。ここで言う論理演算デバイスは、複数の積和演算器10を組み合わせることにより形成された論理回路、例えば、AND回路、ОR回路である。また、ここで言う論理演算は、ディープラーニングを含む概念である。また、ここで言うニューロモーフィックデバイスは、脳の構造及びニューロンと呼ばれる神経細胞が発火する仕組みを応用したデバイスであり、機械学習等に使用される。
また、上述した第一実施形態に係る積和演算器10等の各装置の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録させ、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませて実行することにより、処理を行ってもよい。
ここで言うコンピュータシステムは、例えば、オペレーティング・システム(Operating System:OS)、周辺機器等のハードウェアを含んでいてもよい。また、コンピュータ読み取り可能な記録媒体は、例えば、可搬媒体、記憶装置である。可搬媒体は、例えば、フロッピーディスク、光磁気ディスク、ROM(Read Only Memory)、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disc)である。記憶装置は、例えば、コンピュータシステムに内蔵されるハードディスクである。さらに、コンピュータ読み取り可能な記録媒体は、ネットワーク又は通信回線を介してプログラムが送信される場合にサーバ又はクライアントとなるコンピュータシステム内部の揮発性メモリであってもよい。
また、上述したプログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、又は、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する伝送媒体とは、インターネット等のネットワーク又は電話回線等の通信回線のように情報を伝送する機能を有する媒体をいう。
また、上述したプログラムは、上述した機能の一部を実現するためのものであってもよく、上述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるプログラム、いわゆる差分プログラムであってもよい。上述したプログラムは、例えば、コンピュータが備えるCPU(Central Processing Unit)等のプロセッサにより読み出されて実行される。
以上、本発明の第一実施形態、第二実施形態及び第三実施形態について図面を参照して詳述したが、具体的な構成はこれら三つの第一実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。上述した各第一実施形態に記載の構成を組み合わせてもよい。
1…積和演算器、11,13,15…冗長化回路、12…出力信号生成回路、10S,20S…和演算回路
Claims (10)
- 複数の積演算素子を有し、入力値に対応する入力信号から生成された複数の第一中間信号を複数の前記積演算素子各々に入力し、複数の前記積演算素子各々により複数の前記第一中間信号各々に重みが乗算された信号各々に対応する複数の第二中間信号を生成して出力する複数の冗長化回路と、
複数の前記第二中間信号に基づいて出力信号を生成し、前記出力信号を出力する複数の出力信号生成回路と、
複数の前記出力信号生成回路各々が出力した前記出力信号の総和を演算する和演算回路と、
を備える積和演算器。 - 複数の前記積演算素子各々は、書き込み端子と、共通端子と、読み出し端子とを有する抵抗変化素子である、
請求項1に記載の積和演算器。 - 複数の前記第一中間信号各々は、ソースフォロワを使用して生成される、
請求項1又は請求項2に記載の積和演算器。 - 複数の前記第一中間信号各々は、複数の前記積演算素子各々に直列接続された複数の抵抗器各々を使用して生成される、
請求項1又は請求項2に記載の積和演算器。 - 複数の前記第一中間信号各々は、複数の前記積演算素子各々に直列接続された複数のカレントミラー各々の内部抵抗を使用して生成される、
請求項1又は請求項2に記載の積和演算器。 - 前記出力信号生成回路は、複数の前記第二中間信号の中から最小値に対応する信号を前記出力信号とする最小値選択回路である、
請求項1から請求項5のいずれか一つに記載の積和演算器。 - 前記出力信号生成回路は、複数の前記第二中間信号の中から最頻値に対応する信号を前記出力信号とする多数決回路である、
請求項1から請求項5のいずれか一つに記載の積和演算器。 - 請求項1から請求項7のいずれか一つに記載の積和演算器を備える論理演算デバイス。
- 請求項1から請求項7のいずれか一つに記載の積和演算器を備えるニューロモーフィックデバイス。
- 請求項1から請求項7のいずれか一つに記載の積和演算器による積和演算方法であって、
入力値に対応する入力信号から生成された複数の第一中間信号を複数の積演算素子各々に入力し、複数の前記積演算素子各々により複数の前記第一中間信号各々に重みが乗算された信号各々に対応する複数の第二中間信号を生成して出力する第二中間信号生成工程と、
複数の前記第二中間信号に基づいて出力信号を生成し、前記出力信号を出力する複数の出力信号生成工程と、
複数の前記出力信号生成回路各々が出力した前記出力信号の総和を演算する和演算工程と、
を含む積和演算方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/011504 WO2020188755A1 (ja) | 2019-03-19 | 2019-03-19 | 積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法 |
US17/439,992 US20220171603A1 (en) | 2019-03-19 | 2019-03-19 | Multiply-accumulate calculation device, logical calculation device, neuromorphic device, and multiply-accumulate calculation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/011504 WO2020188755A1 (ja) | 2019-03-19 | 2019-03-19 | 積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020188755A1 true WO2020188755A1 (ja) | 2020-09-24 |
Family
ID=72519753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/011504 WO2020188755A1 (ja) | 2019-03-19 | 2019-03-19 | 積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20220171603A1 (ja) |
WO (1) | WO2020188755A1 (ja) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017211735A (ja) * | 2016-05-24 | 2017-11-30 | ソニー株式会社 | 演算処理装置、及び、演算処理方法 |
-
2019
- 2019-03-19 WO PCT/JP2019/011504 patent/WO2020188755A1/ja active Application Filing
- 2019-03-19 US US17/439,992 patent/US20220171603A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017211735A (ja) * | 2016-05-24 | 2017-11-30 | ソニー株式会社 | 演算処理装置、及び、演算処理方法 |
Also Published As
Publication number | Publication date |
---|---|
US20220171603A1 (en) | 2022-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Arunachalam et al. | On the robustness of bucket brigade quantum RAM | |
Phatak et al. | Complete and partial fault tolerance of feedforward neural nets | |
US20170124025A1 (en) | Computer architecture with resistive processing units | |
JP6540931B1 (ja) | 積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法 | |
Kim et al. | Automated synthesis of multiple analog circuits using evolutionary computation for redundancy-based fault-tolerance | |
Leylaz et al. | Identification of nonlinear dynamical systems with time delay | |
Traiola et al. | Design space exploration of approximation-based quadruple modular redundancy circuits | |
EP4137999A1 (fr) | Circuit neuromorphique à base de cellules rram 2t2r | |
Parhi | Analysis of stochastic logic circuits in unipolar, bipolar and hybrid formats | |
Briggs | Vasconcelos’ conjecture on the conormal module | |
Kim et al. | VCAM: Variation compensation through activation matching for analog binarized neural networks | |
WO2020188755A1 (ja) | 積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法 | |
Jose et al. | Fault tolerant and energy efficient signal processing on FPGA using evolutionary techniques | |
Patrikis | On the sign of regular algebraic polarizable automorphic representations | |
Gao et al. | Reliable classification with ensemble convolutional neural networks | |
Winstead | Tutorial on stochastic computing | |
WO2019131147A1 (ja) | 積和演算器、ニューロモーフィックデバイスおよび積和演算器の使用方法 | |
Mane et al. | Stateful-NOR based reconfigurable architecture for logic implementation | |
Muthulakshmi et al. | Memristor-based approximate adders for error resilient applications | |
Revanna et al. | Memristor based high fan-out logic gates | |
JPWO2021161808A5 (ja) | 双安定回路、電子回路および記憶回路 | |
Li et al. | Memristive combinational logic circuits and stochastic computing implementation scheme | |
Biswas et al. | Memristor-Specific Failures: New Verification Methods and Emerging Test Problems | |
Diouf et al. | Statically constrained nonlinear models with application to IC buffers | |
Mondal et al. | An Online Testing Scheme for Detection of Gate Faults in ESOP-Based Reversible Circuit |
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: 19920419 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 19920419 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |