====== Analog IC design HowTo's ======
[ __[[vlsi:home|Home]]__ ]
[ __[[vlsi:workbook|Design WorkBook]]__ ]
[ __[[vlsi:workbook:analog#contents|Back to index]]__ ]
== Contents ==
* [[vlsi:workbook:analog:howtos#introduction|Introduction]]
* [[vlsi:workbook:analog:howtos#how_to_disable_the_annoying_beep_sound|How to disable the annoying 'beep' sound]]
* [[vlsi:workbook:analog:howtos#how_to_evaluate_the_power_consumption|How to evaluate the power consumption]]
* [[vlsi:workbook:analog:howtos#how_to_evaluate_the_total_impedance_at_a_node|How to evaluate the total impedance at a node]]
* ....
**Keywords:**
===== Introduction =====
====== How to change the default simulation results and saved states directories ======
By default, all **simulation data and results** are stored in a ''~/simulation'' directory automatically created
in your home directory the first time you run a simulation with Cadence IC.
Similarly, Cadence **simulation states** by default are saved in a ''~/.artist_states'' hidden directoryautomatically created
in your home directory.
To change these defaults, just use in your home ''~/.cdsinit'' or ''~/.cdsinit_personal'' files the following directives:
envSetVal("asimenv.startup" "projectDir" 'string "/path/to/your/custom/simulation/results/directory")
envSetVal("asimenv" "saveDir" 'string "/path/to/your/custom/simulation/states/directory")
\\
You can also issue these statements at the CIW command prompt.
\\
See also
[[http://www.cadence.com/Community/forums/p/17009/1179512.aspx]]
===== How to disable the annoying 'beep' sound =====
Solo pe rla sessione corrente:
**CIW => Options => User Preferences...**
poi nel Command Controls tab c'e' la Beep Volume section
Altrimenti si customizza l'environment editanto il **.cdsinit**
===== How to evaluate the power consumption =====
A detailed Wiki page about this topic has been created, please refer to
__[[vlsi:analog_power_sim|Power consumption evaluation in Cadence]]__.
===== How to use SPICE transistor models =====
===== How to define the default circuit simulator for ADE =====
To set the default simulator, e.g. as Spectre, enter the following environment variable
in your .cdsenv or .cdsinit file.
Syntax to set the default simulator in the .cdsenv
asimenv.startup simulator string "spectre"
Syntax to set the default simualtor in the .cdsinit
envSetVal("asimenv.startup" "simulator" 'string "spectre")
===== How to set the default models path for Spectre =====
Syntax to set the default model path in the .cdsenv
spectre.envOpts modelPath string "/myModelFile;section"
Syntax to set the default model path in the .cdsinit
envSetVal("spectre.envOpts" "modelPath" 'string "/myModelFile;section")
===== Creating a parameterized cell =====
e.g. creare un ideal OPAMP with a **vcvs**
pPar("gain")
**CIW => Tools => CDF => Edit...**
see also [[ http://wikis.ece.iastate.edu/vlsi/index.php/Creating_a_Parameterized_Cell_in_Cadence | here ]]
===== How to save DC Operating Points’ Parameters of a MOSFET =====
save M0:oppoints
Other web tutorials can be found
[[http://eda.engineering.wustl.edu/wiki/index.php/How_to_Save_DC_Operating_Points%E2%80%99_Parameters_of_a_MOSFET_in_Cadence|here]] and [[ http://www.eecs.tufts.edu/~ryun01/gmid_ruida.pdf | here ]]
===== How to evaluate rise time, delays etc. =====
riseTime(.....)
delay(......)
Example: Time-over-Threshold
===== How to make nice looking plots from Cadence =====
===== Printing the schematic =====
===== How to draw diagonal wires =====
This is a very useful trick to make your schematics more readable.
Diagonal connections are used to draw **cross-coupled transistors** as
in //latches// and //flip-flops//.
{{:vlsi:draw_diagonal_wires.png}}
Press **W** to begin wiring, then press the **F3** key. The //Add Wire// window will appear.
{{:vlsi:f3_add_wire.png}}
Change the **Draw Mode** from the default of "route" to something that allows diagonal or any angle wires.
{{:vlsi:f3_add_wire_diagonal.png}}
You can also specify a 45 degree fixed angle with the relative //Lock Angle// option.
But you can also change between different Draw Modes simply by clicking on the mouse whell
or the central mouse button!
See also
[[http://www.cadence.com/Community/forums/p/16772/1178636.aspx]]
===== Performing simulations with HSPICE =====
Se e' installato
see also [[ http://www.eda.ncsu.edu/wiki/Tutorial:Analog_Artist_with_HSPICE | here ]]
===== How to evaluate the total impedance at a node =====
A detailed Wiki page about this topic has been created, please refer to
__[[vlsi:workbook:analog:howtos:node_impedance_sim|Node impedance simulation]]__.
===== How to evaluate the total input/output capacitance of a stage =====
In ingresso tipicamente e' quella vista sul gate of the **input transistor**
OP("/M0","cgg")
===== How to measure the OPAMP slew-rate =====
Si applica la definizione, mando in ingresso un voltage step
e misuro
SR = max{//d vout / dt// }
ymax(deriv(VT("/out")))
===== How to choose the proper number of fingers =====
in potenze di 2, as Manuel dixit?
===== Create a custom library of ideal building blocks =====
cd ~/cadence
mkdir ideal_blocks
cd ideal_blocks
mkdir idealLib
poi create a cds.lib with the following directives:
INCLUDE $IC_DIR/tools/dfII/local/cds.lib
DEFINE idealLib $HOME/cadence/ideal_blocks/idealLib
poi lanciare virtuoso normalmente
====== ======
\\
----
Last update: [[pacher@NOSPAMto.infn.it|Luca Pacher]] - Apr 23, 2013
~~NOTOC~~