ElectricalDelay.cc revision 10447
11060SN/A 22702SN/A#include "model/timing_graph/ElectricalDelay.h" 31060SN/A#include "model/timing_graph/ElectricalLoad.h" 41060SN/A 51060SN/Anamespace DSENT 61060SN/A{ 71060SN/A //------------------------------------------------------------------------- 81060SN/A // Electrical Delay 91060SN/A //------------------------------------------------------------------------- 101060SN/A 111060SN/A ElectricalDelay::ElectricalDelay(const String& instance_name_, ElectricalModel* model_) 121060SN/A : ElectricalTimingNode(instance_name_, model_), m_delay_(0.0) 131060SN/A { 141060SN/A 151060SN/A } 161060SN/A 171060SN/A ElectricalDelay::~ElectricalDelay() 181060SN/A { 191060SN/A 201060SN/A } 211060SN/A 221060SN/A void ElectricalDelay::setDelay(double delay_) 231060SN/A { 241060SN/A m_delay_ = delay_; 251060SN/A return; 261060SN/A } 272665SN/A 282665SN/A double ElectricalDelay::getDelay() const 291060SN/A { 301060SN/A return m_delay_; 311060SN/A } 322292SN/A 331060SN/A double ElectricalDelay::calculateDelay() const 341060SN/A { 351060SN/A return m_delay_; 361060SN/A } 371061SN/A 381060SN/A double ElectricalDelay::calculateTransition() const 392980Sgblack@eecs.umich.edu { 401060SN/A return 1.386 * getMaxUpstreamRes() * getTotalDownstreamCap(); 412669SN/A } 421060SN/A 431060SN/A double ElectricalDelay::getMaxUpstreamRes() const 441060SN/A { 451060SN/A return ElectricalTimingNode::getMaxUpstreamRes(); 461060SN/A } 471060SN/A 481060SN/A double ElectricalDelay::getTotalDownstreamCap() const 491060SN/A { 501060SN/A return ElectricalTimingNode::getTotalDownstreamCap(); 511060SN/A } 522292SN/A 532292SN/A} // namespace DSENT 541060SN/A 552292SN/A 561060SN/A