GENLIB_MACRO(3)
π GENLIB_MACRO π
okay bestie, welcome to the Alliance - genlib User's Manual page for GENLIB_MACRO(3) β the one-stop shop, the group chat of macro generators, the β¨generic interfaceβ¨ that talks to literally all of them. grab a boba, we're doing this π§
πΈ NAME πΈ
GENLIB_MACRO β the interface that lets you chat with every single MACRO generator in the family. one door, all the rooms. slay. π
β¨ SYNOPSIS β¨
#include <genlib.h>
void GENLIB_MACRO (long function, char *modelname, long flags, long N,
long drive, long regNumber, char *constVal);
π¦ DESCRIPTION π¦
so GENLIB_MACRO() is the generic entry point to all of the genlib macro generators, fr fr. and because not every generator has the same little checklist of arguments, it takes a variable number of arguments. it's giving "one function to rule them all" energy π
the arguments come in two flavours:
- Mandatory arguments β these ones you always have to hand over, no exceptions. they're the minimal common set that every single macro-generator needs. and listen: mandatory args go first in the argument list. periodt.
- Optional arguments β the extras that are specific to a particular macro-generator, or to a whole class of macro-generators. iykyk.
π ARGUMENTS π
long function: (mandatory) tells the world which macro-generator you want to invoke. for example, if you wanna make a two-entry multiplexer, you passGENLIB_MUX2. iconic.char* modelname: (mandatory) the name of the model you're generating. for example:"model_mux2_32bits". name your baby πΌlong flags: (mandatory) which views are gonna get generated. it's a logical combination (OR them together, bestie) of these values:F_PLACE: generate the physical view (placement only).F_BEHAV: generate the behavioral view (the VHDL view).F_LSB_FIRST: the terminal of index zero gets matched to the LSB, so a 32-bit vector will be written as"signal[31:0]".F_MSB_FIRST: the terminal of index zero gets matched to the MSB, so a 32-bit vector will be written as"signal[0:31]"(aka. IBM notation).
long N: (mandatory) the width of the model's bus that's getting generated.long drive: (optional) the output power drive. β‘long regNumber: (optional) the number of registers, or the depth of a FIFO macro-generator.char* constval: (optional) a character string holding a constant. for example:"0xFFFF0000". yes she's got range π
π AVAILABLE MACRO-GENERATORS π
here's the whole roster, the full lineup, the main characters:
- Inverters and Buffers :
- Boolean Operators :
- Multiplexers and Tristates :
- Programmable Masks :
- Arithmetics Operators :
- Miscellaneous :
- Registers :
DPGEN_RF1(3)DPGEN_RF1R0(3)DPGEN_FIFO(3)DPGEN_RF1D(3)DPGEN_RF1DR0(3)DPGEN_DFF(3)DPGEN_DFFT(3)DPGEN_SFF(3)DPGEN_SFFT(3)
π SEE ALSO π
mbk(1),
π and that's the whole page, no cap. go forth and generate some macros, bestie π«Ά
this page came to you straight from ASIM/LIP6, dated 30 July 2004, and it's the GENLIB_MACRO(3) page, babes. mwah π π
π¦ where this page comes from
- fedora 43: alliance-devel 5.1.1-35.20160506gitd8c05cd.fc42 Β· GPL-2.0-only
- fedora 43: alliance-devel 5.1.1-35.20160506gitd8c05cd.fc42 Β· GPL-2.0-only
- fedora 44: alliance-devel 5.1.1-35.20160506gitd8c05cd.fc42 Β· GPL-2.0-only
- fedora 44: alliance-devel 5.1.1-35.20160506gitd8c05cd.fc42 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms