-- File: [Thyme]Spice>Top>ThymeBasics.thy -- Last edited: -- SChen, 16-Feb-84 18:47:50 -- Barth, April 11, 1983 11:51 AM Diode: circuit[anode, cathode | Imax_ 1A, Io_ 10nA, Temp_ 25] asserts[Imax>Io, Io>0, Temp>-100]= { diodeModel: model_ dcDiode[anode, cathode | Io, 8.61707E-5*(Temp+273.16), \(Imax/Io)]; junction: current[anode, cathode]_ diodeModel[0] }; Diffusion: circuit[cathode, anode | a_ 0, p_ 0, Cj_ 0, Cjm_ 0, Pb_0.866, TDegC_ 25, Jmax_ 1m, Jo_ 30n] asserts[a>=0, p>=0, Cj>=0, Cjm>=0, TDegC>-75, Jmax>Jo, Jo>0]= { Dif: circuit[ | Vt] asserts[Pb>Vt]= { DModel: model_ acDiode[cathode, anode | Cj*a+Cjm*p, -- zero-bias capacitance of diode Pb, -- junction built-in voltage (v) Vt, -- kT/q Jo*a, -- Io (Pb/Vt) MIN \(Jmax/Jo) ]; C: capacitor[cathode, anode] _ DModel[0]; -- voltage dependent capacitance I: current[cathode, anode] _ DModel[1] -- leakage current }; dif: Dif[ | Vt_ 8.61707E-5*(TDegC+273.16)] }; Pulse: circuit[output | amplitude_ 5V, offset_ 0, period_ 10ns, width_ 5ns, tRise_ 2ns, tFall_ 2ns, tDelay_ 0] asserts[width0]= { pg: voltage[output, Gnd]_ StepGen[ OnLevel, OffLevel, tRise, tDelay] };