<Cedar5.2>ProcessDefs>NMos4.0u25C.thy>> <> ETran: circuit[gate, source, drain | L _ 2, W _ 4, sourceExtension _ 1, drainExtension _ 1]= { fet: MosFet[gate, source, drain, Gnd| Lm _ L*Lambda, Wm _ W*Lambda, As _ sourceExtension*W*Lambda*Lambda, Ad _ drainExtension*W*Lambda*Lambda, Ps _ (2*sourceExtension+W)*Lambda, Pd _ (2*drainExtension+W)*Lambda, Vfb _ -4.271886E-02, Na _ 8.849108E+14, Tox _ 700, Lk1 _ -0.922859, Wk1 _ 0.401684, K20 _ -2.665298E-02, Lk2 _ -1.07395, Wk2 _ 1.85753, Etao _ -3.262307E-02, nEta _ 4.20162, Un _ 707.860, Vo _ 28.1617, Lu _ 0.847386, Ecrit _ 1.35669, Lv _ 8.85297, dL _ 0.487116, dW _ -2.42256, TDegC _ Temp, Cj _ 8.73E-17, Cjm _ 2.21E-16, Pb _ 0.90 ] }; -- ETran DTran: circuit[gate, source, drain | L _ 4, W _ 2, sourceExtension _ 1, drainExtension _ 1]= { fet: MosFet[gate, source, drain, Gnd | Lm _ L*Lambda, Wm _ W*Lambda, As _ sourceExtension*W*Lambda*Lambda, Ad _ drainExtension*W*Lambda*Lambda, Ps _ (2*sourceExtension+W)*Lambda, Pd _ (2*drainExtension+W)*Lambda, Vfb _ -4.24520, Na _ 9.721774E+14, Tox _ 700, Lk1 _ -1.05228, Wk1 _ 2.83468, K20 _ -1.200934E-02, Lk2 _ 6.95809, Wk2 _ -0.802315, Etao _ 2.570121E-02, nEta _ 3.67642, Un _ 848.461, Vo _ 31.6363, Lu _ -0.141426, Ecrit _ 1.05208, Lv _ 26.6670, dL _ 0.550266, dW _ -2.41600, TDegC _ Temp, Cj _ 8.73E-17, Cjm _ 2.21E-16, Pb _ 0.90 ] }; -- DTran WireCap: circuit[n | -- l=length, w=width, a=area, p=perimeter l2M _ 0, w2M _ 3, a2M _ 0, p2M _ 0, -- 2nd layer metal lM _ 0, wM _ 3, aM _ 0, pM _ 0, -- 1rst layer metal lP _ 0, wP _ 2, aP _ 0, pP _ 0, -- poly a2MC _ 1.3E-5pF, p2MC _ 0, -- /(uM)^2, /uM, 2nd layer metal to bulk aMC _ 2.6E-5pF, pMC _ 0, -- 1rst layer metal to bulk aPC _ 4.0E-5pF, pPC _ 0 -- poly to bulk ] = { C: capacitor[n, Gnd] = Lambda* (Lambda*((a2M+l2M*w2M)*a2MC+(aM+lM*wM)*aMC+(aP+lP*wP)*aPC)+ (p2M+2*l2M+2*w2M)*p2MC+(pM+2*lM+2*wM)*pMC+(pP+2*lP)*pPC) }; -- WireCap DifCap: circuit[n | lD _ 0, wD _ 0, aD _ 0, pD _ 0]= { dc: Diffusion[n, Gnd | a _ (lD*wD+aD)*Lambda*Lambda, p _ (2*(lD+wD)+pD)*Lambda, Cj _ 8.90E-17, Cjm _ 2.25E-16, Pb _ 0.87, TDegC _ Temp] }; -- DifCap WireRes: circuit[nodeA, nodeB | l2M _ 0, w2M _ 3, lM _ 0, wM _ 3, lP _ 0, wP _ 2, lD _ 0, wD _ 2, s2MR _ 0.06, -- ohms/square sMR _ 0.06, sPR _ 40, sDR _ 30] = { R: resistor[nodeA, nodeB] = l2M/w2M*s2MR + lM/wM*sMR + lP/wP*sPR + lD/wD*sDR }; -- WireRes ConRes: circuit[nodeA, nodeB | n2MM _ 0, -- number of parallel 2nd layer metal to 1rst layer metal vias nMP _ 0, -- number of parallel 1rst layer metal to poly contacts nMD _ 0, -- number of parallel 1rst layer metal to diffusion contacts nPD _ 0, -- number of parallel poly to diffusion contacts, butting c2MMR _ 40, -- ohms/via, 2nd layer metal to 1rst layer cMPR _ 40, -- ohms/contact, metal-poly cMDR _ 25, -- ohms/contact, metal-diffusion cPDR _ 50 -- ohms/contact, poly-diffusion, with metal strap, i.e. butting contact ] = { R: resistor[nodeA, nodeB] = 1/(n2MM/c2MMR + nMP/cMPR + nMD/cMDR + nPD/cPDR) }; -- ConRes Stray: circuit[n | a2M _ 0, p2M _ 0, aM _ 0, pM _ 0, aP _ 0, pP _ 0, aD _ 0, pD _ 0 ] = { wireCap: WireCap[n | a2M _ a2M, p2M _ p2M, aM _ aM, pM _ pM, aP _ aP, pP _ pP]; difCap: DifCap[n | aD _ aD, pD _ pD]; }; -- Stray <> <> <> <> <> <<>> <> <> <> <> <> <> <>