* LVS netlist generated with ICnet by 'vmn0001' on Sat Dec 29 2012 at 01:25:16

*
* Globals.
*
.inc 'ptm045.pm'
.global GND VDD
.param lam=0.045u
.param t=5ns
.param tr=0.01ns
.param supply=1v
.option post brief probe

VDD VDD GND supply
.vec 'addvec.txt'

X_rippleadder a[0] a[1] a[2] a[3] b[0] b[1] b[2] b[3] sum[0] sum[1]
+ sum[2] sum[3] cout cin rippleadder
*
* Component pathname : $ADK/parts/nand02
*
.subckt nand02  Y A0 A1

        M_I$472 Y A1 VDD VDD p L='lam' W='6*lam'
        M_I$471 Y A0 VDD VDD p L='lam' W='6*lam'
        M_I$4 Y A0 N$7 GND n L='lam' W='5*lam'
        M_I$5 N$7 A1 GND GND n L='lam' W='5*lam'
.ends nand02

*
* Component pathname : $ADK/parts/xnor2
*
.subckt xnor2  Y A0 A1

        M_I$218 N$213 A1 GND GND n L='lam' W='5*lam'
        M_I$217 N$212 A0 N$213 GND n L='lam' W='5*lam'
        M_I$9 N$212 A1 VDD VDD p L='lam' W='6.5*lam'
        M_I$8 N$212 A0 VDD VDD p L='lam' W='6.5*lam'
        M_I$7 N$3 N$212 GND GND n L='lam' W='5*lam'
        M_I$6 Y A1 N$3 GND n L='lam' W='5*lam'
        M_I$5 Y A0 N$3 GND n L='lam' W='5*lam'
        M_I$4 Y A1 N$1 VDD p L='lam' W='13*lam'
        M_I$3 Y N$212 VDD VDD p L='lam' W='6.5*lam'
        M_I$2 N$1 A0 VDD VDD p L='lam' W='13*lam'
.ends xnor2

*
* Component pathname : $ADK/parts/inv01
*
.subckt inv01  A Y

        M_I$411 Y A VDD VDD p L='lam' W='4.5*lam'
        M_I$412 Y A GND GND n L='lam' W='2.5*lam'
.ends inv01

*
* Component pathname : $ADK/parts/oai21
*
.subckt oai21  A0 A1 B0 Y

        M_I$5 N$7 B0 GND GND n L='lam' W='5*lam'
        M_I$4 Y A1 N$7 GND n L='lam' W='5*lam'
        M_I$3 Y A0 N$7 GND n L='lam' W='5*lam'
        M_I$12 Y B0 VDD VDD p L='lam' W='6*lam'
        M_I$2 Y A1 N$9 VDD p L='lam' W='12*lam'
        M_I$1 N$9 A0 VDD VDD p L='lam' W='12*lam'
.ends oai21

*
* Component pathname : /home/new-ece/vmn0001/Adder/adder
*
.subckt adder  co s ci b a

        X_ix80 nx79 a b nand02
        X_ix9 s ci nx77 xnor2
        X_ix78 nx77 a b xnor2
        X_ix76 ci nx75 inv01
        X_ix7 nx75 nx77 nx79 co oai21
.ends adder

*
* Component pathname : /home/new-ece/vmn0001/Adder/rippleadder
*
.subckt rippleadder  a[0] a[1] a[2] a[3] b[0] b[1] b[2] b[3] sum[0] sum[1]
+ sum[2] sum[3] cout cin

        X_A4 cout sum[3] c3 b[3] a[3] adder
        X_A3 c3 sum[2] c2 b[2] a[2] adder
        X_A2 c2 sum[1] c1 b[1] a[1] adder
        X_A1 c1 sum[0] cin b[0] a[0] adder
.ends rippleadder 

.tran 1ns '4*t'
.measure tran avg_current avg i(vdd) from=0ns to='4*t'
.measure tran rms_current rms i(vdd) from=0ns to='4*t'
.measure tran avg_pow avg p(vdd) from=0ns to='4*t'
.measure tran rms_pow rms p(vdd) from=0ns to='4*t'
.measure tran powavg param='avg_current*supply'
.measure tran powrms param='rms_current*supply'

.measure tran tp trig v(a[0]) val = 0.5 rise = 1 TD = '3*t'
+				   targ v(cout) val = 0.5 rise = 1
.print i(vdd)
.print power
.probe v(a[0]) v(a[1]) v(a[2]) v(a[3]) v(b[0]) v(b[1]) v(b[2]) v(b[3]) v(sum[0]) v(sum[1]) v(sum[2]) v(sum[3]) v(cin) v(cout)
.end