ARRAY, GENPAT Package
This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at LIP6 laboratory of Université Pierre et Marie CURIE, in Paris, France.
Web : http://asim.lip6.fr/recherche/alliance/
E-mail : alliance−users AT asim DOT lip6 DOT fr
ARRAY ("ident", "ident", ..., ":nb_space", "format", type, option, "ident_group", 0);
ident |
Name, followed with a number if part of a bused signal, of a connector, a signal or a register. All idents must be of the same type. The name and the number must be separated by a blank or the number must be parenthesized. |
||
nb_space |
Specify the number of blank space between each group of value. 0,1,2,3,4,5,6, 7,8,9 or nothing. |
||
format |
Specify the format that will be used to represent the value associated to the connectors. X for Hexadecimal, O for Octal and B for Binary. |
||
type |
Specify the type of the aggregate. REGISTER for Register, SIGNAL for Signal, OUT for Output, IN for Input, INOUT for Input/Output. REGISTER, SIGNAL, OUT, IN, INOUT are constants (defines) provided by genpat. |
||
option |
Specify options of the connectors. "S" for a spied connector, empty ("") for a normal connector. |
ident_group
Specify the array’s name, the first ident is associated with the MSB of the array.
Create a virtual vector with signals of the same type and format. The signals may be either Inputs, Outputs, Inputs/Outputs, Registers or Internal Signals. A vector to be aggregate is to be declared bit per bit (it will appear as a vector in the output file). Outputs, Signals and Registers can be redeclared in a virtual vector. Inputs and Inputs/Outputs CANNOT be redeclared.
ARRAY ("cout", "s 9", "s 8", "s 7", ":2", "B", OUT, "S", "Y", 0);
format : Binary.
type : Output connector.
option : spied connector.
each group is separated of the others with 2 blank spaces.
result : out Y ( cout, s (9 downto 7) ) B spy ;;;
ARRAY ("regt", "reg 9", ":2", "B", REGISTER, "", "Y", 0);
format : Binary.
type : Register.
option : none.
each group is separated of the others with 2 blank spaces.
result : register Y ( regt, reg (9 downto 9) ) B;;;
The ARRAY function from the 4.0 release have a new parameter (option).
You are dealing with a variable number of parameters fonction. If you forget one or more parameter, you will have one of the following results :
Nothing bad happen, but your result file is erroneous.
You are asked for more parameter.
You crash the program and produce a Segmentation Fault.
In all cases, check your C file for missing parameter.
This tool is under development at the ASIM department of the LIP6 laboratory.
We need your feedback to improve documentation and tools.