Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions src/rsz/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ cc_library(
"src/Rebuffer.hh",
"src/RecoverPower.cc",
"src/RecoverPower.hh",
"src/RecoverPowerMore.cc",
"src/RecoverPowerMore.hh",
"src/RepairDesign.cc",
"src/RepairDesign.hh",
"src/RepairHold.cc",
Expand Down
7 changes: 7 additions & 0 deletions src/rsz/include/rsz/Resizer.hh
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,7 @@ using PinPtr = const sta::Pin*;
using PinVector = std::vector<PinPtr>;

class RecoverPower;
class RecoverPowerMore;
class RepairDesign;
class RepairSetup;
class RepairHold;
Expand Down Expand Up @@ -256,6 +257,7 @@ class Resizer : public dbStaState, public dbNetworkObserver
void setMaxUtilization(double max_utilization);
// Remove all or selected buffers from the netlist.
void removeBuffers(InstanceSeq insts);
bool removeBuffer(Instance* buffer, bool honor_dont_touch_fixed = true);
void unbufferNet(Net* net);
void bufferInputs(LibertyCell* buffer_cell = nullptr, bool verbose = false);
void bufferOutputs(LibertyCell* buffer_cell = nullptr, bool verbose = false);
Expand Down Expand Up @@ -321,6 +323,7 @@ class Resizer : public dbStaState, public dbNetworkObserver
bool recoverPower(float recover_power_percent,
bool match_cell_footprint,
bool verbose);
void setMoreRecoverPower(bool enable);

////////////////////////////////////////////////////////////////
void swapArithModules(int path_count,
Expand Down Expand Up @@ -714,12 +717,15 @@ class Resizer : public dbStaState, public dbNetworkObserver

// Components
std::unique_ptr<RecoverPower> recover_power_;
std::unique_ptr<RecoverPowerMore> recover_power_more_;
std::unique_ptr<RepairDesign> repair_design_;
std::unique_ptr<RepairSetup> repair_setup_;
std::unique_ptr<RepairHold> repair_hold_;
std::unique_ptr<ConcreteSwapArithModules> swap_arith_modules_;
std::unique_ptr<Rebuffer> rebuffer_;

bool more_recover_power_ = false;

// Layer RC per wire length indexed by layer->getNumber(), corner->index
LibertyCellSet dont_use_;
double max_area_ = 0.0;
Expand Down Expand Up @@ -836,6 +842,7 @@ class Resizer : public dbStaState, public dbNetworkObserver
friend class GateCloner;
friend class PreChecks;
friend class RecoverPower;
friend class RecoverPowerMore;
friend class RepairDesign;
friend class RepairSetup;
friend class RepairHold;
Expand Down
1 change: 1 addition & 0 deletions src/rsz/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ add_library(rsz_lib
CloneMove.cc
PreChecks.cc
RecoverPower.cc
RecoverPowerMore.cc
RepairDesign.cc
RepairHold.cc
RepairSetup.cc
Expand Down
Loading