oagTimer::DP Class Reference

#include <oagTimerDP.h>

Collaboration diagram for oagTimer::DP:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 DP (oaDesign *d, Timer *t)
 ~DP ()
void run ()

Private Member Functions

void DpRelaxation ()
void DpRestoration ()
oaString getSolution (CellData *c)
oaString resolveInconsistency (CellData *c)
void mergeFanoutSolutions (oaOccInstTerm *outPin)
void merge (oaOccInstTerm *outPin, oaIter< oaOccInstTerm > itIter, DPData *d)
void pruneSolutions (vector< DPData * > &d)
void copyDPData (DPData *src, DPData *dst)
void copyVecData (vector< DPData * > &src, vector< DPData * > &dst)
double getMaxArr (oaOccInstTerm *in, oaString prospSize)
void clearDPDataVec (vector< DPData * > &vec)
void clearDPData (DPData *v)
void printMap (map< oaOccInstTerm *, oaString > m)
void printDPData (vector< DPData * > d)
void printDPGraph ()

Private Attributes

oaDesign * design
Timertiming
vector< oaModInst * > G
map< oaModInst *, oaString > currSizing
map< oaModInst *, oaString > bestDesign
bool iterRefine
map< oaOccInst *, oaString > dpSolutions
bool flag
int count
double targetDelay

Constructor & Destructor Documentation

oagTimer::DP::DP oaDesign *  d,
Timer t
 

oagTimer::DP::~DP  ) 
 


Member Function Documentation

void oagTimer::DP::clearDPData DPData v  )  [private]
 

void oagTimer::DP::clearDPDataVec vector< DPData * > &  vec  )  [private]
 

Here is the call graph for this function:

void oagTimer::DP::copyDPData DPData src,
DPData dst
[private]
 

Copy all data in DPData structure from source to destination

Parameters:
DPATA*: the source data structure
DPATA*: the destination data structure

void oagTimer::DP::copyVecData vector< DPData * > &  src,
vector< DPData * > &  dst
[private]
 

void oagTimer::DP::DpRelaxation  )  [private]
 

Here is the call graph for this function:

void oagTimer::DP::DpRestoration  )  [private]
 

Here is the call graph for this function:

double oagTimer::DP::getMaxArr oaOccInstTerm *  in,
oaString  prospSize
[private]
 

This function is used only in DP to query the max arrival time to the given input arc (in) from the fanin instance based on the given cellsize of the input arc's instance

Parameters:
oaOccInstTerm*: instance input arc
oaString: prospective size of the instance;

oaString oagTimer::DP::getSolution CellData c  )  [private]
 

Here is the call graph for this function:

void oagTimer::DP::merge oaOccInstTerm *  outPin,
oaIter< oaOccInstTerm >  itIter,
DPData d
[private]
 

void oagTimer::DP::mergeFanoutSolutions oaOccInstTerm *  outPin  )  [private]
 

Here is the call graph for this function:

void oagTimer::DP::printDPData vector< DPData * >  d  )  [private]
 

void oagTimer::DP::printDPGraph  )  [private]
 

Here is the call graph for this function:

void oagTimer::DP::printMap map< oaOccInstTerm *, oaString >  m  )  [private]
 

void oagTimer::DP::pruneSolutions vector< DPData * > &  d  )  [private]
 

Here is the call graph for this function:

oaString oagTimer::DP::resolveInconsistency CellData c  )  [private]
 

Here is the call graph for this function:

void oagTimer::DP::run  ) 
 

Here is the call graph for this function:


Member Data Documentation

map<oaModInst*,oaString> oagTimer::DP::bestDesign [private]
 

int oagTimer::DP::count [private]
 

map<oaModInst*,oaString> oagTimer::DP::currSizing [private]
 

oaDesign* oagTimer::DP::design [private]
 

map<oaOccInst*, oaString> oagTimer::DP::dpSolutions [private]
 

bool oagTimer::DP::flag [private]
 

vector<oaModInst*> oagTimer::DP::G [private]
 

bool oagTimer::DP::iterRefine [private]
 

double oagTimer::DP::targetDelay [private]
 

Timer* oagTimer::DP::timing [private]
 


The documentation for this class was generated from the following files:
Generated on Thu Aug 25 14:25:01 2011 by  doxygen 1.3.9.1