#Optimization Flow# Alter:no $do we want to do corner analysis? MonteCarlo:no $do we want to do MonteCarlo analysis? AlterMC cost:1.00 $point at which we want to start ALTER and/or MONTECARLO ExecuteRF:no $execute or not the RF module to add RF parasitics? SomethingElse: $ # #DE# choice of method:3 maximum no. of iterations:100 Output refresh cycle:2 No. of parents NP:100 Constant F:0.7 Crossover factor CR:0.9 Seed for pseudo random number generator:3 Minimum Cost Variance:1e-6 Cost objectives:10 Cost constraints:10e6 # # ALTER # *.protect *.inc [../models/cmos035_slow.mod ../models/cmos035_typ.mod ../models/cmos035_fast.mod] *.unprotect *.temp [-40 +25 +85] .param + V_SUPPLY=[2.0 2.1 2.2] *.protect $ As much as 6 variables can be swept at the same time. *.lib hl49ciat57k5r200.mod [mos_wcs mos_nom mos_bcs] $ Format is [a] or [a b] or ... [a b c d e f] =>1 space *.unprotect $ and not :[ a], [a ], [ a ] => space is not really necessary *.temp [-40 +25 +85] $ and not :[a b] => only 1 ' ' between 'a' and 'b' *.param $ Add '*' to skip a line *+ vddd=[2.25 2.50 3.30] $ *+ kc=[0.95 1.05]:LIN:10 $ LIN not yet implemented *+ kr=[0.87 1.13]:LOG:10 $ LOG not yet implemented *+ Ierror=[0.7 1.3] *+ k00=[0 1] *+ k01=[0 1] *+ k02=[0 1] *+ k03=[0 1] *+ k04=[0 1] *+ k05=[0 1] *+ k06=[0 1] *+ k07=[0 1] *+ k08=[0 1] *+ k09=[0 1] # #Monte Carlo# NMOS_AVT:12.4mV $ This values will be divided by sqrt(2) by the program NMOS_ABETA:7.3% $ 'm' parameter is taken into account PMOS_AVT:10.9mV $ PMOS_ABETA:3.7% $ SMALL_LENGTH:0.0u $ Small transistors if l<= SMALL_LENGTH SMALL_NMOS_AVT:20mV $ Small transistors parameters SMALL_NMOS_ABETA:10% $ SMALL_PMOS_AVT:10mV $ SMALL_PMOS_ABETA:5% $ R_DELTA:0.333% $ Resistors matching at 1 sigma between two resistors L_DELTA:0.333% $ Inductors matching at 1 sigma between two inductors C_DELTA:0.333% $ Capacitors matching at 1 sigma between two capacitors # # Parameters # Supply voltage:#VSUPPLY#:3.0:2.4:3.3:LIN_DOUBLE:--- Minimal gate length:#LMIN#:0.35U:0.35U:0.35U:LIN_DOUBLE:--- Bias voltage:#VBIAS#:1.25:1:3.0:LIN_DOUBLE:OPT Bias current:#IBIAS#:5E-6:1E-6:10E-6:LIN_DOUBLE:OPT Load capacitance:#CLOAD#:100E-12:100E-12:130E-12:LIN_DOUBLE:--- Load resistance:#RLOAD#:25E3:10E3:50E3:LIN_DOUBLE:--- C compensation 1:#CC1#:15p:2p:20p:LIN_DOUBLE:OPT C compensation 2:#CC2#:3p:2p:20p:LIN_DOUBLE:OPT Length group 1:#LM1#:0.7E-6:0.35E-6:7E-6:LIN_DOUBLE:OPT Length group 2:#LM2#:0.7E-6:0.35E-6:7E-6:LIN_DOUBLE:OPT Length group 3:#LM3#:0.7E-6:0.35E-6:7E-6:LIN_DOUBLE:OPT Length group 4:#LM4#:0.7E-6:0.35E-6:7E-6:LIN_DOUBLE:OPT Length group 5:#LM5#:0.7E-6:0.35E-6:7E-6:LIN_DOUBLE:OPT Length group 6:#LM6#:0.7E-6:0.35E-6:7E-6:LIN_DOUBLE:OPT Length group 7:#LM7#:0.5E-6:0.35E-6:7E-6:LIN_DOUBLE:OPT Width M00_10:#WM00_10#:10E-6:0.35E-6:50E-6:LIN_DOUBLE:OPT Width M11_12:#WM11_12#:40E-6:0.35E-6:50E-6:LIN_DOUBLE:OPT Width M13+16:#WM13_16#:10E-6:0.35E-6:50E-6:LIN_DOUBLE:OPT Width M14_17:#WM14_17#:6E-6:0.35E-6:50E-6:LIN_DOUBLE:OPT Width M15_18:#WM15_18#:11.01E-6:0.35E-6:50E-6:LIN_DOUBLE:OPT Width M20:#WM20#:15E-6:0.35E-6:50E-6:LIN_DOUBLE:OPT Width M22:#WM22#:10E-6:0.35E-6:50E-6:LIN_DOUBLE:OPT Width M21_23:#WM21_23#:2E-6:0.35E-6:50E-6:LIN_DOUBLE:OPT Width M30:#WM30#:1.5E-6:0.35E-6:50E-6:LIN_DOUBLE:OPT Width M31:#WM31#:1.5E-6:0.35E-6:50E-6:LIN_DOUBLE:OPT # # Measurements # ac_power:VDD:MIN:0 dc_gain:VOUT:GE:122 unity_gain_frequency:VOUT:GE:3.15E6 phase_margin:VOUT:GE:51.8 phase_margin:VOUT:LE:70 amp3_slew_rate:VOUT:GE:0.777E6 # # Post Processing # # #this is the last line