restore ArcDelayCalc::reducedParasiticType
Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
parent
e8fc1c17d9
commit
be7c9b2288
|
|
@ -25,15 +25,15 @@ ArcDelayCalc::ArcDelayCalc(StaState *sta):
|
||||||
|
|
||||||
void
|
void
|
||||||
ArcDelayCalc::gateDelay(const TimingArc *arc,
|
ArcDelayCalc::gateDelay(const TimingArc *arc,
|
||||||
const Slew &in_slew,
|
const Slew &in_slew,
|
||||||
float load_cap,
|
float load_cap,
|
||||||
const Parasitic *parasitic,
|
const Parasitic *parasitic,
|
||||||
float,
|
float,
|
||||||
const Pvt *,
|
const Pvt *,
|
||||||
const DcalcAnalysisPt *dcalc_ap,
|
const DcalcAnalysisPt *dcalc_ap,
|
||||||
// Return values.
|
// Return values.
|
||||||
ArcDelay &gate_delay,
|
ArcDelay &gate_delay,
|
||||||
Slew &drvr_slew)
|
Slew &drvr_slew)
|
||||||
{
|
{
|
||||||
LoadPinIndexMap load_pin_index_map(network_);
|
LoadPinIndexMap load_pin_index_map(network_);
|
||||||
ArcDcalcResult dcalc_result = gateDelay(nullptr, arc, in_slew, load_cap, parasitic,
|
ArcDcalcResult dcalc_result = gateDelay(nullptr, arc, in_slew, load_cap, parasitic,
|
||||||
|
|
|
||||||
|
|
@ -117,6 +117,7 @@ public:
|
||||||
Parasitic *findParasitic(const Pin *drvr_pin,
|
Parasitic *findParasitic(const Pin *drvr_pin,
|
||||||
const RiseFall *rf,
|
const RiseFall *rf,
|
||||||
const DcalcAnalysisPt *dcalc_ap) override;
|
const DcalcAnalysisPt *dcalc_ap) override;
|
||||||
|
ReducedParasiticType reducedParasiticType() const override;
|
||||||
ArcDcalcResult inputPortDelay(const Pin *port_pin,
|
ArcDcalcResult inputPortDelay(const Pin *port_pin,
|
||||||
float in_slew,
|
float in_slew,
|
||||||
const RiseFall *rf,
|
const RiseFall *rf,
|
||||||
|
|
@ -297,6 +298,12 @@ ArnoldiDelayCalc::findParasitic(const Pin *drvr_pin,
|
||||||
return parasitic;
|
return parasitic;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ReducedParasiticType
|
||||||
|
ArnoldiDelayCalc::reducedParasiticType() const
|
||||||
|
{
|
||||||
|
return ReducedParasiticType::arnoldi;
|
||||||
|
}
|
||||||
|
|
||||||
ArcDcalcResult
|
ArcDcalcResult
|
||||||
ArnoldiDelayCalc::inputPortDelay(const Pin *,
|
ArnoldiDelayCalc::inputPortDelay(const Pin *,
|
||||||
float in_slew,
|
float in_slew,
|
||||||
|
|
|
||||||
|
|
@ -132,6 +132,7 @@ public:
|
||||||
Parasitic *findParasitic(const Pin *drvr_pin,
|
Parasitic *findParasitic(const Pin *drvr_pin,
|
||||||
const RiseFall *rf,
|
const RiseFall *rf,
|
||||||
const DcalcAnalysisPt *dcalc_ap) override;
|
const DcalcAnalysisPt *dcalc_ap) override;
|
||||||
|
ReducedParasiticType reducedParasiticType() const override;
|
||||||
ArcDcalcResult inputPortDelay(const Pin *port_pin,
|
ArcDcalcResult inputPortDelay(const Pin *port_pin,
|
||||||
float in_slew,
|
float in_slew,
|
||||||
const RiseFall *rf,
|
const RiseFall *rf,
|
||||||
|
|
@ -255,6 +256,12 @@ DmpCeffTwoPoleDelayCalc::findParasitic(const Pin *drvr_pin,
|
||||||
return parasitic;
|
return parasitic;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ReducedParasiticType
|
||||||
|
DmpCeffTwoPoleDelayCalc::reducedParasiticType() const
|
||||||
|
{
|
||||||
|
return ReducedParasiticType::pi_pole_residue2;
|
||||||
|
}
|
||||||
|
|
||||||
ArcDcalcResult
|
ArcDcalcResult
|
||||||
DmpCeffTwoPoleDelayCalc::inputPortDelay(const Pin *,
|
DmpCeffTwoPoleDelayCalc::inputPortDelay(const Pin *,
|
||||||
float in_slew,
|
float in_slew,
|
||||||
|
|
|
||||||
|
|
@ -101,6 +101,12 @@ LumpedCapDelayCalc::findParasitic(const Pin *drvr_pin,
|
||||||
return parasitic;
|
return parasitic;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ReducedParasiticType
|
||||||
|
LumpedCapDelayCalc::reducedParasiticType() const
|
||||||
|
{
|
||||||
|
return ReducedParasiticType::pi_elmore;
|
||||||
|
}
|
||||||
|
|
||||||
ArcDcalcResult
|
ArcDcalcResult
|
||||||
LumpedCapDelayCalc::inputPortDelay(const Pin *,
|
LumpedCapDelayCalc::inputPortDelay(const Pin *,
|
||||||
float in_slew,
|
float in_slew,
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,7 @@ public:
|
||||||
Parasitic *findParasitic(const Pin *drvr_pin,
|
Parasitic *findParasitic(const Pin *drvr_pin,
|
||||||
const RiseFall *rf,
|
const RiseFall *rf,
|
||||||
const DcalcAnalysisPt *dcalc_ap) override;
|
const DcalcAnalysisPt *dcalc_ap) override;
|
||||||
|
ReducedParasiticType reducedParasiticType() const override;
|
||||||
ArcDcalcResult inputPortDelay(const Pin *port_pin,
|
ArcDcalcResult inputPortDelay(const Pin *port_pin,
|
||||||
float in_slew,
|
float in_slew,
|
||||||
const RiseFall *rf,
|
const RiseFall *rf,
|
||||||
|
|
|
||||||
|
|
@ -45,6 +45,12 @@ UnitDelayCalc::findParasitic(const Pin *,
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ReducedParasiticType
|
||||||
|
UnitDelayCalc::reducedParasiticType() const
|
||||||
|
{
|
||||||
|
return ReducedParasiticType::none;
|
||||||
|
}
|
||||||
|
|
||||||
ArcDcalcResult
|
ArcDcalcResult
|
||||||
UnitDelayCalc::inputPortDelay(const Pin *,
|
UnitDelayCalc::inputPortDelay(const Pin *,
|
||||||
float,
|
float,
|
||||||
|
|
|
||||||
|
|
@ -29,6 +29,7 @@ public:
|
||||||
Parasitic *findParasitic(const Pin *drvr_pin,
|
Parasitic *findParasitic(const Pin *drvr_pin,
|
||||||
const RiseFall *rf,
|
const RiseFall *rf,
|
||||||
const DcalcAnalysisPt *dcalc_ap) override;
|
const DcalcAnalysisPt *dcalc_ap) override;
|
||||||
|
ReducedParasiticType reducedParasiticType() const override;
|
||||||
ArcDcalcResult inputPortDelay(const Pin *port_pin,
|
ArcDcalcResult inputPortDelay(const Pin *port_pin,
|
||||||
float in_slew,
|
float in_slew,
|
||||||
const RiseFall *rf,
|
const RiseFall *rf,
|
||||||
|
|
|
||||||
|
|
@ -124,6 +124,7 @@ public:
|
||||||
virtual Parasitic *findParasitic(const Pin *drvr_pin,
|
virtual Parasitic *findParasitic(const Pin *drvr_pin,
|
||||||
const RiseFall *rf,
|
const RiseFall *rf,
|
||||||
const DcalcAnalysisPt *dcalc_ap) = 0;
|
const DcalcAnalysisPt *dcalc_ap) = 0;
|
||||||
|
virtual ReducedParasiticType reducedParasiticType() const = 0;
|
||||||
// Find the wire delays and slews for an input port without a driving cell.
|
// Find the wire delays and slews for an input port without a driving cell.
|
||||||
// This call primarily initializes the load delay/slew iterator.
|
// This call primarily initializes the load delay/slew iterator.
|
||||||
virtual ArcDcalcResult inputPortDelay(const Pin *port_pin,
|
virtual ArcDcalcResult inputPortDelay(const Pin *port_pin,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue