diff --git a/common/timing.cc b/common/timing.cc index 352ca94a..225afb5f 100644 --- a/common/timing.cc +++ b/common/timing.cc @@ -18,12 +18,27 @@ */ #include "timing.h" -#include "log.h" +#include #include #include -#include +#include "log.h" -void assign_budget(Context *ctx, float default_clock = 12e6) +NEXTPNR_NAMESPACE_BEGIN + +// Follow a path, returning budget to annotate +static delay_t follow_path(Context *ctx, const PortRef &begin, int path_length, + delay_t slack) { - + if (ctx->getPortClock(begin.cell, begin.port) != IdString()) { + return slack / path_length; + } else { + // ... + } } + +void assign_budget(Context *ctx, float default_clock) +{ + // TODO +} + +NEXTPNR_NAMESPACE_END diff --git a/common/timing.h b/common/timing.h index da0cdd9c..03ae048d 100644 --- a/common/timing.h +++ b/common/timing.h @@ -22,7 +22,11 @@ #include "nextpnr.h" +NEXTPNR_NAMESPACE_BEGIN + // Assign "budget" values for all user ports in the design void assign_budget(Context *ctx, float default_clock = 12e6); -#endif TIMING_H +NEXTPNR_NAMESPACE_END + +#endif