found the bug in physical pb mode bits and fixed

This commit is contained in:
tangxifan 2020-02-25 23:45:49 -07:00
parent 075264e3e3
commit 759758421d
2 changed files with 3 additions and 2 deletions

View File

@ -409,8 +409,7 @@ void build_lut_bitstream(BitstreamManager& bitstream_manager,
/* TODO: Xifan Tang: find out why some lut_pb has no mode bits!!!
* I suspect that wire LUTs are not mapped to any pb
*/
if ( (true == physical_pb.valid_pb_id(lut_pb_id))
&& (0 != physical_pb.mode_bits(lut_pb_id).size()) ) {
if (true == physical_pb.valid_pb_id(lut_pb_id)) {
mode_select_bitstream = generate_mode_select_bitstream(physical_pb.mode_bits(lut_pb_id));
} else { /* get default mode_bits */
mode_select_bitstream = generate_mode_select_bitstream(device_annotation.pb_type_mode_bits(lut_pb_type));

View File

@ -32,6 +32,8 @@ void rec_alloc_physical_pb_from_pb_graph(PhysicalPb& phy_pb,
/* Finish for primitive node */
if (true == is_primitive_pb_type(pb_type)) {
/* Deposite mode bits here */
phy_pb.set_mode_bits(cur_phy_pb_id, device_annotation.pb_type_mode_bits(pb_type));
return;
}