This commit is contained in:
Lin 2024-09-10 14:34:42 +08:00
parent f1547bae8a
commit ae6a8cb604
3 changed files with 12 additions and 9 deletions

View File

@ -362,7 +362,8 @@ void DeviceRRGSB::build_unique_module(const RRGraphView& rr_graph) {
build_cb_unique_module(rr_graph, CHANX);
build_cb_unique_module(rr_graph, CHANY);
build_gsb_unique_module(); /*is_compressed_ flip inside build_gsb_unique_module*/
build_gsb_unique_module(); /*is_compressed_ flip inside
build_gsb_unique_module*/
}
void DeviceRRGSB::add_gsb_unique_module(const vtr::Point<size_t>& coordinate) {

View File

@ -76,8 +76,8 @@ class DeviceRRGSB {
void reserve(
const vtr::Point<size_t>& coordinate); /* Pre-allocate the rr_switch_block
array that the device requires */
void reserve_unique_modules(); /* Pre-allocate the rr_sb_unique_module_id matrix that the
device requires */
void reserve_unique_modules(); /* Pre-allocate the rr_sb_unique_module_id
matrix that the device requires */
void resize_upon_need(
const vtr::Point<size_t>&
coordinate); /* Resize the rr_switch_block array if needed */

View File

@ -125,12 +125,6 @@ int build_fabric_template(T& openfpga_ctx, const Command& cmd,
cmd.option_name(opt_duplicate_grid_pin).c_str());
return CMD_EXEC_FATAL_ERROR;
}
if (!openfpga_ctx.device_rr_gsb().is_compressed()) {
VTR_LOG_ERROR(
"Option '%s' requires unique blocks to be valid due to a conflict!\n",
cmd.option_name(opt_group_tile).c_str());
return CMD_EXEC_FATAL_ERROR;
}
}
/* Conflicts: duplicate_grid_pin does not support any port merge */
if (cmd_context.option_enable(cmd, opt_duplicate_grid_pin)) {
@ -153,6 +147,14 @@ int build_fabric_template(T& openfpga_ctx, const Command& cmd,
openfpga_ctx.mutable_flow_manager().set_compress_routing(true);
}
if (cmd_context.option_enable(cmd, opt_group_tile)) {
if (!openfpga_ctx.device_rr_gsb().is_compressed()) {
VTR_LOG_ERROR(
"Option '%s' requires unique blocks to be valid due to a conflict!\n",
cmd.option_name(opt_group_tile).c_str());
return CMD_EXEC_FATAL_ERROR;
}
}
VTR_LOG("\n");
/* Record the execution status in curr_status for each command