diff options
Diffstat (limited to 'fpga_interchange/arch.cc')
-rw-r--r-- | fpga_interchange/arch.cc | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/fpga_interchange/arch.cc b/fpga_interchange/arch.cc index ee462848..938c4f2c 100644 --- a/fpga_interchange/arch.cc +++ b/fpga_interchange/arch.cc @@ -479,6 +479,14 @@ IdString Arch::getWireType(WireId wire) const return IdString(chip_info->wire_types[wire_type].name); } +bool Arch::is_site_wire(WireId wire) const +{ + if (wire.tile == -1) + return false; + const auto &tile_type = loc_info(chip_info, wire); + return tile_type.wire_data[wire.index].site != -1; +} + WireCategory Arch::get_wire_category(WireId wire) const { int tile = wire.tile, index = wire.index; @@ -791,6 +799,8 @@ bool Arch::place() getCtx()->check(); #endif + place_globals(); + std::string placer = str_or_default(settings, id("placer"), defaultPlacer); if (placer == "heap") { PlacerHeapCfg cfg(getCtx()); |