spatial route tree lookup adopt RRGraph object
This commit is contained in:
parent
74c532e953
commit
d2485789a4
|
@ -75,27 +75,27 @@ size_t grid_to_bin_y(size_t grid_y, const SpatialRouteTreeLookup& spatial_lookup
|
|||
bool validate_route_tree_spatial_lookup(t_rt_node* rt_node, const SpatialRouteTreeLookup& spatial_lookup) {
|
||||
auto& device_ctx = g_vpr_ctx.device();
|
||||
|
||||
auto& rr_node = device_ctx.rr_nodes[rt_node->inode];
|
||||
const RRNodeId& rr_node = rt_node->inode;
|
||||
|
||||
int bin_xlow = grid_to_bin_x(rr_node.xlow(), spatial_lookup);
|
||||
int bin_ylow = grid_to_bin_y(rr_node.ylow(), spatial_lookup);
|
||||
int bin_xhigh = grid_to_bin_x(rr_node.xhigh(), spatial_lookup);
|
||||
int bin_yhigh = grid_to_bin_y(rr_node.yhigh(), spatial_lookup);
|
||||
int bin_xlow = grid_to_bin_x(device_ctx.rr_graph.node_xlow(rr_node), spatial_lookup);
|
||||
int bin_ylow = grid_to_bin_y(device_ctx.rr_graph.node_ylow(rr_node), spatial_lookup);
|
||||
int bin_xhigh = grid_to_bin_x(device_ctx.rr_graph.node_xhigh(rr_node), spatial_lookup);
|
||||
int bin_yhigh = grid_to_bin_y(device_ctx.rr_graph.node_yhigh(rr_node), spatial_lookup);
|
||||
|
||||
bool valid = true;
|
||||
|
||||
auto& low_bin_rt_nodes = spatial_lookup[bin_xlow][bin_ylow];
|
||||
if (std::find(low_bin_rt_nodes.begin(), low_bin_rt_nodes.end(), rt_node) == low_bin_rt_nodes.end()) {
|
||||
valid = false;
|
||||
VPR_FATAL_ERROR(VPR_ERROR_ROUTE, "Failed to find route tree node %d at (low coord %d,%d) in spatial lookup [bin %d,%d]",
|
||||
rt_node->inode, rr_node.xlow(), rr_node.ylow(), bin_xlow, bin_ylow);
|
||||
VPR_FATAL_ERROR(VPR_ERROR_ROUTE, "Failed to find route tree node %ld at (low coord %d,%d) in spatial lookup [bin %d,%d]",
|
||||
size_t(rt_node->inode), device_ctx.rr_graph.node_xlow(rr_node), device_ctx.rr_graph.node_ylow(rr_node), bin_xlow, bin_ylow);
|
||||
}
|
||||
|
||||
auto& high_bin_rt_nodes = spatial_lookup[bin_xhigh][bin_yhigh];
|
||||
if (std::find(high_bin_rt_nodes.begin(), high_bin_rt_nodes.end(), rt_node) == high_bin_rt_nodes.end()) {
|
||||
valid = false;
|
||||
VPR_FATAL_ERROR(VPR_ERROR_ROUTE, "Failed to find route tree node %d at (high coord %d,%d) in spatial lookup [bin %d,%d]",
|
||||
rt_node->inode, rr_node.xhigh(), rr_node.yhigh(), bin_xhigh, bin_yhigh);
|
||||
VPR_FATAL_ERROR(VPR_ERROR_ROUTE, "Failed to find route tree node %ld at (high coord %d,%d) in spatial lookup [bin %d,%d]",
|
||||
size_t(rt_node->inode), device_ctx.rr_graph.node_xhigh(rr_node), device_ctx.rr_graph.node_yhigh(rr_node), bin_xhigh, bin_yhigh);
|
||||
}
|
||||
|
||||
//Recurse
|
||||
|
|
Loading…
Reference in New Issue