gowin: Himbaechel. Global router BUGFIX.

Ignore networks without users.

Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
This commit is contained in:
YRabbit 2024-01-29 09:40:34 +10:00 committed by myrtle
parent a65ddff8ba
commit b05cb86291

View File

@ -186,9 +186,6 @@ struct GowinGlobalRouter
break; break;
} }
} }
if (!routed) {
ctx->unbindWire(src);
}
return routed; return routed;
} }
@ -280,7 +277,10 @@ struct GowinGlobalRouter
for (auto &net : ctx->nets) { for (auto &net : ctx->nets) {
NetInfo *ni = net.second.get(); NetInfo *ni = net.second.get();
CellInfo *drv = ni->driver.cell; CellInfo *drv = ni->driver.cell;
if (drv == nullptr) { if (drv == nullptr || ni->users.empty()) {
if (ctx->verbose) {
log_info("skip empty or driverless net:%s\n", ctx->nameOf(ni));
}
continue; continue;
} }
if (driver_is_buf(ni->driver)) { if (driver_is_buf(ni->driver)) {
@ -294,7 +294,10 @@ struct GowinGlobalRouter
for (auto &net : ctx->nets) { for (auto &net : ctx->nets) {
NetInfo *ni = net.second.get(); NetInfo *ni = net.second.get();
CellInfo *drv = ni->driver.cell; CellInfo *drv = ni->driver.cell;
if (drv == nullptr) { if (drv == nullptr || ni->users.empty()) {
if (ctx->verbose) {
log_info("skip empty or driverless net:%s\n", ctx->nameOf(ni));
}
continue; continue;
} }
if (driver_is_clksrc(ni->driver)) { if (driver_is_clksrc(ni->driver)) {