Skip to content

Commit c6b5520

Browse files
committed
dpl: rework log messages
Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
1 parent bde7924 commit c6b5520

2 files changed

Lines changed: 23 additions & 28 deletions

File tree

src/dpl/src/NegotiationLegalizer.cpp

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -95,14 +95,18 @@ void NegotiationLegalizer::legalize()
9595
logger_->info(utl::DPL,
9696
1103,
9797
"Negotiation base search window: +/-{} sites horizontally, "
98-
"+/-{} rows vertically (extendable up to the max "
99-
"displacement cap of +/-{} sites, +/-{} rows near walls).",
98+
"+/-{} rows vertically ",
10099
site_search_window_,
101-
row_search_window_,
102-
opendp_->max_displacement_x_,
103-
opendp_->max_displacement_y_);
100+
row_search_window_);
104101
logger_->report("\tAutomatic search window extension {}.",
105102
disable_window_extension_ ? "disabled" : "enabled");
103+
if (!disable_window_extension_) {
104+
logger_->report(
105+
"\tSearch window extendable up to the max displacement cap of +/-{} "
106+
"sites, +/-{} rows near walls.",
107+
opendp_->max_displacement_x_,
108+
opendp_->max_displacement_y_);
109+
}
106110

107111
logger_->info(
108112
utl::DPL, 1104, "NegotiationLegalizer DRC penalty: {}.", drc_penalty_);

src/dpl/src/Opendp.cpp

Lines changed: 14 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
#include <cmath>
99
#include <cstdint>
1010
#include <iterator>
11-
#include <limits>
1211
#include <memory>
1312
#include <string>
1413
#include <unordered_set>
@@ -178,34 +177,26 @@ void Opendp::detailedPlacement(const int max_displacement_x,
178177
const odb::Rect overlap = bbox.intersect(core_);
179178
fixed_area += overlap.area();
180179
}
181-
const int64_t free_area = core_area - fixed_area;
180+
181+
const int64_t used_area = inst_area + fixed_area;
182182
const double utilization = core_area > 0
183-
? (static_cast<double>(inst_area)
183+
? (static_cast<double>(used_area)
184184
/ static_cast<double>(core_area))
185185
* 100.0
186186
: 0.0;
187-
// Movable cell area over the core area left free by fixed instances:
188-
// above 100% legalization is impossible.
189-
const double effective_utilization
190-
= free_area > 0 ? (static_cast<double>(inst_area)
191-
/ static_cast<double>(free_area))
192-
* 100.0
193-
: std::numeric_limits<double>::infinity();
194-
logger_->info(DPL,
195-
6,
196-
"Core area: {:.2f} um^2, Movable instances area: {:.2f} "
197-
"um^2, Utilization: {:.1f}%",
198-
block_->dbuAreaToMicrons(core_area),
199-
block_->dbuAreaToMicrons(inst_area),
200-
utilization);
187+
logger_->info(
188+
DPL, 6, "Core area: {:.2f} um^2", block_->dbuAreaToMicrons(core_area));
201189
logger_->info(DPL,
202190
7,
203-
"Fixed instances area within core: {:.2f} um^2, "
204-
"Effective utilization of free area: {:.1f}%",
205-
block_->dbuAreaToMicrons(fixed_area),
206-
effective_utilization);
207-
logger_->metric("utilization__before__dpl", effective_utilization);
208-
if (effective_utilization > 100.0) {
191+
"Movable instances area: {:.2f} um^2",
192+
block_->dbuAreaToMicrons(inst_area));
193+
logger_->info(DPL,
194+
8,
195+
"Fixed instances area within core: {:.2f} um^2",
196+
block_->dbuAreaToMicrons(fixed_area));
197+
logger_->info(DPL, 9, "Utilization: {:.1f}%", utilization);
198+
logger_->metric("utilization__before__dpl", utilization);
199+
if (utilization > 100.0) {
209200
logger_->error(
210201
DPL, 38, "Utilization greater than 100%, impossible to legalize");
211202
}

0 commit comments

Comments
 (0)