AFFECT, GENPAT Package
AFFECT ("pattern_date", "ident", "value");
: 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 :
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.
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.
AFFECT ("0", "b", "0B0");
AFFECT ("2", "b", "0B1");
result : b
< 0 ns> :.....0...;
< 2 ns> :.....1...;