AFFECT(3)

πŸ“¦ version 5.1.1, in fedora 43, fedora 44

πŸ’– AFFECT(3) β€” the GENPAT glow-up you didn't know you needed πŸ’–

okay bestie, sit DOWN, because this is AFFECT from the GENPAT functions manual, and it's genuinely iconic. no cap.


🌸 NAME 🌸

AFFECT, and the whole GENPAT Package it rolls with. πŸ’…


πŸ¦‹ ORIGIN πŸ¦‹

so this software? it belongs to the ALLIANCE CAD SYSTEM, developed by the ASIM team at the LIP6 laboratory of UniversitΓ© Pierre et Marie CURIE, in Paris, France. πŸ‡«πŸ‡·βœ¨

like, actual Parisian academic royalty. obsessed.


✨ SYNOPSIS ✨

AFFECT ("pattern_date", "ident", "value");

three little strings and your whole simulation timeline is shook. 🫢


πŸŽ€ PARAMETERS πŸŽ€

  • pattern_date β€” the date of the pattern, and it can be EITHER an integer (an absolute date) OR + followed by an integer (a relative date β€” and the reference here is the date of the current pattern, the one last modified using INIT or AFFECT). also important: all the dates are supposed to be expressed in the same time unit, and that unit can only be set once, using SETTUNIT. so choose wisely bestie 😭
  • ident β€” either the name of a bused signal or a scalar. Vectors have to 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". and a path-name must be specified with the syntax:
instance1.instance11.name
  • value β€” the value associated with the signal, and it can be either a based number (ex. binary: 0b011, hexa: 0x3F, octal: 0o56) or a decimal number. the Unknown value (aka any 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. the star ('*') can appear 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. and here's the tea: AFFECT is doing automatically the transformation of the value into a "forced" value or a "tested" value, except for the bidirectional connectors affectation. when a bidirectional is to be tested, you gotta add a '?' character before the value (example : "?0x45f*" instead of "0x45f*"). 🫑

πŸ’œ DESCRIPTION πŸ’œ

"Affect" a value to a signal. that value will be apllied to the signal, at the specified simulation date, and it stays until the end of the simulation or until a new value is affected to the signal. πŸ’«

beware bestie ⚠️ : Inputs have to be affected at the beginning of the simulation (first pattern at 0 ps). By default, signals (except Inputs) are affected with a "full star" value at the first pattern.

and β€” plot twist β€” this fonction also sets the current pattern. main character energy fr fr. πŸ‘‘


🌈 EXAMPLES 🌈

okay let's see it in action, this is the part where it eats:

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. ✨

and now a double feature:

SETTUNIT("ns");
AFFECT ("0", "b", "0B0");
AFFECT ("2", "b", "0B1");
result :            b
<      0 ns> :.....0...;
<      2 ns> :.....1...;

timeline said glow up. πŸ¦‹


πŸ‘€ SEE ALSO πŸ‘€

iykyk. go read them, bestie.


πŸ’€ BUG REPORT πŸ’€

This tool is under development at the ASIM department of the LIP6 laboratory. We need your feedback to improve documentation and tools.

(no seriously, they're literally asking. drop the feedback. πŸ™ˆ)


and that's the whole page, babe β€” brought to you by ASIM/LIP6, dated October 1, 1997, from the AFFECT(3) page of the GENPAT functions manual. vintage but still slaying, periodt. πŸ’…πŸŽ€πŸ’–