AFFECT, GENPAT Package
See the file buster/alliance/alc_origin.1.en.gz.
AFFECT ("pattern_date", "ident", "value");
- pattern_date
- : pattern date which may be either : integer (absolute date) or + integer
(relative date, the date of the current pattern (last modified using INIT
or AFFECT) is the reference). All dates are supposed to be expressed in
the same time unit which may be set only once using SETTUNIT.
- ident
- Either the name of a bused signal or a scalar. Vectors must be referenced
with their names only, or bit per bit. For example, if b(3 downto 0)
exists, you can affect "b", "b(3)" or "b 3".
Path-name must be specified by the syntax : instance1.instance11.name
- value
- The value associated with the signal which may be either a based number
(ex. binary: 0b011 ,hexa: 0x3F, octal: 0o56) or a decimal number. Unknown
value (value where a '*' appears), can be used when dealing with an
output, a signal, a register or an input/output when this last one is to
be tested. Star ('*') can appears everywhere in a BASED number, but the
result will be a "full star" value. (For example,
"0B0*10" and "0B***" would give the same result.)
AFFECT is doing automatically the transformation of the value into a
"forced" value or a "tested" value except for the
bidirectional connectors affectation. When and bidirectional is to be
tested, a '?' character must be added before the value (example :
"?0x45f*" instead of "0x45f*").
"Affect" a value to a signal. This value will be apllied
to the signal, at the specified simulation date, until the end of the
simulation or until a new value is affected to the signal. Beware : Inputs
have to be affected at the begining of the simulation (first pattern at 0
ps). By default, signals (except Inputs) are affected with a "full
star" value at the first pattern.
This fonction also set the current pattern.
SETTUNIT("ps");
AFFECT ("5", "b", "0B1");
result : b
< 5 ps> :.....1...;
At simulation date 0 ps the signal b(3 downto 0) receives the
value "0001". This value will be kept until the end of the
simulation if no more affectation is made.
SETTUNIT("ns");
AFFECT ("0", "b", "0B0");
AFFECT ("2", "b", "0B1");
result : b
< 0 ns> :.....0...;
< 2 ns> :.....1...;