NAME¶
DPGEN_XNOR2MASK - Programmable Mask Macro-Generator
SYNOPSIS¶
#include <genlib.h>
void GENLIB_MACRO (DPGEN_XNOR2MASK, char * 
modelname, long
  flags , long N, char *constVal);
  
DESCRIPTION¶
Generate a 
N bits conditionnal XNOR mask named 
modelname.
How it works :
  - •
 
  - if the cmd signal is set to '0', the mask is NOT applied, so the whole
      operator behave like an inverter.
 
  - •
 
  - if the cmd signal is set to '1', the mask IS applied, the output is the
      complemented result of the input value XORed with the mask
      (suplied by constVal).
 
The constant 
constVal is given to the macro-generator call, therefore the
  value cannot be changed afterward : it's hard wired in the operator.
A common error is to give a real C constant for the 
constVal argument. Be
  aware that it is a character string.
TERMINAL NAMES¶
  - 1.
 
  - cmd : mask control (1 bit).
 
  - 2.
 
  - i0 : input (N bits).
 
  - 3.
 
  - q : output (N bits).
 
  - 4.
 
  - vdd : power.
 
  - 5.
 
  - vss : ground.
 
BEHAVIOR¶
nq <= WITH cmd SELECT not(i0)                 WHEN '0',
                      not(i0 xor X"0000FFFF") WHEN '1';
   
EXAMPLE¶
GENLIB_MACRO(DPGEN_XNOR2MASK, "model_xnor2mask_0000FFFF_32"
                            , F_BEHAV|F_PLACE
                            , 32
                            , "0x0000FFFF" /* A string! */
                            );
GENLIB_LOINS( "model_xnor2mask_0000FFFF_32"
            , "instance1_xnor2mask_32"
            , "cmd"
            , "i0[31:0]"
            ,  "q[31:0]"
            , "vdd", "vss", NULL
            );
    
SEE ALSO¶
GENLIB_MACRO(3), 
genlib(1)