|
|||||||||||
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.Logic.Modules.FloatingPoint.FPDividePack.UIntDivide
This class may be moved, modified, or deprecated. A simple unsigned integer divider.
THIS CLASS IS NOT FOR PUBLIC USE (YET) - THIS CLASS IS NOT YET FULLY DOCUMENTED - IT IS USED BY THE FLOATING POINT DIVIDER AND IT MAY BE MOVED, MODIFIED, OR REPLACED.
A simple "non-performing" unsigned integer divider.
This uses a grade school algorithm. The partial remainder is initialized with the upper bits of the dividend. On each iteration, the divisor is subtracted from the partial remainder. If the result is negative, the next quotient bit is set to zero and the previous partial remainder (before the subtraction) is kept. If the result is nonnegative, the next quotient bit is set to one.
Division by zero is not supported or detected. The output is left undefined for the case of division by zero, and in this case the structural and behavioral models may not match.
See Amos R. Omondi, Computer Arithmetic Systems: Algorithms, Architecture, and Implementation, pp. 198-200.
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 | |
UIntDivide(Node parent,
Wire dividend,
Wire divisor,
Wire quotient,
Wire remainder,
boolean pipelined,
java.lang.String name)
|
Method Summary | |
void |
clock()
Users define synchronous behavior in this method using standard JHDL constructs. |
void |
compute()
Behavioral model |
protected boolean |
defaultSimulationModelIsBehavioral()
The default simulation model is structural for Structural cells. |
int |
getLatency()
Returns the number of cycles of delay from when the inputs appear until a valid output appears. |
void |
propagate()
Users defined propagatable behavior using standard JHDL constructs. |
void |
reset()
If you define a behavior, you must also define a reset method for resetting the synchonous part of your model. |
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 UIntDivide(Node parent, Wire dividend, Wire divisor, Wire quotient, Wire remainder, boolean pipelined, java.lang.String name)
Method Detail |
protected boolean defaultSimulationModelIsBehavioral()
Structural
defaultSimulationModelIsBehavioral
in class Structural
public void clock()
Structural
clock
in interface Clockable
clock
in class Structural
public void propagate()
Structural
propagate
in interface byucc.jhdl.base.Propagateable
propagate
in class Structural
public void compute()
public void reset()
Structural
reset
in interface Clockable
reset
in class Structural
public int getLatency()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |