byucc.jhdl.Xilinx.Virtex2
Class bufg

java.lang.Object
  extended bybyucc.jhdl.base.Nameable
      extended bybyucc.jhdl.base.Node
          extended bybyucc.jhdl.base.Cell
              extended bybyucc.jhdl.base.CL
                  extended bybyucc.jhdl.Xilinx.Virtex2.bufg
All Implemented Interfaces:
BooleanFlags, Buf, PreDefinedSchematic, byucc.jhdl.base.Propagateable, TreeListable, UnmappableCell
Direct Known Subclasses:
bufgp

public class bufg
extends CL
implements UnmappableCell, PreDefinedSchematic, Buf

The BUFG cell is a global buffer which distributes high-fanout clock signals throughout the device. For an XC4000 design, you can use a maximum of eight BUFG symbols (assuming that no specific BUFGP or BUFGS buffers are specified). The BUFG is converted to a BUFGP or BUFGS for the XC4000 architecture. For the Virtex family, you can use a maximum of four BUFG symbols in Virtex and eight BUFG symbols in Virtex-E designs. The BUFGE is a global buffer that uses the 'early' routes on the device. The BUFGLS cell is a global buffer cell which distributes high-fanout signals throughout the device. The BUFGLS uses low-skew modes on the I/O buffers. The BUFGP is a primary global buffer. The BUFGS is a secondary global buffer. Both cells can drive any of four global vertical routes per column of CLBs. Each one of the four global vertical lines can drive the CLB clock (K) pin directly, and a small subset of the other CLB pins, depending on the type of buffer and the position (refer to the library guide). (Source: XACT Libraries Guide, pg. 3-87, Xilinx Corporation, 1994.)


Field Summary
static CellInterface[] cell_interface
          The port interface for bufg: i: in (1) o: out (1)
static java.lang.String cellname
          The static cellname (netlist reference name) for bufg
 
Fields inherited from class byucc.jhdl.base.Cell
BOOLEAN, CELL_NAME_DECLARATION, CellInterfaceDeterminesUniqueNetlistStructure, DETERMINE_FROM_STRING, GENERICS_DECLARATION, implicit_interface, 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
 
Fields inherited from interface byucc.jhdl.apps.Viewers.Schematic.PreDefinedSchematic
PreDefinedSchematic_ADD, PreDefinedSchematic_ADDSUB, PreDefinedSchematic_AND, PreDefinedSchematic_BUF, PreDefinedSchematic_CONST, PreDefinedSchematic_GEN, PreDefinedSchematic_GND, PreDefinedSchematic_INC, PreDefinedSchematic_INV, PreDefinedSchematic_MUX, PreDefinedSchematic_NAND, PreDefinedSchematic_NOR, PreDefinedSchematic_OR, PreDefinedSchematic_PULLDOWN, PreDefinedSchematic_PULLUP, PreDefinedSchematic_REG, PreDefinedSchematic_SHL, PreDefinedSchematic_SHR, PreDefinedSchematic_TBUF, PreDefinedSchematic_VCC, PreDefinedSchematic_XNOR, PreDefinedSchematic_XOR
 
Fields inherited from interface byucc.jhdl.base.BooleanFlags
ANTECEDANT_IS_BEHAVIORALLY_MODELED, ASYNC_PORT, ASYNCHRONOUS_RESOLVED, ATOMICALLY_PLACEABLE, ATOMICALLY_UNMAPPABLE, BEHAVIORALLY_MODELED_BRANCH, CLK_PORT, CLOCK_METHOD_IMPLEMENTED_BY_USER, CLOCK_METHOD_IS_DISABLED, CLOCKABLE_IS_SCHEDULED, DANGLING_IS_OK, DELETE_MARK, FATAL_BUILD_ERROR_OCCURED, HAS_BEEN_TRACED, HAS_USER_SPECIFIED_NAME, HWUPDATE, IMPLICIT_PORT, IN_CLK_PORT, IN_PORT, INOUT_PORT, IO_TYPE_FLAGS, IS_BEHAVIORALLY_MODELED, IS_ON_BUILD_STACK, IS_ON_PROP_LIST, IS_PLACED, METHODS_IMPLEMENTED_BY_USER, NETLISTABLE, ORIG_WIRE_IS_ATOMIC, OUT_PORT, PLACEMENT_IS_LOCKED, PROPAGATE_METHOD_IMPLEMENTED_BY_USER, PROPAGATE_METHOD_IS_DISABLED, RECURSION_FLAG, RESET_METHOD_IMPLEMENTED_BY_USER, SIMULATEABLE, SOURCELESS_IS_OK, SYNC_PORT, VISIBLE
 
Constructor Summary
bufg(Node parent, ArgBlockList abl)
          Constructs a new bufg, connecting its ports as given by the String-Wire pairs in the ArgBlockList.
bufg(Node parent, java.lang.String instanceName, ArgBlockList abl)
          Constructs a new bufg, connecting its ports as given by the String-Wire pairs in the ArgBlockList, with the initial String parameter as the instance name.
bufg(Node parent, java.lang.String instanceName, java.lang.String s0, Wire w0, java.lang.String s1, Wire w1)
          Constructs a new bufg, connecting each Wire to the port whose name is given by the accompanying String parameter, with the initial String parameter as the instance name.
bufg(Node parent, java.lang.String s0, Wire w0, java.lang.String s1, Wire w1)
          Constructs a new bufg, connecting each Wire to the port whose name is given by the accompanying String parameter.
bufg(Node parent, java.lang.String instanceName, Wire i, Wire o)
          Constructs a new bufg, with the initial String parameter as the instance name.
bufg(Node parent, Wire i, Wire o)
          Constructs a new bufg.
 
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.
static void main(java.lang.String[] argv)
           
 void propagate()
          Used for things that are combinationally propagated like combinational logic and Wires and such.
 int type()
          This method returns one of the predefined schematic constants to identify the type of this cell.
 
Methods inherited from class byucc.jhdl.base.CL
behavioralModelIsAvailable, defaultSimulationModelIsBehavioral, hasBeenTraced, hasBeenTraced, hasBehaviorInClockMethod, hasBehaviorInPropagateMethod, isAsynchronouslyScheduled, isAsynchronouslyScheduled, isReadyToBeAsynchronouslyScheduled, needsToBeAsynchronouslyScheduled
 
Methods inherited from class byucc.jhdl.base.Cell
addPort, addPorts, addProperties, addProperties, addProperty, addProperty, addProperty, addProperty, antecedantIsBehaviorallyModeled, antecedantIsBehaviorallyModeled, bind, bind, bind, bind, clk, connect, connectAllWires, connectOptional, constructSubCell, constructSubCellNoImplicitPorts, disableAllBehavioralModels, disableBehavioralModel, enableBehavioralModel, getArgument, getAttachedPort, getAttachedWire, getAttachedWireNoException, getCellName, getCellNetlist, getCellNetList, getCellNetlist, getCellNetlist, getDescendents, getFlatNetlist, getFlatNetlistableChildren, getGeneric, getHeight, getNetlistableChildren, getPlacementInfo, getPortProperties, getPortRecord, getPortRecords, getProperties, getProperty, getPropertyValue, getSinkWires, getSourceWires, getSubCellClass, getUniqueCellName, getWidth, getX, getY, hasPort, hasPorts, in, in, inout, inout, isAsynchronousSourceSinkResolved, isBehaviorallyModeled, isBehaviorallyModeledBranch, isInput, isLeafCell, isNetlistable, isNetlistable, isNetlistablePort, isNetlistLeaf, isNotNetlistable, isNotNetlistablePort, isNotVisible, isOutput, isPlaceable, isPlaceable, isPlaced, isPlaced, isPlacementLocked, isRoot, isSimulateable, isSimulateable, isSink, isSource, isVisible, isVisible, join, lockPlacement, nc, out, out, param, popHierarchy, port, port, port, postorderCheck, preorderCheck, pushHierarchy, pushHierarchy, pushHierarchy, pushHierarchy, pushHierarchyNoImplicitPorts, pushHierarchyNoImplicitPorts, removeAllUnconnectedPorts, removePort, removeProperty, replaceProperty, replaceProperty, resetBehavioralModelsToDefaults, setAsynchronousSourceSinkResolved, setGeneric, setHeight, setNotNetlistable, setNotNetlistable, setNotVisible, setNotVisible, setPlacementInfo, setPortNotNetlistable, setPortNotNetlistable, setProperty, setWidth, subClassDelete, toString, uniquifyCell, userDefinedClockCount, verifyAndCleanup
 
Methods inherited from class byucc.jhdl.base.Node
addObservable, addSimulatorCallback, checkAll, delete, getBuildingFlag, getChildren, getChildrenEnumeration, getDefaultClock, 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

cellname

public static java.lang.String cellname
The static cellname (netlist reference name) for bufg


cell_interface

public static CellInterface[] cell_interface
The port interface for bufg: i: in (1) o: out (1)

Constructor Detail

bufg

public bufg(Node parent,
            Wire i,
            Wire o)
Constructs a new bufg.

Parameters:
parent - The parent Cell to the bufg
i - The Wire to be connected to input port i
o - The Wire to be connected to output port o

bufg

public bufg(Node parent,
            java.lang.String instanceName,
            Wire i,
            Wire o)
Constructs a new bufg, with the initial String parameter as the instance name.

Parameters:
parent - The parent Cell to the bufg
instanceName - The instance name of the bufg
i - The Wire to be connected to input port i
o - The Wire to be connected to output port o

bufg

public bufg(Node parent,
            java.lang.String s0,
            Wire w0,
            java.lang.String s1,
            Wire w1)
Constructs a new bufg, connecting each Wire to the port whose name is given by the accompanying String parameter.

Parameters:
parent - The parent Cell to the bufg
s0 - The name of the port to which w0 will be connected
w0 - The Wire to be connected to the port specified by s0
s1 - The name of the port to which w1 will be connected
w1 - The Wire to be connected to the port specified by s1

bufg

public bufg(Node parent,
            java.lang.String instanceName,
            java.lang.String s0,
            Wire w0,
            java.lang.String s1,
            Wire w1)
Constructs a new bufg, connecting each Wire to the port whose name is given by the accompanying String parameter, with the initial String parameter as the instance name.

Parameters:
parent - The parent Cell to the bufg
instanceName - The instance name of the bufg
s0 - The name of the port to which w0 will be connected
w0 - The Wire to be connected to the port specified by s0
s1 - The name of the port to which w1 will be connected
w1 - The Wire to be connected to the port specified by s1

bufg

public bufg(Node parent,
            ArgBlockList abl)
Constructs a new bufg, connecting its ports as given by the String-Wire pairs in the ArgBlockList. Any generic assignments are made through String-String pairs in the ArgBlockList.

Parameters:
parent - The parent Cell to the bufg
abl - The list of String-Wire pairs for port assignments, and String-String pairs for generic assignments.

bufg

public bufg(Node parent,
            java.lang.String instanceName,
            ArgBlockList abl)
Constructs a new bufg, connecting its ports as given by the String-Wire pairs in the ArgBlockList, with the initial String parameter as the instance name. Any generic assignments are made through String-String pairs in the ArgBlockList.

Parameters:
parent - The parent Cell to the bufg
instanceName - The instance name of the bufg
abl - The list of String-Wire pairs for port assignments, and String-String pairs for generic assignments.
Method Detail

cellInterfaceDeterminesUniqueNetlistStructure

public boolean cellInterfaceDeterminesUniqueNetlistStructure()
Description copied from class: Cell
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. Overriding this method to return true allows JHDL to save memory and netlists to be smaller by sharing the netlist structures that are guaranteed to be identical. NOTE: Do not override this unless every possible condition responsible for structural differences in a class (types and amount of children cells created, and arrangements of wires connected to ports) is included in the cellInterface[] of that class.

Overrides:
cellInterfaceDeterminesUniqueNetlistStructure in class Cell
Returns:
false if not overridden, preventing all memory sharing

type

public int type()
Description copied from interface: PreDefinedSchematic
This method returns one of the predefined schematic constants to identify the type of this cell.

Specified by:
type in interface PreDefinedSchematic
Returns:
A predefined schematic constant

propagate

public void propagate()
Description copied from interface: byucc.jhdl.base.Propagateable
Used for things that are combinationally propagated like combinational logic and Wires and such.

Specified by:
propagate in interface byucc.jhdl.base.Propagateable

main

public static void main(java.lang.String[] argv)


Copyright ? 2006 Brigham Young University, Configurable Computing Laboratory. All Rights Reserved.