Query: genlib_macro
OS: debian
Section: 3
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
GENLIB_MACRO(3) Alliance - genlib User's Manual GENLIB_MACRO(3)NAMEGENLIB_MACRO - Interface with all MACRO generators.SYNOPSIS#include <genlib.h> void GENLIB_MACRO (long function, char *modelname, long flags, long N, long drive, long regNumber, char *constVal);DESCRIPTIONThe GENLIB_MACRO() fonction call is the generic interface to all genlib macro generators. As all generators do not have the sames arguments it takes a variable number of arguments. Arguments are of two kinds : o Mandatory arguments : those arguments must always be supplied. They represents the minimal set of common arguments for all macro-genera- tors. Mandatory arguments comme firts in the arguments list. o Optional arguments : arguments specifics to a macro-generator or a class of macro-generators. ARGUMENTS 1. long function : (mandatory) specify which macro-generator is to be invoked. For example, to create a two entry multiplexer gives GEN- LIB_MUX2. 2. char* modelname : (mandatory) specify the name of the model to be generated. For example : "model_mux2_32bits". 3. long flags : (mandatory) tells which views are to be generated. It is a logical combination of the following values : (ORed) 1. F_PLACE : generate physical view (placement only). 2. F_BEHAV : generate behavioral view (VHDL view). 3. F_LSB_FIRST : the terminal of index zero is matched to the LSB, thus a 32 bits vector will be written : "signal[31:0]". 4. F_MSB_FIRST : the terminal of index zero is matched to the MSB, thus a 32 bits vector will be written : "signal[0:31]" (aka. IBM notation). 4. long N : (mandatory) width of the model's bus to be generated. 5. long drive : (optional) output power drive. 6. long regNumber : (optional) number of registers or depth of for a FIFO macro-generator. 7. char* constval : (optional) a character string holding a constant. For example : "0xFFFF0000". AVAILABLE MACRO-GENERATORS o Inverters and Buffers : o DPGEN_INV(3) o DPGEN_BUFF(3) o Boolean Operators : o DPGEN_NAND2(3) o DPGEN_NAND3(3) o DPGEN_NAND4(3) o DPGEN_AND2(3) o DPGEN_AND3(3) o DPGEN_AND4(3) o DPGEN_NOR2(3) o DPGEN_NOR3(3) o DPGEN_NOR4(3) o DPGEN_OR2(3) o DPGEN_OR3(3) o DPGEN_OR4(3) o DPGEN_XOR2(3) o DPGEN_XNOR2(3) o Multiplexers and Tristates : o DPGEN_NMUX2(3) o DPGEN_MUX2(3) o DPGEN_NBUSE(3) o DPGEN_BUSE(3) o Programmable Masks : o DPGEN_NAND2MASK(3) o DPGEN_NOR2MASK(3) o DPGEN_XNOR2MASK(3) o Arithmetics Operators : o DPGEN_ADSB2F(3) o DPGEN_SHIFT(3) o Miscellaneous : o DPGEN_NUL(3) o DPGEN_CONST(3) o DPGEN_ROM2(3) o DPGEN_ROM4(3) o Registers : o DPGEN_RF1(3) o DPGEN_RF1R0(3) o DPGEN_FIFO(3) o DPGEN_RF1D(3) o DPGEN_RF1DR0(3) o DPGEN_DFF(3) o DPGEN_DFFT(3) o DPGEN_SFF(3) o DPGEN_SFFT(3)SEE ALSOmbk(1),ASIM/LIP6 30 July 2004 GENLIB_MACRO(3)