aboutsummaryrefslogtreecommitdiffstats
path: root/common/nextpnr.h
diff options
context:
space:
mode:
authorSergiusz Bazanski <q3k@q3k.org>2018-07-25 11:32:45 +0100
committerSergiusz Bazanski <q3k@q3k.org>2018-07-25 11:32:45 +0100
commit14a501969af0023c7396d41a0116e706c68cf5ed (patch)
treee16a50bf122faed323bce936255e7e09b6201242 /common/nextpnr.h
parentc554ab1ef01c8cb5f4a35040bc3fce106be03559 (diff)
parente39290b71299843eff858fb51543b99a06178a1d (diff)
downloadnextpnr-14a501969af0023c7396d41a0116e706c68cf5ed.tar.gz
nextpnr-14a501969af0023c7396d41a0116e706c68cf5ed.tar.bz2
nextpnr-14a501969af0023c7396d41a0116e706c68cf5ed.zip
Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr into q3k/pll-pads
Diffstat (limited to 'common/nextpnr.h')
-rw-r--r--common/nextpnr.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/common/nextpnr.h b/common/nextpnr.h
index 3ba4f3b3..4a1aaac1 100644
--- a/common/nextpnr.h
+++ b/common/nextpnr.h
@@ -273,6 +273,16 @@ struct CellInfo : ArchCellInfo
// cell_port -> bel_pin
std::unordered_map<IdString, IdString> pins;
+
+ // placement constraints
+ CellInfo *constr_parent;
+ std::vector<CellInfo*> constr_children;
+ const int UNCONSTR = INT_MIN;
+ int constr_x = UNCONSTR; // this.x - parent.x
+ int constr_y = UNCONSTR; // this.y - parent.y
+ int constr_z = UNCONSTR; // this.z - parent.z
+ bool constr_abs_z = false; // parent.z := 0
+ // parent.[xyz] := 0 when (constr_parent == nullptr)
};
struct DeterministicRNG