|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||
java.lang.Object | +--lib.datatypes.VirtexCoordinate
VirtexCoordinate represents a point in the space of a Virtex I FPGA. NOTE: Slices are ordered as in the literature with 1 being positioned on the left and 0 on the right half of the CLB. This will apparently be different in a Virtex II device.
Copyright (c) 2002 Alex Carreira
| Constructor Summary | |
VirtexCoordinate()
Constructs a VirtexCoordinate at the bottom left corner of a device (0, 0, 1, 0). |
|
VirtexCoordinate(AbsoluteCoordinate aAC)
Constructs a VirtexCoordinate from an AbsoluteCoordinate. |
|
VirtexCoordinate(int aCLBColumn,
int aCLBRow,
int aSlice,
int aLE)
Constructs a VirtexCoordinate at a user specified location. |
|
| Method Summary | |
java.lang.Object |
clone()
|
boolean |
equals(java.lang.Object aVirtexCoord)
Compares two VirtexCoordinates. |
int |
getAbsoluteLERow()
|
int |
getAbsoluteSliceColumn()
|
int |
getCLBColumn()
|
int |
getCLBRow()
|
int |
getLE()
|
int |
getSlice()
|
void |
incrementCLBCol()
Increments the VirtexCoordinate column by one CLB. |
void |
incrementCLBRow()
Increments the VirtexCoordinate row by one CLB. |
void |
incrementLERow()
Increments the VirtexCoordinate row by one LE. |
void |
incrementSliceCol()
Increments the VirtexCoordinate column by one slice. |
boolean |
isValid()
|
void |
setCLBColumn(int aCLBColumn)
Set the CLB column location. |
void |
setCLBRow(int aCLBRow)
Set the CLB row location. |
void |
setLE(int aLE)
Set the LE location. |
void |
setSlice(int aSlice)
Set the Slice location. |
java.lang.String |
toString()
|
boolean |
tryAddExplicitDimToCoord(int aCLBColumnDim,
int aCLBRowDim,
int aSliceDim,
int aLEDim,
boolean sliceShared)
Trys to add an explicit Virtex Dimension to a Virtex Coordinate and returns false if unsuccessful. |
boolean |
trySubCoord(VirtexCoordinate aVC)
|
boolean |
trySubExplicitDimFromCoord(int aCLBColumnDim,
int aCLBRowDim,
int aSliceDim,
int aLEDim,
boolean sliceShared)
Trys to subtract an explicit Virtex Dimension from a Virtex Coordinate and returns false if unsuccessful. |
| Methods inherited from class java.lang.Object |
getClass,
hashCode,
notify,
notifyAll,
wait,
wait,
wait |
| Constructor Detail |
public VirtexCoordinate()
public VirtexCoordinate(AbsoluteCoordinate aAC)
public VirtexCoordinate(int aCLBColumn,
int aCLBRow,
int aSlice,
int aLE)
throws VirtexCoordinateException
aCLBColumn - A column coordinate.aCLBRow - A row coordinate.aSlice - A slice coordinate.aLE - A LE coordinate.| Method Detail |
public final void setCLBColumn(int aCLBColumn)
throws VirtexCoordinateException
aCLBColumn - A location of a CLB column.public final int getCLBColumn()
public final void setCLBRow(int aCLBRow)
throws VirtexCoordinateException
aCLBRow - A location of a CLB row.public final int getCLBRow()
public final void setSlice(int aSlice)
throws VirtexCoordinateException
aSlice - A location of a Slice within a CLB.public final int getSlice()
public final void setLE(int aLE)
throws VirtexCoordinateException
aLE - A location of a LE within a CLB.public final int getLE()
public final int getAbsoluteSliceColumn()
public final int getAbsoluteLERow()
public boolean equals(java.lang.Object aVirtexCoord)
aVirtexCoord - aVirtexCoordinate to compare.public java.lang.Object clone()
public java.lang.String toString()
public boolean isValid()
public void incrementSliceCol()
public void incrementCLBCol()
public void incrementLERow()
public void incrementCLBRow()
public boolean tryAddExplicitDimToCoord(int aCLBColumnDim,
int aCLBRowDim,
int aSliceDim,
int aLEDim,
boolean sliceShared)
aCLBColumnDim - Width in CLBs, must be greater than or equal to zero.aCLBRowDim - Height in CLBs, must be greater than or equal to zero.aSliceDim - Width in Slices, must be greater than or equal to zero.aLEDim - Height in LEs, must be greater than or equal to zero.sliceShared - Specifies whether to increment LEs into the middle of slices (true),
or to the start of the next slice (false).
public boolean trySubExplicitDimFromCoord(int aCLBColumnDim,
int aCLBRowDim,
int aSliceDim,
int aLEDim,
boolean sliceShared)
aCLBColumnDim - Width in CLBs, must be greater than or equal to zero.aCLBRowDim - Height in CLBs, must be greater than or equal to zero.aSliceDim - Width in Slices, must be greater than or equal to zero.aLEDim - Height in LEs, must be greater than or equal to zero.sliceShared - Specifies whether to decrement LEs into the middle of slices (true),
or to the start of the next slice (false).public boolean trySubCoord(VirtexCoordinate aVC)
aVC - A VirtexCoordinate to subtract from this VirtexCoordinate instance.
|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||