Simulating a common-source amplifier

Schematic entry

determinare punto di lavoro, DC operating point etc.

Vericare con una analisi parametrica in w come cambia

Plottare anche il gain definito con dVout/dVin,

deriv(...)

ADE L ⇒ Analyses ⇒ Choose

Per maggiori informazioni

spectre --help tran

Definire il gain:

ADE L ⇒ Outputs ⇒ Setup (or rigth click in the Outputs tab in the ADE L window and choose Edit)

0.5*( ymax(VT("/Vout")) - ymin(VT("/Vout")) )/amplitude
peakToPeak(VT("/Vout"))/peakToPeak(VT("/Vin"))

ADE L ⇒ Analyses ⇒ Choose

Servono voltage sources with ac specifications (AC, PC)

Per maggiori info:

spectre --help ac

Per il guadagno posso costruire a mano io l'esperessione:

abs(VF("/out")/VF("/in"))

oppure in dB = 20Log

dB20(VF("/out")/VF("/in") )

that is equivalent to

dB20(VF("/out")) - dB20(VF("/in"))

mentre la fase e'

phase( VF("/out")/VF("/in")) )

Mettendo AC=1 non serve neanche fare il rapporto e basta usare

dB20(VF("/out"))
phase(VF("/out"))

Nota: dB20 is used for voltage gains, whereas dB10 is used for power gains

Tutto si ottiene in automatico anche come

ADE L ⇒ Results ⇒ Direct Plot ⇒ AC Magnitude

ADE L ⇒ Results ⇒ Direct Plot ⇒ AC dB10

ADE L ⇒ Results ⇒ Direct Plot ⇒ AC dB20

ADE L ⇒ Results ⇒ Direct Plot ⇒ AC Phase

ADE L ⇒ Results ⇒ Direct Plot ⇒ AC Magnitude & Phase

ADE L ⇒ Results ⇒ Direct Plot ⇒ AC Gain & Phase

calcolare il phase margin con il Calculator tramite le built-in functions bandwith( ) and phaseMargin( )

bandwidth(VF("/out") 3 "low")
phaseMargin(VF("/out"))
gainMargin(VF("/out"))

Esiste anche a built-in function for the Gain-Bandwith product (GBW) computation

gainBwProd(VF("/out"))

Attaccare in idc al nodo di uscita, mettere AC=1 e fare un'analisi in frequenza, a questo punto Vout in Volt e' proprio la resistenza in Ohm (essendo AC=1 A)

To measure output impedance, regardless closed loop or open loop, u just put ideal current source Idc with ac=1 at the output, then measure the voltage at the output across frequency by running AC analysis. The voltage output is the output impedance

R=V/I where for I, ac=1, so V is output impedance.

if u driving capacitive load, jsut put Idc for current source =0

if u driving resistive load, then put Idc equal to the current output of the circuit source.

ADE L ⇒ Analyses ⇒ Choose

Select noise

ADE L ⇒ Results ⇒ Print ⇒ Noise Summary

Se voglio the total noise you have integrate the spectrum

integ(....)

Another on-line tutorial can be found here

rmsNoise(......)

Importante definire poi ENC

rmsNoise(......)/peakToPeak(.....)

Da forum leggo che si usa Vdd x il valor medio della corrente che fluisce dal generatore vdd!

do a transient simulation and then the average of the current from your voltage source and multiply by VDD

see also here and here

average( IT("/V0/PLUS") )

oppure con il valore rms ??

rms( IT("/V0/PLUS") )

Schematic L ⇒ Create ⇒ Cellview ⇒ From Cellview…


Last update: Luca Pacher - 27 Sep 2012