Add Region struct
Signed-off-by: Clifford Wolf <clifford@clifford.at>
This commit is contained in:
parent
b326b03a52
commit
a9b6543361
@ -216,6 +216,13 @@ struct BelPin
|
|||||||
|
|
||||||
struct CellInfo;
|
struct CellInfo;
|
||||||
|
|
||||||
|
struct Region
|
||||||
|
{
|
||||||
|
IdString name;
|
||||||
|
std::unordered_set<BelId> bels;
|
||||||
|
std::unordered_set<WireId> wires;
|
||||||
|
};
|
||||||
|
|
||||||
enum PlaceStrength
|
enum PlaceStrength
|
||||||
{
|
{
|
||||||
STRENGTH_NONE = 0,
|
STRENGTH_NONE = 0,
|
||||||
@ -250,6 +257,8 @@ struct NetInfo : ArchNetInfo
|
|||||||
|
|
||||||
// wire -> uphill_pip
|
// wire -> uphill_pip
|
||||||
std::unordered_map<WireId, PipMap> wires;
|
std::unordered_map<WireId, PipMap> wires;
|
||||||
|
|
||||||
|
Region *region = nullptr;
|
||||||
};
|
};
|
||||||
|
|
||||||
enum PortType
|
enum PortType
|
||||||
@ -289,6 +298,8 @@ struct CellInfo : ArchCellInfo
|
|||||||
int constr_z = UNCONSTR; // this.z - parent.z
|
int constr_z = UNCONSTR; // this.z - parent.z
|
||||||
bool constr_abs_z = false; // parent.z := 0
|
bool constr_abs_z = false; // parent.z := 0
|
||||||
// parent.[xyz] := 0 when (constr_parent == nullptr)
|
// parent.[xyz] := 0 when (constr_parent == nullptr)
|
||||||
|
|
||||||
|
Region *region = nullptr;
|
||||||
};
|
};
|
||||||
|
|
||||||
enum TimingPortClass
|
enum TimingPortClass
|
||||||
@ -391,6 +402,9 @@ struct BaseCtx
|
|||||||
std::unordered_map<IdString, std::unique_ptr<NetInfo>> nets;
|
std::unordered_map<IdString, std::unique_ptr<NetInfo>> nets;
|
||||||
std::unordered_map<IdString, std::unique_ptr<CellInfo>> cells;
|
std::unordered_map<IdString, std::unique_ptr<CellInfo>> cells;
|
||||||
|
|
||||||
|
// Floorplanning regions
|
||||||
|
std::unordered_map<IdString, std::unique_ptr<Region>> region;
|
||||||
|
|
||||||
BaseCtx()
|
BaseCtx()
|
||||||
{
|
{
|
||||||
idstring_str_to_idx = new std::unordered_map<std::string, int>;
|
idstring_str_to_idx = new std::unordered_map<std::string, int>;
|
||||||
|
Loading…
Reference in New Issue
Block a user