|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectbyucc.jhdl.base.Nameable
byucc.jhdl.base.Node
byucc.jhdl.base.Cell
byucc.jhdl.base.Structural
byucc.jhdl.Logic.LogicGates
byucc.jhdl.Logic.LogicStatic
byucc.jhdl.Logic.Logic
byucc.jhdl.contrib.modgen.accum
Accumulator that allows a generic sized input and output.
Accum takes in a generic-sized input, either adds or subtracts
it to the current contents of the accumulator, and outputs the result.
The output wire width must be at least as wide as the input wire width.
If the result is too large to fit onto the output wire (overflow
occurs), the result is simply truncated.
All state changes occur on the rising edge. See the table
below to understand how it works:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The input is sign extended to match the output size. Thus, the input and output need not be the same width.
CLB count:
CLB placement:
Slice count:
Slice placement:
Field Summary | |
static CellInterface[] |
cell_interface
|
Fields inherited from class byucc.jhdl.Logic.Logic |
ABOVE, ALIGN_BOTTOM, ALIGN_CENTER, ALIGN_LEFT, ALIGN_LSB, ALIGN_MSB, ALIGN_RIGHT, ALIGN_TOP, BELOW, DOWN, EAST_OF, LEFT_OF, MAX_PACK, NORTH_OF, ON, ONTOP, ONTOP_OF, RIGHT_OF, SOUTH_OF, TOLEFT, TORIGHT, UNCONSTRAINED, UP, WEST_OF |
Fields inherited from class byucc.jhdl.Logic.LogicGates |
tech_mapper |
Constructor Summary | |
accum(Node parent,
Wire in,
Wire clear,
Wire adsub,
Wire clk_en,
Wire out)
|
|
accum(Node parent,
Wire in,
Wire clear,
Wire adsub,
Wire clk_en,
Wire out,
java.lang.String name)
|
|
accum(Node parent,
Wire clk,
Wire in,
Wire clear,
Wire adsub,
Wire clk_en,
Wire out)
|
|
accum(Node parent,
Wire clk,
Wire in,
Wire clear,
Wire adsub,
Wire clk_en,
Wire out,
java.lang.String name)
|
Method Summary | |
boolean |
cellInterfaceDeterminesUniqueNetlistStructure()
When false, the default behavior of this method, each cell will list itself separately in a netlist, guaranteeing that the netlist will not have invalid data at the expense of a larger file-size. |
void |
clock()
Clock is used in the behavioral model and is called once per clock cycle |
long |
compute(long in,
int inWidth,
int clear,
int adsub,
long outWidth)
Used in behavioral model to compute the output |
BV |
computeBV(BV in,
int inWidth,
int clear,
int adsub,
int outWidth)
Used in behavioral model to compute the output |
void |
connectImplicitPort()
|
protected boolean |
defaultSimulationModelIsBehavioral()
Default simulation model is behavioral |
void |
propagate()
Propagate isn't used in this class |
void |
reset()
Resets the output to zero |
Methods inherited from class byucc.jhdl.base.Node |
addObservable, addSimulatorCallback, checkAll, delete, getBuildingFlag, getChildren, getChildrenEnumeration, getInstanceName, getParent, getParentCell, getRelatives, getSystem, getWires, optimize, orphanAllowed, printAllChildren, printTree, removeSimulatorCallback, setDefaultClock |
Methods inherited from class byucc.jhdl.base.Nameable |
caseSensitivity, caseSensitivity, disableNameClashChecking, getFullName, getFullNameNoTestBench, getHierNameNoTestBench, getInstanceNo, getInstanceNumber, getLeafName, getLeafName, getRelativeName, getUserName, getUserName, hasUserSpecifiedName, isDescendantOf, setInstanceNumber |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
public static CellInterface[] cell_interface
Constructor Detail |
public accum(Node parent, Wire in, Wire clear, Wire adsub, Wire clk_en, Wire out)
public accum(Node parent, Wire clk, Wire in, Wire clear, Wire adsub, Wire clk_en, Wire out)
public accum(Node parent, Wire in, Wire clear, Wire adsub, Wire clk_en, Wire out, java.lang.String name)
public accum(Node parent, Wire clk, Wire in, Wire clear, Wire adsub, Wire clk_en, Wire out, java.lang.String name)
Method Detail |
public void reset()
reset
in interface Clockable
reset
in class Structural
public void clock()
clock
in interface Clockable
clock
in class Structural
public void propagate()
propagate
in interface byucc.jhdl.base.Propagateable
propagate
in class Structural
protected boolean defaultSimulationModelIsBehavioral()
defaultSimulationModelIsBehavioral
in class Structural
public boolean cellInterfaceDeterminesUniqueNetlistStructure()
Cell
cellInterfaceDeterminesUniqueNetlistStructure
in class Cell
public void connectImplicitPort()
public long compute(long in, int inWidth, int clear, int adsub, long outWidth)
public BV computeBV(BV in, int inWidth, int clear, int adsub, int outWidth)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |