aboutsummaryrefslogtreecommitdiffstats
path: root/common/kernel/timing.h
diff options
context:
space:
mode:
authormyrtle <gatecat@ds0.me>2022-09-20 15:55:43 +0200
committerGitHub <noreply@github.com>2022-09-20 15:55:43 +0200
commitf4e6bbd383f6c434c3285fafeb6f73d77fa4f613 (patch)
tree1319ce816a7f9e337ba39ae24694bfda2c0ba154 /common/kernel/timing.h
parent136ab81cbd9cac143987d3d8d1603f13a8353abc (diff)
parent9000c41c4b5935d7d03d9d42e9c37b0a9f17fa88 (diff)
downloadnextpnr-f4e6bbd383f6c434c3285fafeb6f73d77fa4f613.tar.gz
nextpnr-f4e6bbd383f6c434c3285fafeb6f73d77fa4f613.tar.bz2
nextpnr-f4e6bbd383f6c434c3285fafeb6f73d77fa4f613.zip
Merge pull request #1019 from antmicro/support-clock-relations
Support cross-domain clock relations in timing analyser
Diffstat (limited to 'common/kernel/timing.h')
-rw-r--r--common/kernel/timing.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/common/kernel/timing.h b/common/kernel/timing.h
index fe1bcaa8..6c7a696c 100644
--- a/common/kernel/timing.h
+++ b/common/kernel/timing.h
@@ -92,6 +92,8 @@ struct TimingAnalyser
return slack;
}
+ auto get_clock_delays() const { return clock_delays; }
+
bool setup_only = false;
bool verbose_mode = false;
bool have_loops = false;
@@ -103,6 +105,7 @@ struct TimingAnalyser
void get_route_delays();
void topo_sort();
void setup_port_domains();
+ void identify_related_domains();
void reset_times();
@@ -217,6 +220,7 @@ struct TimingAnalyser
dict<ClockDomainPairKey, domain_id_t> pair_to_id;
std::vector<PerDomain> domains;
std::vector<PerDomainPair> domain_pairs;
+ dict<std::pair<IdString, IdString>, delay_t> clock_delays;
std::vector<CellPortKey> topological_order;