torc-master
|
#include <Virtex7.hpp>
Data Structures | |
class | FrameAddress |
struct | FrameRowDesignator |
Frame row designator: top/bottom flag and row index. More... | |
Public Member Functions | |
Virtex7 (void) | |
Basic Constructor. More... | |
virtual void | initializeDeviceInfo (const std::string &inDeviceName) |
Initialize the Device Information. More... | |
virtual void | initializeFrameMaps (void) |
Initialize the maps between frame indexes and frame addresses. This is generally useful only for internal purposes. More... | |
virtual void | readFramePackets (void) |
Read frame data into the frame blocks structure. More... | |
virtual VirtexPacketVector::iterator | deleteFramePackets (void) |
Discard the existing frame packets and return an iterator to the start position. More... | |
virtual VirtexPacketVector | generateFullBitstreamPackets (void) |
Return a packet vector with full frame data. More... | |
virtual VirtexPacketVector | generateFullBitstreamPrefix (void) |
Return a packet vector with the full bitstream prefix. More... | |
virtual VirtexPacketVector | generateFullBitstreamSuffix (void) |
Return a packet vector with the full bitstream suffix. More... | |
virtual VirtexPacketVector | generatePartialBitstreamPackets (EFrameInclude inFrameInclusion) |
Return a packet vector with partial frame data. More... | |
virtual VirtexPacketVector | generatePartialBitstreamPrefix (EBitstreamType inBitstreamType) |
Return a packet vector with the partial bitstream prefix. More... | |
virtual VirtexPacketVector | generatePartialBitstreamSuffix (EBitstreamType inBitstreamType) |
Return a packet vector with the partial bitstream suffix. More... | |
VirtexFrameBlocks | getBitstreamFrames (EFarTopBottom inTopBottom, uint32_t inFrameRow, uint32_t inBitCol, uint32_t inBlockCount=eBlockTypeCount) |
Returns frames for specified bitstream tile column. inTopBottom The top or bottom half of the device: eFarTop or eFarBottom. inFrameRow The frame or clock region row in the area specified by inTopBottom. inBitCol The bitstream column coordinate (different than the XDL column coordinate). inBlockCount The highest block type requested (8 for Xilinx architectures). More... | |
VirtexFrameBlocks | getBitstreamFrames (uint32_t inBitRow, uint32_t inBitCol, uint32_t &outBeginBit, uint32_t &outEndBit, uint32_t inBlockCount=eBlockTypeCount) |
Returns frames for specified bitstream tile column. inBitRow The bitstream row coordinate (same as the XDL row coordinate). inBitCol The bitstream column coordinate (different than the XDL column coordinate). outBeginBit The bit index of the beginning of the requested tile. outEndBit The bit index of the end of the requested tile. inBlockCount The highest block type requested (8 for Xilinx architectures). More... | |
VirtexFrameBlocks | getXdlFrames (uint32_t inXdlRow, uint32_t inXdlCol, uint32_t &outBeginBit, uint32_t &outEndBit, uint32_t inBlockCount=eBlockTypeCount) |
Returns frames for specified XDL tile coordinates. inXldRow The XDL row coordinate. inXdlCol The XDL column coordinate. outBeginBit The bit index of the beginning of the requested tile. outEndBit The bit index of the end of the requested tile. inBlockCount The highest block type requested (8 for Xilinx architectures). More... | |
uint32_t | getPrimaryXdlColumn (uint32_t inXdlRow, uint32_t inXdlCol) |
Returns the primary column corresponding to the given tile. If the specified tile falls in an INT_L or INT_R tile, this function returns the index of the corresponding primary XDL column. inXdlCol The XDL column coordinate. More... | |
virtual void | splitFrameIndex (uint32_t inFrameIndex, uint32_t &outMajorIndex, uint32_t &outMinorIndex) |
Split the given frame index into the base index of the major frame and the index of the minor frame. More... | |
DEPRECATED void | initializeFullFrameBlocks (void) |
Loads full bitstream frames into block data structure. More... | |
DEPRECATED void | updateFullFrameBlocks (void) |
Transfers frame block data into the full bitstream frame packet. More... | |
virtual uint32_t | getFrameRowCount (void) const |
Return the number of frame rows for the current device. More... | |
virtual uint32_t | getFrameLength (void) const |
Return the frame length for the current device. More... | |
virtual uint32_t | getRowPadFrames (void) const |
Return the number of pad frames after each row. More... | |
virtual void | readPackets (std::istream &inStream) |
Read bitstream packets from a stream. More... | |
virtual void | writePackets (std::ostream &inStream) |
Write bitstream packets to a stream. More... | |
virtual void | updateFramePackets (EBitstreamType inBitstreamType=eBitstreamTypeFull, EFrameInclude inFrameInclusion=eFrameIncludeAllUsedFrames) |
Update the bitstream frame packets By default this updates the bitstream with full frame data. More... | |
virtual void | generateBitstream (EBitstreamType inBitstreamType=eBitstreamTypeFull, EFrameInclude inFrameInclusion=eFrameIncludeAllUsedFrames) |
Discard existing packets and generate bitstream packets from frame data. By default this generates packets for a full bitstream. More... | |
virtual void | preflightPackets (void) |
Preflight the packets. More... | |
virtual void | updatePacketLength (void) |
Update the header packet length. More... | |
iterator | insert (iterator position, const value_type &val) |
Regular std::vector inserter. More... | |
void | insert (iterator position, size_type n, const value_type &val) |
Regular std::vector inserter. More... | |
template<class InputIterator > | |
void | insert (iterator position, InputIterator first, InputIterator last) |
Regular std::vector inserter. More... | |
void | insert (VirtexPacketVector::iterator inPosition, const VirtexPacketVector &inVector) |
Insert the contents of a packet vector at the specified position. More... | |
void | append (const VirtexPacketVector &inVector) |
Append the contents of a packet vector to the end of the bitstream. More... | |
VirtexFrameBlocks & | getFrameBlocks (void) |
Return the configuration frame blocks. More... | |
void | write (std::ostream &inStream, uint8_t inVal) |
Write a uint8_t to the stream. More... | |
void | write (std::ostream &inStream, uint16_t inVal) |
Write a uint16_t to the stream. More... | |
void | write (std::ostream &inStream, uint32_t inVal) |
Write a uint32_t to the stream. More... | |
virtual void | write (std::ostream &inStream) |
Write the bitstream header and packets to a stream. More... | |
void | writeHeaderString (std::ostream &inStream, const string &inString) |
Write a Xilinx-style header string to the stream. More... | |
virtual void | readHeader (std::istream &inStream) |
Read the bitstream header. More... | |
void | cleanDateAndTime (void) |
Clean up the header date and time by replacing embedded spaces with zeros. More... | |
virtual void | writeDeviceInfo (std::ostream &inStream, const std::string &inDeviceName) |
Output static device information to a stream. More... | |
void | setDeviceInfo (const DeviceInfo &rhs) |
Assign static device information for the current bitstream. More... | |
void | setDevice (const std::string &inDeviceName) |
Assign the device enumeration constant for the given device name. More... | |
virtual void | read (std::istream &inStream, bool inCleanDateAndTime=true) |
Read the bitstream header and packets from a stream. More... | |
virtual void | writeHeader (std::ostream &inStream) |
Write the bitstream header to the stream. More... | |
void | setDesignName (const string &inDesignName) |
Set the design name. More... | |
void | setDeviceName (const string &inDeviceName) |
Set the device name. More... | |
void | setDesignDate (const string &inDesignDate) |
Set the design date. More... | |
void | setDesignTime (const string &inDesignTime) |
Set the design time. More... | |
const string & | getDesignName (void) const |
Return the design name. More... | |
const string & | getDeviceName (void) const |
Return the device name. More... | |
const string & | getDesignDate (void) const |
Return the design date. More... | |
const string & | getDesignTime (void) const |
Return the design time. More... | |
uint32_t | getBitstreamByteLength (void) const |
Return the bitstream packet length in bytes. More... | |
uint32_t | getHeaderByteLength (void) const |
Return the bitstream header length in bytes. More... | |
Static Public Member Functions | |
static uint32_t | makeSubfield (ERegister inRegister, const std::string &inSubfield, const std::string &inSetting) |
Return the masked value for a subfield of the specified register. More... | |
static bool | expect (std::istream &inStream, uint8_t inExpected) |
Look for the expected uint8_t in the stream and return true if it matches. More... | |
static bool | expect (std::istream &inStream, uint16_t inExpected) |
Look for the expected uint16_t in the stream and return true if it matches. More... | |
static bool | expect (std::istream &inStream, uint32_t inExpected) |
Look for the expected uint32_t in the stream and return true if it matches. More... | |
static void | readHeaderString (std::istream &inStream, string &outString) |
Read and return a bitstream header string. More... | |
static bool | readHeader (std::istream &inStream, string &outDesignName, string &outDeviceName, string &outDesignDate, string &outDesignTime, uint32_t &outBitstreamLength, uint32_t &outHeaderLength) |
Read a bitstream header, and return its fields. More... | |
static void | writeSubfieldSettings (std::ostream &inStream, uint32_t inWord, const Subfield *inSubfields) |
Insert 32 bit subfield settings into an output stream. More... | |
static void | writeSubfieldSettings (std::ostream &inStream, uint16_t inWord, const Subfield *inSubfields) |
Insert 16 bit subfield settings into an output stream. More... | |
Data Fields | |
EDevice | mDevice |
Bitstream device enumeration. More... | |
string | mDesignName |
Header design name. More... | |
string | mDeviceName |
Header device name. More... | |
string | mDesignDate |
Header design date. More... | |
string | mDesignTime |
Header design time. More... | |
uint32_t | mBitstreamByteLength |
Bitstream packet length in bytes. More... | |
uint32_t | mHeaderByteLength |
Header length in bytes. More... | |
ColumnDefVector | mColumnDefs |
Column type widths. More... | |
TileTypeNameToColumnType | mTileTypeNameToColumnType |
TileTypeIndexToColumnType | mTileTypeIndexToColumnType |
DeviceInfo | mDeviceInfo |
Device information. More... | |
FrameSet< VirtexFrame > | mBlock [Bitstream::eBlockTypeCount] |
FrameSets for each of the eight block types. More... | |
Protected Types | |
typedef boost::uint32_t | uint32_t |
Imported type name. More... | |
typedef std::map< uint32_t, Virtex7::FrameAddress > | FrameIndexToAddress |
Map from frame index to frame address. More... | |
typedef std::map < Virtex7::FrameAddress, uint32_t > | FrameAddressToIndex |
Map from frame address to frame index. More... | |
typedef std::vector< uint32_t > | IndexVector |
Vector of frame indexes. More... | |
typedef std::map< uint32_t, uint32_t > | BitColumnToXdlColumn |
Map from bitstream column index to XDL column index. More... | |
typedef std::vector < FrameRowDesignator > | FrameRowDesignatorVector |
Vector of FrameRowDesignator entries. More... | |
Protected Member Functions | |
void | setRowCounts (const string &inDeviceName) |
Set the number of top and bottom bitstream rows. More... | |
VirtexFrameBlocks | getBitstreamFrames (uint32_t inSerialFrameRow, uint32_t inBitCol, uint32_t inBlockCount=eBlockTypeCount) |
Returns frames for queried bitstream coordinates inSerialFrameRow The frame row as indexed starting from top row zero and incrementing toward the top of the device, and then continuing from bottom row zero and incrementing toward the bottom of the device. More... | |
VirtexFrameBlocks | getXdlFrames (uint32_t inSerialFrameRow, uint32_t inColumnVectorBase, uint32_t inXdlCol, uint32_t inBlockCount=eBlockTypeCount) |
Returns frames for queried XDL coordinates inSerialFrameRow The frame row as indexed starting from top row zero and incrementing toward the top of the device, and then continuing from bottom row zero and incrementing toward the bottom of the device. More... | |
void | unimplemented (std::string inName) |
Reports the named function as not yet implemented in the current architecture. More... | |
virtual void | updateCrc16 (torc::common::DeviceDesignator::EFamily inFamily) |
Update CRC-16 packets. More... | |
virtual void | updateCrc32 (torc::common::DeviceDesignator::EFamily inFamily) |
Update CRC-32 packets. More... | |
template<class ARCH > | |
void | readFramePackets4567 (uint32_t inBlockFrameIndexBounds[], std::map< typename ARCH::FrameAddress, uint32_t > &inFrameAddressToIndex, std::map< uint32_t, typename ARCH::FrameAddress > &inFrameIndexToAddress) |
Read frame packets in for Virtex4/5/6/7 devices. More... | |
template<class ARCH > | |
VirtexPacketVector::iterator | deleteFramePackets4567 (void) |
Discard the existing frame packets for Virtex4/5/6/7 devices. More... | |
template<class ARCH > | |
VirtexPacketVector | generateFullBitstreamPackets4567 (uint32_t inBlockFrameIndexBounds[]) |
Return a packet vector with full frame data for Virtex4/5/6/7 devices. More... | |
template<class ARCH > | |
VirtexPacketVector | generatePartialBitstreamPackets4567 (EFrameInclude inFrameInclusion, std::map< typename ARCH::FrameAddress, uint32_t > &inFrameAddressToIndex, std::map< uint32_t, typename ARCH::FrameAddress > &inFrameIndexToAddress) |
Return a packet vector with partial frame data for Virtex4/5/6/7 devices. More... | |
Static Protected Attributes | |
static const char * | sPacketTypeName [ePacketTypeCount] |
Configuration controller registers. More... | |
static const char * | sOpcodeName [eOpcodeCount] |
Packet Opcode names. More... | |
static const char * | sRegisterName [eRegisterCount] |
Configuration Register names. More... | |
static const char * | sCommandName [eCommandCount] |
Configuration Command names. More... | |
static const Subfield | sCOR0 [] |
Configurations Options Register 0 (COR) subfields. More... | |
static const Subfield | sCOR1 [] |
Configurations Options Register 1 (COR) subfields. More... | |
static const Subfield | sSTAT [] |
Status Register (STAT) subfields. More... | |
static const Subfield | sCTL0 [] |
Control Register 0 (CTL) subfields. More... | |
static const Subfield | sCTL1 [] |
Control Register 1 (CTL) subfields. More... | |
static const Subfield | sMASK0 [] |
Control Mask Register (MASK) subfields. More... | |
static const Subfield | sWBSTAR [] |
Warm Boot Start Address Register (WBSTAR) subfields. More... | |
static const Subfield | sTIMER [] |
Watchdog Timer Register (TIMER) subfields. More... | |
static const Subfield | sBOOTSTS [] |
Boot History Status Register (BOOTSTS) subfields. More... | |
Friends | |
class | torc::bitstream::bitstream::Virtex7UnitTest |
class | torc::bitstream::bitstream::Virtex7FarUnitTest |
class | torc::bitstream::bitstream::Zynq7000DebugUnitTest |
void | torc::bitstream::bitstream::testVirtex7Device (const std::string &inDeviceName, const boost::filesystem::path &inWorkingPath) |
std::ostream & | operator<< (std::ostream &os, const Virtex7 &rhs) |
Insert the bitstream header into and output stream. More... | |
Virtex7 bitstream.
Definition at line 40 of file Virtex7.hpp.
|
protected |
Map from bitstream column index to XDL column index.
Definition at line 395 of file Virtex7.hpp.
|
inherited |
Imported type name.
Definition at line 64 of file bitstream/Bitstream.hpp.
|
inherited |
FrameSet frame type.
Definition at line 83 of file FrameSet.hpp.
|
protected |
Map from frame address to frame index.
Definition at line 391 of file Virtex7.hpp.
|
protected |
Map from frame index to frame address.
Definition at line 389 of file Virtex7.hpp.
|
protected |
Vector of FrameRowDesignator entries.
Definition at line 397 of file Virtex7.hpp.
|
protected |
Vector of frame indexes.
Definition at line 393 of file Virtex7.hpp.
|
inherited |
Imported type name.
Definition at line 60 of file bitstream/Bitstream.hpp.
|
inherited |
Mapping from tile indexes to column types.
Definition at line 254 of file bitstream/Bitstream.hpp.
|
inherited |
Mapping from tile type names to column types.
Definition at line 251 of file bitstream/Bitstream.hpp.
|
inherited |
Imported type name.
Definition at line 62 of file bitstream/Bitstream.hpp.
|
protected |
Imported type name.
Definition at line 49 of file Virtex7.hpp.
|
inherited |
Imported type name.
Definition at line 61 of file bitstream/Bitstream.hpp.
|
inherited |
FrameSet word type.
Definition at line 85 of file FrameSet.hpp.
|
inherited |
The block type count is fixed at eight across all Xilinx architectures.
Enumerator | |
---|---|
eBlockTypeCount |
Definition at line 44 of file bitstream/Bitstream.hpp.
anonymous enum |
Assorted Constants.
Enumerator | |
---|---|
eStartAddr | |
eTimerValue |
Definition at line 89 of file Virtex7.hpp.
anonymous enum |
Frame length.
Constant frame length of 101 32-bit words for the entire Virtex7 family.
Enumerator | |
---|---|
eFrameLength |
Definition at line 103 of file Virtex7.hpp.
anonymous enum |
Number of pad frames after each frame row.
The configuration controller expects two frames of NOPs after each frame row.
Enumerator | |
---|---|
eRowPadFrames |
Definition at line 106 of file Virtex7.hpp.
anonymous enum |
Number of rows in a clock region.
Enumerator | |
---|---|
eClockRegionRows |
Definition at line 108 of file Virtex7.hpp.
|
inherited |
The bitstream type to generate. Use eBitstreamFull to fully reconfigure a device, eBitstreamTypePartialActive to partially reconfigure it while it continues to run, or eBitstreamTypePartialShutdown to partially recongifure it after shutting it down.
Enumerator | |
---|---|
eBitstreamTypeFull | |
eBitstreamTypePartialActive | |
eBitstreamTypePartialShutdown |
Definition at line 49 of file bitstream/Bitstream.hpp.
Major Column Types.
These are defined and used for internal purposes only, and are not derived from any Xilinx documentation.
Definition at line 97 of file Virtex7.hpp.
Configuration register enumeration.
Definition at line 63 of file Virtex7.hpp.
Frame Address Register subfields.
Enumerator | |
---|---|
eFarMaskBlockType | |
eFarShiftBlockType | |
eFarMaskTopBottom | |
eFarShiftTopBottom | |
eFarMaskRow | |
eFarShiftRow | |
eFarMaskMajor | |
eFarShiftMajor | |
eFarMaskMinor | |
eFarShiftMinor |
Definition at line 71 of file Virtex7.hpp.
Frame Address Register block type constants.
Enumerator | |
---|---|
eFarBlockType0 | |
eFarBlockType1 | |
eFarBlockType2 | |
eFarBlockType3 | |
eFarBlockType4 | |
eFarBlockType5 | |
eFarBlockType6 | |
eFarBlockType7 | |
eFarBlockTypeCount |
Definition at line 84 of file Virtex7.hpp.
Frame Address Register top and bottom constants.
Enumerator | |
---|---|
eFarTop | |
eFarBottom |
Definition at line 81 of file Virtex7.hpp.
|
inherited |
The frames to include in a partial bitstream. Use eFrameIncludeOnlyDirtyFrames to include only dirty frames, or eFrameStateAllUsedFrames to include all allocated frames, dirty or not. Note that if not all frames were allocated, eFrameStateAllUsedFrames is not the same as a full bitstream.
Enumerator | |
---|---|
eFrameIncludeOnlyDirtyFrames | |
eFrameIncludeAllUsedFrames |
Definition at line 56 of file bitstream/Bitstream.hpp.
|
inherited |
Packet opcode enumeration.
Enumerator | |
---|---|
eOpcodeNOP | |
eOpcodeRead | |
eOpcodeWrite | |
eOpcodeReserved | |
eOpcodeCount |
Definition at line 45 of file VirtexPacket.hpp.
|
inherited |
Packet subfields.
Definition at line 51 of file VirtexPacket.hpp.
|
inherited |
Packet type enumeration.
Enumerator | |
---|---|
ePacketType1 | |
ePacketType2 | |
ePacketTypeCount |
Definition at line 41 of file VirtexPacket.hpp.
Configuration register enumeration.
Definition at line 55 of file Virtex7.hpp.
|
inherited |
Synchronization words.
Enumerator | |
---|---|
eSynchronizationDummy | |
eSynchronizationSync | |
eSynchronizationBusWidthSync | |
eSynchronizationBusWidthDetect |
Definition at line 67 of file VirtexPacket.hpp.
|
inline |
Basic Constructor.
Definition at line 150 of file Virtex7.hpp.
|
inlineinherited |
Append the contents of a packet vector to the end of the bitstream.
Definition at line 134 of file VirtexBitstream.hpp.
|
inlineinherited |
Clean up the header date and time by replacing embedded spaces with zeros.
Definition at line 183 of file bitstream/Bitstream.hpp.
|
inlinevirtual |
Discard the existing frame packets and return an iterator to the start position.
Reimplemented from torc::bitstream::VirtexBitstream.
Definition at line 229 of file Virtex7.hpp.
|
protectedinherited |
Discard the existing frame packets for Virtex4/5/6/7 devices.
Definition at line 213 of file VirtexBitstream.cpp.
|
inlinestaticinherited |
Look for the expected uint8_t in the stream and return true if it matches.
Definition at line 89 of file bitstream/Bitstream.hpp.
|
inlinestaticinherited |
Look for the expected uint16_t in the stream and return true if it matches.
Definition at line 97 of file bitstream/Bitstream.hpp.
|
inlinestaticinherited |
Look for the expected uint32_t in the stream and return true if it matches.
Definition at line 105 of file bitstream/Bitstream.hpp.
|
virtualinherited |
Discard existing packets and generate bitstream packets from frame data. By default this generates packets for a full bitstream.
inBitstreamType | The type of bitstream to generate: full, active partial, or shutdown partial. |
inFrameInclusion | The type of frames to include in partial bitstreams: only dirty frames or all frames. |
Definition at line 58 of file VirtexBitstream.cpp.
|
inlinevirtual |
Return a packet vector with full frame data.
Reimplemented from torc::bitstream::VirtexBitstream.
Definition at line 233 of file Virtex7.hpp.
|
protectedinherited |
Return a packet vector with full frame data for Virtex4/5/6/7 devices.
Definition at line 287 of file VirtexBitstream.cpp.
|
virtual |
Return a packet vector with the full bitstream prefix.
Reimplemented from torc::bitstream::VirtexBitstream.
Definition at line 847 of file Virtex7.cpp.
|
virtual |
Return a packet vector with the full bitstream suffix.
Reimplemented from torc::bitstream::VirtexBitstream.
Definition at line 980 of file Virtex7.cpp.
|
inlinevirtual |
Return a packet vector with partial frame data.
inFrameInclusion | The type of frames to include: only dirty frames or all frames. |
Reimplemented from torc::bitstream::VirtexBitstream.
Definition at line 242 of file Virtex7.hpp.
|
protectedinherited |
Return a packet vector with partial frame data for Virtex4/5/6/7 devices.
Definition at line 367 of file VirtexBitstream.cpp.
|
virtual |
Return a packet vector with the partial bitstream prefix.
inBitstreamType | The type of partial bitstream to generate: active or shutdown. |
Reimplemented from torc::bitstream::VirtexBitstream.
Definition at line 1057 of file Virtex7.cpp.
|
virtual |
Return a packet vector with the partial bitstream suffix.
inBitstreamType | The type of partial bitstream to generate: active or shutdown. |
Reimplemented from torc::bitstream::VirtexBitstream.
Definition at line 1141 of file Virtex7.cpp.
|
inlineinherited |
Return the bitstream packet length in bytes.
The length includes all packet data, but does not include the bitstream header.
Definition at line 340 of file bitstream/Bitstream.hpp.
VirtexFrameBlocks torc::bitstream::Virtex7::getBitstreamFrames | ( | EFarTopBottom | inTopBottom, |
uint32_t | inFrameRow, | ||
uint32_t | inBitCol, | ||
uint32_t | inBlockCount = eBlockTypeCount |
||
) |
Returns frames for specified bitstream tile column. inTopBottom The top or bottom half of the device: eFarTop or eFarBottom. inFrameRow The frame or clock region row in the area specified by inTopBottom. inBitCol The bitstream column coordinate (different than the XDL column coordinate). inBlockCount The highest block type requested (8 for Xilinx architectures).
Definition at line 1235 of file Virtex7.cpp.
VirtexFrameBlocks torc::bitstream::Virtex7::getBitstreamFrames | ( | uint32_t | inBitRow, |
uint32_t | inBitCol, | ||
uint32_t & | outBeginBit, | ||
uint32_t & | outEndBit, | ||
uint32_t | inBlockCount = eBlockTypeCount |
||
) |
Returns frames for specified bitstream tile column. inBitRow The bitstream row coordinate (same as the XDL row coordinate). inBitCol The bitstream column coordinate (different than the XDL column coordinate). outBeginBit The bit index of the beginning of the requested tile. outEndBit The bit index of the end of the requested tile. inBlockCount The highest block type requested (8 for Xilinx architectures).
Definition at line 1241 of file Virtex7.cpp.
|
protected |
Returns frames for queried bitstream coordinates inSerialFrameRow The frame row as indexed starting from top row zero and incrementing toward the top of the device, and then continuing from bottom row zero and incrementing toward the bottom of the device.
Definition at line 1247 of file Virtex7.cpp.
|
inlineinherited |
Return the design date.
Definition at line 335 of file bitstream/Bitstream.hpp.
|
inlineinherited |
Return the design name.
Definition at line 331 of file bitstream/Bitstream.hpp.
|
inlineinherited |
Return the design time.
Definition at line 337 of file bitstream/Bitstream.hpp.
|
inlineinherited |
Return the device name.
Definition at line 333 of file bitstream/Bitstream.hpp.
|
inlineinherited |
Return the configuration frame blocks.
Definition at line 139 of file VirtexBitstream.hpp.
|
inlinevirtual |
Return the frame length for the current device.
Reimplemented from torc::bitstream::Bitstream.
Definition at line 304 of file Virtex7.hpp.
|
inlinevirtual |
Return the number of frame rows for the current device.
Definition at line 302 of file Virtex7.hpp.
|
inlineinherited |
Return the bitstream header length in bytes.
Definition at line 342 of file bitstream/Bitstream.hpp.
Returns the primary column corresponding to the given tile. If the specified tile falls in an INT_L or INT_R tile, this function returns the index of the corresponding primary XDL column. inXdlCol The XDL column coordinate.
Definition at line 1349 of file Virtex7.cpp.
|
inlinevirtual |
Return the number of pad frames after each row.
Definition at line 306 of file Virtex7.hpp.
VirtexFrameBlocks torc::bitstream::Virtex7::getXdlFrames | ( | uint32_t | inXdlRow, |
uint32_t | inXdlCol, | ||
uint32_t & | outBeginBit, | ||
uint32_t & | outEndBit, | ||
uint32_t | inBlockCount = eBlockTypeCount |
||
) |
Returns frames for specified XDL tile coordinates. inXldRow The XDL row coordinate. inXdlCol The XDL column coordinate. outBeginBit The bit index of the beginning of the requested tile. outEndBit The bit index of the end of the requested tile. inBlockCount The highest block type requested (8 for Xilinx architectures).
Definition at line 1252 of file Virtex7.cpp.
|
protected |
Returns frames for queried XDL coordinates inSerialFrameRow The frame row as indexed starting from top row zero and incrementing toward the top of the device, and then continuing from bottom row zero and incrementing toward the bottom of the device.
Definition at line 1309 of file Virtex7.cpp.
|
virtual |
Initialize the Device Information.
Reimplemented from torc::bitstream::Bitstream.
Definition at line 416 of file Virtex7.cpp.
|
virtual |
Initialize the maps between frame indexes and frame addresses. This is generally useful only for internal purposes.
Reimplemented from torc::bitstream::Bitstream.
Definition at line 710 of file Virtex7.cpp.
void torc::bitstream::Virtex7::initializeFullFrameBlocks | ( | void | ) |
Loads full bitstream frames into block data structure.
Definition at line 1190 of file Virtex7.cpp.
|
inlineinherited |
Regular std::vector inserter.
Definition at line 116 of file VirtexBitstream.hpp.
|
inlineinherited |
Regular std::vector inserter.
Definition at line 120 of file VirtexBitstream.hpp.
|
inlineinherited |
Regular std::vector inserter.
Definition at line 124 of file VirtexBitstream.hpp.
|
inlineinherited |
Insert the contents of a packet vector at the specified position.
Definition at line 129 of file VirtexBitstream.hpp.
|
static |
Return the masked value for a subfield of the specified register.
Definition at line 361 of file Virtex7.cpp.
|
virtualinherited |
Preflight the packets.
Reimplemented from torc::bitstream::Bitstream.
Definition at line 493 of file VirtexBitstream.cpp.
|
inlinevirtualinherited |
Read the bitstream header and packets from a stream.
Definition at line 266 of file bitstream/Bitstream.hpp.
|
inlinevirtual |
Read frame data into the frame blocks structure.
Reimplemented from torc::bitstream::VirtexBitstream.
Definition at line 208 of file Virtex7.hpp.
|
protectedinherited |
Read frame packets in for Virtex4/5/6/7 devices.
Definition at line 101 of file VirtexBitstream.cpp.
|
inlinestaticinherited |
Read a bitstream header, and return its fields.
Definition at line 142 of file bitstream/Bitstream.hpp.
|
inlinevirtualinherited |
Read the bitstream header.
Definition at line 274 of file bitstream/Bitstream.hpp.
|
inlinestaticinherited |
Read and return a bitstream header string.
Definition at line 124 of file bitstream/Bitstream.hpp.
|
virtualinherited |
Read bitstream packets from a stream.
Reimplemented from torc::bitstream::Bitstream.
Reimplemented in torc::bitstream::Virtex2.
Definition at line 31 of file VirtexBitstream.cpp.
|
inlineinherited |
Set the design date.
Definition at line 327 of file bitstream/Bitstream.hpp.
|
inlineinherited |
Set the design name.
Definition at line 323 of file bitstream/Bitstream.hpp.
|
inlineinherited |
Set the design time.
Definition at line 329 of file bitstream/Bitstream.hpp.
|
inlineinherited |
Assign the device enumeration constant for the given device name.
Definition at line 225 of file bitstream/Bitstream.hpp.
|
inlineinherited |
Assign static device information for the current bitstream.
Definition at line 223 of file bitstream/Bitstream.hpp.
|
inlineinherited |
Set the device name.
Definition at line 325 of file bitstream/Bitstream.hpp.
|
protected |
Set the number of top and bottom bitstream rows.
Definition at line 670 of file Virtex7.cpp.
|
inlinevirtual |
Split the given frame index into the base index of the major frame and the index of the minor frame.
Definition at line 285 of file Virtex7.hpp.
|
protectedinherited |
Reports the named function as not yet implemented in the current architecture.
Definition at line 79 of file VirtexBitstream.cpp.
|
protectedvirtualinherited |
Update CRC-16 packets.
Definition at line 509 of file VirtexBitstream.cpp.
|
protectedvirtualinherited |
Update CRC-32 packets.
Definition at line 581 of file VirtexBitstream.cpp.
|
virtualinherited |
Update the bitstream frame packets By default this updates the bitstream with full frame data.
inBitstreamType | The type of bitstream to generate: full or partial. |
inFrameInclusion | The type of frames to include in partial bitstreams: only dirty frames or all frames. |
Definition at line 46 of file VirtexBitstream.cpp.
void torc::bitstream::Virtex7::updateFullFrameBlocks | ( | void | ) |
Transfers frame block data into the full bitstream frame packet.
Definition at line 1211 of file Virtex7.cpp.
|
virtualinherited |
Update the header packet length.
Reimplemented from torc::bitstream::Bitstream.
Definition at line 651 of file VirtexBitstream.cpp.
|
inlineinherited |
Write a uint8_t to the stream.
Definition at line 67 of file bitstream/Bitstream.hpp.
|
inlineinherited |
Write a uint16_t to the stream.
Definition at line 72 of file bitstream/Bitstream.hpp.
|
inlineinherited |
Write a uint32_t to the stream.
Definition at line 77 of file bitstream/Bitstream.hpp.
|
inlinevirtualinherited |
Write the bitstream header and packets to a stream.
Definition at line 280 of file bitstream/Bitstream.hpp.
|
virtualinherited |
Output static device information to a stream.
This is used to generate the static column maps for bitstream frame mapping.
Definition at line 74 of file Bitstream.cpp.
|
inlinevirtualinherited |
Write the bitstream header to the stream.
Definition at line 293 of file bitstream/Bitstream.hpp.
|
inlineinherited |
Write a Xilinx-style header string to the stream.
Definition at line 82 of file bitstream/Bitstream.hpp.
|
virtualinherited |
Write bitstream packets to a stream.
Reimplemented from torc::bitstream::Bitstream.
Definition at line 40 of file VirtexBitstream.cpp.
|
staticinherited |
Insert 32 bit subfield settings into an output stream.
Definition at line 26 of file Bitstream.cpp.
|
staticinherited |
Insert 16 bit subfield settings into an output stream.
Definition at line 50 of file Bitstream.cpp.
|
friend |
Insert the bitstream header into and output stream.
Definition at line 1139 of file bitstream/OutputStreamHelpers.cpp.
|
friend |
|
friend |
Definition at line 42 of file Virtex7.hpp.
|
friend |
Definition at line 41 of file Virtex7.hpp.
|
friend |
Definition at line 43 of file Virtex7.hpp.
|
protected |
Vector to store frame indexes of XDL columns.
Definition at line 417 of file Virtex7.hpp.
|
protected |
Map of bitstream column indexes to XDL column indexes.
Definition at line 423 of file Virtex7.hpp.
|
inherited |
Bitstream packet length in bytes.
This is the length in bytes of all the bitstream packets, without the bitstream header.
Definition at line 242 of file bitstream/Bitstream.hpp.
|
inherited |
FrameSets for each of the eight block types.
Definition at line 88 of file FrameSet.hpp.
|
protected |
Array to hold frame index boundaries for blocks.
Definition at line 421 of file Virtex7.hpp.
|
protected |
The number of bottom bitstream rows.
Definition at line 142 of file Virtex7.hpp.
|
inherited |
Column type widths.
Definition at line 249 of file bitstream/Bitstream.hpp.
|
inherited |
Header design date.
Definition at line 236 of file bitstream/Bitstream.hpp.
|
inherited |
Header design name.
Definition at line 232 of file bitstream/Bitstream.hpp.
|
inherited |
Header design time.
Definition at line 238 of file bitstream/Bitstream.hpp.
|
inherited |
Bitstream device enumeration.
Definition at line 230 of file bitstream/Bitstream.hpp.
|
inherited |
Device information.
Definition at line 257 of file bitstream/Bitstream.hpp.
|
inherited |
Header device name.
Definition at line 234 of file bitstream/Bitstream.hpp.
|
protected |
Map of frame addresses to frame indexes.
Definition at line 415 of file Virtex7.hpp.
|
protectedinherited |
Input Frame blocks.
Definition at line 65 of file VirtexBitstream.hpp.
|
protected |
Map of frame indexes to frame addresses.
Definition at line 413 of file Virtex7.hpp.
|
protected |
Number of frame rows.
Definition at line 425 of file Virtex7.hpp.
|
inherited |
Header length in bytes.
This is the length of the header itself, as opposed to mBitstreamByteLength, which is the length of bitstream reported by the header.
Definition at line 246 of file bitstream/Bitstream.hpp.
|
inherited |
Definition at line 255 of file bitstream/Bitstream.hpp.
|
inherited |
Definition at line 252 of file bitstream/Bitstream.hpp.
|
protected |
The number of top bitstream rows.
Definition at line 140 of file Virtex7.hpp.
|
protected |
Vector to store frame indexes of Bitstream columns.
Definition at line 419 of file Virtex7.hpp.
|
protected |
Vector of FrameRowDesignator entries for each XDL row.
Definition at line 427 of file Virtex7.hpp.
|
staticprotected |
Boot History Status Register (BOOTSTS) subfields.
Definition at line 138 of file Virtex7.hpp.
|
staticprotected |
Configuration Command names.
Definition at line 120 of file Virtex7.hpp.
|
staticprotected |
Configurations Options Register 0 (COR) subfields.
Definition at line 122 of file Virtex7.hpp.
|
staticprotected |
Configurations Options Register 1 (COR) subfields.
Definition at line 124 of file Virtex7.hpp.
|
staticprotected |
Control Register 0 (CTL) subfields.
Definition at line 128 of file Virtex7.hpp.
|
staticprotected |
Control Register 1 (CTL) subfields.
Definition at line 130 of file Virtex7.hpp.
|
staticprotected |
Control Mask Register (MASK) subfields.
Definition at line 132 of file Virtex7.hpp.
|
staticprotected |
Packet Opcode names.
Definition at line 116 of file Virtex7.hpp.
|
staticprotected |
Configuration controller registers.
Packet Type names.
Definition at line 114 of file Virtex7.hpp.
|
staticprotected |
Configuration Register names.
Definition at line 118 of file Virtex7.hpp.
|
staticprotected |
Status Register (STAT) subfields.
Definition at line 126 of file Virtex7.hpp.
|
staticprotected |
Watchdog Timer Register (TIMER) subfields.
Definition at line 136 of file Virtex7.hpp.
|
staticprotected |
Warm Boot Start Address Register (WBSTAR) subfields.
Definition at line 134 of file Virtex7.hpp.