Merge branch 'master' into extend-placement
This commit is contained in:
commit
9368671ca9
@ -92,7 +92,7 @@ struct Router2
|
||||
int16_t x = 0, y = 0;
|
||||
// Visit data
|
||||
PipId pip_fwd, pip_bwd;
|
||||
bool visited_fwd, visited_bwd;
|
||||
bool visited_fwd = false, visited_bwd = false;
|
||||
};
|
||||
|
||||
Context *ctx;
|
||||
@ -687,6 +687,7 @@ struct Router2
|
||||
// Explore forwards
|
||||
auto curr = t.fwd_queue.top();
|
||||
t.fwd_queue.pop();
|
||||
++explored;
|
||||
if (was_visited_bwd(curr.wire)) {
|
||||
// Meet in the middle; done
|
||||
midpoint_wire = curr.wire;
|
||||
@ -729,6 +730,7 @@ struct Router2
|
||||
// Explore backwards
|
||||
auto curr = t.bwd_queue.top();
|
||||
t.bwd_queue.pop();
|
||||
++explored;
|
||||
if (was_visited_fwd(curr.wire)) {
|
||||
// Meet in the middle; done
|
||||
midpoint_wire = curr.wire;
|
||||
|
@ -192,7 +192,8 @@ struct SiteExpansionLoop
|
||||
}
|
||||
|
||||
// Expand from wire specified, always downhill.
|
||||
bool expand_net(const SiteArch *ctx, SiteRoutingCache *site_routing_cache, const SiteNetInfo *net, bool cache_disabled = false)
|
||||
bool expand_net(const SiteArch *ctx, SiteRoutingCache *site_routing_cache, const SiteNetInfo *net,
|
||||
bool cache_disabled = false)
|
||||
{
|
||||
if (net->driver == net_driver && net->users == net_users) {
|
||||
return expand_result;
|
||||
@ -1415,7 +1416,8 @@ void SiteRouter::bindSiteRouting(Context *ctx)
|
||||
block_lut_outputs(&site_arch, blocked_wires);
|
||||
block_cluster_wires(&site_arch);
|
||||
reserve_site_ports(&site_arch);
|
||||
NPNR_ASSERT(route_site(&site_arch, &ctx->site_routing_cache, &ctx->node_storage, /*explain=*/false, /*cache_disabled=*/true));
|
||||
NPNR_ASSERT(route_site(&site_arch, &ctx->site_routing_cache, &ctx->node_storage, /*explain=*/false,
|
||||
/*cache_disabled=*/true));
|
||||
|
||||
check_routing(site_arch);
|
||||
apply_routing(ctx, site_arch, lut_thrus);
|
||||
|
@ -1034,7 +1034,11 @@ struct Arch : BaseArch<ArchRanges>
|
||||
|
||||
std::vector<BelId> getBelsByTile(int x, int y) const override;
|
||||
|
||||
bool getBelGlobalBuf(BelId bel) const override { return false; }
|
||||
bool getBelGlobalBuf(BelId bel) const override
|
||||
{
|
||||
IdString type = getBelType(bel);
|
||||
return type == id_DCC || type == id_VCC_DRV;
|
||||
}
|
||||
|
||||
IdString getBelType(BelId bel) const override
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user