Some NGSpice Examples (Roughly) by Category

Examples of ***


        



        

Small Signal Amplifier with Limit Diodes

Small Signal Amplifier with Limit Diodes
*
* This circuit simulates a small signal amplifier
* with a diode limiter.
*
.dc Vin -1 1 .05

Vin       Input 0 DC            0
R_source  Input Amp_In        100
D_Neg     0 Amp_In            1n4148
D_Pos     Amp_In 0            1n4148
C1        Amp_In 0            1uF
X1        Amp_In 0 Amp_Out    Amplifier
R_Load    Amp_Out 0           1000

.model 1n4148 D (is=2.495e-09 rs=4.755e-01 n=1.679e+00
+ tt=3.030e-09 cjo=1.700e-12 vj=1 m=1.959e-01 bv=1.000e+02
+ ibv=1.000e-04)

.subckt Amplifier Input Common Output
E1        (Output Common) (Input Common) -10
R_Input   Input           Common 1meg
.ends Amplifier

.end

Note that the E prefix stands for a voltage controlled voltage source, and the X prefix stands for subcircuit between .subckt and .ends keywords, which in this circuit is named Amplifier.

Small Signal Amplifier with Code Model

In the previous example, the specification of the amplifier was accomplished by using a NGSPICE Voltage Controlled Voltage Source device. This is an idealization of the actual amplifier. Practical amplifiers include numerous non-ideal effects, such as offset error voltages and non-ideal input and output impedances. The accurate simulation of complex, real-world components can lead to cumbersome subcircuit files, long simulation run times, and difficulties in synthesizing the behavior to be modeled from a limited set of internal devices known to the simulator.

To address these problems, XSPICE allows you to create Code Models that simulate complex, non-ideal effects without the need to develop a subcircuit design. For example, the following file provides a simulation with the subcircuit amplifier replaced with a Code Model called Amp that models several non-ideal effects including input and output impedance and input offset voltage.

Small Signal Amplifier
*
* This circuit simulates a small signal amplifier
* with a diode limiter.
*
.dc Vin -1 1 .05

Vin       Input 0             DC 0
R_source  Input Amp_In        100
D_Neg 0   Amp_In              1n4148
D_Pos     Amp_In 0            1n4148
C1        Amp_In 0            1uF
A1        Amp_In 0 Amp_Out    Amplifier
R_Load    Amp_Out 0           1000

.model 1n4148 D (is=2.495e-09 rs=4.755e-01 n=1.679e+00
+ tt=3.030e-09 cjo=1.700e-12 vj=1 m=1.959e-01 bv=1.000e+02
+ ibv=1.000e-04)

.model Amplifier Amp (gain = -10 in_offset = 1e-3
+                     rin = 1meg rout = 0.4)
.end

A statement with a device label beginning with A alerts the simulator that the device uses a Code Model. The model statement is similar in form to the one used to specify the diode. The model label Amp directs XSPICE to use the code model with that name. Parameter information has been added to specify a gain of -10, an input offset of 1 millivolt, an input impedance of 1 meg ohm, and an output impedance of 0.4 ohm.

Examples of B


        


      

Examples of C


        


      

Examples of D


        


      

Examples of E