|
|||||||||||
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.CL
byucc.jhdl.Xilinx.XC4000.bufgs
BUFGS, a secondary global buffer, distributes high fan-out clock or control signals throughout a PLD device. In CPLD designs, BUFGS is treated like BUFG. BUFGS provides direct access to Configurable Logic Block (CLB) clock pins and limited access to other CLB inputs. Four BUFGSs are available on each XC4000E and Spartan device, one in each corner. The input to a BUFGS comes either from a dedicated Input Output Block (IOB) or from an internal signal. Alongside each column of CLBs in an XC4000E or Spartan device are four global vertical lines, which are in addition to the standard vertical longlines. Each one of the four global vertical lines can drive the CLB clock (K) pin directly. In addition, one of the four lines can drive the F3 pin, a second line can drive the G1 pin, a third can drive the C3 pin, and a fourth can drive the C1 pin. Each of the four BUFGSs can drive any of these global vertical lines and are also used as the primary global buffers (refer also to the \"BUFGP\" section for more information). Because of its structure, a BUFGS can always access a clock pin directly. Because the BUFGS is more flexible than the BUFGP, it can use additional global vertical lines to access the F3, G1, C3, and C1 pins but requires multiple vertical lines in the same column. If the vertical lines in a given column are already used for BUFGPs or another BUFGS, PAR might have to feed signals through other CLBs to reach the load pins. To use a BUFGS in a schematic, connect the input of the BUFGS element either directly to the PAD symbol (for an external input) or to an internally sourced net. For an external signal, do not use any IBUFs, because the signal comes directly from the dedicated IOB. The output of the BUFGS is then used throughout the schematic. For a negative-edge clock, insert an INV (inverter) element between the output of the BUFGS and the clock input. This inversion is performed inside each CLB or IOB. The dedicated inputs for BUFGSs are identified by the names SGCK1 through SGCK4 in pinouts in XC4000E and Spartan. The package pin that drives the BUFGS depends on which corner the BUFGS is placed by PAR. (Source: XACT Libraries Guide, Chapter 3 BUFGS, Xilinx Corporation, 1999.)
Field Summary | |
static CellInterface[] |
cell_interface
The port interface for: bufgs i : in (1) o : out (1) |
static java.lang.String |
cellname
The static cellname (netlist reference name) for bufgs |
Constructor Summary | |
protected |
bufgs(Node parent)
Used only by child classes to pass up the parent cell. |
|
bufgs(Node parent,
ArgBlockList abl)
Constructs a new bufgs, connecting its ports as given by the String-Wire pairs in the ArgBlockList . |
protected |
bufgs(Node parent,
java.lang.String name)
Used only by child classes to pass up the parent cell and instance name. |
|
bufgs(Node parent,
java.lang.String instanceName,
ArgBlockList abl)
Constructs a new bufgs, connecting its ports as given by the String-Wire pairs in the ArgBlockList . |
|
bufgs(Node parent,
java.lang.String instanceName,
java.lang.String s0,
Wire w0,
java.lang.String s1,
Wire w1)
Constructs a new bufgs, connecting each Wire to the port whose name is given by the accompanying String parameter
The initial String parameter specifies the instance name. |
|
bufgs(Node parent,
java.lang.String s0,
Wire w0,
java.lang.String s1,
Wire w1)
Constructs a new bufgs, connecting each Wire to the port whose name is given by the accompanying String parameter |
|
bufgs(Node parent,
java.lang.String instanceName,
Wire i,
Wire o)
Constructs a new bufgs. |
|
bufgs(Node parent,
Wire i,
Wire o)
Constructs a new bufgs. |
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. |
static void |
main(java.lang.String[] argv)
|
void |
propagate()
Used for things that are combinationally propagated like combinational logic and Wires and such. |
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.base.CL |
behavioralModelIsAvailable, defaultSimulationModelIsBehavioral, hasBeenTraced, hasBeenTraced, hasBehaviorInClockMethod, hasBehaviorInPropagateMethod, isAsynchronouslyScheduled, isAsynchronouslyScheduled, isReadyToBeAsynchronouslyScheduled, needsToBeAsynchronouslyScheduled |
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 |
public static final java.lang.String cellname
public static CellInterface[] cell_interface
Constructor Detail |
protected bufgs(Node parent)
parent
- Parent cellprotected bufgs(Node parent, java.lang.String name)
parent
- Parent cellname
- Instance name of the cellpublic bufgs(Node parent, Wire i, Wire o)
parent
- The parent Cell
to the bufgsi
- The Wire
to be connected to input port io
- The Wire
to be connected to output port opublic bufgs(Node parent, java.lang.String instanceName, Wire i, Wire o)
String
parameter specifies the instance name.
parent
- The parent Cell
to the bufgsinstanceName
- The instance name of the bufgsi
- The Wire
to be connected to input port io
- The Wire
to be connected to output port opublic bufgs(Node parent, java.lang.String s0, Wire w0, java.lang.String s1, Wire w1)
Wire
to the port whose name is given by the accompanying String
parameter
parent
- The parent Cell
to the bufgss0
- 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 s1public bufgs(Node parent, java.lang.String instanceName, java.lang.String s0, Wire w0, java.lang.String s1, Wire w1)
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 bufgsinstanceName
- The instance name of the bufgss0
- 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 s1public bufgs(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 bufgsabl
- The list of String-Wire
pairs for port assignments, and String-String
pairs for generic assignments.public bufgs(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 bufgsinstanceName
- The instance name of the bufgsabl
- 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()
byucc.jhdl.base.Propagateable
propagate
in interface byucc.jhdl.base.Propagateable
public int type()
PreDefinedSchematic
type
in interface PreDefinedSchematic
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 |