diff options
-rw-r--r-- | common/nextpnr.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/common/nextpnr.h b/common/nextpnr.h index 3ba4f3b3..ca0854e5 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; + stdL::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 |