diff options
Diffstat (limited to 'ice40')
-rw-r--r-- | ice40/arch.cc | 2 | ||||
-rw-r--r-- | ice40/main.cc | 12 |
2 files changed, 11 insertions, 3 deletions
diff --git a/ice40/arch.cc b/ice40/arch.cc index fd93a91d..d7673dd0 100644 --- a/ice40/arch.cc +++ b/ice40/arch.cc @@ -313,7 +313,7 @@ delay_t Arch::estimateDelay(WireId src, WireId dst) const delay_t x2 = chip_info->wire_data[dst.index].x; delay_t y2 = chip_info->wire_data[dst.index].y; - return fabsf(x1 - x2) + fabsf(y1 - y2); + return delay_t(50 * (fabsf(x1 - x2) + fabsf(y1 - y2))); } // ----------------------------------------------------------------------- diff --git a/ice40/main.cc b/ice40/main.cc index 13d8ac0b..d83018ef 100644 --- a/ice40/main.cc +++ b/ice40/main.cc @@ -224,8 +224,16 @@ int main(int argc, char *argv[]) if (vm.count("tmfuzz")) { std::vector<WireId> src_wires, dst_wires; - for (auto w : ctx.getWires()) - src_wires.push_back(w); + /*for (auto w : ctx.getWires()) + src_wires.push_back(w);*/ + for (auto b : ctx.getBels()) { + if (ctx.getBelType(b) == TYPE_ICESTORM_LC) { + src_wires.push_back(ctx.getWireBelPin(b, PIN_O)); + } + if (ctx.getBelType(b) == TYPE_SB_IO) { + src_wires.push_back(ctx.getWireBelPin(b, PIN_D_IN_0)); + } + } for (auto b : ctx.getBels()) { if (ctx.getBelType(b) == TYPE_ICESTORM_LC) { |