dcalc no slew merge for constant disabled arcs
Signed-off-by: James Cherry <cherry@CerezoBook.local>
This commit is contained in:
parent
e9c075ab94
commit
8b511bc012
|
|
@ -47,6 +47,7 @@
|
||||||
#include "Sdc.hh"
|
#include "Sdc.hh"
|
||||||
#include "Scene.hh"
|
#include "Scene.hh"
|
||||||
#include "SearchPred.hh"
|
#include "SearchPred.hh"
|
||||||
|
#include "search/Sim.hh"
|
||||||
#include "Stats.hh"
|
#include "Stats.hh"
|
||||||
#include "TimingArc.hh"
|
#include "TimingArc.hh"
|
||||||
#include "TimingRole.hh"
|
#include "TimingRole.hh"
|
||||||
|
|
@ -88,8 +89,10 @@ DcalcPred::searchFrom(const Vertex *from_vertex,
|
||||||
const Pin *from_pin = from_vertex->pin();
|
const Pin *from_pin = from_vertex->pin();
|
||||||
const Sdc *sdc = mode->sdc();
|
const Sdc *sdc = mode->sdc();
|
||||||
const Network *network = sta_->network();
|
const Network *network = sta_->network();
|
||||||
|
const Sim *sim = mode->sim();
|
||||||
Net *net = network->net(from_pin);
|
Net *net = network->net(from_pin);
|
||||||
return !(sdc->isDisabledConstraint(from_pin)
|
return !(sdc->isDisabledConstraint(from_pin)
|
||||||
|
|| sim->isConstant(from_vertex)
|
||||||
|| (net && (network->isPower(net)
|
|| (net && (network->isPower(net)
|
||||||
|| network->isGround(net))));
|
|| network->isGround(net))));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -191,6 +191,7 @@ StaSimObserver::StaSimObserver(StaState *sta) :
|
||||||
void
|
void
|
||||||
StaSimObserver::valueChangeAfter(const Pin *pin)
|
StaSimObserver::valueChangeAfter(const Pin *pin)
|
||||||
{
|
{
|
||||||
|
graph_delay_calc_->delayInvalid(pin);
|
||||||
Vertex *vertex = graph_->pinDrvrVertex(pin);
|
Vertex *vertex = graph_->pinDrvrVertex(pin);
|
||||||
if (vertex) {
|
if (vertex) {
|
||||||
search_->arrivalInvalid(vertex);
|
search_->arrivalInvalid(vertex);
|
||||||
|
|
@ -3676,8 +3677,10 @@ void
|
||||||
Sta::delayCalcPreamble()
|
Sta::delayCalcPreamble()
|
||||||
{
|
{
|
||||||
ensureLevelized();
|
ensureLevelized();
|
||||||
for (Mode *mode : modes_)
|
for (Mode *mode : modes_) {
|
||||||
|
mode->sim()->ensureConstantsPropagated();
|
||||||
mode->clkNetwork()->ensureClkNetwork();
|
mode->clkNetwork()->ensureClkNetwork();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue