byucc.jhdl.platforms.util.readback.Xilinx.Virtex
Class VirtexXpressBitstreamParams

java.lang.Object
  extended bybyucc.jhdl.platforms.util.readback.Xilinx.XilinxBitstreamParams
      extended bybyucc.jhdl.platforms.util.readback.Xilinx.Virtex.VirtexBitstreamParams
          extended bybyucc.jhdl.platforms.util.readback.Xilinx.Virtex.VirtexXpressBitstreamParams

public class VirtexXpressBitstreamParams
extends VirtexBitstreamParams


Field Summary
static int COLUMN_COUNT_XC2S100
           
static int COLUMN_COUNT_XC2S15
           
static int COLUMN_COUNT_XC2S150
           
static int COLUMN_COUNT_XC2S200
           
static int COLUMN_COUNT_XC2S30
           
static int COLUMN_COUNT_XC2S50
           
static int COLUMN_COUNT_XCV100
           
static int COLUMN_COUNT_XCV1000
           
static int COLUMN_COUNT_XCV150
           
static int COLUMN_COUNT_XCV200
           
static int COLUMN_COUNT_XCV300
           
static int COLUMN_COUNT_XCV400
           
static int COLUMN_COUNT_XCV50
          The column count for the different part types
static int COLUMN_COUNT_XCV600
           
static int COLUMN_COUNT_XCV800
           
static int DATA_UNKNOWN
           
static int F_TYPE_LUT
           
static int G_TYPE_LUT
           
static int I_TYPE_IOB
           
static int O_TYPE_IOB
           
static int ROW_COUNT_XC2S100
           
static int ROW_COUNT_XC2S15
           
static int ROW_COUNT_XC2S150
           
static int ROW_COUNT_XC2S200
           
static int ROW_COUNT_XC2S30
           
static int ROW_COUNT_XC2S50
           
static int ROW_COUNT_XCV100
           
static int ROW_COUNT_XCV1000
           
static int ROW_COUNT_XCV150
           
static int ROW_COUNT_XCV200
           
static int ROW_COUNT_XCV300
           
static int ROW_COUNT_XCV400
           
static int ROW_COUNT_XCV50
          The row count for the different part types
static int ROW_COUNT_XCV600
           
static int ROW_COUNT_XCV800
           
static int T_TYPE_IOB
           
static int X_TYPE_FF
           
static int Y_TYPE_FF
           
 
Fields inherited from class byucc.jhdl.platforms.util.readback.Xilinx.Virtex.VirtexBitstreamParams
BITMAP_LENGTH_UNKNOWN, BITMAP_LENGTH_XC2S100, BITMAP_LENGTH_XC2S15, BITMAP_LENGTH_XC2S150, BITMAP_LENGTH_XC2S200, BITMAP_LENGTH_XC2S30, BITMAP_LENGTH_XC2S50, BITMAP_LENGTH_XCV100, BITMAP_LENGTH_XCV1000, BITMAP_LENGTH_XCV150, BITMAP_LENGTH_XCV200, BITMAP_LENGTH_XCV300, BITMAP_LENGTH_XCV400, BITMAP_LENGTH_XCV50, BITMAP_LENGTH_XCV600, BITMAP_LENGTH_XCV800, BLOCKRAM_READBACK_WORD_COUNT_UNKNOWN, BLOCKRAM_READBACK_WORD_COUNT_XC2S100, BLOCKRAM_READBACK_WORD_COUNT_XC2S15, BLOCKRAM_READBACK_WORD_COUNT_XC2S150, BLOCKRAM_READBACK_WORD_COUNT_XC2S200, BLOCKRAM_READBACK_WORD_COUNT_XC2S30, BLOCKRAM_READBACK_WORD_COUNT_XC2S50, BLOCKRAM_READBACK_WORD_COUNT_XCV100, BLOCKRAM_READBACK_WORD_COUNT_XCV1000, BLOCKRAM_READBACK_WORD_COUNT_XCV150, BLOCKRAM_READBACK_WORD_COUNT_XCV200, BLOCKRAM_READBACK_WORD_COUNT_XCV300, BLOCKRAM_READBACK_WORD_COUNT_XCV400, BLOCKRAM_READBACK_WORD_COUNT_XCV50, BLOCKRAM_READBACK_WORD_COUNT_XCV600, BLOCKRAM_READBACK_WORD_COUNT_XCV800, BLOCKRAM_TYPE2_PACKET_HEADER_UNKNOWN, BLOCKRAM_TYPE2_PACKET_HEADER_XC2S100, BLOCKRAM_TYPE2_PACKET_HEADER_XC2S15, BLOCKRAM_TYPE2_PACKET_HEADER_XC2S150, BLOCKRAM_TYPE2_PACKET_HEADER_XC2S200, BLOCKRAM_TYPE2_PACKET_HEADER_XC2S30, BLOCKRAM_TYPE2_PACKET_HEADER_XC2S50, BLOCKRAM_TYPE2_PACKET_HEADER_XCV100, BLOCKRAM_TYPE2_PACKET_HEADER_XCV1000, BLOCKRAM_TYPE2_PACKET_HEADER_XCV150, BLOCKRAM_TYPE2_PACKET_HEADER_XCV200, BLOCKRAM_TYPE2_PACKET_HEADER_XCV300, BLOCKRAM_TYPE2_PACKET_HEADER_XCV400, BLOCKRAM_TYPE2_PACKET_HEADER_XCV50, BLOCKRAM_TYPE2_PACKET_HEADER_XCV600, BLOCKRAM_TYPE2_PACKET_HEADER_XCV800, BYTE_SIZE, CLB_FRAME_COUNT_UNKNOWN, CLB_FRAME_COUNT_XC2S100, CLB_FRAME_COUNT_XC2S15, CLB_FRAME_COUNT_XC2S150, CLB_FRAME_COUNT_XC2S200, CLB_FRAME_COUNT_XC2S30, CLB_FRAME_COUNT_XC2S50, CLB_FRAME_COUNT_XCV100, CLB_FRAME_COUNT_XCV1000, CLB_FRAME_COUNT_XCV150, CLB_FRAME_COUNT_XCV200, CLB_FRAME_COUNT_XCV300, CLB_FRAME_COUNT_XCV400, CLB_FRAME_COUNT_XCV50, CLB_FRAME_COUNT_XCV600, CLB_FRAME_COUNT_XCV800, CLB_READBACK_WORD_COUNT_UNKNOWN, CLB_READBACK_WORD_COUNT_XC2S100, CLB_READBACK_WORD_COUNT_XC2S15, CLB_READBACK_WORD_COUNT_XC2S150, CLB_READBACK_WORD_COUNT_XC2S200, CLB_READBACK_WORD_COUNT_XC2S30, CLB_READBACK_WORD_COUNT_XC2S50, CLB_READBACK_WORD_COUNT_XCV100, CLB_READBACK_WORD_COUNT_XCV1000, CLB_READBACK_WORD_COUNT_XCV150, CLB_READBACK_WORD_COUNT_XCV200, CLB_READBACK_WORD_COUNT_XCV300, CLB_READBACK_WORD_COUNT_XCV400, CLB_READBACK_WORD_COUNT_XCV50, CLB_READBACK_WORD_COUNT_XCV600, CLB_READBACK_WORD_COUNT_XCV800, CLB_TYPE2_PACKET_HEADER_UNKNOWN, CLB_TYPE2_PACKET_HEADER_XC2S100, CLB_TYPE2_PACKET_HEADER_XC2S15, CLB_TYPE2_PACKET_HEADER_XC2S150, CLB_TYPE2_PACKET_HEADER_XC2S200, CLB_TYPE2_PACKET_HEADER_XC2S30, CLB_TYPE2_PACKET_HEADER_XC2S50, CLB_TYPE2_PACKET_HEADER_XCV100, CLB_TYPE2_PACKET_HEADER_XCV1000, CLB_TYPE2_PACKET_HEADER_XCV150, CLB_TYPE2_PACKET_HEADER_XCV200, CLB_TYPE2_PACKET_HEADER_XCV300, CLB_TYPE2_PACKET_HEADER_XCV400, CLB_TYPE2_PACKET_HEADER_XCV50, CLB_TYPE2_PACKET_HEADER_XCV600, CLB_TYPE2_PACKET_HEADER_XCV800, CONFIG_FRAME_COUNT_UNKNOWN, CONFIG_FRAME_COUNT_XC2S100, CONFIG_FRAME_COUNT_XC2S15, CONFIG_FRAME_COUNT_XC2S150, CONFIG_FRAME_COUNT_XC2S200, CONFIG_FRAME_COUNT_XC2S30, CONFIG_FRAME_COUNT_XC2S50, CONFIG_FRAME_COUNT_XCV100, CONFIG_FRAME_COUNT_XCV1000, CONFIG_FRAME_COUNT_XCV150, CONFIG_FRAME_COUNT_XCV200, CONFIG_FRAME_COUNT_XCV300, CONFIG_FRAME_COUNT_XCV400, CONFIG_FRAME_COUNT_XCV50, CONFIG_FRAME_COUNT_XCV600, CONFIG_FRAME_COUNT_XCV800, FRAME_SIZE_UNKNOWN, FRAME_SIZE_XC2S100, FRAME_SIZE_XC2S15, FRAME_SIZE_XC2S150, FRAME_SIZE_XC2S200, FRAME_SIZE_XC2S30, FRAME_SIZE_XC2S50, FRAME_SIZE_XCV100, FRAME_SIZE_XCV1000, FRAME_SIZE_XCV150, FRAME_SIZE_XCV200, FRAME_SIZE_XCV300, FRAME_SIZE_XCV400, FRAME_SIZE_XCV50, FRAME_SIZE_XCV600, FRAME_SIZE_XCV800, IDCODE_UNKNOWN, IDCODE_XC2S100, IDCODE_XC2S15, IDCODE_XC2S150, IDCODE_XC2S200, IDCODE_XC2S30, IDCODE_XC2S50, IDCODE_XCV100, IDCODE_XCV1000, IDCODE_XCV150, IDCODE_XCV200, IDCODE_XCV300, IDCODE_XCV400, IDCODE_XCV50, IDCODE_XCV600, IDCODE_XCV800, PAD_WORD_SIZE, RAM_FRAME_COUNT, WORD_SIZE, XILINX_UNKNOWN, XILINX_XC2S100, XILINX_XC2S15, XILINX_XC2S150, XILINX_XC2S200, XILINX_XC2S30, XILINX_XC2S50, XILINX_XCV100, XILINX_XCV1000, XILINX_XCV150, XILINX_XCV200, XILINX_XCV300, XILINX_XCV400, XILINX_XCV50, XILINX_XCV600, XILINX_XCV800
 
Constructor Summary
VirtexXpressBitstreamParams()
           
VirtexXpressBitstreamParams(int idcode)
           
VirtexXpressBitstreamParams(java.lang.String part_type_string)
           
 
Method Summary
 int getBitstreamLength()
          Returns the bitstream length in terms of bits based on the declared PE type and header lengths in bits.
 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 getColumnCount()
           
 int getRowCount()
           
 int getXpressBRAMOffset(int offset)
           
 int getXpressFFOffset(java.lang.String location, int xy)
           
 int getXpressIOBOffset(java.lang.String location, int type)
           
 int getXpressLUTOffset(java.lang.String location, int fg, int lut_bit)
           
 void setPEType(int part_type)
          Sets the value of the PE type using the static final int "constants" defined earlier.
 void setPEType(java.lang.String part_type)
          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.
 
Methods inherited from class byucc.jhdl.platforms.util.readback.Xilinx.Virtex.VirtexBitstreamParams
calculateBRAMOffset, calculateBRAMOffset, calculateCLBOffset, calculateCLBOffset, getBitmapLength, getBlockRAMPacketHeader, getBlockRAMPacketHeader, getBlockRAMReadBackWordCount, getBlockRAMReadBackWordCount, getCLBFrameCount, getCLBHeaderBits, getCLBPacketHeader, getCLBReadBackWordCount, getFrameSize, getPart, getPEType, getRAMFrameCount, getRAMHeaderBits, isByteMirrored, peType, setByteMirrored, setCLBHeaderBits, setRAMHeaderBits, toString, toString, whichPEType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ROW_COUNT_XCV50

public static final int ROW_COUNT_XCV50
The row count for the different part types

See Also:
Constant Field Values

ROW_COUNT_XCV100

public static final int ROW_COUNT_XCV100
See Also:
Constant Field Values

ROW_COUNT_XCV150

public static final int ROW_COUNT_XCV150
See Also:
Constant Field Values

ROW_COUNT_XCV200

public static final int ROW_COUNT_XCV200
See Also:
Constant Field Values

ROW_COUNT_XCV300

public static final int ROW_COUNT_XCV300
See Also:
Constant Field Values

ROW_COUNT_XCV400

public static final int ROW_COUNT_XCV400
See Also:
Constant Field Values

ROW_COUNT_XCV600

public static final int ROW_COUNT_XCV600
See Also:
Constant Field Values

ROW_COUNT_XCV800

public static final int ROW_COUNT_XCV800
See Also:
Constant Field Values

ROW_COUNT_XCV1000

public static final int ROW_COUNT_XCV1000
See Also:
Constant Field Values

ROW_COUNT_XC2S15

public static final int ROW_COUNT_XC2S15
See Also:
Constant Field Values

ROW_COUNT_XC2S30

public static final int ROW_COUNT_XC2S30
See Also:
Constant Field Values

ROW_COUNT_XC2S50

public static final int ROW_COUNT_XC2S50
See Also:
Constant Field Values

ROW_COUNT_XC2S100

public static final int ROW_COUNT_XC2S100
See Also:
Constant Field Values

ROW_COUNT_XC2S150

public static final int ROW_COUNT_XC2S150
See Also:
Constant Field Values

ROW_COUNT_XC2S200

public static final int ROW_COUNT_XC2S200
See Also:
Constant Field Values

COLUMN_COUNT_XCV50

public static final int COLUMN_COUNT_XCV50
The column count for the different part types

See Also:
Constant Field Values

COLUMN_COUNT_XCV100

public static final int COLUMN_COUNT_XCV100
See Also:
Constant Field Values

COLUMN_COUNT_XCV150

public static final int COLUMN_COUNT_XCV150
See Also:
Constant Field Values

COLUMN_COUNT_XCV200

public static final int COLUMN_COUNT_XCV200
See Also:
Constant Field Values

COLUMN_COUNT_XCV300

public static final int COLUMN_COUNT_XCV300
See Also:
Constant Field Values

COLUMN_COUNT_XCV400

public static final int COLUMN_COUNT_XCV400
See Also:
Constant Field Values

COLUMN_COUNT_XCV600

public static final int COLUMN_COUNT_XCV600
See Also:
Constant Field Values

COLUMN_COUNT_XCV800

public static final int COLUMN_COUNT_XCV800
See Also:
Constant Field Values

COLUMN_COUNT_XCV1000

public static final int COLUMN_COUNT_XCV1000
See Also:
Constant Field Values

COLUMN_COUNT_XC2S15

public static final int COLUMN_COUNT_XC2S15
See Also:
Constant Field Values

COLUMN_COUNT_XC2S30

public static final int COLUMN_COUNT_XC2S30
See Also:
Constant Field Values

COLUMN_COUNT_XC2S50

public static final int COLUMN_COUNT_XC2S50
See Also:
Constant Field Values

COLUMN_COUNT_XC2S100

public static final int COLUMN_COUNT_XC2S100
See Also:
Constant Field Values

COLUMN_COUNT_XC2S150

public static final int COLUMN_COUNT_XC2S150
See Also:
Constant Field Values

COLUMN_COUNT_XC2S200

public static final int COLUMN_COUNT_XC2S200
See Also:
Constant Field Values

DATA_UNKNOWN

public static final int DATA_UNKNOWN
See Also:
Constant Field Values

X_TYPE_FF

public static final int X_TYPE_FF
See Also:
Constant Field Values

Y_TYPE_FF

public static final int Y_TYPE_FF
See Also:
Constant Field Values

F_TYPE_LUT

public static final int F_TYPE_LUT
See Also:
Constant Field Values

G_TYPE_LUT

public static final int G_TYPE_LUT
See Also:
Constant Field Values

O_TYPE_IOB

public static final int O_TYPE_IOB
See Also:
Constant Field Values

I_TYPE_IOB

public static final int I_TYPE_IOB
See Also:
Constant Field Values

T_TYPE_IOB

public static final int T_TYPE_IOB
See Also:
Constant Field Values
Constructor Detail

VirtexXpressBitstreamParams

public VirtexXpressBitstreamParams()

VirtexXpressBitstreamParams

public VirtexXpressBitstreamParams(int idcode)

VirtexXpressBitstreamParams

public VirtexXpressBitstreamParams(java.lang.String part_type_string)
Method Detail

setPEType

public void setPEType(int part_type)
Description copied from class: VirtexBitstreamParams
Sets the value of the PE type using the static final int "constants" defined earlier.

Overrides:
setPEType in class VirtexBitstreamParams
Parameters:
part_type - The integer parameter having a value of XILINX_????? from the constants provided above.

setPETypeWithIdcode

public void setPETypeWithIdcode(int idcode)
Description copied from class: VirtexBitstreamParams
Sets the value of the PE type using the Xilinx defined idcodes from XAPP139 page 7 or XAPP188 page 6.

Overrides:
setPETypeWithIdcode in class VirtexBitstreamParams
Parameters:
idcode - The 32-bit idcode. The upper 4 bits are ignored, since they vary between revisions of the same part & so are not useful.

setPEType

public void setPEType(java.lang.String part_type)
Description copied from class: VirtexBitstreamParams
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. So, "XCV800" will be recognized as a Virtex 800, and "xilinx_xc2s200" will be recognized as a Spartan 200.

Overrides:
setPEType in class VirtexBitstreamParams
Parameters:
part_type - The String parameter describing the part as indicated above.

getBitstreamLength

public int getBitstreamLength()
Description copied from class: VirtexBitstreamParams
Returns the bitstream length in terms of bits based on the declared PE type and header lengths in bits.

Overrides:
getBitstreamLength in class VirtexBitstreamParams
Returns:
The length of the bitstream in bits.

getBytestreamLength

public int getBytestreamLength()
Description copied from class: VirtexBitstreamParams
Returns the bitstream length in terms of bytes based on the declared PE type and header lengths in bits.

Overrides:
getBytestreamLength in class VirtexBitstreamParams
Returns:
The length of the bitstream in bytes, rounded up to the next byte if the length does not end exactly on a byte boundary.

getCLBByteCount

public int getCLBByteCount()
Overrides:
getCLBByteCount in class VirtexBitstreamParams

getBRAMByteCount

public int getBRAMByteCount()
Overrides:
getBRAMByteCount in class VirtexBitstreamParams

getRowCount

public int getRowCount()

getColumnCount

public int getColumnCount()

getXpressFFOffset

public int getXpressFFOffset(java.lang.String location,
                             int xy)

getXpressLUTOffset

public int getXpressLUTOffset(java.lang.String location,
                              int fg,
                              int lut_bit)

getXpressIOBOffset

public int getXpressIOBOffset(java.lang.String location,
                              int type)

getXpressBRAMOffset

public int getXpressBRAMOffset(int offset)


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