Class HSIOTdmDelay

Class Documentation

class HSIOTdmDelay

Public Functions

HSIOTdmDelay()
void setAverageCutDelay(float cutDelayAverage)
void setIOInfo(const vector<vector<vector<int>>> &ioConnArray, const vector<vector<pair<float, float>>> &ratio2delays)
void getIOInfo(vector<vector<vector<int>>> &ioConnArray, vector<vector<pair<float, float>>> &ratio2delays) const
void setCutSizeArray(const vector<vector<int>> &cutSizeArray)
bool isEmptyIO() const
void setupTdmCutDelay()
float getTdmCutDelay(int fpgaNo1, int fpgaNo2) const
float getTdmCutDelay() const
const vector<vector<float>> &getTdmCutArray() const
const vector<vector<int>> &getCutSizeArrayRouting() const
const vector<vector<int>> &getChannelMargin() const
void printTdmArrayInfo() const
void printIOInfo() const
float getIllegalDelay() const
bool isIllegal() const
set<set<int>> getGroupDatas() const
vector<PTNet> &getNetAll()

Public Static Attributes

static float m_defaultDelayMax

Private Functions

void initialChannelMargin()
void setupTdmCutDelayWithNet()
map<int, vector<int>> setupTdmCutDelay(vector<vector<int>> &routingCutArray)
int getMaxConnNum(int fpgaNo1, int fpgaNo2)
float getDirectTdmDelay(float curSize, int fpgaNo1, int fpgaNo2)
float getTdmRatio4Delay(float tdmDelay, int arrayIndex) const
bool updateDissArray()
void updateTdmCutDelayDirectly()
void updateTdmCutDelayRouting(const vector<vector<set<vector<int>>>> &routedPaths)

Private Members

vector<vector<vector<int>>> m_ioConnArray
vector<vector<pair<float, float>>> m_ratio2delays
vector<vector<int>> m_cutSizeArray
vector<vector<int>> m_cutSizeArrayRouting
vector<PTNet> m_netAll
int m_cutSize = 0
vector<vector<int>> m_channelMargin
int m_marginAll = 0
float m_cutDelayAverage = 100
vector<vector<float>> m_tdmCutDelay
vector<vector<int>> m_curConnectionSize
bool m_bIllegal = false