Overview

For a simple device, the number of parameters required to model the device is relatively small and the parameters can be easily blended with the device statement. For example, the resistance, the inductance, and the capacitance of a linear resistor, inductor, and capacitor, respectively, are all defined in the device statements. For devices such as simple switches, piecewise-linear elements, and simple logic gates, a large number of parameters is needed to describe the device performance. In such cases, the model statements provide a convenient and organized way to define the model parameters.

There are two additional advantages in using the model statements. Quite often, several devices in the system being studied may have the same model parameters. In such cases, one single model statement can provide the model parameters for all of the devices of the same type. Another benefit of this arrangement is when several devices are described by the same device model, then the model characteristics of all of these devices can be altered at the same location by modifying the model statement which is common to all.

A typical model statement can be represented by the following example statement:

.MODEL mname mtype param param ...

where

.MODEL is the six-character keyword ".MODEL"
mname is a legal model name as explained in Model Names and Subcircuit Names. A model name must be unique within a general circuit. If a name is used as a model name in a general circuit, it cannot be used as a subcircuit name in the same general circuit and vice versa.
mtype is a keyword which stands for one of the model types supported by SIMPLIS. The list of device models recognized by SIMPLIS is shown in the table below.
param is a parameter assignment in the form illustrated in Parameter Assignments.

Device Model Types Used by SIMPLIS

Model Type Description
VCSW Voltage-Controlled Simple Switch
ICSW Current-Controlled Simple Switch
VCQPOS VCQNEG Voltage-Controlled Simple Transistor Switch
ICQPOS ICQNEG Current-Controlled Simple Transistor Switch
VPWLR IPWLR Piecewise-Linear Resistor
PWLL Piecewise-Linear Inductor
PWLC Piecewise-Linear Capacitor
INV Simple Logic Gate, Inverter
COMP Simple Logic Gate, Comparator
XOR Simple Logic Gate, Exclusive OR
ORk Simple Logic Gate, k-input OR, where k is an integer, 2 $\leq$ k $\leq$ 9
NORk Simple Logic Gate, k-input NOR, where k is an integer, 2 $\leq$ k $\leq$ 9
ANDk Simple Logic Gate, k-input AND, where k is an integer, 2 $\leq$ k $\leq$ 9
NANDk Simple Logic Gate, k-input NAND, where k is an integer, 2 $\leq$ k $\leq$ 9
SRFF Simple Logic Gate, Set-Reset Flip Flop
CLK_SRFF Clocked Logic Gate, Clocked Set-Reset Flip Flop
CLK_JKFF Clocked Logic Gate, Clocked JK Flip Flop
CLK_DFF Clocked Logic Gate, Clocked D Flip Flop
CLK_TFF Clocked Logic Gate, Clocked Toggle Flip Flop
LATCH Latch
The keyword ".MODEL", the model name, and the model type must be entered in the exact order as indicated. Following these three fields are a number of fields each made up of a parameter assignment. The actual number of parameters assignments depends on the model type. The number of parameter assignments must be exactly equal to what is required by the model type. Extra or missing parameter assignments will lead to error messages. Within the set of fields for the parameter assignments, however, the fields can appear in any order of sequence. For example, the following two statements are both acceptable:

.MODEL S1 VCSW TH=2 HYSTWD=2U RON=10m
+ ROFF=10MEG LOGIC=POS
or
.MODEL S1 VCSW RON=10m ROFF=10MEG
+ TH=2 HYSTWD=2U LOGIC=POS

Parameter assignments in SIMPLIS do not assume default values. Therefore, each required parameter must be assigned a proper value in the .MODEL statement.