diff --git a/search/Crpr.cc b/search/Crpr.cc index d748c9c5..e19aa6e5 100644 --- a/search/Crpr.cc +++ b/search/Crpr.cc @@ -297,7 +297,10 @@ CheckCrpr::findCrpr1(const PathVertex *src_clk_path, const EarlyLate *tgt_el = tgt_clk_path->minMax(this); Arrival src_arrival = src_clk_path->arrival(this); Arrival tgt_arrival = tgt_clk_path->arrival(this); - float crpr_mean = abs(delayAsFloat(src_arrival) - delayAsFloat(tgt_arrival)); + float src_clk_time = src_clk_path->clkEdge(this)->time(); + float tgt_clk_time = tgt_clk_path->clkEdge(this)->time(); + float crpr_mean = abs(delayAsFloat(src_arrival) - src_clk_time + - (delayAsFloat(tgt_arrival) - tgt_clk_time)); float crpr_sigma2 = delaySigma2(src_arrival, src_el) + delaySigma2(tgt_arrival, tgt_el); return makeDelay2(crpr_mean, -crpr_sigma2, -crpr_sigma2);