diff --git a/openfpga/src/annotation/device_rr_gsb.cpp b/openfpga/src/annotation/device_rr_gsb.cpp index d2eb8da29..c044ffebf 100644 --- a/openfpga/src/annotation/device_rr_gsb.cpp +++ b/openfpga/src/annotation/device_rr_gsb.cpp @@ -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& coordinate) { diff --git a/openfpga/src/annotation/device_rr_gsb.h b/openfpga/src/annotation/device_rr_gsb.h index 03c99e6af..b042fe689 100644 --- a/openfpga/src/annotation/device_rr_gsb.h +++ b/openfpga/src/annotation/device_rr_gsb.h @@ -76,8 +76,8 @@ class DeviceRRGSB { void reserve( const vtr::Point& 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& coordinate); /* Resize the rr_switch_block array if needed */ diff --git a/openfpga/src/base/openfpga_build_fabric_template.h b/openfpga/src/base/openfpga_build_fabric_template.h index e5db102ed..554b1556e 100644 --- a/openfpga/src/base/openfpga_build_fabric_template.h +++ b/openfpga/src/base/openfpga_build_fabric_template.h @@ -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