Neural network circuit
10943170 ยท 2021-03-09
Assignee
Inventors
Cpc classification
G11C2213/77
PHYSICS
G11C2013/005
PHYSICS
G11C2013/0088
PHYSICS
G11C13/0007
PHYSICS
International classification
G06N3/06
PHYSICS
G11C13/00
PHYSICS
Abstract
A neural network circuit includes: a storage part that includes memristors in a lattice shape; a voltage application circuit that applies a bias voltage to the storage part; a controller that controls the voltage application circuit to perform to a selection element, writing, erasing, or reading; and multiple conversion amplification circuits that convert a current flowing into a voltage, and output the voltage.
Claims
1. A neural network circuit comprising: a storage part that includes memristors connected in a lattice shape, each of the memristors being a variable resistance element having a bipolar characteristic, wherein the memristors include a selection element and an unselection element; a voltage application circuit that is configured to apply a bias voltage to the storage part; a controller that is configured to control the voltage application circuit to perform to the selection element, at least one of writing, erasing, or reading of data, wherein the controller is configured to reduce a resistance value in performing the writing, the controller is configured to increase the resistance value in performing the erasing, and the controller is configured to increase the resistance value in performing the reading; and a plurality of conversion amplification circuits that are configured to convert a current flowing through at least one of the memristors into a voltage, and to output the voltage, wherein: in performing at least one of the writing, the erasing, or the reading of the data to the selection element of the storage part, the controller varies the bias voltage and reduces disturbance to the unselection element; a reference voltage is expressed by V.sub.REF and a writing voltage is expressed by V.sub.SET; in performing the writing of the data, the controller applies a first voltage to a line connected with a first end of the selection element, the first voltage being expressed by V.sub.REF+V.sub.SET, a second voltage to a line connected with a second end of the selection element, the second voltage being expressed by V.sub.REFV.sub.SET/2, a third voltage to a line in a side of the first end other than the line connected with the first end of the selection element, the third voltage being expressed by V.sub.REFV.sub.SET/4, and a fourth voltage to a line in a side of the second end other than the line connected with the second end of the selection element, the fourth voltage being expressed by V.sub.REF+V.sub.SET/4.
2. The neural network circuit according to claim 1, wherein: an erasing voltage is expressed by V.sub.RESET, in performing the erasing of the data, the controller applies a fifth voltage to the line connected with the first end of the selection element, the fifth voltage being expressed by V.sub.REFV.sub.RESET/2, a sixth voltage to the line connected with the second end of the selection element, the sixth voltage being expressed by V.sub.REF+V.sub.RESET/2, and the reference voltage to a line other than the line connected with the first end of the selection element and the line connected with the second end of the selection element.
3. The neural network circuit according to claim 1, wherein: the conversion amplification circuit includes a feedback resistor; and in response to application of the bias voltage to the storage part, the controller causes the feedback resistor to be short-circuited, causing the feedback resistor to operate as a voltage follower.
4. The neural network circuit according to claim 1, wherein: the voltage application circuit includes a digital-to-analog converter that is configured to set a polarity of an output voltage by 1 bit in input data; and the controller generates the bias voltage by barrel-shifting the input data input to the digital-to-analog converter.
5. The neural network circuit according to claim 1, wherein: an reading voltage is expressed by V.sub.READ; in performing the reading of the data, the controller applies a seventh voltage to the line connected with the first end of the selection element, the seventh voltage being expressed by V.sub.REFV.sub.READ, the reference voltage to the line connected with the second end of the selection element, and the reference voltage to the line other than the line connected with the first end of the selection element and the line connected with the second end of the selection element.
6. The neural network circuit according to claim 1, wherein: the line in the side of the first end is arranged along a direction of the line connected with the first end; and the line in the side of the second end is arranged along a direction of the line connected with the second end.
Description
BRIEF DESCRIPTION OF DRAWINGS
(1) The above and other objects, features and advantages of the present disclosure will become more apparent from the following detailed description made with reference to the accompanying drawings. In the drawings:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
DETAILED DESCRIPTION
(15) A neural network circuit includes a two-terminal element as a synapse, the two-terminal element being nonvolatile and capable of varying a conductance value. The two-terminal element is called as a memristor. In the neural network as shown in
(16) As shown in
(17) When the voltage is applied in a case of employing the memristor including the switch or the selector, it may be possible to arbitrarily set an accurate conductance value. However, when the memristor that does not include the switch and the selector is arranged in the lattice shape, disturbance affects the conductance value of the unselection element (also referred to as a non-selection element). For example, a bias method is proposed as shown in
(18) According to the configurations of the third comparative example and the fourth comparative example, a ReRAM (resistive random access memory, registered trademark) stores data by setting binary values of high resistance and low resistance. However, in the neural network circuit requiring setting the arbitrary analog values with high accuracy, it may be required that the voltage applied to the unselection element may be reduced as low as possible.
(19) One embodiment according to the present disclosure will be described. According to the embodiment, it is described for operation of applying the bias voltage at when performing the writing, the erasing, and the reading to the memristor.
(20) As shown in
(21) Line C.sub.1: V.sub.REF+V.sub.SET/2; and
(22) Line R.sub.1: V.sub.REFV.sub.SET/2.
(23) Then, the voltages are applied to the lines C.sub.2 and C.sub.3, R.sub.2 and R.sub.3 other than the line C.sub.1 and the line R.sub.1, respectively, as following:
(24) Lines C.sub.2 and C.sub.3: V.sub.REFV.sub.SET/4; and
(25) Lines R.sub.2 and R.sub.3: V.sub.REF+V.sub.SET/4.
(26) The first ends of the memristors corresponding to unselection elements G.sub.12 and G.sub.13 are commonly connected with the memristor G.sub.11 through the line C.sub.1. A voltage V.sub.SET/4 is applied to both ends of the memristors G.sub.12 and G.sub.13 corresponding to the unselection elements. The second ends of the memristor corresponding to the unselection elements G.sub.21 and G.sub.31 are commonly connected with the memristor G.sub.11 through the line R.sub.1. Similarly, the voltage W.sub.SET/4 is applied to both ends of the memristors G.sub.21 and G.sub.31 corresponding to the unselection elements. A voltage V.sub.SET/2 is applied to both ends of the memristor G.sub.22, G.sub.23, G.sub.32, and G.sub.33, which are the other unselection elements.
(27) The bias voltage V.sub.SET/4 applied to a part of the unselection elements becomes lower than the bias voltages of the third comparative example and the fourth comparative example. Therefore, it may be possible to further reduce the influence of disturbance (also referred to as disturb). In addition, the bias voltage V.sub.SET/2 applied to a part of the other unselection elements becomes an inversion bias. Therefore, it may be possible to ignore the influence of the disturbance. A detailed theory is described in a non-patent literature (Phenomenological Modeling of Memristic Devices Applied Physics A, vol. 118, pp. 770-786, 2015).
(28) As shown in
(29) Line C.sub.1: V.sub.REFV.sub.REST/2; and
(30) Line R.sub.1: V.sub.REF+V.sub.RESET/2.
(31) The reference voltage V.sub.REF is applied to the other lines C.sub.2 and C.sub.3, R.sub.2 and R.sub.3, respectively.
(32) Thereby, the bias voltage V.sub.RESET/2 is applied to both ends of the memristors G.sub.12, G.sub.13, G.sub.21, and G.sub.31 corresponding to the unselection elements. Since the bias voltage V.sub.RESET/2 is inversion bias, it may be possible to ignore the influence of the disturbance. The bias voltage is not applied to both ends of the other memristor G.sub.22, G.sub.23, G.sub.32, and G.sub.33 corresponding to the unselection elements. Therefore, the disturbance does not occur.
(33) As shown in
(34) Line C.sub.1: V.sub.REFV.sub.READ.
(35) The reference voltage V.sub.REF is applied to the other lines C.sub.2 and C.sub.3, R.sub.1 to R.sub.3, respectively.
(36) Thereby, the bias voltage V.sub.READ is applied to both ends of the memristors G.sub.12 and G.sub.13 corresponding to the unselection element. However, it may be possible to ignore the influence of the disturbance since the bias voltage becomes the inversion bias. The bias voltage is not applied to both ends of the other memristors G.sub.21 to G.sub.23, and G.sub.31 to G.sub.33 corresponding to the unselection elements. Therefore, the disturbance does not occur.
(37) Next, a specific configuration for applying each bias voltage will be described. As shown in
(38) The line R of the crossbar 2 is connected with an input terminal of a transimpedance amplifier 5. The transimpedance amplifier 5 converts current flowing through the line R of the crossbar 2 into a voltage in performing the reading. The transimpedance amplifier 5 inputs the voltage to an ADC 6 that is an A/D converter. The ADC 6 converts an input voltage into digital data, and inputs the digital data to the writing control circuit 4. The transimpedance amplifier 5 corresponds to an I/V conversion amplification circuit or a conversion amplification circuit.
(39) The writing control circuit 4 is connected with a microcomputer 7 (or an external control circuit 7) outside the neural network circuit 1. The microcomputer 7 inputs an address and the conductance value of the crossbar 2 to the writing control circuit 4 in order to control the bias voltage applied to the crossbar 2. The writing control circuit 4 inputs the data of the applying voltage corresponding to the address to the DAC 3. The writing control circuit 4 transmits the control signal corresponding to the address to the transimpedance amplifier 5.
(40) The writing control circuit 4 does not operate the ADC 6 in performing the writing of the data and the erasing of the data. The writing control circuit 4 operates the ADC 6 corresponding to the address only in performing the reading. The writing control circuit 4 reads the data. Then, the writing control circuit 4 compares the read data of the ADC 6 with the conductance value input from the microcomputer 7. The writing control circuit 4 performs the writing, the erasing, and the reading again. When the read data of the ADC 6 and the conductance value received from the microcomputer 7 do not match each other, or when the read data of the ADC 6 and the conductance value input from the microcomputer 7 are outside an acceptable error range, the writing control circuit 4 increases the erasing voltage V.sub.RSET, and performs the writing, the erasing, and the reading again.
(41) Based on a result of comparison, when the read data of the ADC 6 and the conductance value input from the microcomputer 7 match each other, or when the read data of the ADC 6 and the conductance value input from the microcomputer 7 are inside the acceptable error range, the writing control circuit 4 inverts an error output flag input to the microcomputer 7. When recognizing inversion of the error output flag, the microcomputer 7 transmits the next address and the next conductance value to the writing control circuit 4. The neural network circuit 1 may include the microcomputer 7.
(42) Next, an operation of the embodiment will be described. An operation in performing the writing will be described. As shown in
(43) When the writing voltage V.sub.SET is applied to the memristor G.sub.11, the feedback resistor R.sub.f of each of the amplifiers IV.sub.1 to IV.sub.3 is short-circuited by the switch SW.sub.3. Thereby, the switch SW.sub.3 operates as a voltage follower. In order to set the voltage of the line R.sub.1 to an output voltage V.sub.wa of the DAC.sub.a, the switch SW.sub.1 of the amplifier IV.sub.1 is short-circuited, and the switch SW.sub.2 is opened. In order to set the voltages of the lines R.sub.2 and R.sub.3 to the output voltage V.sub.wb of the DAC.sub.b, the switches SW.sub.1 of the other amplifiers IV.sub.2 and IV.sub.3 are opened, and the switch SW.sub.2 is short-circuited.
(44) In a state as shown in
(45) As shown in
(46) +V.sub.SET/2.fwdarw.10100;
(47) V.sub.SET/2.fwdarw.00100;
(48) +V.sub.SET/4.fwdarw.10010; and
(49) V.sub.SET/4.fwdarw.00010.
(50) Therefore, the data input to DAC.sub.1 to DAC.sub.3, DAC.sub.a and DAC.sub.b are described as following:
(51) DAC.sub.110100;
(52) DAC.sub.200010;
(53) DAC.sub.300010;
(54) DAC.sub.a00100; and
(55) DAC.sub.b10010.
(56) An operation in performing the erasing will be described. An on/off setting of the switches SW.sub.1 and SW.sub.2 is similar to
(57) +V.sub.SET/2.fwdarw.10110; and
(58) V.sub.SET/2.fwdarw.00110.
(59) Therefore, the data input to DAC.sub.1 to DAC.sub.3, DAC.sub.a and DAC.sub.b is described as following:
(60) DAC.sub.100110;
(61) DAC.sub.210000;
(62) DAC.sub.310000;
(63) DAC.sub.a10110; and
(64) DAC.sub.b10000.
(65) An operation in performing the reading will be described. After the writing or the erasing for the selection element, the reading is performed in order to confirm whether the conductance value is a predetermined value. Therefore, as shown in
(66) In a state as shown in
(67) According to the embodiment, the neural network circuit 1 includes the crossbar 2 that is a storage part formed by connecting the memristors G.sub.11 to G.sub.33 in the lattice shape. The writing control circuit 4 reduces the resistance value as data for the selection element of the crossbar 2. That is, the conductance value reduces when performing the writing. The writing control circuit 4 increases the resistance value as data for the selection element of the crossbar 2. That is, the conductance value increases when performing the erasing and the reading. When controlling the DAC 3 in order to perform the writing, the erasing and the reading, the writing control circuit 4 varies the bias voltage applied through the DAC 3 corresponding to each of the writing, the erasing and the reading, so as to reduce the disturbance to the unselection element. According the configuration, it may be possible to reduce the disturbance to the unselection element by optimizing each of the applied bias voltages in performing at least one of the writing, the erasing, or the reading to the selection element.
(68) Specifically, when writing the data, the writing control circuit 4 applies a voltage (V.sub.REF+V.sub.SET/2) to the line C.sub.1 connected with the first end of the selection element G.sub.11. The writing control circuit 4 applies a voltage (V.sub.REFV.sub.SET/2) to the line R.sub.1 connected with the second end. The writing control circuit 4 applies a voltage (V.sub.REFV.sub.SET/4) to the other lines C.sub.2 and C.sub.3. The writing control circuit 4 applies a voltage (V.sub.REF+V.sub.SET/4) to the lines R.sub.2 and R.sub.3.
(69) Thereby, the voltage V.sub.SET/4 is applied to both ends of the unselection elements G.sub.12, G.sub.13, G.sub.21 and G.sub.31. The voltage V.sub.SET/2 is applied to both ends of the unselection elements G.sub.22, G.sub.23, G.sub.32 and G.sub.33. The bias voltage V.sub.SET/4 becomes lower than the bias voltage according to the comparative examples 3 and 4. Thereby, it may be possible to further reduce the influence of the disturbance. The bias voltage V.sub.SET/2 applied to a part of the other unselection elements becomes the inversion bias. Therefore, it may be possible to ignore the influence of the disturbance.
(70) When erasing the data, the writing control circuit 4 applies a voltage (V.sub.REFV.sub.RESET/2) to the line C.sub.1 to which the first end of the selection element G11 is connected. The writing control circuit 4 applies a voltage (V.sub.REF+V.sub.RESET/2) to the line R.sub.1 connected with the second end. The writing control circuit 4 applies the reference voltage V.sub.REF to each of the other lines.
(71) Thereby, the bias voltage V.sub.RESET/2 is applied to both ends of the unselection elements G.sub.12, G.sub.13, G.sub.21, and G.sub.31. However, the bias voltage is V.sub.RESET/2. Therefore, it may be possible to ignore the influence of the disturbance. The bias voltage is not applied to both ends of the other unselection elements G.sub.22, G.sub.23, G.sub.32, and G.sub.33. Therefore, the disturbance does not occur.
(72) When reading the data, the writing control circuit 4 applies a voltage (V.sub.REFV.sub.READ) to the line C.sub.1 connected with the first end of the selection element G.sub.11. The writing control circuit 4 applies a voltage (V.sub.REF+V.sub.RESET/2) to the line R 1 connected with the second end. The writing control circuit 4 applies the reference voltage V.sub.REF to each of the other lines. Thereby, the bias voltage V.sub.READ is applied to both ends of the unselection elements G.sub.12 and G.sub.13. However, it may be possible to ignore the influence of the disturbance since the bias voltage becomes the inversion bias. The bias voltage is not applied to both ends of the other unselection elements G.sub.21 to G.sub.23, and G.sub.31 to G.sub.33. Therefore, the disturbance does not occur.
(73) When applying the bias voltage to the crossbar 2, the writing control circuit 4 short-circuits the feedback resistor R.sub.f included in the transimpedance amplifier 5 by the switch circuit SW.sub.3. The feedback resistor R.sub.f operates as the voltage follower. Therefore, it may be possible to apply the bias voltage data to the lines R.sub.1 to R.sub.3 by the transimpedance amplifier 5 to perform the reading of the data. It may be possible to compact the configuration of the neural network circuit 1.
(74) In addition, when writing and erasing the data, the writing control circuit 4 generates the bias voltage by barrel-shifting the data input to the DAC 3. Therefore, it may be possible to generate the bias voltage with a simple process.
(75) (Other embodiments)
(76) The number of bits of the DAC may be appropriately changed according to the individual design. Each bias voltage is not necessarily generated by the DAC.sub.3, and an individual voltage output circuit may be employed.
(77) Although the present disclosure is described based on the embodiments, the present disclosure is not limited to the embodiments or the configurations. Various changes and modifications may be made in the present disclosure. Furthermore, various combinations and modes, as well as other combinations and modes each obtained by adding only one or more elements to or removing any element from corresponding one of the various combinations and modes will fall within the scope and the ideological scope of the present disclosure.