|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectbyucc.jhdl.platforms.util.readback.Xilinx.XilinxBitstreamParams
byucc.jhdl.platforms.util.readback.Xilinx.Virtex.VirtexBitstreamParams
This class is used to record the information about a specific
Virtex FPGA during the creation of an .rbentry
file as
well as provide a method for calculating the absolute offset of a
readback state bit from the offset provided by the Xilinx logical
allocation file (.ll) file. The information this class records
about a specific FPGA includes the PE type, the readback bitstream
header lengths, the bit ordering within each byte, the frame size,
the CLB frame count, and the bitmap length. Further, this class
defines constants for each supported Xilinx part type as well as
each part type's frame size and count. Further, constants for the
number of bits in a byte and the trailer or postamble length are
also defined. Several methods are defined to conveniently
calculate the length of the bitstream in bits and bytes as well as
provide the lengths of frames, the number of frames, and a
String
representing the Xilinx FPGA type.
Field Summary | |
static int |
BITMAP_LENGTH_UNKNOWN
The bitmap length for an unknown Virtex part type |
static int |
BITMAP_LENGTH_XC2S100
The bitmap length for a Spartan2 XC2S100 part type |
static int |
BITMAP_LENGTH_XC2S15
The bitmap length for a Spartan2 XC2S15 part type |
static int |
BITMAP_LENGTH_XC2S150
The bitmap length for a Spartan2 XC2S150 part type |
static int |
BITMAP_LENGTH_XC2S200
The bitmap length for a Spartan2 XC2S200 part type |
static int |
BITMAP_LENGTH_XC2S30
The bitmap length for a Spartan2 XC2S30 part type |
static int |
BITMAP_LENGTH_XC2S50
The bitmap length for a Spartan2 XC2S50 part type |
static int |
BITMAP_LENGTH_XCV100
The bitmap length for a Virtex XCV100 part type |
static int |
BITMAP_LENGTH_XCV1000
The bitmap length for a Virtex XCV1000 part type |
static int |
BITMAP_LENGTH_XCV150
The bitmap length for a Virtex XCV150 part type |
static int |
BITMAP_LENGTH_XCV200
The bitmap length for a Virtex XCV200 part type |
static int |
BITMAP_LENGTH_XCV300
The bitmap length for a Virtex XCV300 part type |
static int |
BITMAP_LENGTH_XCV400
The bitmap length for a Virtex XCV400 part type |
static int |
BITMAP_LENGTH_XCV50
The bitmap length for a Virtex XCV50 part type |
static int |
BITMAP_LENGTH_XCV600
The bitmap length for a Virtex XCV600 part type |
static int |
BITMAP_LENGTH_XCV800
The bitmap length for a Virtex XCV800 part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_UNKNOWN
The BlockRAM word count for an unknown Virtex part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XC2S100
The BlockRAM word count for a Spartan2 XC2S100 part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XC2S15
The BlockRAM word count for a Spartan2 XC2S15 part type On XAPP176 page 37, the value for XC2S10 is TBD. |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XC2S150
The BlockRAM word count for a Spartan2 XC2S150 part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XC2S200
The BlockRAM word count for a Spartan2 XC2S200 part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XC2S30
The BlockRAM word count for a Spartan2 XC2S30 part type On XAPP176 page 37, the value for XC2S30 is TBD. |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XC2S50
The BlockRAM word count for a Spartan2 XC2S50 part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XCV100
The BlockRAM word count for a Virtex XCV100 part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XCV1000
The BlockRAM word count for a Virtex XCV1000 part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XCV150
The BlockRAM word count for a Virtex XCV150 part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XCV200
The BlockRAM word count for a Virtex XCV200 part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XCV300
The BlockRAM word count for a Virtex XCV300 part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XCV400
The BlockRAM word count for a Virtex XCV400 part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XCV50
The BlockRAM word count for a Virtex XCV50 part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XCV600
The BlockRAM word count for a Virtex XCV600 part type |
static int |
BLOCKRAM_READBACK_WORD_COUNT_XCV800
The BlockRAM word count for a Virtex XCV800 part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_UNKNOWN
The packet header for an unknown Virtex part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XC2S100
The BlockRAM packet header for a Spartan2 XC2S100 part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XC2S15
The BlockRAM packet header for a Spartan2 XC2S15 part type. |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XC2S150
The BlockRAM packet header for a Spartan2 XC2S150 part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XC2S200
The BlockRAM packet header for a Spartan2 XC2S200 part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XC2S30
The BlockRAM packet header for a Spartan2 XC2S30 part type. |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XC2S50
The BlockRAM packet header for a Spartan2 XC2S50 part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XCV100
The BlockRAM packet header for a Virtex XCV100 part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XCV1000
The BlockRAM packet header for a Virtex XCV1000 part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XCV150
The BlockRAM packet header for a Virtex XCV150 part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XCV200
The BlockRAM packet header for a Virtex XCV200 part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XCV300
The BlockRAM packet header for a Virtex XCV300 part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XCV400
The BlockRAM packet header for a Virtex XCV400 part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XCV50
The BlockRAM packet header for a Virtex XCV50 part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XCV600
The BlockRAM packet header for a Virtex XCV600 part type |
static int |
BLOCKRAM_TYPE2_PACKET_HEADER_XCV800
The BlockRAM packet header for a Virtex XCV800 part type |
static int |
BYTE_SIZE
The length of a byte in bits. |
static int |
CLB_FRAME_COUNT_UNKNOWN
The number of CLB frames for an unknown Virtex part type |
static int |
CLB_FRAME_COUNT_XC2S100
The number of CLB frames for a Spartan2 XC2S100 part type |
static int |
CLB_FRAME_COUNT_XC2S15
The number of CLB frames for a Spartan2 XC2S15 part type |
static int |
CLB_FRAME_COUNT_XC2S150
The number of CLB frames for a Spartan2 XC2S150 part type |
static int |
CLB_FRAME_COUNT_XC2S200
The number of CLB frames for a Spartan2 XC2S200 part type |
static int |
CLB_FRAME_COUNT_XC2S30
The number of CLB frames for a Spartan2 XC2S30 part type |
static int |
CLB_FRAME_COUNT_XC2S50
The number of CLB frames for a Spartan2 XC2S50 part type |
static int |
CLB_FRAME_COUNT_XCV100
The number of CLB frames for a Virtex XCV100 part type |
static int |
CLB_FRAME_COUNT_XCV1000
The number of CLB frames for a Virtex XCV1000 part type |
static int |
CLB_FRAME_COUNT_XCV150
The number of CLB frames for a Virtex XCV150 part type |
static int |
CLB_FRAME_COUNT_XCV200
The number of CLB frames for a Virtex XCV200 part type |
static int |
CLB_FRAME_COUNT_XCV300
The number of CLB frames for a Virtex XCV300 part type |
static int |
CLB_FRAME_COUNT_XCV400
The number of CLB frames for a Virtex XCV400 part type |
static int |
CLB_FRAME_COUNT_XCV50
The number of CLB frames for a Virtex XCV50 part type |
static int |
CLB_FRAME_COUNT_XCV600
The number of CLB frames for a Virtex XCV600 part type |
static int |
CLB_FRAME_COUNT_XCV800
The number of CLB frames for a Virtex XCV800 part type |
static int |
CLB_READBACK_WORD_COUNT_UNKNOWN
The CLB word count for an unknown Virtex part type |
static int |
CLB_READBACK_WORD_COUNT_XC2S100
The CLB word count for a Spartan2 XC2S100 part type |
static int |
CLB_READBACK_WORD_COUNT_XC2S15
The CLB word count for a Spartan2 XC2S15 part type |
static int |
CLB_READBACK_WORD_COUNT_XC2S150
The CLB word count for a Spartan2 XC2S150 part type |
static int |
CLB_READBACK_WORD_COUNT_XC2S200
The CLB word count for a Spartan2 XC2S200 part type |
static int |
CLB_READBACK_WORD_COUNT_XC2S30
The CLB word count for a Spartan2 XC2S30 part type |
static int |
CLB_READBACK_WORD_COUNT_XC2S50
The CLB word count for a Spartan2 XC2S50 part type |
static int |
CLB_READBACK_WORD_COUNT_XCV100
The CLB word count for a Virtex XCV100 part type |
static int |
CLB_READBACK_WORD_COUNT_XCV1000
The CLB word count for a Virtex XCV1000 part type |
static int |
CLB_READBACK_WORD_COUNT_XCV150
The CLB word count for a Virtex XCV150 part type |
static int |
CLB_READBACK_WORD_COUNT_XCV200
The CLB word count for a Virtex XCV200 part type |
static int |
CLB_READBACK_WORD_COUNT_XCV300
The CLB word count for a Virtex XCV300 part type |
static int |
CLB_READBACK_WORD_COUNT_XCV400
The CLB word count for a Virtex XCV400 part type |
static int |
CLB_READBACK_WORD_COUNT_XCV50
The CLB word count for a Virtex XCV50 part type |
static int |
CLB_READBACK_WORD_COUNT_XCV600
The CLB word count for a Virtex XCV600 part type |
static int |
CLB_READBACK_WORD_COUNT_XCV800
The CLB word count for a Virtex XCV800 part type |
static int |
CLB_TYPE2_PACKET_HEADER_UNKNOWN
The packet header for an unknown Virtex part type |
static int |
CLB_TYPE2_PACKET_HEADER_XC2S100
The CLB packet header for a Spartan2 XC2S100 part type |
static int |
CLB_TYPE2_PACKET_HEADER_XC2S15
The CLB packet header for a Spartan2 XC2S15 part type. |
static int |
CLB_TYPE2_PACKET_HEADER_XC2S150
The CLB packet header for a Spartan2 XC2S150 part type |
static int |
CLB_TYPE2_PACKET_HEADER_XC2S200
The CLB packet header for a Spartan2 XC2S200 part type |
static int |
CLB_TYPE2_PACKET_HEADER_XC2S30
The CLB packet header for a Spartan2 XC2S30 part type. |
static int |
CLB_TYPE2_PACKET_HEADER_XC2S50
The CLB packet header for a Spartan2 XC2S50 part type |
static int |
CLB_TYPE2_PACKET_HEADER_XCV100
The CLB packet header for a Virtex XCV100 part type |
static int |
CLB_TYPE2_PACKET_HEADER_XCV1000
The CLB packet header for a Virtex XCV1000 part type |
static int |
CLB_TYPE2_PACKET_HEADER_XCV150
The CLB packet header for a Virtex XCV150 part type |
static int |
CLB_TYPE2_PACKET_HEADER_XCV200
The CLB packet header for a Virtex XCV200 part type |
static int |
CLB_TYPE2_PACKET_HEADER_XCV300
The CLB packet header for a Virtex XCV300 part type |
static int |
CLB_TYPE2_PACKET_HEADER_XCV400
The CLB packet header for a Virtex XCV400 part type |
static int |
CLB_TYPE2_PACKET_HEADER_XCV50
The CLB packet header for a Virtex XCV50 part type |
static int |
CLB_TYPE2_PACKET_HEADER_XCV600
The CLB packet header for a Virtex XCV600 part type |
static int |
CLB_TYPE2_PACKET_HEADER_XCV800
The CLB packet header for a Virtex XCV800 part type |
static int |
CONFIG_FRAME_COUNT_UNKNOWN
The configuration frame count for an unknown Virtex part type |
static int |
CONFIG_FRAME_COUNT_XC2S100
The configuration frame count for a Spartan2 XC2S100 part type |
static int |
CONFIG_FRAME_COUNT_XC2S15
The configuration frame count for a Spartan2 XC2S15 part type |
static int |
CONFIG_FRAME_COUNT_XC2S150
The configuration frame count for a Spartan2 XC2S150 part type |
static int |
CONFIG_FRAME_COUNT_XC2S200
The configuration frame count for a Spartan2 XC2S200 part type |
static int |
CONFIG_FRAME_COUNT_XC2S30
The configuration frame count for a Spartan2 XC2S30 part type |
static int |
CONFIG_FRAME_COUNT_XC2S50
The configuration frame count for a Spartan2 XC2S50 part type |
static int |
CONFIG_FRAME_COUNT_XCV100
The configuration frame count for a Virtex XCV100 part type |
static int |
CONFIG_FRAME_COUNT_XCV1000
The configuration frame count for a Virtex XCV1000 part type |
static int |
CONFIG_FRAME_COUNT_XCV150
The configuration frame count for a Virtex XCV150 part type |
static int |
CONFIG_FRAME_COUNT_XCV200
The configuration frame count for a Virtex XCV200 part type |
static int |
CONFIG_FRAME_COUNT_XCV300
The configuration frame count for a Virtex XCV300 part type |
static int |
CONFIG_FRAME_COUNT_XCV400
The configuration frame count for a Virtex XCV400 part type |
static int |
CONFIG_FRAME_COUNT_XCV50
The configuration frame count for a Virtex XCV50 part type |
static int |
CONFIG_FRAME_COUNT_XCV600
The configuration frame count for a Virtex XCV600 part type |
static int |
CONFIG_FRAME_COUNT_XCV800
The configuration frame count for a Virtex XCV800 part type |
static int |
FRAME_SIZE_UNKNOWN
The frame size for an unknown Virtex part type |
static int |
FRAME_SIZE_XC2S100
The frame size for a Spartan2 XC2S100 part type |
static int |
FRAME_SIZE_XC2S15
The frame size for a Spartan2 XC2S15 part type |
static int |
FRAME_SIZE_XC2S150
The frame size for a Spartan2 XC2S150 part type |
static int |
FRAME_SIZE_XC2S200
The frame size for a Spartan2 XC2S200 part type |
static int |
FRAME_SIZE_XC2S30
The frame size for a Spartan2 XC2S30 part type |
static int |
FRAME_SIZE_XC2S50
The frame size for a Spartan2 XC2S50 part type |
static int |
FRAME_SIZE_XCV100
The frame size for a Virtex XCV100 part type |
static int |
FRAME_SIZE_XCV1000
The frame size for a Virtex XCV1000 part type |
static int |
FRAME_SIZE_XCV150
The frame size for a Virtex XCV150 part type |
static int |
FRAME_SIZE_XCV200
The frame size for a Virtex XCV200 part type |
static int |
FRAME_SIZE_XCV300
The frame size for a Virtex XCV300 part type |
static int |
FRAME_SIZE_XCV400
The frame size for a Virtex XCV400 part type |
static int |
FRAME_SIZE_XCV50
The frame size for a Virtex XCV50 part type |
static int |
FRAME_SIZE_XCV600
The frame size for a Virtex XCV600 part type |
static int |
FRAME_SIZE_XCV800
The frame size for a Virtex XCV800 part type |
static int |
IDCODE_UNKNOWN
The idcode for an unknown Virtex part type |
static int |
IDCODE_XC2S100
The idcode for a Spartan2 XC2S100 part type |
static int |
IDCODE_XC2S15
The idcode for a Spartan2 XC2S15 part type |
static int |
IDCODE_XC2S150
The idcode for a Spartan2 XC2S150 part type |
static int |
IDCODE_XC2S200
The idcode for a Spartan2 XC2S200 part type |
static int |
IDCODE_XC2S30
The idcode for a Spartan2 XC2S30 part type |
static int |
IDCODE_XC2S50
The idcode for a Spartan2 XC2S50 part type |
static int |
IDCODE_XCV100
The idcode for a Virtex XCV100 part type |
static int |
IDCODE_XCV1000
The idcode for a Virtex XCV1000 part type |
static int |
IDCODE_XCV150
The idcode for a Virtex XCV150 part type |
static int |
IDCODE_XCV200
The idcode for a Virtex XCV200 part type |
static int |
IDCODE_XCV300
The idcode for a Virtex XCV300 part type |
static int |
IDCODE_XCV400
The idcode for a Virtex XCV400 part type |
static int |
IDCODE_XCV50
The idcode for a Virtex XCV50 part type |
static int |
IDCODE_XCV600
The idcode for a Virtex XCV600 part type |
static int |
IDCODE_XCV800
The idcode for a Virtex XCV800 part type |
static int |
PAD_WORD_SIZE
The length of a configuration pad word in bits. |
static int |
RAM_FRAME_COUNT
Block RAM frame count from XAPP 138, the same for all devices |
static int |
WORD_SIZE
The length of a configuration word in bits. |
static int |
XILINX_UNKNOWN
Defines the encoding for an unknown Virtex part type |
static int |
XILINX_XC2S100
Defines the encoding for a Spartan2 XC2S100 part type |
static int |
XILINX_XC2S15
Defines the encoding for a Spartan2 XC2S15 part type |
static int |
XILINX_XC2S150
Defines the encoding for a Spartan2 XC2S150 part type |
static int |
XILINX_XC2S200
Defines the encoding for a Spartan2 XC2S200 part type |
static int |
XILINX_XC2S30
Defines the encoding for a Spartan2 XC2S30 part type |
static int |
XILINX_XC2S50
Defines the encoding for a Spartan2 XC2S50 part type |
static int |
XILINX_XCV100
Defines the encoding for a Virtex XCV100 part type |
static int |
XILINX_XCV1000
Defines the encoding for a Virtex XCV1000 part type |
static int |
XILINX_XCV150
Defines the encoding for a Virtex XCV150 part type |
static int |
XILINX_XCV200
Defines the encoding for a Virtex XCV200 part type |
static int |
XILINX_XCV300
Defines the encoding for a Virtex XCV300 part type |
static int |
XILINX_XCV400
Defines the encoding for a Virtex XCV400 part type |
static int |
XILINX_XCV50
Defines the encoding for a Virtex XCV50 part type |
static int |
XILINX_XCV600
Defines the encoding for a Virtex XCV600 part type |
static int |
XILINX_XCV800
Defines the encoding for a Virtex XCV800 part type |
Constructor Summary | |
VirtexBitstreamParams()
Constructs an object setting the value of the PE type to XILINX_UNKNOWN, the CLB Header length in bits to 0, the Block RAM header bits to 0, and the byte ordering to byteMirrored = false (in other words, bit 0 is the MSB of the byte). |
|
VirtexBitstreamParams(int idcode)
Constructs an object setting the value of the PE type, setting the CLB Header length in bits to 0, the BlockRam header bits to 0 and the byte ordering to byteMirrored = false (in other words, bit 0 is the MSB of the byte). |
|
VirtexBitstreamParams(java.lang.String peTypeStr,
int newClbHeaderBits,
int newRamHeaderBits,
boolean newByteMirrored)
Constructs an object setting the value of the PE type, the CLB Header length, the Block RAM header bits, and the byte ordering according to the parameters given. |
Method Summary | |
int |
calculateBRAMOffset(int frame,
int frameOffset)
This method calculates the absolute offset of a readback state bit which is located in a Block RAM based on the offset provided by the Xilinx Logical Allocation file (.ll) created by "bitgen". |
int |
calculateBRAMOffset(RBLocation rbl)
This method calculates the absolute offset of a readback state bit which is located in a Block RAM based on the offset provided by the Xilinx Logical Allocation file (.ll) created by "bitgen". |
int |
calculateCLBOffset(int frame,
int frameOffset)
Calculates the absolute offset of a readback state bit which is located in the CLB frames (may be in a CLB or IOB) based on the offset provided by the Xilinx Logical Allocation file (.ll) created by "bitgen". |
int |
calculateCLBOffset(RBLocation rbl)
Calculates the absolute offset of a readback state bit which is located in the CLB frames (may be in a CLB or IOB) based on the offset provided by the Xilinx Logical Allocation file (.ll) created by "bitgen". |
int |
getBitmapLength()
Maps a PE type to a bitmap length based on the encodings for the part type defined in the constants above. |
int |
getBitstreamLength()
Returns the bitstream length in terms of bits based on the declared PE type and header lengths in bits. |
int |
getBlockRAMPacketHeader()
|
int |
getBlockRAMPacketHeader(java.lang.String part)
Deprecated. Replaced by getBlockRAMPacketHeader() , after setting the
part type with setPEType(String) or setPEType(int) or
setPETypeWithIdcode(int) . |
int |
getBlockRAMReadBackWordCount()
|
int |
getBlockRAMReadBackWordCount(java.lang.String part)
Deprecated. Replaced by getBlockRAMReadBackWordCount() , after setting the
part type with setPEType(String) or setPEType(int) or
setPETypeWithIdcode(int) .
Returns the word count for BlockRAM readback |
int |
getBRAMByteCount()
|
int |
getBytestreamLength()
Returns the bitstream length in terms of bytes based on the declared PE type and header lengths in bits. |
int |
getCLBByteCount()
|
int |
getCLBFrameCount()
Maps a PE type to a CLB readback frame count based on the encodings for the part type defined in the constants above. |
int |
getCLBHeaderBits()
Returns the current length of the CLB readback header, in bits. |
int |
getCLBPacketHeader()
|
int |
getCLBReadBackWordCount()
|
int |
getFrameSize()
Maps a PE type to a CLB readback frame size based on the encodings for the part type defined in the constants above. |
java.lang.String |
getPart(int idcode)
Returns a string defining the part, based on the IDCODE. |
int |
getPEType()
Returns the integer value representing the part type of the PE. |
int |
getRAMFrameCount()
|
int |
getRAMHeaderBits()
Returns the current length of the BlockRAM readback header, in bits. |
boolean |
isByteMirrored()
Returns the values of the byteMirrored property,
discussed above. |
static int |
peType(int idcode)
Returns the pe-type based on the idcode |
void |
setByteMirrored(boolean isByteMirrored)
Sets the byteMirrored field to the value of the
parameter. |
void |
setCLBHeaderBits(int newCLBHeaderBits)
Sets the length of the CLB readback header (in bits) to the value of the given parameter. |
void |
setPEType(int newPeType)
Sets the value of the PE type using the static final
int "constants" defined earlier. |
void |
setPEType(java.lang.String newPeType)
Sets the value of the PE type based on a String
parameter which contains "Vxxx" for a Virtex part and "2Sxxx"
for a Spartan2 part. |
void |
setPETypeWithIdcode(int idcode)
Sets the value of the PE type using the Xilinx defined idcodes from XAPP139 page 7 or XAPP188 page 6. |
void |
setRAMHeaderBits(int newRAMHeaderBits)
Sets the length of the Block RAM readback header (in bits) to the value of the given parameter. |
java.lang.String |
toString()
Returns a String reflecting the Xilinx part type of
the PE represented by this object. |
static java.lang.String |
toString(int peType)
Returns a String reflecting the Xilinx part type of
the PE. |
static int |
whichPEType(java.lang.String peTypeStr)
Returns an integer reflecting the Xilinx part type of the PE based on the encodings given above. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
public static final int BYTE_SIZE
public static final int WORD_SIZE
public static final int PAD_WORD_SIZE
public static final int XILINX_UNKNOWN
public static final int XILINX_XCV50
public static final int XILINX_XCV100
public static final int XILINX_XCV150
public static final int XILINX_XCV200
public static final int XILINX_XCV300
public static final int XILINX_XCV400
public static final int XILINX_XCV600
public static final int XILINX_XCV800
public static final int XILINX_XCV1000
public static final int XILINX_XC2S15
public static final int XILINX_XC2S30
public static final int XILINX_XC2S50
public static final int XILINX_XC2S100
public static final int XILINX_XC2S150
public static final int XILINX_XC2S200
public static final int FRAME_SIZE_UNKNOWN
public static final int FRAME_SIZE_XCV50
public static final int FRAME_SIZE_XCV100
public static final int FRAME_SIZE_XCV150
public static final int FRAME_SIZE_XCV200
public static final int FRAME_SIZE_XCV300
public static final int FRAME_SIZE_XCV400
public static final int FRAME_SIZE_XCV600
public static final int FRAME_SIZE_XCV800
public static final int FRAME_SIZE_XCV1000
public static final int FRAME_SIZE_XC2S15
public static final int FRAME_SIZE_XC2S30
public static final int FRAME_SIZE_XC2S50
public static final int FRAME_SIZE_XC2S100
public static final int FRAME_SIZE_XC2S150
public static final int FRAME_SIZE_XC2S200
public static final int CONFIG_FRAME_COUNT_UNKNOWN
public static final int CONFIG_FRAME_COUNT_XCV50
public static final int CONFIG_FRAME_COUNT_XCV100
public static final int CONFIG_FRAME_COUNT_XCV150
public static final int CONFIG_FRAME_COUNT_XCV200
public static final int CONFIG_FRAME_COUNT_XCV300
public static final int CONFIG_FRAME_COUNT_XCV400
public static final int CONFIG_FRAME_COUNT_XCV600
public static final int CONFIG_FRAME_COUNT_XCV800
public static final int CONFIG_FRAME_COUNT_XCV1000
public static final int CONFIG_FRAME_COUNT_XC2S15
public static final int CONFIG_FRAME_COUNT_XC2S30
public static final int CONFIG_FRAME_COUNT_XC2S50
public static final int CONFIG_FRAME_COUNT_XC2S100
public static final int CONFIG_FRAME_COUNT_XC2S150
public static final int CONFIG_FRAME_COUNT_XC2S200
public static final int CLB_FRAME_COUNT_UNKNOWN
public static final int CLB_FRAME_COUNT_XCV50
public static final int CLB_FRAME_COUNT_XCV100
public static final int CLB_FRAME_COUNT_XCV150
public static final int CLB_FRAME_COUNT_XCV200
public static final int CLB_FRAME_COUNT_XCV300
public static final int CLB_FRAME_COUNT_XCV400
public static final int CLB_FRAME_COUNT_XCV600
public static final int CLB_FRAME_COUNT_XCV800
public static final int CLB_FRAME_COUNT_XCV1000
public static final int CLB_FRAME_COUNT_XC2S15
public static final int CLB_FRAME_COUNT_XC2S30
public static final int CLB_FRAME_COUNT_XC2S50
public static final int CLB_FRAME_COUNT_XC2S100
public static final int CLB_FRAME_COUNT_XC2S150
public static final int CLB_FRAME_COUNT_XC2S200
public static final int BITMAP_LENGTH_UNKNOWN
public static final int BITMAP_LENGTH_XCV50
public static final int BITMAP_LENGTH_XCV100
public static final int BITMAP_LENGTH_XCV150
public static final int BITMAP_LENGTH_XCV200
public static final int BITMAP_LENGTH_XCV300
public static final int BITMAP_LENGTH_XCV400
public static final int BITMAP_LENGTH_XCV600
public static final int BITMAP_LENGTH_XCV800
public static final int BITMAP_LENGTH_XCV1000
public static final int BITMAP_LENGTH_XC2S15
public static final int BITMAP_LENGTH_XC2S30
public static final int BITMAP_LENGTH_XC2S50
public static final int BITMAP_LENGTH_XC2S100
public static final int BITMAP_LENGTH_XC2S150
public static final int BITMAP_LENGTH_XC2S200
public static final int IDCODE_UNKNOWN
public static final int IDCODE_XCV50
public static final int IDCODE_XCV100
public static final int IDCODE_XCV150
public static final int IDCODE_XCV200
public static final int IDCODE_XCV300
public static final int IDCODE_XCV400
public static final int IDCODE_XCV600
public static final int IDCODE_XCV800
public static final int IDCODE_XCV1000
public static final int IDCODE_XC2S15
public static final int IDCODE_XC2S30
public static final int IDCODE_XC2S50
public static final int IDCODE_XC2S100
public static final int IDCODE_XC2S150
public static final int IDCODE_XC2S200
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_UNKNOWN
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XCV50
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XCV100
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XCV150
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XCV200
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XCV300
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XCV400
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XCV600
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XCV800
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XCV1000
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XC2S15
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XC2S30
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XC2S50
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XC2S100
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XC2S150
public static final int BLOCKRAM_TYPE2_PACKET_HEADER_XC2S200
public static final int BLOCKRAM_READBACK_WORD_COUNT_UNKNOWN
public static final int BLOCKRAM_READBACK_WORD_COUNT_XCV50
public static final int BLOCKRAM_READBACK_WORD_COUNT_XCV100
public static final int BLOCKRAM_READBACK_WORD_COUNT_XCV150
public static final int BLOCKRAM_READBACK_WORD_COUNT_XCV200
public static final int BLOCKRAM_READBACK_WORD_COUNT_XCV300
public static final int BLOCKRAM_READBACK_WORD_COUNT_XCV400
public static final int BLOCKRAM_READBACK_WORD_COUNT_XCV600
public static final int BLOCKRAM_READBACK_WORD_COUNT_XCV800
public static final int BLOCKRAM_READBACK_WORD_COUNT_XCV1000
public static final int BLOCKRAM_READBACK_WORD_COUNT_XC2S15
public static final int BLOCKRAM_READBACK_WORD_COUNT_XC2S30
public static final int BLOCKRAM_READBACK_WORD_COUNT_XC2S50
public static final int BLOCKRAM_READBACK_WORD_COUNT_XC2S100
public static final int BLOCKRAM_READBACK_WORD_COUNT_XC2S150
public static final int BLOCKRAM_READBACK_WORD_COUNT_XC2S200
public static final int CLB_TYPE2_PACKET_HEADER_UNKNOWN
public static final int CLB_TYPE2_PACKET_HEADER_XCV50
public static final int CLB_TYPE2_PACKET_HEADER_XCV100
public static final int CLB_TYPE2_PACKET_HEADER_XCV150
public static final int CLB_TYPE2_PACKET_HEADER_XCV200
public static final int CLB_TYPE2_PACKET_HEADER_XCV300
public static final int CLB_TYPE2_PACKET_HEADER_XCV400
public static final int CLB_TYPE2_PACKET_HEADER_XCV600
public static final int CLB_TYPE2_PACKET_HEADER_XCV800
public static final int CLB_TYPE2_PACKET_HEADER_XCV1000
public static final int CLB_TYPE2_PACKET_HEADER_XC2S15
public static final int CLB_TYPE2_PACKET_HEADER_XC2S30
public static final int CLB_TYPE2_PACKET_HEADER_XC2S50
public static final int CLB_TYPE2_PACKET_HEADER_XC2S100
public static final int CLB_TYPE2_PACKET_HEADER_XC2S150
public static final int CLB_TYPE2_PACKET_HEADER_XC2S200
public static final int CLB_READBACK_WORD_COUNT_UNKNOWN
public static final int CLB_READBACK_WORD_COUNT_XCV50
public static final int CLB_READBACK_WORD_COUNT_XCV100
public static final int CLB_READBACK_WORD_COUNT_XCV150
public static final int CLB_READBACK_WORD_COUNT_XCV200
public static final int CLB_READBACK_WORD_COUNT_XCV300
public static final int CLB_READBACK_WORD_COUNT_XCV400
public static final int CLB_READBACK_WORD_COUNT_XCV600
public static final int CLB_READBACK_WORD_COUNT_XCV800
public static final int CLB_READBACK_WORD_COUNT_XCV1000
public static final int CLB_READBACK_WORD_COUNT_XC2S15
public static final int CLB_READBACK_WORD_COUNT_XC2S30
public static final int CLB_READBACK_WORD_COUNT_XC2S50
public static final int CLB_READBACK_WORD_COUNT_XC2S100
public static final int CLB_READBACK_WORD_COUNT_XC2S150
public static final int CLB_READBACK_WORD_COUNT_XC2S200
public static final int RAM_FRAME_COUNT
Constructor Detail |
public VirtexBitstreamParams()
public VirtexBitstreamParams(int idcode)
idcode
- The int
representing the type of the Virtex or Spartan2
part. The int
should be an idcode as defined in
XAPP139 page 7 for Virtex or XAPP188 page 6 for Spartan 2 devices.public VirtexBitstreamParams(java.lang.String peTypeStr, int newClbHeaderBits, int newRamHeaderBits, boolean newByteMirrored)
peTypeStr
- The String
representing the type of
the Virtex or Spartan2 part. The String
should have
"Vxxxx" or "2Sxxx" in it, for example a string such as
"XILINX_XCV800" will be recognized as a Virtex 800,
and "XC2S15" will be recognized as a Spartan2-15.newClbHeaderBits
- The number of additional header bits for
CLB readback for the platform; usually
the value is 0.newRamHeaderBits
- The number of additional header bits for
BlockRAM readback for the platform;
usually the value is 0.newByteMirrored
- true
if the LSB of a byte is
addressed as bit 0, false
if
the MSB of a byte is addressed as bit
0.Method Detail |
public void setByteMirrored(boolean isByteMirrored)
byteMirrored
field to the value of the
parameter. As mentioned above, a byte array of the readback
bitstream is considered byte mirrored (byteMirrored
= true) if the LSB of the byte is bit 0 and the MSB is bit 7 when
addressing bits in a byte. Otherwise, the bytes are not byte
mirrored (byteMirrored
= false), meaning bit 0 of
the bytes is the MSB and bit 7 is the LSB.
isByteMirrored
- The byteMirrored
property is
set to this parameter value.public boolean isByteMirrored()
byteMirrored
property,
discussed above.
byteMirrored
property.public void setPEType(int newPeType)
static final
int
"constants" defined earlier.
newPeType
- The integer parameter having a value of
XILINX_????? from the constants provided above.public void setPETypeWithIdcode(int idcode)
idcode
- The 32-bit idcode. The upper 4 bits are
ignored, since they vary between revisions
of the same part & so are not useful.public void setPEType(java.lang.String newPeType)
String
parameter which contains "Vxxx" for a Virtex part and "2Sxxx"
for a Spartan2 part. So, "XCV800" will be recognized as
a Virtex 800, and "xilinx_xc2s200" will be recognized as a Spartan
200.
newPeType
- The String
parameter describing
the part as indicated above.public int getPEType()
getPEType
in class XilinxBitstreamParams
public int getBitstreamLength()
getBitstreamLength
in class XilinxBitstreamParams
public int getBytestreamLength()
getBytestreamLength
in class XilinxBitstreamParams
public int getCLBByteCount()
getCLBByteCount
in class XilinxBitstreamParams
public int getBRAMByteCount()
getBRAMByteCount
in class XilinxBitstreamParams
public void setCLBHeaderBits(int newCLBHeaderBits)
newCLBHeaderBits
- The new length of the header in bits.public int getCLBHeaderBits()
getCLBHeaderBits
in class XilinxBitstreamParams
public void setRAMHeaderBits(int newRAMHeaderBits)
newRAMHeaderBits
- The new length of the BlockRAM header in
bits.public int getRAMHeaderBits()
getRAMHeaderBits
in class XilinxBitstreamParams
public int getRAMFrameCount()
getRAMFrameCount
in class XilinxBitstreamParams
public int getFrameSize()
getFrameSize
in class XilinxBitstreamParams
public int getCLBFrameCount()
getCLBFrameCount
in class XilinxBitstreamParams
public int getBitmapLength()
getBitmapLength
in class XilinxBitstreamParams
public java.lang.String getPart(int idcode)
idcode
- The int
should be an idcode as defined in
XAPP139 page 7 for Virtex or XAPP188 page 6 for Spartan 2 devices.
public int getBlockRAMReadBackWordCount(java.lang.String part)
getBlockRAMReadBackWordCount()
, after setting the
part type with setPEType(String)
or setPEType(int)
or
setPETypeWithIdcode(int)
.
Returns the word count for BlockRAM readback
part
- The String
should be the name of the part, ie
"XCV1000" or "XC2S15".
public int getBlockRAMReadBackWordCount()
getBlockRAMReadBackWordCount
in class XilinxBitstreamParams
public int getBlockRAMPacketHeader(java.lang.String part)
getBlockRAMPacketHeader()
, after setting the
part type with setPEType(String)
or setPEType(int)
or
setPETypeWithIdcode(int)
.
part
- The String
should be the name of the part, ie
"XCV1000" or "XC2S15".
public int getBlockRAMPacketHeader()
getBlockRAMPacketHeader
in class XilinxBitstreamParams
public int getCLBReadBackWordCount()
getCLBReadBackWordCount
in class XilinxBitstreamParams
public int getCLBPacketHeader()
getCLBPacketHeader
in class XilinxBitstreamParams
public java.lang.String toString()
String
reflecting the Xilinx part type of
the PE represented by this object. The string is in the format
"XCV800" for Virtex devices and "XC2S150" for Spartan2 devices.
toString
in class XilinxBitstreamParams
String
representing the part type based on
the part type encodings given above.public static java.lang.String toString(int peType)
String
reflecting the Xilinx part type of
the PE. Note that this is a static
method. The string
is in the format "XCV800" for Virtex devices and "XC2S150" for Spartan2 devices.
peType
- The integer representing the part type.
public static int peType(int idcode)
public static int whichPEType(java.lang.String peTypeStr)
String
should have
"Vxxxx" or "2Sxxx" in it, for example a string such as
"XILINX_XCV800" will be recognized as a Virtex 800,
and "XC2S15" will be recognized as a Spartan2 15.
public int calculateCLBOffset(RBLocation rbl)
rbl
- The RBLocation
object holding the frame
and frame offset location information for a specific
state bit.
public int calculateBRAMOffset(RBLocation rbl)
rbl
- The RBLocation
object holding the frame
and frame offset location information for a specific
state bit.
public int calculateCLBOffset(int frame, int frameOffset)
frame
- The frame number for a specific state bit.frameOffset
- The frame Offset for a specific state bit.
public int calculateBRAMOffset(int frame, int frameOffset)
frame
- The frame number for a specific state bit.frameOffset
- The frame Offset for a specific state bit.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |