aboutsummaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
authorDavid Shah <davey1576@gmail.com>2018-06-20 11:44:28 +0200
committerDavid Shah <davey1576@gmail.com>2018-06-20 11:44:28 +0200
commit1436ae21a2d9a214f7585deb2f038ff87ce4862c (patch)
tree910e696f210ea31a7f15e70455c08d895c7e7887 /common
parent5d1b87b0a4e138726d751590728cdcc2f12f6192 (diff)
downloadnextpnr-1436ae21a2d9a214f7585deb2f038ff87ce4862c.tar.gz
nextpnr-1436ae21a2d9a214f7585deb2f038ff87ce4862c.tar.bz2
nextpnr-1436ae21a2d9a214f7585deb2f038ff87ce4862c.zip
Adding stubs for delay annotation and cell timing lookup
Signed-off-by: David Shah <davey1576@gmail.com>
Diffstat (limited to 'common')
-rw-r--r--common/nextpnr.h10
-rw-r--r--common/timing.cc29
-rw-r--r--common/timing.h28
3 files changed, 62 insertions, 5 deletions
diff --git a/common/nextpnr.h b/common/nextpnr.h
index c59b401e..5ccbf057 100644
--- a/common/nextpnr.h
+++ b/common/nextpnr.h
@@ -17,13 +17,13 @@
*
*/
+#include <algorithm>
#include <assert.h>
#include <stdint.h>
#include <string>
#include <unordered_map>
#include <unordered_set>
#include <vector>
-#include <algorithm>
#ifndef NEXTPNR_H
#define NEXTPNR_H
@@ -196,12 +196,12 @@ struct CellInfo;
enum PlaceStrength
{
- STRENGTH_NONE = 0,
- STRENGTH_WEAK = 1,
+ STRENGTH_NONE = 0,
+ STRENGTH_WEAK = 1,
STRENGTH_STRONG = 2,
- STRENGTH_FIXED = 3,
+ STRENGTH_FIXED = 3,
STRENGTH_LOCKED = 4,
- STRENGTH_USER = 5
+ STRENGTH_USER = 5
};
struct PortRef
diff --git a/common/timing.cc b/common/timing.cc
new file mode 100644
index 00000000..352ca94a
--- /dev/null
+++ b/common/timing.cc
@@ -0,0 +1,29 @@
+/*
+ * nextpnr -- Next Generation Place and Route
+ *
+ * Copyright (C) 2018 David Shah <david@symbioticeda.com>
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ *
+ */
+
+#include "timing.h"
+#include "log.h"
+#include <unordered_map>
+#include <utility>
+#include <algorithm>
+
+void assign_budget(Context *ctx, float default_clock = 12e6)
+{
+
+}
diff --git a/common/timing.h b/common/timing.h
new file mode 100644
index 00000000..da0cdd9c
--- /dev/null
+++ b/common/timing.h
@@ -0,0 +1,28 @@
+/*
+ * nextpnr -- Next Generation Place and Route
+ *
+ * Copyright (C) 2018 David Shah <david@symbioticeda.com>
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ *
+ */
+
+#ifndef TIMING_H
+#define TIMING_H
+
+#include "nextpnr.h"
+
+// Assign "budget" values for all user ports in the design
+void assign_budget(Context *ctx, float default_clock = 12e6);
+
+#endif TIMING_H