mirror of
https://github.com/The-OpenROAD-Project/OpenSTA.git
synced 2026-05-30 00:24:12 +08:00
@@ -263,7 +263,7 @@ ClkInfo::equal(const ClkInfo *clk_info1,
|
||||
&& clk_info1->isPropagated() == clk_info2->isPropagated()
|
||||
&& clk_info1->isGenClkSrcPath() == clk_info2->isGenClkSrcPath()
|
||||
&& clk_info1->isPulseClk() == clk_info2->isPulseClk()
|
||||
&& clk_info1->pulseClkSenseTrIndex() == clk_info2->pulseClkSenseTrIndex();
|
||||
&& clk_info1->pulseClkSenseRfIndex() == clk_info2->pulseClkSenseRfIndex();
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////
|
||||
@@ -375,8 +375,8 @@ ClkInfo::cmp(const ClkInfo *clk_info1,
|
||||
if (is_pulse_clk1 && !is_pulse_clk2)
|
||||
return 1;
|
||||
|
||||
int pulse_clk_sense_index1 = clk_info1->pulseClkSenseTrIndex();
|
||||
int pulse_clk_sense_index2 = clk_info2->pulseClkSenseTrIndex();
|
||||
int pulse_clk_sense_index1 = clk_info1->pulseClkSenseRfIndex();
|
||||
int pulse_clk_sense_index2 = clk_info2->pulseClkSenseRfIndex();
|
||||
if (pulse_clk_sense_index1 < pulse_clk_sense_index2)
|
||||
return -1;
|
||||
if (pulse_clk_sense_index1 > pulse_clk_sense_index2)
|
||||
|
||||
@@ -57,7 +57,7 @@ public:
|
||||
const Pin *genClkSrc() const { return gen_clk_src_; }
|
||||
bool isPulseClk() const { return is_pulse_clk_; }
|
||||
const RiseFall *pulseClkSense() const;
|
||||
int pulseClkSenseTrIndex() const { return pulse_clk_sense_; }
|
||||
int pulseClkSenseRfIndex() const { return pulse_clk_sense_; }
|
||||
float latency() const { return latency_; }
|
||||
Arrival &insertion() { return insertion_; }
|
||||
const Arrival &insertion() const { return insertion_; }
|
||||
|
||||
@@ -1215,11 +1215,10 @@ ArrivalVisitor::visit(Vertex *vertex)
|
||||
// If vertex is a latch data input arrival that changed from the
|
||||
// previous eval pass enqueue the latch outputs to be re-evaled on the
|
||||
// next pass.
|
||||
if (network_->isLatchData(pin)) {
|
||||
if (arrivals_changed
|
||||
&& network_->isLatchData(pin))
|
||||
search_->enqueueLatchDataOutputs(vertex);
|
||||
}
|
||||
if (arrivals_changed
|
||||
&& network_->isLatchData(pin))
|
||||
search_->enqueueLatchDataOutputs(vertex);
|
||||
|
||||
if (!search_->arrivalsAtEndpointsExist()
|
||||
|| always_to_endpoints_
|
||||
|| arrivals_changed)
|
||||
|
||||
Reference in New Issue
Block a user