Skip to content

Commit ca55771

Browse files
changed unconstrained region coordinates
1 parent 2917fca commit ca55771

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

vpr/src/pack/pack.cpp

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ static void update_noc_reachability_partitions(const std::vector<AtomBlockId>& n
6666
const auto& atom_ctx = g_vpr_ctx.atom();
6767
auto& constraints = g_vpr_ctx.mutable_floorplanning().constraints;
6868
const auto& high_fanout_thresholds = g_vpr_ctx.cl_helper().high_fanout_thresholds;
69+
const auto& device_ctx = g_vpr_ctx.device();
6970

7071
const size_t high_fanout_threshold = high_fanout_thresholds.get_threshold("");
7172

@@ -76,10 +77,10 @@ static void update_noc_reachability_partitions(const std::vector<AtomBlockId>& n
7677

7778
int exclusivity_cnt = 0;
7879

79-
RegionRectCoord unconstrained_rect{std::numeric_limits<int>::min(),
80-
std::numeric_limits<int>::min(),
81-
std::numeric_limits<int>::max(),
82-
std::numeric_limits<int>::max(),
80+
RegionRectCoord unconstrained_rect{0,
81+
0,
82+
(int)device_ctx.grid.width() - 1,
83+
(int)device_ctx.grid.height() - 1,
8384
-1};
8485
Region unconstrained_region;
8586
unconstrained_region.set_region_rect(unconstrained_rect);
@@ -121,13 +122,14 @@ static void update_noc_reachability_partitions(const std::vector<AtomBlockId>& n
121122
AtomBlockId current_atom = q.front();
122123
q.pop();
123124

124-
PartitionId atom_partition_id = constraints.get_atom_partition(noc_atom_id);
125+
PartitionId atom_partition_id = constraints.get_atom_partition(current_atom);
125126
if (atom_partition_id == PartitionId::INVALID()) {
126127
constraints.add_constrained_atom(current_atom, associated_noc_partition_id);
127128
} else {
128129
auto& atom_partition = constraints.get_mutable_partition(atom_partition_id);
129130
auto& atom_partition_region = atom_partition.get_mutable_part_region();
130-
VTR_ASSERT(atom_partition_region.get_exclusivity_index() < 0);
131+
// std::cout << "ss" << atom_partition_region.get_exclusivity_index() << std::endl;
132+
VTR_ASSERT(atom_partition_region.get_exclusivity_index() < 0 || current_atom == noc_atom_id);
131133
atom_partition_region.set_exclusivity_index(exclusivity_cnt);
132134
}
133135

0 commit comments

Comments
 (0)