Digital Source

The digital source provides for straightforward descriptions of digital signal vectors in a tabular format. The model reads input from the source text and, at the times specified, generates the inputs along with the strengths listed.

The format of the input file is as shown below. Note that comment lines are delineated through the use of a single "*" character in the first column of a line.

* T        c    n    n    n  . . .
* i        l    o    o    o  . . .
* m        o    d    d    d  . . .
* e        c    e    e    e  . . .
*          k    a    b    c  . . .

0.0000     0    0    0    0 . . .
1.234e-9   0    1    1    0 . . .
1.376e-9   0    0    1    0 . . .
2.5e-7     1    0    1    Z . . .
2.5006e-7  1    1    1    Z . . .
5.0e-7     0    1    1    Z . . .

Note that in the example shown, whitespace (any combination of blanks, tabs, commas) is used to separate the time and state tokens. The order of the input columns is important; the first column is always interpreted to mean "time". The second through the N'th columns map to the output nodes. A non-commented line which does not contain enough tokens to completely define all outputs for the digital_source will cause an error. Also, time values must increase monotonically or an error will result in reading the source text.

Errors will also occur if a line exists in source text which is neither a comment nor vector line. The only exception to this is in the case of a line that is completely blank; this is treated as a comment.

Time

The time may be specified in either seconds or clock cycles. Clock cycles are specified by using the '#' prefix (such as #5 specifies 5 clock cycles). The actual time is calculated by multiplying the number of clocks by TIMESTEP value. The TIMESTEP command defines the number of seconds per clock cycle.

Absolute time values must be in ascending order. The time may also be declared relative to the previous time value by placing a '+' character in front of the time, such as +10ns or +#5.

Loops

The REPEAT command specifies the beginning of a loop. All stimulus commands between the REPEAT line and the ENDREPEAT line will be looped the amount of times specified. REPEAT FOREVER creates an infinite loop. All absolute times within the loop are considered relative to the beginning of the loop.

*TIME D0 D1
0s    0  1
*
REPEAT FOREVER
  REPEAT 5
    1us  1 0
    2us  0 1
  ENDREPEAT 
*
  REPEAT 2
    5us  1 0
    10us 0 1
  ENDREPEAT 
*
  TIMESTEP 1us
  +#1  1 0
  +#9  0 1
ENDREPEAT

Output Values

Value State
0, L Low
1, H High
U, X Unknown
Z Hi-Z

Parameters

Parameter Description Units Default
SOURCE Source text.    
OUT_MODE Outputs mode.   OUT
IOMODEL The name of an I/O model, which describes the device’s loading and driving characteristics.   DGTDEFIOMODEL
POWER_NODE Digital power node name. Is the node used by the interface subcircuits which connect analog nodes to digital nodes.   $G_DPWR
GROUND_NODE Digital ground node name. Is the node used by the interface subcircuits which connect analog nodes to digital nodes.   $G_DGND

Error Messages

D_S0URCE: source text was not read successfully.

This message occurs whenever the model has experienced any difficulty in reading source text. This will occur with any of the following problems:

  • Width of a vector line of the source file is incorrect.
  • A Timepoint value is duplicated or is otherwise not monotonically increasing.
  • One of the output values was not a valid State value.