|
|||||||||||
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.Xilinx.XilinxCL
byucc.jhdl.Xilinx.Virtex.bufe
BUFE, BUFE4, BUFE8, and BUFE16 are single or multiple tristate buffers with inputs I, I3 - I0, I7 - I0, and I15 - I0, respectively; outputs O, O3 - O0, O7 - O0, and O15 - O0, respectively; and active-High output enable (E). When E is High, data on the inputs of the buffers is transferred to the corresponding outputs. When E is Low, the output is high impedance (Z state or Off). The outputs of the buffers are connected to horizontal longlines in FPGA architectures. The outputs of separate BUFE symbols can be tied together to form a bus or a multiplexer. Make sure that only one E is High at any one time. If none of the E inputs is active-High, a \"weak-keeper\" circuit (FPGAs) keeps the output bus from floating but does not guarantee that the bus remains at the last value driven onto it. In XC3000, XC4000E, XC4000X, Spartan, and SpartanXL, the E signal in BUFE macros is implemented by using a BUFT with an inverter on the active-Low enable (T) pin. This inverter can add an extra level of logic to the data path. Pull-up resistors can be used to establish a High logic level if all BUFE elements are Off. For Virtex2 and Spartan2, BUFE elements need a PULLUP element connected to their output. NGDBuild inserts a PULLUP element if one is not connected. (Source: XACT Libraries Guide, Chapter 3 BUFE, Xilinx Corporation,
Field Summary | |
static CellInterface[] |
cell_interface
The port interface for: bufe i : in (1) e : in (1) o : out (1) |
static java.lang.String |
cellname
The static cellname (netlist reference name) for bufe |
Fields inherited from class byucc.jhdl.Xilinx.XilinxCL |
implicit_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 |
Fields inherited from class byucc.jhdl.base.Cell |
BOOLEAN, CELL_NAME_DECLARATION, CellInterfaceDeterminesUniqueNetlistStructure, DETERMINE_FROM_STRING, GENERICS_DECLARATION, IMPLICIT_INTERFACE_DECLARATION, INTEGER, INTERFACE_DECLARATION, LONG, PORT_IOS_DECLARATION, PORT_NAMES_DECLARATION, PORT_NET_NAMES_DECLARATION, PORT_PROPERTIES, PORT_WIDTHS_DECLARATION, SIGN_EXT, STRING, ZERO_PAD |
Constructor Summary | |
protected |
bufe(Node parent)
Used only by child classes to pass up the parent cell. |
|
bufe(Node parent,
ArgBlockList abl)
Constructs a new bufe, connecting its ports as given by the String-Wire pairs in the ArgBlockList . |
protected |
bufe(Node parent,
java.lang.String name)
Used only by child classes to pass up the parent cell and instance name. |
|
bufe(Node parent,
java.lang.String instanceName,
ArgBlockList abl)
Constructs a new bufe, connecting its ports as given by the String-Wire pairs in the ArgBlockList . |
|
bufe(Node parent,
java.lang.String instanceName,
java.lang.String s0,
Wire w0,
java.lang.String s1,
Wire w1,
java.lang.String s2,
Wire w2)
Constructs a new bufe, connecting each Wire to the port whose name is given by the accompanying String parameter
The initial String parameter specifies the instance name. |
|
bufe(Node parent,
java.lang.String s0,
Wire w0,
java.lang.String s1,
Wire w1,
java.lang.String s2,
Wire w2)
Constructs a new bufe, connecting each Wire to the port whose name is given by the accompanying String parameter |
|
bufe(Node parent,
java.lang.String instanceName,
Wire i,
Wire e,
Wire o)
Constructs a new bufe. |
|
bufe(Node parent,
Wire i,
Wire e,
Wire o)
Constructs a new bufe. |
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. |
java.lang.String |
getCellName()
Access the cell name associated with a derived class. |
boolean |
isDrivingOutput()
Must be implemented to state whether the cell is driving the tri-state output, based on the enable input. |
static void |
main(java.lang.String[] argv)
|
void |
propagate()
Users defined propagatable behavior using standard JHDL constructs. |
static void |
test()
|
int |
type()
This method returns one of the predefined schematic constants to identify the type of this cell. |
Methods inherited from class byucc.jhdl.Xilinx.XilinxCL |
connectImplicitPorts |
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 final java.lang.String cellname
public static CellInterface[] cell_interface
Constructor Detail |
protected bufe(Node parent)
parent
- Parent cellprotected bufe(Node parent, java.lang.String name)
parent
- Parent cellname
- Instance name of the cellpublic bufe(Node parent, Wire i, Wire e, Wire o)
parent
- The parent Cell
to the bufei
- The Wire
to be connected to input port ie
- The Wire
to be connected to input port eo
- The Wire
to be connected to output port opublic bufe(Node parent, java.lang.String instanceName, Wire i, Wire e, Wire o)
String
parameter specifies the instance name.
parent
- The parent Cell
to the bufeinstanceName
- The instance name of the bufei
- The Wire
to be connected to input port ie
- The Wire
to be connected to input port eo
- The Wire
to be connected to output port opublic bufe(Node parent, java.lang.String s0, Wire w0, java.lang.String s1, Wire w1, java.lang.String s2, Wire w2)
Wire
to the port whose name is given by the accompanying String
parameter
parent
- The parent Cell
to the bufes0
- The name of the port to which w0 will be connectedw0
- The Wire
to be connected to the port specified by s0s1
- The name of the port to which w1 will be connectedw1
- The Wire
to be connected to the port specified by s1s2
- The name of the port to which w2 will be connectedw2
- The Wire
to be connected to the port specified by s2public bufe(Node parent, java.lang.String instanceName, java.lang.String s0, Wire w0, java.lang.String s1, Wire w1, java.lang.String s2, Wire w2)
Wire
to the port whose name is given by the accompanying String
parameter
The initial String
parameter specifies the instance name.
parent
- The parent Cell
to the bufeinstanceName
- The instance name of the bufes0
- The name of the port to which w0 will be connectedw0
- The Wire
to be connected to the port specified by s0s1
- The name of the port to which w1 will be connectedw1
- The Wire
to be connected to the port specified by s1s2
- The name of the port to which w2 will be connectedw2
- The Wire
to be connected to the port specified by s2public bufe(Node parent, ArgBlockList abl)
String-Wire
pairs in the ArgBlockList
. Any generic assignments are made through String-String
pairs in the ArgBlockList
.
parent
- The parent Cell
to the bufeabl
- The list of String-Wire
pairs for port assignments, and String-String
pairs for generic assignments.public bufe(Node parent, java.lang.String instanceName, ArgBlockList abl)
String-Wire
pairs in the ArgBlockList
. Any generic assignments are made through String-String
pairs in the ArgBlockList
.
The initial String
parameter is the instance name.
parent
- The parent Cell
to the bufeinstanceName
- The instance name of the bufeabl
- The list of String-Wire
pairs for port assignments, and String-String
pairs for generic assignments.Method Detail |
public java.lang.String getCellName()
Cell
getCellName
in class Cell
public final boolean cellInterfaceDeterminesUniqueNetlistStructure()
Cell
cellInterfaceDeterminesUniqueNetlistStructure
in class Cell
public final void propagate()
Structural
propagate
in interface byucc.jhdl.base.Propagateable
propagate
in class Structural
public int type()
PreDefinedSchematic
type
in interface PreDefinedSchematic
public boolean isDrivingOutput()
TriStateDriver
isDrivingOutput
in interface TriStateDriver
public static void main(java.lang.String[] argv)
public static void test()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |