====== Simulation references ======
[ __[[vlsi:home|Home]]__ ]
[ __[[vlsi:workbook|Design WorkBook]]__ ]
[ __[[vlsi:workbook:analog#contents|Back to index]]__ ]
== Contents ==
* [[vlsi:workbook:analog:simref#introduction|Introduction]]
* [[vlsi:workbook:analog:simref#reference_documentation|Reference documentation]]
* [[vlsi:workbook:analog:simref#dc_operating_points|DC operating points]]
* [[vlsi:workbook:analog:simref#power_consumption_evaluation|Power consumption evaluation]]
* [[vlsi:workbook:analog:simref#ADE_simulation_options|ADE simulation options]]
* [[vlsi:workbook:analog:simref#node_impedance_simulation|Node impedance simulation]]
* [[vlsi:workbook:analog:simref#pwl_voltage_and_current_sources|PWL voltage and current sources]]
* [[vlsi:workbook:analog:simref#noise_analyses|Noise analyses]]
* Typical OCEAN variables used in Front-End designing
**Keywords:**
To be inserted: **closed loop gain simulation** and **loop stability analysis**
e.g. (completo, fatto molto bene)
[[http://lumerink.com/courses/ECE614/Handouts/]] \\
[[http://lumerink.com/courses/ECE614/Handouts/Loop%Analysis.pdf]] \\
[[http://lumerink.com/courses/ECE614/Handouts/Loop%Stability%Analysis.pdf]]
===== Introduction =====
In this page we give a detailed description of a few **common simulation tasks**
(e.g. //power consumption evaluation// in Cadence) which can be encountered during the
analog design activity.
===== Reference documentation =====
Spectre ssimulator official documentation! Si impara praticamente tutto!
Attenzione pero' che e' sotto **MMSIM** (Multi-Mode Simulation) package!
//Spectre User Guide// and //Spectre Reference Guide//
''/usr/cadence/MMSIM_10.11/doc/spectreuser/spectreuser.pdf''
''/usr/cadence/MMSIM_10.11/doc/spectreref/spectreref.pdf''
===== DC operating points =====
MOS transistor parameters evaluated from the transistor model, typically some version
of the **BSIM4** model.
**ADE L => Results => Print => DC Operating Points**
Quali DOP vengono elencati dipende poi dal modello!
I DC op. poiints piu' importanti sono:
^ Parameter ^ Description ^
|''betaeff ''| |
|''gds ''| |
|''gm ''| |
|''id ''| |
|''ids ''| |
|''region ''| |
|''ron ''| |
|''vds ''| |
|''vdsat ''| |
|''vgs ''| |
|''vth ''| |
\\
''betaeff''\\
\\
''gmoverid''\\
etc.
===== Analyses overview =====
breve rassegna di cosa vuol dire simualre
DC, TRAN, AC etc.
^ **Calculator** ^ **Description** ^ **OCEAN syntax example ** ^
| '' vt ''| wire transient voltage | ''VT("/out") ''|
| '' it ''| node transient current | ''IT("/M1/D") ''|
| '' vf ''| wire AC sweep voltage | ''VF("/Vin") ''|
| '' if ''| node AC sweep current | ''IF("/C0/MINUS") ''|
| '' vdc ''| wire DC voltage | ''VDC("/vdd_disc") ''|
| '' idc ''| node DC current | ''IDC("/V0/PLUS") ''|
| '' vs ''| wire DC sweep voltage | ''VS("/net012") ''|
| '' is ''| node DC sweep current | ''IS("/R1/PLUS") ''|
| '' op ''| instance DC operating point | ''OP("M0","gm") ''|
| '' opt ''| instance transient DC operating point | ''OPT("M0","vth") ''|
| '' var ''| design variable | ''VAR("Ibias") ''|
| '' mp ''| instance model parameter | ''MP("M0","vtho") ''|
===== Power consumption evaluation =====
How to evaluate the power consumption. A detailed Wiki page about this topic has been created,
see __[[vlsi:workbook:analog:simref:power|here]]__.
===== ADE simulation options =====
Importante! soprtattutto a livello di **numerical evaluation**, serve sapere
che esistono dei **checks** su gmin, etc.
**ADE L => Simulation => Options => Analog...**
{{:vlsi:spectre_simulator_options_main.png}}
{{:vlsi:spectre_simulator_options_check.png}}
===== Node impedance simulation =====
How to evaluate the **total impedance** at a node.
A detailed Wiki page about this topic has been created, see
__[[vlsi:analog_impedance_sim|here]]__.
===== PWL voltage and current sources =====
piecewise linear (PWL)
Vpwl (piece-wise linear) to be used in **transient simulations**.
Values can be also specified into a plain text file and then using
a **Vpwlf** voltage source, which takes file values and convert them
to a standard **Vpwl** source.
**analogLib => Sources => Independent => Vpwlf**
The syntax is a column of time values and a column of voltage or current values,
t0 vo
t1 v1
t2 v2
... ...
Specify the **full path to the file** or copy it in the same directory of the netlist
cd ~/scratch//data
mkdir vpwlf
Notare che posso anche passare il nome del file ad ADE come variabile, usare
pPar("filename")
nel CDF parameter dell'istanza.
[[http://www.cadence.com/Community/forums/t/23078.aspx]]
===== Noise analyses =====
Both standard AC noise analysis and transient noise analysis. Click
[[vlsi:workbook:analog:simref:noise|here]].
====== Typical OCEAN variables used in Front-End designing ======
\\
__**Delta-like input current spike**__
Use an **ipulse** current source with a trapezoidal shape
Let ''w'' be rise time, pulse width and fall time of the current pulse (e.g. 1ns), then set i2 to
Qin*1.6e-19/(2*w)
with ''Qin'' expressed as the **number of electrons**.
\\
__**Equivalent Noise Charge (ENC)**__
\\
__**Time over threshold (ToT)**__
Define a ''ToT'' output variable in ADE L with the usage of the ''cross()'' OCEAN function,
(cross(VT("/Vout_comp") 0.3 1 "falling" nil nil) - cross(VT("/Vout_comp") 0.3 1 "rising" nil nil))
====== ======
\\
----
Last update: [[pacher@NOSPAMto.infn.it|Luca Pacher]] - Sep 25, 2013
~~NOTOC~~