torc-master
|
Convert an XDL to bitstream by merging the compressed bitstreams from library. More...
#include <algorithm>
#include "Xdl2Bit.h"
#include "torc/packer/Virtex5PrimitiveStructure.hpp"
#include "torc/architecture/DDB.hpp"
#include "torc/common/DirectoryTree.hpp"
#include "torc/Physical.hpp"
#include "torc/Bitstream.hpp"
#include "SharedFunctions.hpp"
Go to the source code of this file.
Functions | |
static std::vector< uint32_t > | gLUTWordsForOne (4, 0xFFFFFFFF) |
void | convertXdlToBitstream (DesignSharedPtr inDesignPtr, Bitstream &outBitstream, const Sites &sites, const Tiles &tiles, TiletypeElementMap &library) |
void | assembleInstances (DesignSharedPtr inDesignPtr, Bitstream &outBitstream, const Sites &sites, const Tiles &tiles, TiletypeElementMap &library) |
void | assembleRambInstance (InstanceSharedPtr instance, Bitstream &outBitstream, VirtexFrameBlocks &frameBlocks, uint32_t wordOffset, TiletypeElementMap &library) |
void | assembleNets (DesignSharedPtr inDesignPtr, Bitstream &outBitstream, const Sites &sites, const Tiles &tiles, TiletypeElementMap &library) |
VirtexFrameBlocks | GetFrameBlocksFromSiteName (Bitstream &inBitstream, const std::string &siteName, const Sites &sites, const Tiles &tiles, uint32_t &outWordOffset) |
VirtexFrameBlocks | GetFrameBlocksFromTileIndex (Bitstream &inBitstream, TileIndex tileIndex, const Tiles &tiles, uint32_t &outWordOffset) |
void | checkValidityAndMergeBitstream (std::string elementName, std::string configVal, const ElementConfigMap &elementMap, VirtexFrameBlocks &frameBlocks, uint32_t wordOffset, Bitstream &outBitstream) |
void | MergeCompressedBitToMainBits (const std::vector< uint32_t > &bitAddresses, Bitstream &outBitstream, VirtexFrameBlocks &frameBlocks, uint32_t wordOffset, uint32_t blockIndex=0) |
void | mergeLutBits (const std::string &elementName, const std::string &configValue, Bitstream &outBitstream, VirtexFrameBlocks &frameBlocks, uint32_t wordOffset, ElementConfigMap &elementMap) |
void | mergeLutRamOrRomBits (const std::string &elementName, const std::string &configVal, Bitstream &outBitstream, VirtexFrameBlocks &frameBlocks, uint32_t wordOffset, TiletypeElementMap &library) |
void | mergeCompoundSettingBits (std::string element1Name, std::string config1Val, InstanceSharedPtr instancePtr, const ElementConfigMap &elementMap, VirtexFrameBlocks &frameBlocks, uint32_t wordOffset, Bitstream &outBitstream) |
void | mergeDspMaskOrPattern (std::string elementName, std::string configVal, InstanceSharedPtr instancePtr, const ElementConfigMap &elementMap, VirtexFrameBlocks &frameBlocks, uint32_t wordOffset, Bitstream &outBitstream) |
void | mergeRambInitBits (const std::string &configVal, uint32_t memoryInitRow, Bitstream &outBitstream, VirtexFrameBlocks &frameBlocks, uint32_t wordOffset, const vector< uint32_t > &bitAddresses, uint32_t block) |
bool | isLutEquationSetting (const std::string &configValue) |
bool | isLutRamOrRomSetting (const std::string &configVal) |
bool | isMemoryInitSetting (const std::string &configName) |
bool | isMemoryParityInitSetting (const std::string &configName) |
bool | siteExistsInLibrary (const std::string &siteType, TiletypeElementMap &library) |
bool | elementAndConfigExistInLibrary (const std::string &elementName, const std::string &configValue, ElementConfigMap &elementMap) |
static TiletypeElementMap | populateLibraryMap (boost::filesystem::path libDBPath) |
int | main (int argc, char **argv) |
Converts XDL file to bitstream by merging primitive bitstreams from library. More... | |
void | PushFrameToStack (std::string literal) |
void | DoBinaryOperation (std::string operation) |
bool | isSiteTypeSupported (const std::string &siteType) |
bool | isRambSite (const std::string &siteType) |
Variables | |
static vector< vector< uint32_t > > | gStackOfFrames |
static uint32_t | gCurrentReferenceFrameIndex |
static uint32_t | gCUrrentReferenceWordIndex |
static ConfigBitMap | gcurrentConfigBitMap |
static std::string | gLUTEquationLeft |
Convert an XDL to bitstream by merging the compressed bitstreams from library.
Definition in file Xdl2Bit.cpp.
void assembleInstances | ( | DesignSharedPtr | inDesignPtr, |
Bitstream & | outBitstream, | ||
const Sites & | sites, | ||
const Tiles & | tiles, | ||
TiletypeElementMap & | library | ||
) |
Definition at line 247 of file Xdl2Bit.cpp.
void assembleNets | ( | DesignSharedPtr | inDesignPtr, |
Bitstream & | outBitstream, | ||
const Sites & | sites, | ||
const Tiles & | tiles, | ||
TiletypeElementMap & | library | ||
) |
Definition at line 418 of file Xdl2Bit.cpp.
void assembleRambInstance | ( | InstanceSharedPtr | instance, |
Bitstream & | outBitstream, | ||
VirtexFrameBlocks & | frameBlocks, | ||
uint32_t | wordOffset, | ||
TiletypeElementMap & | library | ||
) |
Definition at line 328 of file Xdl2Bit.cpp.
void checkValidityAndMergeBitstream | ( | std::string | elementName, |
std::string | configVal, | ||
const ElementConfigMap & | elementMap, | ||
VirtexFrameBlocks & | frameBlocks, | ||
uint32_t | wordOffset, | ||
Bitstream & | outBitstream | ||
) |
Definition at line 495 of file Xdl2Bit.cpp.
void convertXdlToBitstream | ( | DesignSharedPtr | inDesignPtr, |
Bitstream & | outBitstream, | ||
const Sites & | sites, | ||
const Tiles & | tiles, | ||
TiletypeElementMap & | library | ||
) |
Definition at line 230 of file Xdl2Bit.cpp.
void DoBinaryOperation | ( | std::string | operation | ) |
Definition at line 817 of file Xdl2Bit.cpp.
bool elementAndConfigExistInLibrary | ( | const std::string & | elementName, |
const std::string & | configValue, | ||
ElementConfigMap & | elementMap | ||
) |
Definition at line 121 of file Xdl2Bit.cpp.
VirtexFrameBlocks GetFrameBlocksFromSiteName | ( | Bitstream & | inBitstream, |
const std::string & | siteName, | ||
const Sites & | sites, | ||
const Tiles & | tiles, | ||
uint32_t & | outWordOffset | ||
) |
Definition at line 458 of file Xdl2Bit.cpp.
VirtexFrameBlocks GetFrameBlocksFromTileIndex | ( | Bitstream & | inBitstream, |
TileIndex | tileIndex, | ||
const Tiles & | tiles, | ||
uint32_t & | outWordOffset | ||
) |
Definition at line 470 of file Xdl2Bit.cpp.
|
static |
bool isLutEquationSetting | ( | const std::string & | configValue | ) |
bool isLutRamOrRomSetting | ( | const std::string & | configVal | ) |
bool isMemoryInitSetting | ( | const std::string & | configName | ) |
bool isMemoryParityInitSetting | ( | const std::string & | configName | ) |
bool isRambSite | ( | const std::string & | siteType | ) |
bool isSiteTypeSupported | ( | const std::string & | siteType | ) |
int main | ( | int | argc, |
char ** | argv | ||
) |
Converts XDL file to bitstream by merging primitive bitstreams from library.
Definition at line 139 of file Xdl2Bit.cpp.
void mergeCompoundSettingBits | ( | std::string | element1Name, |
std::string | config1Val, | ||
InstanceSharedPtr | instancePtr, | ||
const ElementConfigMap & | elementMap, | ||
VirtexFrameBlocks & | frameBlocks, | ||
uint32_t | wordOffset, | ||
Bitstream & | outBitstream | ||
) |
Definition at line 686 of file Xdl2Bit.cpp.
void MergeCompressedBitToMainBits | ( | const std::vector< uint32_t > & | bitAddresses, |
Bitstream & | outBitstream, | ||
VirtexFrameBlocks & | frameBlocks, | ||
uint32_t | wordOffset, | ||
uint32_t | blockIndex = 0 |
||
) |
Definition at line 518 of file Xdl2Bit.cpp.
void mergeDspMaskOrPattern | ( | std::string | elementName, |
std::string | configVal, | ||
InstanceSharedPtr | instancePtr, | ||
const ElementConfigMap & | elementMap, | ||
VirtexFrameBlocks & | frameBlocks, | ||
uint32_t | wordOffset, | ||
Bitstream & | outBitstream | ||
) |
Definition at line 725 of file Xdl2Bit.cpp.
void mergeLutBits | ( | const std::string & | elementName, |
const std::string & | configValue, | ||
Bitstream & | outBitstream, | ||
VirtexFrameBlocks & | frameBlocks, | ||
uint32_t | wordOffset, | ||
ElementConfigMap & | elementMap | ||
) |
Definition at line 551 of file Xdl2Bit.cpp.
void mergeLutRamOrRomBits | ( | const std::string & | elementName, |
const std::string & | configVal, | ||
Bitstream & | outBitstream, | ||
VirtexFrameBlocks & | frameBlocks, | ||
uint32_t | wordOffset, | ||
TiletypeElementMap & | library | ||
) |
Definition at line 628 of file Xdl2Bit.cpp.
void mergeRambInitBits | ( | const std::string & | configVal, |
uint32_t | memoryInitRow, | ||
Bitstream & | outBitstream, | ||
VirtexFrameBlocks & | frameBlocks, | ||
uint32_t | wordOffset, | ||
const vector< uint32_t > & | bitAddresses, | ||
uint32_t | block | ||
) |
Definition at line 753 of file Xdl2Bit.cpp.
|
static |
Definition at line 888 of file Xdl2Bit.cpp.
void PushFrameToStack | ( | std::string | literal | ) |
Definition at line 784 of file Xdl2Bit.cpp.
bool siteExistsInLibrary | ( | const std::string & | siteType, |
TiletypeElementMap & | library | ||
) |
|
static |
Definition at line 41 of file Xdl2Bit.cpp.
|
static |
Definition at line 37 of file Xdl2Bit.cpp.
|
static |
Definition at line 38 of file Xdl2Bit.cpp.
|
static |
Definition at line 42 of file Xdl2Bit.cpp.
|
static |
Definition at line 36 of file Xdl2Bit.cpp.