Manuals >Reference >ADS Simulator Print version of this Book (PDF file) |
![]() ![]() |
|||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||
The ADS Simulator SyntaxThe following sections outline the basic language rules. Field SeparatorsA delimiter is one or more blanks or tabs. Continuation CharactersA statement may be continued on the next line by ending the current line with a backslash and continuing on the next line. Name FieldsA name may have any number of letters or digits in it but must not contain any delimiters or non alphanumeric characters. The name must begin with a letter or an underscore ( _ ).
Parameter FieldsA parameter field takes the form name = value, where name is a parameter keyword and value is either a numeric expression, the name of a device instance, the name of a model or a character string surrounded by double quotes. Some parameters can be indexed, in which case the name is followed by [i], [i,j], or [i,j,k]. i, j, and k must be integer constants or variables. Node NamesA node name may have any number of letters or digits in it but must not contain any delimiters or non alphanumeric characters. If a node name begins with a digit, then it must consist only of digits. Lower/Upper CaseThe ADS Simulator is case sensitive. Units and Scale FactorsAn integer or floating point number may be scaled by following it with either an e or E and an integer exponent (e.g., 2.65e3, 1e-14). An ADS Simulator parameter with a given dimension assumes its value has the corresponding units. For example, for a resistance, R=10 is assumed to be 10 Ohms. The fundamental units for the ADS Simulator are shown in Table 68. A number or expression can be scaled by following it with a scale factor. A scale factor is a single word that begins with a letter or an underscore. The remaining characters, if any, consist of letters, digits, and underscores. Note that ``/'' cannot be used to represent ``per''. The value of a scale factor is resolved using the following rule: If the scale factor exactly matches one of the predefined scale-factors (Table 69), then use the numerical equivalent; otherwise, if the first character of the scale factor is one of the legal scale-factor prefixes (Table 70), the corresponding scaling is applied.
Predefined Scale FactorsThis type of scale factor is a predefined sequence of characters which the ADS Simulator parses as a single token. The predefined scale factors are listed in the previous table. Single-character prefixesIf the first character of the scale factor is one of the legal scale-factor prefixes, the corresponding scaling is applied.The single-character prefixes are based on the metric system of scaling prefixes and are listed in the following table For example, 3.5 GHz is equivalent to 3.5*109 and 12 nF is equivalent to 1.2*10-8. Note that most of the time, the ADS Simulator ignores any characters that follow the single-character prefix. The exceptions are noted in Unrecognized Scale Factors. Most of these scale factors can be used without any additional characters (e.g., 3.5 G, 12n). This means that m, when used alone, stands for ``milli''. The underscore _ is provided to turn off scaling. For example, 1e-9 _farad is equivalent to 10-9, and 1e-9 farad is equivalent to 10-24. Predefined scale factors are case sensitive. Unless otherwise noted, additional characters can be appended to a predefined scale factor prefix without affecting its scaling value.
A predefined scale factor overrides any corresponding single-character-prefix scale factor. For example, 3 mm is equivalent to 3*10-3, not 3*106. In particular, note that M does not stand for milli, m does not stand for mega, and F does not stand for femto. There are no scale factors for dBm, dBW, or temperature, see section on Functions for conversion functions. Unrecognized Scale FactorsThe ADS Simulator treats unrecognizable scale factors as equal to 1 and generates a warning message. Scale-Factor BindingMore than one scale factor may appear in an expression, so expressions like x in + y mil are valid and behave properly. Scale factors bind tightly to the preceding variable. For instance, 6 + 9 MHz is equal to 9000006. Use parentheses to extend the scope of a scale factor (e.g., (6 + 9) MHz). BooleansMany devices, models, and analyses have parameters that are boolean valued. Zero is used to represent false or no, whereas any number besides zero represents true or yes. The keywords yes and no can also be used. Ground NodesNode 0 is assumed to be the ground node. Additional ground node aliases can be defined using the ground statement. Multiple ground statements can be used to define any number of ground aliases, but they must all occur at the top-level hierarchy in the netlist. Ground gnd Global NodesGlobal nodes are user-defined nodes which exist throughout the hierarchy. The global nodes must be defined on the first lines in the netlist. They must be defined before they are used. globalnode nodename1 [ nodename2 ] [... nodenameN ] globalnode sumnode my_internal_node CommentsComments are introduced into an ADS Simulator file with a semicolon; they terminate at the end of the line. Any text on a line that follows a semicolon is ignored. Also, all blank lines are ignored. Statement OrderModels can appear anywhere in the netlist. They do not have to be defined before a model instance is defined. Some parameters expect a device instance name as the parameter value. In these cases, the device instance must already have been defined before it is referenced. If not, the device instance name can be entered as a quoted string using double quotes ("). Naming ConventionsThe full name for an instance parameter is of the form: where pathName is a hierarchical name of the form The same naming convention is used to reference nodes, variables, expressions, functions, device terminals, and device ports. For device terminals, the terminal name can be either the terminal name given in the device description, or tn where n is the terminal number (the first terminal in the description is terminal 1, etc.). Device ports are referenced by using the name pm, where m is the port number (the first pair of terminals in the device description is port 1, etc.). Note that t1 and p1 both correspond to the current flowing into the first terminal of a device, and that t2 corresponds to the current flowing into the second terminal. If terminals 1 and 2 define a port, then the current specified by t2 is equal and opposite to the current specified by t1 and p1. CurrentsThe only currents that can be accessed for simulation, optimization, or output purposes are the state currents. State currentsMost devices are voltage controlled, that is, their terminal currents can be calculated given their terminal voltages. Circuits that contain only voltage-controlled devices can be solved using node analysis. Some devices, however, such as voltage sources, are not voltage controlled. Since the only unknowns in node analysis are the node voltages, circuits that contain non-voltage-controlled devices cannot be solved using node analysis. Instead, modified node analysis is used. In modified node analysis, the unknown vector is enlarged. It contains not only the node voltages but the branch currents of the non-voltage-controlled devices as well. The branch currents that appear in the vector of unknowns are called state currents. Since the ADS Simulator uses modified node analysis, the values of the state currents are available for output. If the value of a particular current is desired but the current is not a state current, insert a short in series with the desired terminal. The short does not affect the behavior of the circuit but does create a state current corresponding to the desired current. To reference a state current, use the device instance name followed by either a terminal or port name. If the terminal or port name is not specified, the state current defaults to the first state current of the specified device. Note that this does not correspond to the current through the first port of the device whenever the current through the first port is not a state current. For some applications, the positive state current must be referenced, so a terminal name of t1 or t3 is acceptable but not t2. Using port names avoids this problem. The convention for current polarity is that positive current flows into the positive terminal. |
||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||
![]() ![]() |