LATQ.h revision 10447
112855Sgabeblack@google.com#ifndef __DSENT_MODEL_STD_CELLS_LATQ_H__ 212855Sgabeblack@google.com#define __DSENT_MODEL_STD_CELLS_LATQ_H__ 312855Sgabeblack@google.com 412855Sgabeblack@google.com#include "util/CommonType.h" 512855Sgabeblack@google.com#include "model/std_cells/StdCell.h" 612855Sgabeblack@google.com 712855Sgabeblack@google.comnamespace DSENT 812855Sgabeblack@google.com{ 912855Sgabeblack@google.com class LATQ : public StdCell 1012855Sgabeblack@google.com { 1112855Sgabeblack@google.com // A DQ flip-flop 1212855Sgabeblack@google.com public: 1312855Sgabeblack@google.com LATQ(const String& instance_name_, const TechModel* tech_model_); 1412855Sgabeblack@google.com virtual ~LATQ(); 1512855Sgabeblack@google.com 1612855Sgabeblack@google.com public: 1712855Sgabeblack@google.com // Set a list of properties' name needed to construct model 1812855Sgabeblack@google.com void initProperties(); 1912855Sgabeblack@google.com // Cache the standard cell 2012855Sgabeblack@google.com void cacheStdCell(StdCellLib* cell_lib_, double drive_strength_); 2112855Sgabeblack@google.com 2212855Sgabeblack@google.com protected: 2312855Sgabeblack@google.com // Build the model 2412855Sgabeblack@google.com virtual void constructModel(); 2512855Sgabeblack@google.com virtual void updateModel(); 2612855Sgabeblack@google.com virtual void evaluateModel(); 2712855Sgabeblack@google.com virtual void useModel(); 2812855Sgabeblack@google.com virtual void propagateTransitionInfo(); 2912855Sgabeblack@google.com 3012855Sgabeblack@google.com }; // class LATQ 3112855Sgabeblack@google.com} // namespace DSENT 3212855Sgabeblack@google.com 3312855Sgabeblack@google.com#endif // __DSENT_MODEL_STD_CELLS_LATQ_H__ 3412855Sgabeblack@google.com 3512855Sgabeblack@google.com