DPGEN_SHIFT3
Shifter macro-generator
Usage
#include <genlib.h>
void GENLIB_MACRO (DPGEN_SHIFT, char *modelname, long flags, long N);
Overview
Generate a N bits shifter with name modelname.
How it works :
- •
-
if the op[0] signal is set to '1' performs a right shift, performs a left shift otherwise.
- •
-
if the op[1] signal is set to '1' performs an arithmetic shift (only meaningful in case of a right shift).
- •
-
shamt : specifies the shift amount. The width of this signal (Y) is computed from the operator's width : Y = ceil(log2(N)) - 1.
Terminal names
1.
|
op : select the kind of shift (input, 2 bit). |
|---|---|
2.
|
shamt : the shift amount (input, Y bits). |
3.
|
i : value to shift (input, N bits). |
4.
|
o : output (N bits). |
5.
|
vdd : power. |
6.
|
vss : ground. |
Examples
GENLIB_MACRO(DPGEN_SHIFT, "model_shift_32",
F_BEHAV|F_PLACE,
32);
GENLIB_LOINS("model_shift_32",
"instance1_shift_32",
"op[1:0]",
"shamt[4:0]",
"x[31:0]",
"y[31:0]",
"vdd", "vss", NULL);
Releases
Unchanged in 4 releases since Debian 7 (Wheezy).