Abstract:
A neuromorphic computing device utilizing electronics to perform the function of neurons and synaptic connections. The invention provides variable resistance circuits to represent interconnection strength between neurons and a positive and negative output circuit to represent excitatory and inhibitory responses, respectively. The invention provides advantages over software-based neuromorphic computing methods.

Description:
STATEMENT OF GOVERNMENT INTEREST 
       [0001]    The invention described herein may be manufactured and used by or for the Government for governmental purposes without the payment of any royalty thereon. 
     
    
     BACKGROUND OF THE INVENTION 
       [0002]    This invention relates generally to the field of computer architectures modeled on the function of the brain. More specifically, the present invention relates to a computer architecture using modern electronics to perform the function of neurons and synaptic connections. 
         [0003]    The amazing computing power of the brain originates thanks to its highly parallelized interconnectivity amongst neurons through synaptic connections. The synaptic connection plays an important role in brain activity as these connections can be strengthened or weakened as the brain learns and knowledge is stored within the system [2]. Neuron behavior has been characterized as an adding system that provides an output based on the sum of all inputs, or synapse outputs, and its connectivity to other neurons [1]. In addition, the amount of information or knowledge a neuromorphic computer can retain depends on the number neurons and synaptic connections within the system. For example, the brain of an ant is said to contain approximately 300,000 neurons [3]. 
         [0004]    The natural ability of the brain to perform a high number of complex functions in parallel that to date are unmatched by the fastest most powerful supercomputers represents a great technological engineering challenge. Neuromorphic computers promise to provide artificial machines the ability to perform complex functions by mimicking the brain&#39;s engineering. Software based implementations of neuromorphic computing have demonstrated the feasibility of mimicking brain functionality [1]. However, software based implementations of neuromorphic computing require high performance computers and super computers that in turn make usage of such applications in everyday life impractical specially within mobile and/or low cost systems. 
         [0005]    What is lacking, therefore, is the development of hardware based neuromorphic computer that will enable a technological breakthrough with the implementation of brain functionality within systems that are built based on the engineering principles of the brain. Such a hardware based neuromorphic computer would require a neuromorphic hardware architecture that mimics the brain&#39;s synaptic and neuron functionality employing electronic devices to represent synaptic and neuron characteristic behavior. Given the large number of neurons and synaptic connections (approximately 1,000 synaptic connections per neuron) required to design systems capable of mimicking practical brain functionality such as image recognition, it is important for the electronic devices to be small in order to be fabricated within a small physical area as computer microprocessors are fabricated today. 
       OBJECTS AND SUMMARY OF THE INVENTION 
       [0006]    The present invention provides an apparatus to perform human brain-like computing functions. 
         [0007]    It is an object of the present invention to provide an apparatus that overcomes the limitations of software-based methods to perform human brain-like computing functions. 
         [0008]    It is another object of the present invention, then, to provide an electronic means to perform excitatory and inhibitory responses. 
         [0009]    It is another object of the present invention to provide an apparatus that performs the functions of neurons and synaptic connections through electronic means. 
         [0010]    It is a further object of the present invention to provide an electronic means for performing the functions of neurons and synaptic connections which is amenable to high density fabrication. 
         [0011]    Briefly stated, the present invention provides an apparatus for human brain-like (i.e., neuromorphic) computing utilizing electronics to perform the function of neurons and synaptic connections. The invention provides variable resistance circuits to represent interconnection strength between neurons and a positive and negative output circuit to represent excitatory and inhibitory responses, respectively. This approach has definite advantages over software-based neuromorphic computing methods. 
         [0012]    The above, and other objects, features and advantages of the present invention will become apparent from the following description read in conjunction with the accompanying drawings, in which like reference numerals designate the same elements. 
       REFERENCES 
       [0000]    
       
         [1] J. Lawrence and S. Luedeking, “Introduction to Neural Networks,” California Scientific software, Grass Valley, Calif., 1991. 
         [2] G. Bi and M. Poo, “Synapti Modification by Correlated Activity: Hebb&#39;s Postulate Revisited,”  Annual Review of Neuroscience,  24 (2001) 139-66 
         [3] Science blogging the intersection between biology and technology, &lt;http://www.greythumb.org/blog/index.php?/archives/262-Number-of-neurons-in-an-ants-brain.html&gt;, 2007. 
         [4] L. O. Chua, “Memristor—The Missing Circuit Element,”  IEEE Transactions on Circuits Theory,  18 (1971) 507-519. 
         [5] Wikipedia, the free encyclopedia, “MOSFET,”&lt;http://en.wikipedia.org/wiki/MOSFET&gt;, 2009. 
       
     
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0018]      FIG. 1  depicts the I-V electrical characterization results described by Eqn (1), specifically, nfet drain-to-source current (Ids) vs. drain-to-source voltage (Vds) for several values of Vgs-Vth; the boundary between linear (Ohmic) and saturation (active) modes is indicated by the upward curving parabola. 
           [0019]      FIG. 2  depicts the nfet channel conductance for the same biasing voltage conditions indicated in  FIG. 1 . 
           [0020]      FIG. 3  depicts variable resistive equivalent circuit element that can be achieved with a MOSFET or memristor devices. 
           [0021]      FIG. 4  depicts a CMOS inverter. 
           [0022]      FIG. 5  depicts a CMOS inverter output voltage (Vout) versus input signal (Vin) where Vth=0 and −1V for the nfet and pfet devices and Vmax=2 V and Vmin=−2 V respectively. 
           [0023]      FIG. 6  depicts a synaptic system employing a MOSFET (a), memristor (b), and the simplified synaptic circuit representation (c). 
           [0024]      FIG. 7  depicts the convergence of multiple synaptic outputs at the floating adding node and their combined response is fed to the next neuron synaptic layer of the neuromorphic computing architecture. 
           [0025]      FIG. 8  depicts how the convergence of multiple synaptic outputs at the adding neuron where their relative contribution (the adding of all post-synaptic output potentials) will cause the single MOSFET neuron to fire as long at the overall synaptic contribution is above its threshold potential, and how the neuron output. Vo will be fed to the next synaptic layer of the neuromorphic computing architecture. 
           [0026]      FIG. 9  depicts a neuromorphic architecture implementation with floating adding neurons. 
           [0027]      FIG. 10  depicts a neuromorphic computing architecture implementation employing thresholding neurons. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
       [0028]    The basic building block of the neuromorphic computer is the synapse circuit. A synapse circuit requires (1.) a variable resistance circuit to represent the interconnection strength between neurons and (2.) a positive/negative output circuit to represent excitatory and inhibitory responses. 
         [0029]    Variable Resistor Circuit 
         [0030]    In the present invention, a variable resistor is obtained by biasing an n-channel field effect transistor (nfet) device in such a way that it operates within the linear region. This functionality can also be achieved with a memristor [4] device. In the linear or Ohmic mode region, the drain source current of the nfet behavior can be modeled as [5]: 
         [0000]    
       
         
           
             
               
                 
                   
                     I 
                     DS 
                   
                   = 
                   
                     
                       μ 
                       n 
                     
                      
                     
                       C 
                       OX 
                     
                      
                     
                       W 
                       L 
                     
                      
                     
                       ( 
                       
                         
                           
                             ( 
                             
                               
                                 V 
                                 GS 
                               
                               - 
                               
                                 V 
                                 th 
                               
                             
                             ) 
                           
                            
                           
                             V 
                             DS 
                           
                         
                         - 
                         
                           
                             V 
                             DS 
                             2 
                           
                           2 
                         
                       
                       ) 
                     
                   
                 
               
               
                 
                   ( 
                   1 
                   ) 
                 
               
             
           
         
       
     
         [0000]    where IDS is the drain to source current, μn is the electron mobility, Cox is the gate oxide capacitance, W and L are the width length of the device, Vth is the nfet&#39;s threshold voltage, and VGS and VDS are the gate-to-source and drain-to-source bias voltages. For the nfet transistor to operate within the linear region (cut-off or sub-threshold or weak inversion mode), the gate biasing potential must be less that the threshold voltage, VGS&lt;Vth. From Eqn. (1) the channel variable resistance, R, or conductance, G is defined as: 
         [0000]    
       
         
           
             
               
                 
                   
                     G 
                      
                     
                       ( 
                       
                         
                           V 
                           GS 
                         
                         , 
                         
                           V 
                           th 
                         
                         , 
                         
                           V 
                           DS 
                         
                       
                       ) 
                     
                   
                   = 
                   
                     
                       1 
                       
                         R 
                          
                         
                           ( 
                           
                             
                               V 
                               GS 
                             
                             , 
                             
                               V 
                               th 
                             
                             , 
                             
                               V 
                               DS 
                             
                           
                           ) 
                         
                       
                     
                     = 
                     
                       
                         μ 
                         n 
                       
                        
                       
                         C 
                         OX 
                       
                        
                       
                         W 
                         L 
                       
                        
                       
                         ( 
                         
                           
                             V 
                             GS 
                           
                           - 
                           
                             V 
                             th 
                           
                           - 
                           
                             
                               V 
                               DS 
                             
                             2 
                           
                         
                         ) 
                       
                     
                   
                 
               
               
                 
                   ( 
                   2 
                   ) 
                 
               
             
           
         
       
     
         [0000]    therefore, Eqn. (1) can be rewritten as: 
         [0000]    
       
         
           
             
               
                 
                   
                     I 
                     D 
                   
                   = 
                   
                     
                       
                         G 
                          
                         
                           ( 
                           
                             
                               V 
                               GS 
                             
                             , 
                             
                               V 
                               th 
                             
                             , 
                             
                               V 
                               DS 
                             
                           
                           ) 
                         
                       
                       * 
                       
                         V 
                         DS 
                       
                     
                     = 
                     
                       
                         1 
                         
                           R 
                            
                           
                             ( 
                             
                               
                                 V 
                                 GS 
                               
                               , 
                               
                                 V 
                                 th 
                               
                               , 
                               
                                 V 
                                 DS 
                               
                             
                             ) 
                           
                         
                       
                       * 
                       
                         V 
                         DS 
                       
                     
                   
                 
               
               
                 
                   ( 
                   3 
                   ) 
                 
               
             
           
         
       
     
         [0031]      FIG. 1  displays the I-V electrical characterization results described by Eqn (1) for a symmetric nfet device. Nfet drain-to-source current (Ids) vs. drain-to-source voltage (Vds) for several values of Vgs-Vth is depicted. The boundary between linear (Ohmic) and saturation (active) modes is indicated by the upward curving parabola. Still referring to  FIG. 1 , one can observe that the linear region, bounded by the pinch-off dashed line, where VGS&gt;Vth and VDS&lt;(VGS-Vth), provides a variable resistive behavior that is a function of gate, drain, and source node and threshold voltage biases as described by Eqn (2). From the electrical characterization results displayed in  FIG. 1 , it is possible to calculate the conductance G, which is by definition the first derivative of the drain-to-source current with respect to the drain-to-source voltage and the results are shown in  FIG. 2 . 
         [0032]    Referring to  FIG. 2  depicts the nfet channel conductance for the same biasing voltage conditions outlined in  FIG. 1 . From the figure, we can observe that the nfet device displays a range of conductance that is proportional to the gate, drain, and source potential biases. 
         [0033]    Referring to  FIG. 3  depicts how the variable resistive equivalent circuit element  100  can be achieved with a MOSFET  110  or memristor  120  devices.  FIG. 3  also depicts the electrical equivalent diagram for a MOSFET device  110  operated within the linear region and a memristor device  120  to the electrical symbol of a variable resistor  100 . This variable conductance, or its inverse the resistance, can be used to control the connection strength between synapses and neuron circuitry. 
         [0034]    Positive/Negative Output Potential Circuit Element 
         [0035]    Referring to  FIG. 4 , the present invention re-create the positive and negative (excitatory and inhibitory) potential outputs of a synaptic system by employing a common CMOS inverter circuit  130  operating along its transition region. A pfet device  150  (distinguished by the black notch on its gate  140 ) is connected to an nfet  160  device in series. Both devices receive the same input, and based on the input potential, the inverter circuit  130  will output either Vmax or Vmin. For example, if the input potential is 0 volts, the nfet device  160  will be in the off state meaning the input potential is below its threshold voltage and no conducting channel is formed under the gate. On the other hand, at 0 volts, the pfet device  150  is switched on given that its threshold potential is negative. Therefore, for a zero input voltage the output of the inverter  130  is Vmax as Vout will be shorted to Vmax through the channel under the gate  140  for the pfet device  150 . 
         [0036]    The present invention needs to operate the inverter circuit  130  along its transition region to achieve positive (Vmax) and negative (Vmin) potential outputs that will resemble post-synaptic behavior. Since the inverter circuit  130  of  FIG. 4 , works in saturation mode, meaning that Vmax and Vmin (VDS) are both greater in magnitude than (VGS-Vth), transistor current saturation equations describe its transition characteristics. For an nfet device, ignoring channel length modulation, the drain current is modeled as for the nfet as [4] (for the pfet reverse current flow direction): 
         [0000]    
       
         
           
             
               
                 
                   
                     I 
                     DS 
                   
                   = 
                   
                     
                       
                         
                           μ 
                           n 
                         
                          
                         
                           C 
                           OX 
                         
                       
                       2 
                     
                      
                     
                       W 
                       L 
                     
                      
                     
                       
                         ( 
                         
                           
                             V 
                             GS 
                           
                           - 
                           
                             V 
                             th 
                           
                         
                         ) 
                       
                       2 
                     
                   
                 
               
               
                 
                   ( 
                   4 
                   ) 
                 
               
             
           
         
       
     
         [0000]    Referring to  FIG. 5 , depicts a CMOS inverter output voltage (Vout) versus input signal (Vin) where Vth=0 and −1V for the nfet and pfet devices and Vmax=2 V and Vmin=−2 V respectively. For nfet and pfet devices with 0 and −1 V threshold voltages, the CMOS inverter transition region can be simulated using Equation (4), and the simulation results are displayed. Still referring to  FIG. 5 , one can observe that it is possible to obtain tunable range of output potentials (positive or negative) as function of a single input bias potential. This particular functionality is important in the present invention because its synaptic system is capable of both positive and negative output potentials. The simulation results displayed in  FIG. 5  can be used to create a compact linear model that is used to describe the inverting circuit as: 
         [0000]        V   OUT =(−4)* V   in +2 V  
 
         [0000]    where Vin is the input to the inverting circuit. 
         [0037]    Synaptic System 
         [0038]    In the present invention the synaptic system employs the variable resistor and inverter circuit elements described previously. Referring to  FIG. 6  describes the complete synaptic system by way of a circuit representation of a synapse using a transistor  170  and alternately a memristor  180 . The simplified circuit element form  180  will be employed when designing the neuromorphic network. From  FIG. 6 , one can observe that the output of the synaptic system is a function of the Vm potential that will either strengthen, weaken, or completely cut-off the connection between the synapse input and the CMOS inverting circuit  130  (see also  FIG. 4 ,  130 ) operating within its transition bias point range. 
         [0039]    The synapse output (SO) can be modeled as: 
         [0000]      SO(SI, Vm )=ƒ[ I ( Vm )* R]   (6)
 
         [0000]    Where ƒ represents the transfer function of the CMOS inverter  130 , i.e. described in Eqn. (5), I(Vm) is current across the transistor channel (or transistor channel operating in the linear region as a variable resistance), and R is a resistor used to reset the synapse. For example, for synaptic inputs between 0 and 1 V, as shown in  FIG. 5 , Eqn. (6) will range from 2 to −2 V approximately as a function of the resistive element R(Vm).
 
Equations (5) and (6) can be combined to obtain:
 
         [0000]    
       
         
           
             
               S 
                
               
                   
               
                
               
                 O 
                  
                 
                   ( 
                   
                     
                       S 
                        
                       
                           
                       
                        
                       I 
                     
                     , 
                     Vm 
                   
                   ) 
                 
               
             
             = 
             
               
                 
                   - 
                   4 
                 
                 * 
                 
                   [ 
                   
                     
                       I 
                        
                       
                         ( 
                         Vm 
                         ) 
                       
                     
                     * 
                     R 
                   
                   ] 
                 
               
               + 
               
                 2 
                  
                 V 
               
             
           
         
       
       
         
           
             
               I 
                
               
                 ( 
                 Vm 
                 ) 
               
             
             = 
             
               
                 μ 
                 n 
               
                
               
                 C 
                 OX 
               
                
               
                 W 
                 L 
               
                
               
                 ( 
                 
                   
                     
                       ( 
                       
                         
                           V 
                           m 
                         
                         - 
                         
                           V 
                           th 
                         
                       
                       ) 
                     
                      
                     S 
                      
                     
                         
                     
                      
                     I 
                   
                   - 
                   
                     
                       S 
                        
                       
                           
                       
                        
                       
                         I 
                         2 
                       
                     
                     2 
                   
                 
                 ) 
               
             
           
         
       
       
         
           
             
               S 
                
               
                   
               
                
               
                 O 
                  
                 
                   ( 
                   
                     
                       S 
                        
                       
                           
                       
                        
                       I 
                     
                     , 
                     Vm 
                   
                   ) 
                 
               
             
             = 
             
               
                 
                   - 
                   4 
                 
                 * 
                 
                   [ 
                   
                     
                       μ 
                       n 
                     
                      
                     
                       C 
                       OX 
                     
                      
                     
                       W 
                       L 
                     
                      
                     
                       ( 
                       
                         
                           
                             ( 
                             
                               
                                 V 
                                 m 
                               
                               - 
                               
                                 V 
                                 th 
                               
                             
                             ) 
                           
                            
                           S 
                            
                           
                               
                           
                            
                           I 
                         
                         - 
                         
                           
                             S 
                              
                             
                                 
                             
                              
                             
                               I 
                               2 
                             
                           
                           2 
                         
                       
                       ) 
                     
                      
                     R 
                   
                   ] 
                 
               
               + 
               
                 2 
                  
                 V 
               
             
           
         
       
     
         [0000]    where SI is the input to the synapse in voltage units, V m  is a biasing weight voltage of the transistor, W is the width of the gate of the transistor, L is the length of the gate of the transistor, C ox  is the gate oxide capacitance of the transistor, R is the value of a biasing resistor used to control the potential output of the synapse, V th  is the threshold voltage of the transistor, and μ n  is electron mobility of the transistor. 
         [0040]    Adding Node and Single Transistor Adding Neuron Neuromorphic Architecture Referring to  FIG. 7  and  FIG. 8  concurrently, the implementation of the neuron functionality in the present invention is performed with an adding node  200  and/or a single transistor.  FIG. 7  depicts multiple synaptic outputs converging at multiple floating adding nodes  200  and their combined response is fed to the next neuron synaptic layer of the neuromorphic computing architecture. The adding node  200  is the physical connection where all post-synaptic outputs converge. As the synaptic outputs converge, they will increase or decrease the potential at the floating neuron adding node  200 . As depicted in  FIG. 8 , multiple synaptic outputs converge at the adding neuron  200  where their relative contribution (the adding of all post-synaptic output potentials) will cause the single MOSFET neuron  210  to fire as long at the overall synaptic contribution is above its threshold potential. The neuron output Vo will be fed to the next synaptic layer of the neuromorphic computing architecture. Thus, the resulting added potential will become the input to the following synaptic layer. In addition, if the neuron adding node where connected to the gate of an nfet transistor, and if the total combined potential at the adding node is greater than the threshold voltage, Vth, of the MOSFET transistor, the output of the neuron will be Vo=Vn. Otherwise, the neuron won&#39;t have an output (the neuron won&#39;t fire) as shown in  FIG. 8 . 
         [0041]    Referring to  FIG. 9  depicts an example of a neuromorphic architecture implementation with floating adding neurons. Successive layers of synapse circuits are functionally depicted as being arranged horizontally, from left to right. The number of synapse circuits in each successive layer decreases by a factor of two owing to the effect of floating adding neurons. Computer simulations based on the physical principles described above demonstrate the feasibility of the neuromorphic architectures described herein. One skilled in the art would appreciate that variations of neuromorphic architectures can be constructed employing transistors, memristors, and inverter circuits coupled to floating node neurons or thresholding neurons to perform computations as described previously.  FIG. 10  depicts another example of a neuromorphic implementation that demonstrates how a computing architecture can be implemented with floating node and thresholding neurons. 
         [0042]    Having described preferred embodiments of the invention with reference to the accompanying drawings, it is to be understood that the invention is not limited to those precise embodiments, and that various changes and modifications may be effected therein by one skilled in the art without departing from the scope or spirit of the invention as defined in the appended claims.