now reserve blocks in bitstream manager can accurately capture the size
This commit is contained in:
parent
8067a13346
commit
f040fc78a9
|
@ -180,8 +180,8 @@ BitstreamManager build_device_bitstream(const VprContext& vpr_ctx,
|
|||
bitstream_manager.num_bits(),
|
||||
bitstream_manager.num_blocks());
|
||||
|
||||
//VTR_ASSERT(num_blocks_to_reserve == bitstream_manager.num_blocks());
|
||||
//VTR_ASSERT(num_bits_to_reserve == bitstream_manager.num_bits());
|
||||
VTR_ASSERT(num_blocks_to_reserve == bitstream_manager.num_blocks());
|
||||
VTR_ASSERT(num_bits_to_reserve == bitstream_manager.num_bits());
|
||||
|
||||
return bitstream_manager;
|
||||
}
|
||||
|
|
|
@ -492,6 +492,16 @@ void rec_build_physical_block_bitstream(BitstreamManager& bitstream_manager,
|
|||
/* Find the mode that define_idle_mode*/
|
||||
t_mode* physical_mode = device_annotation.physical_mode(physical_pb_type);
|
||||
|
||||
/* Early exit if this parent module has no configurable child modules */
|
||||
std::string pb_module_name = generate_physical_block_module_name(physical_pb_type);
|
||||
ModuleId pb_module = module_manager.find_module(pb_module_name);
|
||||
VTR_ASSERT(true == module_manager.valid_module_id(pb_module));
|
||||
|
||||
/* Skip module with no configurable children */
|
||||
if (0 == module_manager.configurable_children(pb_module).size()) {
|
||||
return;
|
||||
}
|
||||
|
||||
/* Create a block for the physical block under the grid block in bitstream manager */
|
||||
std::string pb_block_name = generate_physical_block_instance_name(physical_pb_type, pb_graph_node_index);
|
||||
ConfigBlockId pb_configurable_block = bitstream_manager.add_block(pb_block_name);
|
||||
|
|
Loading…
Reference in New Issue