diff --git a/openfpga/src/fabric/build_fabric_io_location_map.cpp b/openfpga/src/fabric/build_fabric_io_location_map.cpp index 9ac1adbf9..eb7d44104 100644 --- a/openfpga/src/fabric/build_fabric_io_location_map.cpp +++ b/openfpga/src/fabric/build_fabric_io_location_map.cpp @@ -66,6 +66,9 @@ IoLocationMap build_fabric_io_location_map(const ModuleManager& module_manager, /* MUST DO: register in io location mapping! * I/O location mapping is a critical look-up for testbench generators */ + if (size_t(grids[coord.x()][coord.y()].type->capacity) != module_manager.io_children(child).size()) { + VTR_LOG("%s[%ld][%ld] capacity: %d while io_child number is %d", grids[coord.x()][coord.y()].type->name, coord.x(), coord.y(), grids[coord.x()][coord.y()].type->capacity, module_manager.io_children(child).size()); + } VTR_ASSERT(size_t(grids[coord.x()][coord.y()].type->capacity) == module_manager.io_children(child).size()); for (size_t isubchild = 0; isubchild < module_manager.io_children(child).size(); ++isubchild) { vtr::Point subchild_coord = module_manager.io_child_coordinates(child)[isubchild]; diff --git a/openfpga/src/utils/module_manager_utils.cpp b/openfpga/src/utils/module_manager_utils.cpp index e29b29645..78015f522 100644 --- a/openfpga/src/utils/module_manager_utils.cpp +++ b/openfpga/src/utils/module_manager_utils.cpp @@ -1326,7 +1326,7 @@ void add_module_nets_cmos_memory_frame_decoder_config_bus(ModuleManager& module_ /* Instanciate the decoder module here */ VTR_ASSERT(0 == module_manager.num_instance(parent_module, decoder_module)); - module_manager.add_child_module(parent_module, decoder_module); + module_manager.add_child_module(parent_module, decoder_module, false); /* Connect the enable (EN) port of memory modules under the parent module * to the frame decoder inputs