tag/glk_info debug

Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
James Cherry 2025-09-29 09:48:57 -07:00
parent f18df8a1a2
commit d565906c2b
3 changed files with 27 additions and 5 deletions

View File

@ -166,8 +166,10 @@ ClkInfo::to_string(const StaState *sta) const
const Pin *crpr_clk_pin = crpr_clk_path_.vertex(sta)->pin(); const Pin *crpr_clk_pin = crpr_clk_path_.vertex(sta)->pin();
result += " crpr "; result += " crpr ";
result += network->pathName(crpr_clk_pin); result += network->pathName(crpr_clk_pin);
result += "/"; result += " ";
result += std::to_string(crpr_clk_path_.tag(sta)->index()); result += std::to_string(crpr_clk_path_.tag(sta)->index());
result += "/";
result += crpr_clk_path_.minMax(sta)->to_string();
} }
if (is_gen_clk_src_path_) if (is_gen_clk_src_path_)

View File

@ -75,6 +75,8 @@ Latches::latchRequired(const Path *data_path,
time_given_to_startpoint = 0.0; time_given_to_startpoint = 0.0;
} }
else if (enable_path && disable_path) { else if (enable_path && disable_path) {
debugPrint(debug_, "latch", 1, "latch %s",
sdc_network_->pathName(data_path->pin(this)));
Delay open_latency, latency_diff, max_borrow; Delay open_latency, latency_diff, max_borrow;
float nom_pulse_width, open_uncertainty; float nom_pulse_width, open_uncertainty;
Crpr open_crpr, crpr_diff; Crpr open_crpr, crpr_diff;
@ -102,8 +104,7 @@ Latches::latchRequired(const Path *data_path,
+ PathEnd::checkSetupMcpAdjustment(data_clk_edge, enable_clk_edge, mcp, + PathEnd::checkSetupMcpAdjustment(data_clk_edge, enable_clk_edge, mcp,
1, sdc_) 1, sdc_)
+ open_crpr; + open_crpr;
debugPrint(debug_, "latch", 1, "latch data %s %s enable %s", debugPrint(debug_, "latch", 1, "data %s enable %s",
network_->pathName(data_path->pin(this)),
delayAsString(data_arrival, this), delayAsString(data_arrival, this),
delayAsString(enable_arrival, this)); delayAsString(enable_arrival, this));
if (delayLessEqual(data_arrival, enable_arrival, this)) { if (delayLessEqual(data_arrival, enable_arrival, this)) {
@ -145,6 +146,11 @@ Latches::latchRequired(const Path *data_path,
adjusted_data_arrival = data_arrival; adjusted_data_arrival = data_arrival;
time_given_to_startpoint = 0.0; time_given_to_startpoint = 0.0;
} }
debugPrint(debug_, "latch", 2, "req %s borrow %s time_given %s adj_arrival %s",
delayAsString(required, this),
delayAsString(borrow, this),
delayAsString(time_given_to_startpoint, this),
delayAsString(adjusted_data_arrival, this));
} }
void void
@ -209,6 +215,16 @@ Latches::latchBorrowInfo(const Path *data_path,
open_crpr = 0.0; open_crpr = 0.0;
crpr_diff = 0.0; crpr_diff = 0.0;
} }
debugPrint(debug_, "latch", 2, "nom_width %s open_lat %s lat_diff %s open_uncert %s",
delayAsString(nom_pulse_width, this),
delayAsString(open_latency, this),
delayAsString(latency_diff, this),
delayAsString(open_uncertainty, this));
debugPrint(debug_, "latch", 2, "open_crpr %s crpr_diff %s open_uncert %s max_borrow %s",
delayAsString(open_crpr, this),
delayAsString(crpr_diff, this),
delayAsString(open_uncertainty, this),
borrow_limit_exists ? delayAsString(max_borrow, this) : "none");
} }
void void

View File

@ -138,11 +138,15 @@ Tag::to_string(bool report_index,
result += network->pathName(clk_src); result += network->pathName(clk_src);
} }
const Path *crpr_clk_path = clk_info_->crprClkPath(sta);
if (crpr_clk_path != nullptr) {
result += " crpr_pin "; result += " crpr_pin ";
const Path *crpr_clk_path = clk_info_->crprClkPath(sta);
if (crpr_clk_path) {
result += network->pathName(crpr_clk_path->pin(sta)); result += network->pathName(crpr_clk_path->pin(sta));
result += " ";
result += crpr_clk_path->minMax(sta)->to_string();
} }
else
result += "null";
if (input_delay_) { if (input_delay_) {
result += " input "; result += " input ";