next up previous contents
Next: B. The Stepping Module Up: A. Input-Deck Interface to Previous: A.12 Selection of External


A.13 Netlist Definition of the Oscillator Example

This section contains all netlist definitions found in the input-decks for the oscillator example, see Section 6.4 (page [*]).

The input-deck section SubCircuits contains the definition of all three subcircuits. The settings for the distributed devices are specified like in the single-mode [105]. In addition, MINIMOS-NT directly provides compact models of the commonly used circuit elements like capacitors and inductors.

Therefore, the respective Devices sections have to be simply inherited and their public members accordingly overwritten. In the definition of the resonant circuit both terminals are connected to the input, output, and ground nodes of the subcircuit.

SubCircuits
{ 
   Core
   {
      in  = "";
      out = "";

      V0  : ~Devices.V   { P  = "pin1";  M  = "gnd";   V0 = 2.0 V;   }

      T1  : ~NPN         { C  = ^out;    B  = "pin3";  E  = "pin5";  }

      L   : ~Devices.L   { N1 = "pin1";  N2 = ^out;    L  = 1 uH;    }
      R1  : ~Devices.R   { N1 = "pin1";  N2 = "pin3";  R  = 20e3;    }
      R2  : ~Devices.R   { N1 = "pin3";  N2 = "gnd";   R  = 30e3;    }

      Re  : ~Devices.R   { N1 = "pin5";  N2 = "gnd";   R  = 1.25e3;  }
      Ce  : ~Devices.C   { N1 = "pin5";  N2 = "gnd";   C  = 1.00 nF; }

      C4  : ~Devices.C   { N1 = ^in;     N2 = "pin3";  C  = 1.0 nF;  }
   }
   LC
   {
      in  = ""; // is assigned in circuit
      out = "";
      L1  : ~Devices.L { N1 = ^in;   N2 =  ^out; L = 1.000 nH; }
      C1a : ~Devices.C { N1 = ^in;   N2 = "gnd"; C = 0.279 pF; }
      C1b : ~Devices.C { N1 = "gnd"; N2 =  ^out; C = 2.790 pF; }
   }
}

For the AC source subcircuit, the conditional inheritance feature of the input-deck is used. Since the transient and small-signal modes are subsequently employed, the respective voltage source has to be defined for a transient or small-signal result, respectively. This is controlled by the Solve.transient keyword:

SubCircuits
{ 
   Vtransient 
   { 
      VS : ~Devices.V { P  = "pin10"; M  = "gnd";   
                        V0 = 1 mV * sin(~Solve.time * 2*pi * 1e9 Hz); }
   }

   Vac 
   {  
      VS : ~Devices.V { P  = "pin10"; M  = "gnd";   
                        V0 = 0 mV; acV0 = 1 mV; }
   }

   Vsrc : Vac ? ~Solve.ac, Vtransient ? ~Solve.transient // conditional
   {
      +in = "";
      +R4  : ~Devices.R   { N1 = ^in;  N2 = "pin10"; R  = 1e3; }
   }
}


next up previous contents
Next: B. The Stepping Module Up: A. Input-Deck Interface to Previous: A.12 Selection of External

S. Wagner: Small-Signal Device and Circuit Simulation