User Tools

Site Tools


soft:cadence:simulations:usefull_calc_formulas

This is an old revision of the document!


Usefull Cadence Virtuoso ADE Calculator formulas

DAC simulations

  • INL calculation from transient ramp:
(((abs(value(SIGNAL T_SAMPLE ?period T_PERIOD ?xName "cycle")) - (((ymax(abs(value(SIGNAL T_SAMPLE ?period T_PERIOD ?xName "cycle"))) - ymin(abs(value(SIGNAL T_SAMPLE ?period T_PERIOD ?xName "cycle")))) * (xval(abs(value(SIGNAL T_SAMPLE ?period T_PERIOD ?xName "cycle"))) - 1)) / No_of_STATES)) + ymin(abs(value(SIGNAL T_SAMPLE ?period T_PERIOD ?xName "cycle")))) / ((ymax(abs(value(SIGNAL T_SAMPLE ?period T_PERIOD ?xName "cycle"))) - ymin(abs(value(SIGNAL T_SAMPLE ?period T_PERIOD ?xName "cycle")))) / No_of_STATES))
  • DNL calculation from transient ramp
((deriv(value(abs(SIGNAL) T_SAMPLE ?period T_PERIOD ?xName "cycle")) / ((ymax(value(abs(SIGNAL) T_SAMPLE ?period T_PERIOD ?xName "cycle")) - ymin(value(abs(SIGNAL) T_SAMPLE ?period T_PERIOD ?xName "cycle"))) / No_of_STATES)) - 1)

Where:
SIGNAL - signal name, i.e. IT(“/R0/PLUS”) or VT(“/out_dac”)
T_SAMPLE - time of first sample
T_PERIOD - sampling period
No_of_STATES = 2^N-1 - number of DAC states (for 8 bit DAC it is 255)

CSA

  • ENC in electrons
(rmsNoise(F_MIN F_MAX) / ((ymax(VT("OUTPUT_NODE")) - value(VT("OUTPUT_NODE") 0)) / pv("/INPUT_CHARGE" "value" ?result "variables")) / 1.602e-19)

Where:
F_MIN, F_MAX - frequency range for noise simulation
OUTPUT_NODE - output node of CSA INPUT_CHARGE - variable containing input charge value

/services/www/http/wiki/data/attic/soft/cadence/simulations/usefull_calc_formulas.1387454658.txt.gz · Last modified: 2019/03/08 14:06 (external edit)