diff options
Diffstat (limited to 'cyclonev/arch.cc')
-rw-r--r-- | cyclonev/arch.cc | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/cyclonev/arch.cc b/cyclonev/arch.cc index f5dd35eb..ac19b7d2 100644 --- a/cyclonev/arch.cc +++ b/cyclonev/arch.cc @@ -90,6 +90,22 @@ IdString Arch::getBelName(BelId bel) const return id(bel_str); } +void Arch::bindBel(BelId bel, CellInfo *cell, PlaceStrength strength) +{ + bels.at(bel).bound_cell = cell; + cell->bel = bel; + cell->belStrength = strength; + refreshUiBel(bel); +} + +void Arch::unbindBel(BelId bel) +{ + bels.at(bel).bound_cell->bel = BelId(); + bels.at(bel).bound_cell->belStrength = STRENGTH_NONE; + bels.at(bel).bound_cell = nullptr; + refreshUiBel(bel); +} +bool Arch::checkBelAvail(BelId bel) const { return bels.at(bel).bound_cell == nullptr; } NEXTPNR_NAMESPACE_END
\ No newline at end of file |