UP

COMPONENT PROPERTY SYNTAX


Component property strings can be set in the usual way with the 'q' on a selected component instance or by menu Properties --> Edit

The dialog box allows to change the property string as well as the symbol reference. The property string is essentially a list of attribute=value items. As with symbol properties if a value has white space it should be double-quoted. The following property definitions are identical:

name=mchanged_name model=nmos w=20u l=3u m=10
 

name="mchanged_name" model="nmos" w="20u" l="3u" m="10"
 

Given the role of the " character, if quoted values are needed escapes must be used, like in the following example where the model name will be with quotes in netlist:

name="mchanged_name" model="\"nmos\"" w="20u" l="3u" m="10"
 

or

name="mchanged_name" model=\"nmos\" w="20u" l="3u" m="10"
 

the resulting SPICE netlist will be:
mchanged_name DRAIN GATE SOURCE BODY "nmos" w=20u l=3u m=10

There is no limit on the number of attribute=value items, each attribute should have a corresponding @attribute in the symbol definition format, but this is not a requirement. There are a number of special attributes as we will see later.

Important: a name=<inst_name> item is mandatory and must be placed before any other attributes in component property string. The name attribute is used by XSCHEM -among other things- for fast indexing the component. If <inst_name> is already used in another component XSCHEM will auto-rename it to a unique name preserving the first letter (which ts a device type indicator for SPICE like netlists).

PREDEFINED COMPONENT ATTRIBUTES