Sta::removeNetLoadCaps()
Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
parent
cc2ef1783f
commit
5fbe059b61
|
|
@ -583,6 +583,8 @@ public:
|
||||||
float cap);
|
float cap);
|
||||||
static void movePortExtCaps(Sdc *from,
|
static void movePortExtCaps(Sdc *from,
|
||||||
Sdc *to);
|
Sdc *to);
|
||||||
|
// Remove all "set_load net" annotations.
|
||||||
|
void removeNetLoadCaps();
|
||||||
void setNetWireCap(const Net *net,
|
void setNetWireCap(const Net *net,
|
||||||
bool subtract_pin_cap,
|
bool subtract_pin_cap,
|
||||||
const Corner *corner,
|
const Corner *corner,
|
||||||
|
|
|
||||||
|
|
@ -179,6 +179,8 @@ public:
|
||||||
const Corner *corner,
|
const Corner *corner,
|
||||||
const MinMaxAll *min_max,
|
const MinMaxAll *min_max,
|
||||||
float cap);
|
float cap);
|
||||||
|
// Remove all "set_load net" annotations.
|
||||||
|
void removeNetLoadCaps() const;
|
||||||
// Set port external fanout (used by wireload models).
|
// Set port external fanout (used by wireload models).
|
||||||
void setPortExtFanout(const Port *port,
|
void setPortExtFanout(const Port *port,
|
||||||
int fanout,
|
int fanout,
|
||||||
|
|
|
||||||
24
sdc/Sdc.cc
24
sdc/Sdc.cc
|
|
@ -299,12 +299,7 @@ Sdc::deleteConstraints()
|
||||||
clearGroupPathMap();
|
clearGroupPathMap();
|
||||||
deleteDeratingFactors();
|
deleteDeratingFactors();
|
||||||
|
|
||||||
for (int corner_index = 0; corner_index < corners_->count(); corner_index++) {
|
removeNetLoadCaps();
|
||||||
port_ext_cap_maps_[corner_index].deleteContentsClear();
|
|
||||||
net_wire_cap_maps_[corner_index].clear();
|
|
||||||
}
|
|
||||||
port_ext_cap_maps_.clear();
|
|
||||||
net_wire_cap_maps_.clear();
|
|
||||||
|
|
||||||
clk_sense_map_.clear();
|
clk_sense_map_.clear();
|
||||||
|
|
||||||
|
|
@ -312,6 +307,18 @@ Sdc::deleteConstraints()
|
||||||
instance_pvt_maps_[mm_index].deleteContentsClear();
|
instance_pvt_maps_[mm_index].deleteContentsClear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
Sdc::removeNetLoadCaps()
|
||||||
|
{
|
||||||
|
if (!net_wire_cap_maps_.empty()) {
|
||||||
|
for (int corner_index = 0; corner_index < corners_->count(); corner_index++) {
|
||||||
|
net_wire_cap_maps_[corner_index].clear();
|
||||||
|
drvr_pin_wire_cap_maps_[corner_index].clear();
|
||||||
|
port_ext_cap_maps_[corner_index].deleteContentsClear();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
Sdc::removeLibertyAnnotations()
|
Sdc::removeLibertyAnnotations()
|
||||||
{
|
{
|
||||||
|
|
@ -365,10 +372,7 @@ void
|
||||||
Sdc::makeCornersAfter(Corners *corners)
|
Sdc::makeCornersAfter(Corners *corners)
|
||||||
{
|
{
|
||||||
corners_ = corners;
|
corners_ = corners;
|
||||||
port_ext_cap_maps_.clear();
|
removeNetLoadCaps();
|
||||||
net_wire_cap_maps_.clear();
|
|
||||||
drvr_pin_wire_cap_maps_.clear();
|
|
||||||
|
|
||||||
port_ext_cap_maps_.resize(corners_->count(), PortExtCapMap(PortIdLess(network_)));
|
port_ext_cap_maps_.resize(corners_->count(), PortExtCapMap(PortIdLess(network_)));
|
||||||
net_wire_cap_maps_.resize(corners_->count(), NetWireCapMap(NetIdLess(network_)));
|
net_wire_cap_maps_.resize(corners_->count(), NetWireCapMap(NetIdLess(network_)));
|
||||||
drvr_pin_wire_cap_maps_.resize(corners_->count(), PinWireCapMap(PinIdLess(network_)));
|
drvr_pin_wire_cap_maps_.resize(corners_->count(), PinWireCapMap(PinIdLess(network_)));
|
||||||
|
|
|
||||||
|
|
@ -3703,6 +3703,13 @@ Sta::setPortExtWireCap(const Port *port,
|
||||||
delaysInvalidFromFanin(port);
|
delaysInvalidFromFanin(port);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
Sta::removeNetLoadCaps() const
|
||||||
|
{
|
||||||
|
sdc_->removeNetLoadCaps();
|
||||||
|
graph_delay_calc_->delaysInvalid();
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
Sta::setPortExtFanout(const Port *port,
|
Sta::setPortExtFanout(const Port *port,
|
||||||
int fanout,
|
int fanout,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue