|
|||||||||||
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.Virtex.RAMB4
byucc.jhdl.Xilinx.Virtex.RAMB4Single
This class provides the functionality of the RAMB4_Sn Virtex library elements. Note that for explicit clock ports, the clock port is listed first.
Field Summary | |
static CellInterface[] |
cell_interface
|
protected int[] |
contents
|
static CellInterface[] |
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 | |
RAMB4Single(Node parent,
java.lang.String name,
java.lang.String s0,
Wire w0,
java.lang.String s1,
Wire w1,
java.lang.String s2,
Wire w2,
java.lang.String s3,
Wire w3,
java.lang.String s4,
Wire w4,
java.lang.String s5,
Wire w5,
java.lang.String s6,
Wire w6,
java.lang.String[] contents)
|
|
RAMB4Single(Node parent,
Wire rst,
Wire en,
Wire din,
Wire we,
Wire addr,
Wire dout)
Constructs a new single-ported Block RAM. |
|
RAMB4Single(Node parent,
Wire rst,
Wire en,
Wire din,
Wire we,
Wire addr,
Wire dout,
int[] contents)
Constructs a new single-ported Block RAM. |
|
RAMB4Single(Node parent,
Wire rst,
Wire en,
Wire din,
Wire we,
Wire addr,
Wire dout,
int[] contents,
java.lang.String name)
Constructs a new named, single-ported Block RAM. |
|
RAMB4Single(Node parent,
Wire rst,
Wire en,
Wire din,
Wire we,
Wire addr,
Wire dout,
java.lang.String name)
Constructs a new named, single-ported Block RAM. |
|
RAMB4Single(Node parent,
Wire rst,
Wire en,
Wire din,
Wire we,
Wire addr,
Wire dout,
java.lang.String[] contents)
Constructs a new named, single-ported Block RAM. |
|
RAMB4Single(Node parent,
Wire rst,
Wire en,
Wire din,
Wire we,
Wire addr,
Wire dout,
java.lang.String[] contents,
java.lang.String name)
Constructs a new named, single-ported Block RAM. |
|
RAMB4Single(Node parent,
Wire clk,
Wire rst,
Wire en,
Wire din,
Wire we,
Wire addr,
Wire dout)
Constructs a new single-ported Block RAM with clock. |
|
RAMB4Single(Node parent,
Wire clk,
Wire rst,
Wire en,
Wire din,
Wire we,
Wire addr,
Wire dout,
int[] contents)
Constructs a new, named single-ported Block RAM with clock. |
|
RAMB4Single(Node parent,
Wire clk,
Wire rst,
Wire en,
Wire din,
Wire we,
Wire addr,
Wire dout,
int[] contents,
java.lang.String name)
Constructs a new, named single-ported Block RAM with clock. |
|
RAMB4Single(Node parent,
Wire clk,
Wire rst,
Wire en,
Wire din,
Wire we,
Wire addr,
Wire dout,
java.lang.String name)
Constructs a new, named single-ported Block RAM with clock. |
|
RAMB4Single(Node parent,
Wire clk,
Wire rst,
Wire en,
Wire din,
Wire we,
Wire addr,
Wire dout,
java.lang.String[] contents)
Constructs a new named, single-ported Block RAM. |
|
RAMB4Single(Node parent,
Wire clk,
Wire rst,
Wire en,
Wire din,
Wire we,
Wire addr,
Wire dout,
java.lang.String[] contents,
java.lang.String name)
Constructs a new named, single-ported Block RAM. |
Method Summary | |
protected void |
addMyProperties()
|
protected void |
addMyProperties(java.lang.String[] properties)
|
protected void |
BuildStructure(Wire rst,
Wire en,
Wire din,
Wire we,
Wire addr,
Wire dout,
int[] contents,
java.lang.String name)
|
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. |
protected void |
connectImplicitPorts()
Connects the implicit ports. |
protected boolean |
defaultSimulationModelIsBehavioral()
The default simulation model is structural for Structural cells. |
int[] |
fetchState()
This method is used to fetch the current state of the Cell. |
java.lang.String |
getCellName()
Access the cell name associated with a derived class. |
java.io.Serializable |
getData()
Called by the checkpointing code to get all of the data that should be checkpointed. |
protected java.lang.String[] |
IntArrayToPropertyStrings(int[] array)
|
boolean |
isNetlistLeaf()
A few rare cells are leafCells during netlisting, but not during simulation. |
protected int[] |
PropertyStringsToIntArray(java.lang.String[] pstr)
|
void |
setData(java.io.Serializable data)
This is called on a checkpoint restore, and the object checkpointed out is passed back in. |
void |
updateState(int[] update_value)
This method is used to update the state of the Cell in simulator. |
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[] implicit_interface
public static CellInterface[] cell_interface
protected int[] contents
Constructor Detail |
public RAMB4Single(Node parent, Wire rst, Wire en, Wire din, Wire we, Wire addr, Wire dout)
parent
- The parent Cell
to the RAMB4Singlerst
- The Wire
to be connected to input port rsten
- The Wire
to be connected to input port endin
- The Wire
to be connected to input port dinwe
- The Wire
to be connected to input port weaddr
- The Wire
to be connected to input port addrdout
- The Wire
to be connected to output port doutpublic RAMB4Single(Node parent, Wire rst, Wire en, Wire din, Wire we, Wire addr, Wire dout, int[] contents)
parent
- The parent Cell
to the RAMB4Singlerst
- The Wire
to be connected to input port rsten
- The Wire
to be connected to input port endin
- The Wire
to be connected to input port dinwe
- The Wire
to be connected to input port weaddr
- The Wire
to be connected to input port addrdout
- The Wire
to be connected to output port doutcontents
- An int[]
representing the contents of the entire BlockRam.public RAMB4Single(Node parent, Wire rst, Wire en, Wire din, Wire we, Wire addr, Wire dout, java.lang.String name)
parent
- The parent Cell
to the RAMB4Singlerst
- The Wire
to be connected to input port rsten
- The Wire
to be connected to input port endin
- The Wire
to be connected to input port dinwe
- The Wire
to be connected to input port weaddr
- The Wire
to be connected to input port addrdout
- The Wire
to be connected to output port doutname
- Instance name of the RAMB4Singlepublic RAMB4Single(Node parent, Wire rst, Wire en, Wire din, Wire we, Wire addr, Wire dout, int[] contents, java.lang.String name)
parent
- The parent Cell
to the RAMB4Singlerst
- The Wire
to be connected to input port rsten
- The Wire
to be connected to input port endin
- The Wire
to be connected to input port dinwe
- The Wire
to be connected to input port weaddr
- The Wire
to be connected to input port addrdout
- The Wire
to be connected to output port doutcontents
- An int[]
representing the contents of the entire BlockRam.name
- Instance name of the RAMB4Singlepublic RAMB4Single(Node parent, Wire rst, Wire en, Wire din, Wire we, Wire addr, Wire dout, java.lang.String[] contents)
parent
- The parent Cell
to the RAMB4Singlerst
- The Wire
to be connected to input port rsten
- The Wire
to be connected to input port endin
- The Wire
to be connected to input port dinwe
- The Wire
to be connected to input port weaddr
- The Wire
to be connected to input port addrdout
- The Wire
to be connected to output port doutcontents
- An String[]
representing the contents of the entire BlockRam, each string containing the init string that corresponds to the INIT_00 ... INIT_0F properties.public RAMB4Single(Node parent, Wire rst, Wire en, Wire din, Wire we, Wire addr, Wire dout, java.lang.String[] contents, java.lang.String name)
parent
- The parent Cell
to the RAMB4Singlerst
- The Wire
to be connected to input port rsten
- The Wire
to be connected to input port endin
- The Wire
to be connected to input port dinwe
- The Wire
to be connected to input port weaddr
- The Wire
to be connected to input port addrdout
- The Wire
to be connected to output port doutcontents
- An String[]
representing the contents of the entire BlockRam, each string containing the init string that corresponds to the INIT_00 ... INIT_0F properties.name
- Instance name of the RAMB4Singlepublic RAMB4Single(Node parent, Wire clk, Wire rst, Wire en, Wire din, Wire we, Wire addr, Wire dout)
parent
- The parent Cell
to the RAMB4Singleclk
- The Wire
to be connected to input port clkrst
- The Wire
to be connected to input port rsten
- The Wire
to be connected to input port endin
- The Wire
to be connected to input port dinwe
- The Wire
to be connected to input port weaddr
- The Wire
to be connected to input port addrdout
- The Wire
to be connected to output port doutpublic RAMB4Single(Node parent, Wire clk, Wire rst, Wire en, Wire din, Wire we, Wire addr, Wire dout, java.lang.String name)
parent
- The parent Cell
to the RAMB4Singleclk
- The Wire
to be connected to input port clkrst
- The Wire
to be connected to input port rsten
- The Wire
to be connected to input port endin
- The Wire
to be connected to input port dinwe
- The Wire
to be connected to input port weaddr
- The Wire
to be connected to input port addrdout
- The Wire
to be connected to output port doutname
- Instance name of the RAMB4Singlepublic RAMB4Single(Node parent, Wire clk, Wire rst, Wire en, Wire din, Wire we, Wire addr, Wire dout, int[] contents)
parent
- The parent Cell
to the RAMB4Singleclk
- The Wire
to be connected to input port clkrst
- The Wire
to be connected to input port rsten
- The Wire
to be connected to input port endin
- The Wire
to be connected to input port dinwe
- The Wire
to be connected to input port weaddr
- The Wire
to be connected to input port addrdout
- The Wire
to be connected to output port doutcontents
- An int[]
representing the contents of the entire BlockRam.public RAMB4Single(Node parent, Wire clk, Wire rst, Wire en, Wire din, Wire we, Wire addr, Wire dout, java.lang.String[] contents)
parent
- The parent Cell
to the RAMB4Singleclk
- The Wire
to be connected to input port clkrst
- The Wire
to be connected to input port rsten
- The Wire
to be connected to input port endin
- The Wire
to be connected to input port dinwe
- The Wire
to be connected to input port weaddr
- The Wire
to be connected to input port addrdout
- The Wire
to be connected to output port doutcontents
- An String[]
representing the contents of the entire BlockRam, each string containing the init string that corresponds to the INIT_00 ... INIT_0F properties.public RAMB4Single(Node parent, Wire clk, Wire rst, Wire en, Wire din, Wire we, Wire addr, Wire dout, java.lang.String[] contents, java.lang.String name)
parent
- The parent Cell
to the RAMB4Singleclk
- The Wire
to be connected to input port clkrst
- The Wire
to be connected to input port rsten
- The Wire
to be connected to input port endin
- The Wire
to be connected to input port dinwe
- The Wire
to be connected to input port weaddr
- The Wire
to be connected to input port addrdout
- The Wire
to be connected to output port doutcontents
- An String[]
representing the contents of the entire BlockRam, each string containing the init string that corresponds to the INIT_00 ... INIT_0F properties.name
- Instance name of the RAMB4Singlepublic RAMB4Single(Node parent, Wire clk, Wire rst, Wire en, Wire din, Wire we, Wire addr, Wire dout, int[] contents, java.lang.String name)
parent
- The parent Cell
to the RAMB4Singleclk
- The Wire
to be connected to input port clkrst
- The Wire
to be connected to input port rsten
- The Wire
to be connected to input port endin
- The Wire
to be connected to input port dinwe
- The Wire
to be connected to input port weaddr
- The Wire
to be connected to input port addrdout
- The Wire
to be connected to output port doutcontents
- An int[]
representing the contents of the entire BlockRam.name
- Instance name of the RAMB4Singlepublic RAMB4Single(Node parent, java.lang.String name, java.lang.String s0, Wire w0, java.lang.String s1, Wire w1, java.lang.String s2, Wire w2, java.lang.String s3, Wire w3, java.lang.String s4, Wire w4, java.lang.String s5, Wire w5, java.lang.String s6, Wire w6, java.lang.String[] contents)
Method Detail |
protected void connectImplicitPorts()
Logic
#implicit_ports
.
If you used the old version of connect_implicit_ports, this method will use
reflection to see that the old version gets called correctly.
connectImplicitPorts
in class Logic
public java.lang.String getCellName()
Cell
getCellName
in class Cell
public boolean isNetlistLeaf()
Cell
isNetlistLeaf
in class Cell
public final boolean cellInterfaceDeterminesUniqueNetlistStructure()
Cell
cellInterfaceDeterminesUniqueNetlistStructure
in class Cell
protected void BuildStructure(Wire rst, Wire en, Wire din, Wire we, Wire addr, Wire dout, int[] contents, java.lang.String name)
protected boolean defaultSimulationModelIsBehavioral()
Structural
defaultSimulationModelIsBehavioral
in class Structural
public void updateState(int[] update_value)
LargeExternallyUpdateable
updateState
in interface LargeExternallyUpdateable
update_value
- the state to update topublic int[] fetchState()
LargeExternallyUpdateable
fetchState
in interface LargeExternallyUpdateable
public java.io.Serializable getData()
Checkpointable
getData
in interface Checkpointable
public void setData(java.io.Serializable data)
Checkpointable
setData
in interface Checkpointable
data
- the state that was saved earlierprotected int[] PropertyStringsToIntArray(java.lang.String[] pstr)
protected java.lang.String[] IntArrayToPropertyStrings(int[] array)
protected void addMyProperties()
protected void addMyProperties(java.lang.String[] properties)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |