Signal Format

Each signal begins with the name of the input pin the signal will be sent to. This is followed by one or more items (see below), followed by the final value of the signal, followed by the word "end" (lower case, no quotes). For example,

Each term is a signal value, followed by the word "for" or "until", followed by a positive integer. If the word "for" appears, then the signal value will persist at the input pin for that length of time. If the word "until" appears, then the signal value will persist until the given time. For example,

0 for 10 means 0 will persist for 10 simulation time units
7 until 125 means 7 will persist until simulation time 125

All signal values are base 10 non-negative integers.

Terms using "for" can be mixed with terms using "until" in the same signal specification.

All words and values must be separated by white space (one or more spaces, tabs or new lines). Inputs for a given signal can appear on separate lines.

Everything following a # on a line is considered to be a comment and will be ignored.

Multiple signals can be specified in the same specification. For example,

The until time must be greater than then time of the last signal change. For example,

is an error because the signal was 0 from time 0 to time 100. The time value after "until" must be at least 101.

Errors will not be checked for until the simulator is run.