PyAMS  (the software under revision)

NMOSFET


Simple NMOS

 

Information

The NMOS is nonlinear element and semiconductor device, can be represented by its equivalent nonlinear current source Id dependent by the voltage in the nodes and it is given by:

Parameters

NameDefaultDescription
Kp200µTransconductance coefficient
W100µmChannel width
L100µmChannel length
Vt0.5VThreshold voltage
lambd0.0lambda

PyAMS definition

from PyAMS import Signal

#Simple model NMOS
class NMOS:
      def __init__(self,d,g,s):
           #Signals
           self.Vgs=Signal('in','potential',g,s)
           self.Vds=Signal('in','potential',d,s)
           self.Id=Signal('out','flow',d,s)
           self.Ig=Signal('out','flow',g,'0')
           #Paramaters
           self.Kp=200e-6    #Transconductance coefficient
           self.W=100.0e-6   #Channel width 
           self.L=100.0e-6   #Channel length 
           self.Vt=0.5       #Threshold voltage
           self.lambd=0.000  #lambda/span>
     
      def analog(self):     
          K=self.Kp*self.W/self.L
          Vgs=self.Vgs.Val
          Vds=self.Vds.Val
          Vt=self.Vt
          lambd=self.lambd           
          if Vgs <= Vt:
             Id=0.0
          elif (Vgs-Vt)<Vds:
                Id=K*(Vgs-Vt)*(Vgs-Vt)*(1+(lambd*Vds))/2  
          else:
                Id=K*((Vgs-Vt)-(Vds/2))*(1+(lambd*Vds)) *Vds 
                  

      
          self.Id+=Id
          self.Ig+=0.0


Documentation generated by PyAMS