Abstract:
A semiconductor integrated circuit for constructing a neural network model, comprising a differential amplifier which includes one output terminal and two input terminals, an excitatory synapse circuit which is connected to the noninverting input terminal of said differential amplifier, and an inhibitory synapse circuit which is connected to the inverting input terminal of said differential amplifier, wherein each of said excitatory and inhibitory synapse circuits includes a plurality of current switches, regulated current source ciruits which are equal in number to said current switches and which determine currents to flow through said current switches, and one load resistor which is connected to all of said current switches, input terminals of said each synapse circuit being constructed of terminals which turn &#34;on&#34; and &#34;off&#34; the respective current switches and to which external inputs or outputs of another neural circuit are connected, said each regulated current source circuit being constructed of a circuit whose current value can be increased or decreased by a voltage externally applied separately and as to which a value of the voltage for increasing or decreasing the current value corresponds to a synaptic weight.

Description:
BACKGROUND OF THE INVENTION 
     The present invention relates to semiconductor integrated circuits, and more particularly to a semiconductor integrated circuit which is well suited to form a neural network model in the shape of a monolithic IC. 
     A neuron consists of a soma, a dendrite and an axon. Of them, the soma generates a pulsing voltage output when its internal potential has risen to exceed a certain threshold value. The pulse voltage is transmitted through the axon until it reaches the distal end of a nerve. The nerve end lies in contact with the dendrite or soma of another neuron. The point of the contact is called a &#34;synapse&#34;. The transmission of information between the neurons is effected through the synapse. Such synapses are classified into two sorts; a synapse which has the property of raising the internal potential of the soma of the opposite neuron (hereinbelow, expressed as an &#34;excitatory synapse&#34;), and a synapse which has the property of lowering the internal potential of the soma of the opposite neuron (hereinbelow, expressed as an &#34;inhibitory synapse&#34;). A plurality of synapses are connected to one neuron, and when the pulse reaches one excitatory synapse, the internal potential is caused to rise and then gradually fall in accordance with a certain time constant by the synapse When the pulses reach one synapse continuously, their potentials are successively added with the lapse of time. On that occasion, the arriving pulses have plus or minus weights assigned thereto, depending upon whether they are the excitatory or inhibitory synapses. Therefore, the value of the internal potential becomes the weighted sum of all the inputs. When this value exceeds the threshold value, the neuron generates the pulsing output. 
     Information processing within the brains of human beings etc. is conducted by a network which is constructed with such a neuron as a unit. Heretofore, in order to explicate the algorithm of the information processing within the brains, researches have been made by modeling the neural network in hardware or software implementation and by performing various aspects of information processing. 
     Meanwhile, with the progress of semiconductor integrated circuits, researches for realizing the neural network models on semiconductor chips have recently been made vigorously. They are detailed in, for example, &#34;Researches on and Developments of Neurocomputers&#34;, NIKKEI ELECTRONICS (dated Jan. 26, 1987, pp. 159-170). The &#34;neurocomputer&#34; mentioned above signifies a computer which is suitable for parallel processing imitative of the operations of the brain of the human being. That is, it achieves the high-speed processing of pattern recognition, combinatorial problems, etc. while utilizing the parallel processing function which is one of the features of the neural network. 
     FIGS. 7(a) and 7(b) are a symbolic diagram of a neuron, and a graph showing the input/output relationship of the neuron, respectively. 
     In general, a neural network model is constructed of a plurality of unit circuits, each having many inputs and one output as shown n FIG. 7(a). Hereinbelow, such a unit circuit will be referred to as a &#34;neuron&#34;. The respective input terminals of the neuron are given the values of outputs from other neurons. On that occasion, the inputs are multiplied by predetermined weights owing to the functions of the connection parts (hereinbelow, written as &#34;synapses&#34;) between the neurons, whereupon the resulting products are afforded to a soma (hereinbelow, written as &#34;cell&#34;) 1. FIG. 7(a) shows the symbols of this neuron, and the two sorts of synapses; excitatory synapses 21 having plus weights and inhibitory synapses 22 having minus weights are illustrated. 
     As stated before, the input/output relationship of the neuron is expressed by the weighted sum of voltages which rise in accordance with a certain time constant. More specifically, as illustrated in FIG. 7(b), the output OUT becomes a function of the summation (Σ i  W i  ·P i ) of the products between all the inputs (P 1 , P 2 , ..., P i , ... and P n ) and the weights (W 1 , W 2 , ..., W i ... and W n ) of the synapses lying at the respectively corresponding input ends. 
     When a plurality of neurons are coupled to one another and the weights of the individual synapses are appropriately selected, the resultant network can perform significant information processing. 
     An example of the neural network model as expressed using an electrical circuit is Hopfield&#39;s model. In this model, resistors are used for expressing the weights, and gate circuits are used for expressing an input/output relationship similar that of FIG. 7(b). 
     FIG. 8 is a diagram showing the Hopfield model in the prior art. 
     This diagram is a model diagram illustrated in U. S. Pat. No. 4660166. In the figure, the mark of a black square indicates a resistor which expresses the synaptic weight between two lines intersecting at the corresponding point, and the marks of a gate and an inverter gate indicate excitatory and inhibitory set inputs and outputs, respectively. The input weights and the connection goals of the plus and minus outputs for three neurons are illustrated in FIG. 8. 
     In general, in a neural network model, it is sometimes the case that, when synaptic weights are changed on and on in accordance with a predetermined algorithm, they are respectively converged to certain values. Such an operation is usually called &#34;learning&#34;. 
     Several methods have been proposed for the algorithm of the learning. In any case, however, the synaptic weights need to be altered. 
     In the prior art mentioned above, the synaptic weights are expressed by the resistors, and the corrections of the synaptic weights of a circuit once manufactured require to alter the resistances of the resistors. Therefore, all processes must be redone from the layout of an IC, and the alteration 
     of a learned content has been difficult. 
     SUMMARY OF THE INVENTION 
     The first object of the present invention is to solve the problem of the prior art as stated above, and to provide a semiconductor integrated circuit which can readily alter synaptic weights as needed and which can realize a neuron circuit suited to a monolithic IC. 
     Meanwhile, the following is known from researches employing computer simulations: When the learning operation of a neural network model is subjected to the restriction that the summation, or the sum of the squares, of the weights of synapses connected to one neuron is constant, the result of the learning is sometimes enhanced. 
     In the aforementioned prior-art technique, such an effect has not been considered at all. 
     The second object of the present invention is to provide the arrangement of a synaptic circuit in which the summation of the weights of synapses connected to one neuron becomes constant without fail. 
     In an electrical circuit wherein a neural network model is constructed on a semiconductor integrated circuit, of the present invention for accomplishing such objects is characterized by a unit circuit comprising a differential amplifier which includes one output terminal and two input terminals, an excitatory synapse circuit which is connected to the noninverting input terminal of said differential amplifier, and an inhibitory synapse circuit which is connected to the inverting input terminal of said differential amplifier, wherein each of said excitatory and inhibitory synapse circuits includes a plurality of current switches, regulated current source circuits which are equal in number to the number of said current switches and which determine current flow through said current switches, and one load resistor which is connected to all of said current switches, input terminals of said each synapse circuit being constructed of terminals which turn &#34;on&#34; and &#34;off&#34; the respective current switches and to which external inputs or outputs of other unit circuit are connected, said each regulated current source circuit being constructed of a circuit whose current value can be increased or decreased by a voltage externally applied separately and as to which a value of the voltage for increasing or decreasing the current value corresponds to a synaptic weight. 
     Another characterizing feature resides in that, besides the above construction, a total current which is caused to flow by all the regulated current source circuits within each of the synapse circuits is held constant by another regulated current source circuit which is separately provided 
     According to this construction, one synapse is expressed by one current switch and one current source circuit, the value of the current which is caused to flow into the current switch by each current source circuit corresponds to one synaptic weight, and this current value can be externally controlled. Therefore, the synaptic weights can be easily altered by the voltages or the likes applied from outside. 
     In addition, the value of the total current of all the regulated current soruces which afford the synaptic weights is held constant by the other regulated current source separately provided, so that when the current values of some regulated current sources are to be increased by the external voltages, the currents of the remaining regulated current sources decrease inevitably. Since the currents of the respective regulated current sources express the synaptic weights, it is imposed as a restriction in the present invention that the summation of the synaptic weights is constant. 
     Further, in an electrical circuit wherein a neural network model is constructed on a semiconductor integrated circuit; another characterizing feature thereof resides in a unit circuit by comprising a current comparison circuit which includes one output terminal and two input terminals, an excitatory synapse circuit which is connected in series with a noninverting input terminal of said current comparison circuit and which includes at least one current output type D/A converter, and an inhibitory synapse circuit which is connected in series with an inverting input terminal of said current comparison circuit and which includes at least one current output type D/A converter, wherein each of said excitatory and inhibitory synapse circuits includes a plurality of input terminals which have weights, respectively, and to which external inputs or outputs of other unit circuit are connected in any desired combination of said plurality of input terminals. 
     According to this construction, one synapse has the input terminals numbering n (n≧1), the respective input terminals respond to an identical input value to generate currents which are successively weighted 2 n  times, and the sum of the n currents is used as an input from the synapse to a neuron. In each synapse, a synaptic weight is expressed by the combination in which the n input terminals are connected. More specifically, the current output type D/A converter is formed by a circuit in which, on the basis of the aforementioned n inputs of each synapse, the currents weighted by the successive weights of 2 n  times owned by the synapse are generated, whereupon the n currents are summed up. Thus, the input coupled to each synapse can give the corresponding neuron a current value which is proportional to the weight expressed by a digital value of n bits. 
     In the case of implementing this circuit in the form of the semiconductor integrated circuit, the structures of the individual synaptic portions are identical at all the synapses, and the weight of each synapse can be digitally and easily corrected merely by changing the connection to the n terminals of the synapse. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1(a) is a diagram showing the outline of a unit circuit constituting a semiconductor integrated circuit of an embodiment of the present invention, FIG. 1(b) is a symbolic diagram corresponding to FIG. 1(a), FIG. 1(c) is a diagram showing the details of a synaptic circuit in FIG. 1(a), FIG. 1(d) is a graph showing an example of the saturation function f(P i ) of the synaptic circuit with respect to the input signal P i  thereof, and FIG. 1(e) is a diagram showing a circuit for realizing the characteristic in FIG. 1(d); 
     FIG. 2 is a diagram showing the arrangement of a regulated current source portion in the synaptic circuit of the present invention; 
     FIG. 3 is a diagram showing another arrangement of the synaptic circuit of the present invention; 
     FIG. 4 is a diagram showing the regulated current source portion of the synaptic circuit in FIG. 3; 
     FIG. 5 is a diagram showing another semiconductor integrated circuit according to the present invention; 
     FIG. 6(a) is a model diagram of a synaptic circuit shown in FIG. 5, FIG. 6(b) is a symbolic diagram of a neural network which employs the unit circuit in FIG. 5, and FIG. 6(c) is a symbolic connection diagram of the neural network in FIG. 6(b); 
     FIG. 7(a) is a symbolic diagram of a neuron, while FIG. 7(b) is a graph showing the input/output relationship of the neuron; and 
     FIG. 8 is a diagram showing Hopfield&#39;s model in the prior art. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     Now, embodiments of the present invention will be described in detail with reference to the drawings. 
     FIG. 1(a) is a block diagram of a unit circuit (neuron) constituting an integrated circuit of an embodiment of the present invention. 
     In FIG. 1(a), symbols 2-1 and 2-2 denote synaptic circuits each of which includes n synapses. The circuit 2-1 connected to the + side (noninverting input terminal) of a differential amplifier 11 is an excitatory synapse (synaptic) circuit, while the circuit 2-2 connected to the - side (inverting input terminal) is an inhibitory synapse (synaptic) circuit. Besides, FIG. 1(b) is a diagram in which FIG. 1(a) is symbolically expressed. Parts P 1  -P n  and P 1  &#39;-P n&#39;  provided in the individual synaptic circuits 2 are input terminals to which external inputs from outside of the semiconductor integrated circuit or the outputs of other neurons are respectively connected. Here, the input terminals P 1  -P n  signify ones which are associated with excitatory synapses having weights W 1  -W n , while the input terminals P 1  &#39;-P n  &#39; signify ones which are associated with inhibitory synapses having weights W 1  &#39;-W n  &#39;. 
     FIG. 1(c) is a diagram showing the details of the synaptic circuit 2-1 or 2-2. Referring to the figure, each input is connected to the base of the transistor Q i2  of a current switch which is configured of a pair of transistors Q i1  and Q i2  (i=1-n). The other inputs (the bases of the transistors Q i1 ) of such current switches are all supplied with a fixed voltage VBB. In addition, the emitters of each pair of transistors Q i1  and Q i2  are both connected to the collector of a transistor Q si  underlying the paired transistors. The transistor Q si  and a resistor r underlying this transistor operate as a regulated current source. That is, a current I i  of certain fixed value corresponding to the base potential W i  of the transistor Q si  flows through this transistor Q si . 
     When the i-th input P i  has become sufficiently greater than the voltage V BB , the current I i  corresponding to the potential W i  flows from a resistor R to a voltage terminal V EE  via the transistor Q i2 . To the contrary, when the input P i  has become sufficiently smaller than the voltage V BB , the current I i  flows from a GND (ground) point to the terminal V EE  via the transistor Q i1  . Besides, in a case where the input P i  is near the voltage V BB , the current whose value is proportional to the magnitude of the input P i  flows through the resistor R. 
     The resistor R is connected to all the current switches, so that when currents based on the plurality of inputs P i  flow at the same time, the summation current thereof flows through the resistor R. That is, letting V o  denote the output of the synaptic circuit 2, the following holds: ##EQU1## 
     In the above formula, P i  * denotes a variable which becomes &#34;1&#34; when the input voltage to the terminal P i  is sufficiently greater than the voltage V BB , which becomes &#34;0&#34; when the former is sufficiently smaller than the latter, and which becomes a value between &#34;1&#34; and &#34;0&#34; in proportion to the input voltage when the former is near the latter. A function f(P i ) which gives the variable P i  * is as shown in FIG. 1(d) and has a shape similar to that of the function in FIG. 7(b), and the details thereof are determined by the characteristics of each pair of transistors. By way of example as illustrated in FIG. 1(e), resistors r d  are inserted into the emitter coupling parts of each pair of transistors Q i1  and Q i2  (i=1-n) constituting the current switch, and the resistances thereof are changed. Then, a rectilinear region corresponding to input voltage values near the voltage V BB  can be widened or narrowed in the characteristic depicted in FIG. 1(d). When the resistors r d  employed are ones, such as pinch resistors, the resistances of which can be changed by a voltage V d , the saturation function f(P i ) (in FIG. 1(d)) which is exerted on the input can be dynamically varied during the operation of the circuit. 
     Besides, I i  in Eq. (1) denotes the value of the current which is controlled by the i-th current switch. This value corresponds to the base potential W i  of the transistor Q si  included in the i-th regulated current source. Assuming here that the potentials W i  correspond to the synaptic weights, the output V o  in Eq. (1) may be regarded as indicating the summation of the products between the synaptic weights and the inputs. 
     Eventually, the summations of the products between the synaptic weights and the inputs are respectively provided by the excitatory and inhibitory synapse circuits and are respectively applied as the noninverting and inverting inputs of the differential amplifier 11 so that the output of this differential amplifier 11 may be proportional to the difference of the two inputs. Thus, the summation of the products between the weights and the inputs at all the synaptic nodes is obtained Subsequently, this output is applied to the synaptic circuit of another neuron and is subjected to the function as shown in FIG. 1(d). Therefore, the circuit in FIG. 1(a) operates as one neuron. 
     When the neuron is expressed by such a construction, the synaptic weights W i  are expressed by the potentials which are externally applied to the bases of the transistors Q si  within the synaptic circuits 2, and the values of the weights can be altered at will. 
     The second embodiment of the present invention is such that the regulated current source array 3 in the synaptic circuit 2 of the first embodiment described above is replaced with an arrangement employing MNOS transistors (metal-nitride-oxide-semiconductor transistors, namely, MOS transistors each having a floating gate) as shown in FIG. 2. 
     A pulse voltage is impressed on the gate of the MNOS transistor for a period of time corresponding to the synaptic weight W i  (i=1-n). A drain current I D  which flows through the MNOS transistor increases substantially in proportion to the duration of the pulse voltage which is impressed on the gate. Moreover, once the current I D  has been set by the impression of the pulse, the value thereof remains constant until a pulse is subsequently impressed again. 
     Accordingly, whereas any contrivances for keeping the values of the weights W i  constant are necessitated outside the array 3 in the number of the synapses in the first embodiment, they are dispensed with in the second embodiment, to bring forth the effect that the arrangement of the whole circuit can be simplified. 
     FIG. 3 shows the third embodiment of the present invention. The point of difference from the first embodiment is that a total current which the regulated current source array of the synaptic circuit causes to flow is held constant by a regulated current source circuit I which is separately provided. Thus, in the synaptic circuit of the third embodiment, the currents I i  of values corresponding to the weights W i  (i=1-n) flow through the respective current switches, but the summation thereof is always held constant. In other words, the summation of the weights W i  is held constant without fail. 
     The fourth embodiment of the present invention consists in that the portion of the regulated current source transistor array 3 in the synaptic circuit 2 shown in FIG. 3 is replaced with an array of transistors as shown in FIG. 4, the base potentials of which are made common and the emitter areas of which are respectively changed in accordance with the values of currents intended to flow. In this embodiment, the values of the regulated currents corresponding to the synaptic weights are respectively determined by the emitter areas of the individual regulated current source transistors. Accordingly, it is impossible to externally and freely change the regulated current values corresponding to the synaptic weights as in the first to third embodiments, and the weights are determined by a pattern in the process of manufacture. This embodiment has many merits in the points of the scale and cost of the device, however both types are appropriate for use depending upon applications. 
     Incidentally, in the third and fourth embodiments respectively shown in FIGS. 3 and 4, the resistors r as depicted in FIG. 1(c) are not connected to the emitters of the transistors constituting the regulated current source arrays It is to be understood, however, that quite similar operations proceed even when the resistors r are connected. 
     FIG. 5 is an arrangement diagram of a unit circuit (neuron) constituting a semiconductor integrated circuit of another embodiment of the present invention. 
     Referring to FIG. 5, numeral 2 (symbol 2-1 or 2-2) indicates one synapse, to which one or more other synapses are connected through a common addition line of + side or - side. The + side addition line executes the addition of the excitatory synapse, while the - side addition line executes the addition of the inhibitory synapse. Parts A 1  -A 8  or B 1  -B 8  provided in the single synapse 2-1 or 2-2 are input terminals to which other neuron outputs are respectively connected. Here, the input terminals A 1  -A 8  are ones of the excitatory synapse, while the terminals B 1  -B 8  are ones of the inhibitory synapse. The synapse 2 configured of current switches, each of which includes resistors R, 2R and P-N-P transistors, is a digital-to-analog (D/A) converter of 4 bits, which supplies a current comparison circuit 11 with 16 values of currents in accordance with the magnitudes of the voltages of the terminals A 1  -A 8  or B 1  -B 8  relative to a power source voltage V BB . That is, letting I o  denote the value of the output current of the single synapse, the following holds: ##EQU2## 
     In the above formula, A 1  -A 8  * denote variables which become &#34;1&#34; when the input voltages of the terminals A 1  -A 8  from another neuron are respectively greater than the voltage V BB , and which become &#34;0&#34; when they are respectively smaller. 
     The current comparison circuit 11 is constructed of a voltage comparator 111 and resistors r, and it has the nodes of an inverting input (-) and a noninverting input (+). It delivers an output of high voltage (&#34;H&#34;) when the current of the noninverting input is more than that of the inverting input, and it delivers an output of low voltage (&#34;L&#34;) when the current of the noninverting input is less than that of the inverting input. By the way, the voltage H is set to be sufficiently greater than the power source voltage V BB , while the voltage L is set to be sufficiently smaller than the voltage V BB . 
     In connecting the other neuron outputs to the synapse, they are connected to the appropriate combination of the input terminals A 1  -A 8  or B 1  -B 8 , whereby desired ones of the 16 weights can be selected. 
     FIGS. 6(a) - 6(c) illustrate a model for the synapses and neuron shown in FIG. 5. 
     FIG. 6(a) is a model diagram showing the synaptic circuit 2 in FIG. 5 in a simplified form. Numerals 8, 4, 2 and 1 denote the input terminals A 8 , A 4 , A 2  and A 1 , respectively, and symbol I OUT  denotes the current output of the synapse. 
     Besides, FIG. 6(b) is a symbolic diagram showing an example of a neural network which adopts the neuron circuit in FIG. 5, and two neurons are used here. Numerical values affixed to the synapses in the figure signify the absolute values of the weights of the corresponding synapses. 
     The first neuron receives an exitatory input of weight 5 from another neuron (I n1 ) and one of weight 10 from still another neuron (I n2 ), and it further receives an inhibitory input of weight -12 from the second neuron. On the other hand, the second neuron receives an excitatory input of weight 9 from another neuron (I n3 ), and it receives an inhibitory input of weight -3 from another neuron (I n4 ) and one of weight -8 from the first neuron. Respective outputs OUT1 and OUT2 from the first and second neurons are sent to other neurons. 
     FIG. 6(c) is a connection diagram in which the neural network in the symbolic diagram of FIG. 6(b) is expressed with the symbol in FIG. 6(a). 
     First, a common current node to which the first and second synapses are connected in series is coupled to the (+) terminal of the first neuron, and a current node to which the third synapse is connected is coupled to the (-) terminal thereof The outputs from the other neuron I nl  are connected to the terminals A 1  and A 4  of the first synapse, whereby a (+) voltage is input in accordance with a weight of 1+4=5, and the outputs from the other neuron I n2  are connected to the terminals A 2  and A 8 , whereby a (+) voltage is input in accordance with a weight of 2+8=10. Besides, the outputs from the second neuron are connected to the terminals A 4  and A 8  of the third synapse, whereby a (-) voltage is input in accordance with a weight of 4+8=12. 
     On the other hand, a common current node to which the first and second synapses are connected in series is coupled to the (-) terminal of the second neuron, and a current node to which the third synapse is connected is coupled to the (+) terminal thereof. The output from the first neuron is connected to the terminal A 8  of the first synapse whereby a (-) voltage is input in accordance with the weight of 8, and the outputs from the other neuron I n4  are connected to the terminals A 1  and A 2  of the second synapse, whereby a (-) voltage is input in accordance with a weight of 1+2=3. Besides, the outputs from the other neuron I n3  are connected to the terminals A 1  and A 8  of the third synapse, whereby a (+) voltage is input in accordance with a weight of 1+8=9. 
     By the way, each of the synaptic circuits in FIG. 5 is constructed of the current switch circuit which employs the resistors R, 2R and the P-N-P transistors. Of course, however, any other circuit can be used quite similarly as long as it is the D/A converter of the current output type. 
     Further, although the number of the input terminals of the synapse is four, that is, the weight is expressed by 4 bits in FIG. 5 and FIGS. 6(a) -6(c), the number of bits can be determined at will. 
     In this manner, with this embodiment, when a neural network model is to be constructed on a semiconductor integrated circuit, the weights of synapses used in the model can be corrected in a procedure similar to that of a gate array. 
     As described above, according to the present invention, current values corresponding to synaptic weights can be readily altered by voltages applied externally, and it is therefore permitted to construct a neuron circuit which is easy of altering a learned content and which is suited to a monolithic IC. 
     Moreover, the summation of the current values corresponding to the synaptic weights is held constant by another regulated current source, and it is therefore permitted to construct a neuron circuit in which the summation of the synaptic weights is held constant without fail.