DPGEN_NOR2MASK3
Programmable mask macro-generator
Usage
#include <genlib.h>
void GENLIB_MACRO (DPGEN_NOR2MASK, char *modelname, long flags, long N, char *constVal);
Overview
Generate a N bits conditionnal NOR 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
complementedresult of the input valueORedwith 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 or X"0000FFFF") WHEN '1';
Examples
GENLIB_MACRO(DPGEN_NOR2MASK, "model_nor2mask_0000FFFF_32"
, F_BEHAV|F_PLACE
, 32
, "0x0000FFFF" /* A string! */
);
GENLIB_LOINS( "model_nor2mask_0000FFFF_32"
, "instance1_nor2mask_32"
, "cmd"
, "i0[31:0]"
, "q[31:0]"
, "vdd", "vss", NULL
);
Releases
Unchanged in 4 releases since Debian 7 (Wheezy).