Example 3 for interconnect simulation * From neug1, Mosaic aluminum lines. 2um thick, 11um wide. Assuming * 10um above the ground. * Material: aluminum; resistivity (sigma) = 2.74uohm-cm = 2.74e-8 ohm-m * Dielectric: SiO2, dielectric constant (epsilon) =3.7 * epsilon0 = 8.85e-12 MKS units * mu0 = 4e-7*PI * speed of light in free space = 1/sqrt(mu0*epsilon0) = 2.9986e8 MKS units * * Line parameter calculations: * capacitance: parallel plate * C = epsilon*epsilon0 * A / l * C = 3.7*8.85e-12 * 11e-6 * 1(metre) / 10e-6 = 36.02e-12 F/m * + 30% = 46.8e-12 F/m = 0.468pF/cm * * C_freespace = 46.8e-12/epsilon = 12.65e-12 F/m * speed of light in free space v0 = 2.9986e8 = 1/sqrt(L0*C0) * => L0 = 1/C0*v0^2 * L0 = 1/(12.65e-12 * 8.9916e16) = 1/113.74e4 = 0.008792e-4 H/m * = 0.8792 uH/m = 8.792nH/cm * * R = rho * l / A = 2.74e-8 * 1 / (11e-6*2e-6) = 1245.45 ohms/m * = 12.45ohms/cm * * transmission line parameters: * nominal z0 = sqrt(L/C) = 137 ohms * td = sqrt(LC) = 64.14e-12 secs/cm = 0.064ns/cm * * vcc vcc 0 5 v1 1 0 0v pulse(0 5 0.1ns 0.1ns 0.1ns 1ns 100ns) rs 1 2 10 xdrv 1 2 vcc bjtdrvr xrcv 3 4 vcc bjtdrvr xrcv 3 4 vcc dioload d1 3 vcc diod d2 0 3 diod cl 3 0 1pF o1 2 0 3 0 lline *x1 2 3 sixteencm x1 2 3 xonecm .model diod d .model lline ltra rel=1.8 r=12.45 g=0 l=8.792e-9 c=0.468e-12 len=16 steplimit .control * 1cm * 2cm * 4cm * 6cm * 8cm * 10cm * 12cm *tran 0.001ns 15ns 0 0.1ns * 24cm tran 0.001ns 10ns 0 0.1ns * onecm10 *tran 0.001ns 10ns 0 0.01ns plot v(1) v(2) v(3) .endc * 1. define the subckt r10 to be one tenth of the resistance per cm. * 2. define the subckt onecm to be one of onecm10 (modelled using * 10 segments), onecm8, onecm4, onecm2 and lump1. Then use * the subckts onecm, fourcm, fivecm, tencm, twelvecm, * twentyfourcm in the circuit. The line is modelled as rlc segments. * 3. define the subckt xonecm to be one of xonecm10, xonecm8, * xonecm4, xonecm2 and xlump1. Use the subckts xonecm, * xfourcm, xfivecm, xtencm, xtwelvecm, xtwentyfourcm in the * circuit. The line will be modelled as r-lossless lumps. .subckt xonecm 1 2 *x1 1 2 xlump1 x1 1 2 xonecm4 .ends xonecm .subckt onecm 1 2 *x1 1 2 lump1 x1 1 2 onecm4 .ends onecm .subckt r10 1 2 r1 1 2 1.245 .ends r10 * ECL driver and diode receiver models - from Raytheon .model qmodn npn(bf=100 rb=100 cje=0.09375pF cjc=0.28125pF is=1e-12 +pe=0.5 pc=0.5) .model qmodpd npn(bf=100 rb=100 cje=0.08187pF cjc=0.2525pF is=1e-12 +pe=0.5 pc=0.5) .model qmodpdmine npn(bf=100 rb=100 cje=0.08187pF cjc=0.05pF is=1e-12 +pe=0.5 pc=0.5) .model dmod1 d(n=2.25 is=1.6399e-4 bv=10) .model dmod2 d .model dmod d(vj=0.3v) .model diod1 d(tt=0.75ns vj=0.6 rs=909 bv=10) .model diod2 d(tt=0.5ns vj=0.3 rs=100 bv=10) * bjt driver - 19=input, 268=output, 20=vcc; wierd node numbers from * the Raytheon file .subckt bjtdrvr 19 268 20 q1 22 18 13 qmodn q2 18 16 13 qmodn qd2 21 9 0 qmodn q4 14 14 0 qmodn q3 16 15 14 qmodpd q5 8 13 17 qmodn q6 25 12 0 qmodn q7 6 17 0 qmodpd qd1 26 10 0 qmodn q8 7 11 10 qmodn q10 268 17 0 qmodpdmine *q10 268 17 0 qmodpd q9 7 10 268 qmodn d1 0 19 dmod1 d2 18 19 dmod2 d3 13 19 dmod dq1 18 22 dmod dq2 16 18 dmod d502 9 21 dmod dq3 15 16 dmod d10 24 8 dmod d4 15 6 dmod dq6 12 25 dmod dq7 17 6 dmod dd1 17 10 dmod d7 11 6 dmod dd2 17 26 dmod d9 23 6 dmod dq8 11 7 dmod d501 17 268 dmod dq9 10 7 dmod d14 20 27 dmod d8 0 268 dmod r1 18 20 6k r2 22 20 2.2k r4 0 13 7k rd1 9 13 2k rd2 21 13 3k r3 16 20 10k r5 15 20 15k r9 0 17 4k r6 24 20 750 r10 12 17 2k r12 24 11 1.5k r11 25 17 3k r15 23 20 10k r13 0 10 15k r14 7 27 12 .ends bjtdrvr * subckt dioload - diode load: input=28, output=4, vcc=5 .subckt dioload 28 4 5 c1 28 0 5pF r503 0 4 5.55 r400 0 28 120k r500 1 5 7.5k d5 4 28 diod2 d1 1 28 diod1 d4 2 0 diod1 d3 3 2 diod1 d2 1 3 diod1 .ends dioload * End ECL driver and Diode receiver models from Raytheon *10 segments per cm .subckt lump10 1 2 l1 1 3 0.0.8792nH c1 2 0 0.0468pF x1 3 2 r10 .ends lump10 *1 segment per cm .subckt lump1 1 2 l1 1 3 8.792nH c1 2 0 0.468pF x1 3 4 r10 x2 4 5 r10 x3 5 6 r10 x4 6 7 r10 x5 7 8 r10 x6 8 9 r10 x7 9 10 r10 x8 10 11 r10 x9 11 12 r10 x10 12 2 r10 .ends lump1 *2 segments per cm .subckt lump2 1 2 l1 1 3 4.396nH c1 2 0 0.234pF x1 3 4 r10 x2 4 5 r10 x3 5 6 r10 x4 6 7 r10 x5 7 2 r10 .ends lump2 *4 segments per cm .subckt lump4 1 2 l1 1 3 2.198nH c1 2 0 0.117pF x1 3 4 r10 x2 4 5 r10 x3 5 2 r10 x4 5 2 r10 .ends lump4 *8 segments per cm .subckt lump8 1 2 l1 1 3 1.099nH c1 2 0 0.0585pF x1 3 4 r10 x2 4 2 r10 x3 4 2 r10 x4 4 2 r10 x5 4 2 r10 .ends lump8 .subckt onecm10 1 2 x1 1 3 lump10 x2 3 4 lump10 x3 4 5 lump10 x4 5 6 lump10 x5 6 7 lump10 x6 7 8 lump10 x7 8 9 lump10 x8 9 10 lump10 x9 10 11 lump10 x10 11 2 lump10 .ends onecm10 .subckt onecm8 1 2 x1 1 3 lump8 x2 3 4 lump8 x3 4 5 lump8 x4 5 6 lump8 x5 6 7 lump8 x6 7 8 lump8 x7 8 9 lump8 x8 9 2 lump8 .ends onecm8 .subckt onecm4 1 2 x1 1 3 lump4 x2 3 4 lump4 x3 4 5 lump4 x4 5 2 lump4 .ends onecm4 .subckt onecm2 1 2 x1 1 3 lump2 x2 3 2 lump2 .ends onecm2 .subckt twocm 1 2 x1 1 3 onecm x2 3 2 onecm .ends twocm .subckt threecm 1 2 x1 1 3 onecm x2 3 4 onecm x3 4 2 onecm .ends threecm .subckt fourcm 1 2 x1 1 3 onecm x2 3 4 onecm x3 4 5 onecm x4 5 2 onecm .ends fourcm .subckt fivecm 1 2 x1 1 3 onecm x2 3 4 onecm x3 4 5 onecm x4 5 6 onecm x5 6 2 onecm .ends fivecm .subckt sixcm 1 2 x1 1 3 fivecm x2 3 2 onecm .ends sixcm .subckt sevencm 1 2 x1 1 3 sixcm x2 3 2 onecm .ends sevencm .subckt eightcm 1 2 x1 1 3 sevencm x2 3 2 onecm .ends eightcm .subckt ninecm 1 2 x1 1 3 eightcm x2 3 2 onecm .ends ninecm .subckt tencm 1 2 x1 1 3 fivecm x2 3 2 fivecm .ends tencm .subckt elevencm 1 2 x1 1 3 tencm x2 3 2 onecm .ends elevencm .subckt twelvecm 1 2 x1 1 3 tencm x2 3 4 onecm x3 4 2 onecm .ends twelvecm .subckt sixteencm 1 2 x1 1 3 eightcm x2 3 2 eightcm .ends sixteencm .subckt twentyfourcm 1 2 x1 1 3 twelvecm x2 3 2 twelvecm .ends twentyfourcm *modelling using R and lossless lines * 10 segments per cm .model lless10 ltra nocontrol rel=10 r=0 g=0 l=8.792e-9 +c=0.468e-12 len=0.1 steplimit quadinterp * 8 segments per cm .model lless8 ltra nocontrol rel=10 r=0 g=0 l=8.792e-9 +c=0.468e-12 len=0.125 steplimit quadinterp * 4 segments per cm .model lless4 ltra nocontrol rel=10 r=0 g=0 l=8.792e-9 +c=0.468e-12 len=0.25 steplimit quadinterp * 2 segments per cm .model lless2 ltra nocontrol rel=10 r=0 g=0 l=8.792e-9 +c=0.468e-12 len=0.5 steplimit quadinterp * 1 segment per cm .model lless1 ltra nocontrol rel=10 r=0 g=0 l=8.792e-9 +c=0.468e-12 len=1 steplimit quadinterp *10 segments per cm .subckt xlump10 1 2 o1 1 0 3 0 lless10 x1 3 2 r10 .ends xlump10 *1 segment per cm .subckt xlump1 1 2 o1 1 0 3 0 lless1 x1 3 4 r10 x2 4 5 r10 x3 5 6 r10 x4 6 7 r10 x5 7 8 r10 x6 8 9 r10 x7 9 10 r10 x8 10 11 r10 x9 11 12 r10 x10 12 2 r10 .ends xlump1 *2 segments per cm .subckt xlump2 1 2 o1 1 0 3 0 lless2 x1 3 4 r10 x2 4 5 r10 x3 5 6 r10 x4 6 7 r10 x5 7 2 r10 .ends xlump2 *4 segments per cm .subckt xlump4 1 2 o1 1 0 3 0 lless4 x1 3 4 r10 x2 4 5 r10 x3 5 2 r10 x4 5 2 r10 .ends xlump4 *8 segments per cm .subckt xlump8 1 2 o1 1 0 3 0 lless8 x1 3 4 r10 x2 4 2 r10 x3 4 2 r10 x4 4 2 r10 x5 4 2 r10 .ends xlump8 .subckt xonecm10 1 2 x1 1 3 xlump10 x2 3 4 xlump10 x3 4 5 xlump10 x4 5 6 xlump10 x5 6 7 xlump10 x6 7 8 xlump10 x7 8 9 xlump10 x8 9 10 xlump10 x9 10 11 xlump10 x10 11 2 xlump10 .ends xonecm10 .subckt xonecm8 1 2 x1 1 3 xlump8 x2 3 4 xlump8 x3 4 5 xlump8 x4 5 6 xlump8 x5 6 7 xlump8 x6 7 8 xlump8 x7 8 9 xlump8 x8 9 2 xlump8 .ends xonecm8 .subckt xonecm4 1 2 x1 1 3 xlump4 x2 3 4 xlump4 x3 4 5 xlump4 x4 5 2 xlump4 .ends xonecm4 .subckt xonecm2 1 2 x1 1 3 xlump2 x2 3 2 xlump2 .ends xonecm2 .subckt xtwocm 1 2 x1 1 3 xonecm x2 3 2 xonecm .ends xtwocm .subckt xthreecm 1 2 x1 1 3 xonecm x2 3 4 xonecm x3 4 2 xonecm .ends xthreecm .subckt xfourcm 1 2 x1 1 3 xonecm x2 3 4 xonecm x3 4 5 xonecm x4 5 2 xonecm .ends xfourcm .subckt xfivecm 1 2 x1 1 3 xonecm x2 3 4 xonecm x3 4 5 xonecm x4 5 6 xonecm x5 6 2 xonecm .ends xfivecm .subckt xsixcm 1 2 x1 1 3 xfivecm x2 3 2 xonecm .ends xsixcm .subckt xsevencm 1 2 x1 1 3 xsixcm x2 3 2 xonecm .ends xsevencm .subckt xeightcm 1 2 x1 1 3 xsevencm x2 3 2 xonecm .ends xeightcm .subckt xninecm 1 2 x1 1 3 xeightcm x2 3 2 xonecm .ends xninecm .subckt xtencm 1 2 x1 1 3 xfivecm x2 3 2 xfivecm .ends xtencm .subckt xelevencm 1 2 x1 1 3 xtencm x2 3 2 xonecm .ends xelevencm .subckt xtwelvecm 1 2 x1 1 3 xtencm x2 3 4 xonecm x3 4 2 xonecm .ends xtwelvecm .subckt xsixteencm 1 2 x1 1 3 xeightcm x2 3 2 xeightcm .ends xsixteencm .subckt xtwentyfourcm 1 2 x1 1 3 xtwelvecm x2 3 2 xtwelvecm .ends xtwentyfourcm .end