Electronic – semiconductor resistor vs resistor in SPICE modeling Altium

altiumpspiceresistorsspicetemperature

I'm doing some SPICE modeling using altium and would like to apply the temperature coefficients of the passive components for a more accurate simulation. However, as far as I know, in altium the passive components are "ideal" by default. So they don't have any temp co or tolerance built in. I looked around to see if I can add a external model and there is an option for semiconductor resistor and semiconductor capacitor where temperature parameter can be applied to. Can I use these model and still get an accurate result? When in reality I will be using some ceramic npo caps and some thin film resistors.

Thanks!

Best Answer

Berkeley SPICE allows you to define different models for resistors. In the model card, the temperature dependent behavior is defined by three parameters, TC1, TC2, and TNOM. TC1 is the first order temperature coefficient and TC2 is the second order coefficient. TNOM is the nominal temperature at which the parameters have been measured.

The resistor value at a specific temperature is given by

\$ R\left(T\right)=R\left(T_0\right)\left[1+TC_1\left(T-T_0\right)+TC_2\left(T-T_0\right)^2\right]\$

To make a resistor conform to a certain model, you need to specify the model name in the resistor card:

RXXXXXXX N1 N2 <VALUE> <MNAME> <L=LENGTH> <W=WIDTH> <TEMP=T>

<MNAME> is the place to specify the model.

Other SPICEs have similar capabilities. Check your documentation for the specific syntax for your SPICE.

Note that none of this implies that SPICE can simulate self heating. You will need to specify the temperature of the device in either a .OPTIONS card or in the <TEMP=T> field of the resistor card, and that value will be used to determine the resistance.

Edit I notice you actually specified Altium's SPICE. Altium apparently has a very similar set of paramters to Berkely SPICE, but you should specify them in a model file, rather than a .MODEL card.