[Tool] Patch repacker to support duplicated nets due to adder nets
This commit is contained in:
parent
ad25944e59
commit
df7b436ac7
|
@ -259,13 +259,25 @@ std::vector<int> find_pb_route_remapped_source_pb_pin(const t_pb* pb,
|
||||||
/* Only care the pin has the same parent port as source_pb_pin
|
/* Only care the pin has the same parent port as source_pb_pin
|
||||||
* Due to that the source_pb_pin may be swapped during routing
|
* Due to that the source_pb_pin may be swapped during routing
|
||||||
* the pb_route is out-of-date
|
* the pb_route is out-of-date
|
||||||
|
*
|
||||||
|
* For those parent port is defined as non-equivalent,
|
||||||
|
* the source pin and the pin recorded in the routing trace must match!
|
||||||
|
*
|
||||||
* TODO: should update pb_route by post routing results
|
* TODO: should update pb_route by post routing results
|
||||||
* On the other side, the swapping can only happen between equivalent pins
|
* On the other side, the swapping can only happen between equivalent pins
|
||||||
* in a port. So the port must match here!
|
* in a port. So the port must match here!
|
||||||
*/
|
*/
|
||||||
if (source_pb_pin->port == pb->pb_route.at(pin).pb_graph_pin->port) {
|
if (PortEquivalence::FULL == source_pb_pin->port->equivalent) {
|
||||||
pb_route_indices.push_back(pin);
|
if (source_pb_pin->port == pb->pb_route.at(pin).pb_graph_pin->port) {
|
||||||
}
|
pb_route_indices.push_back(pin);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
/* NOTE: INSTANCE is NOT supported! We support only NONE equivalent */
|
||||||
|
VTR_ASSERT (PortEquivalence::NONE == source_pb_pin->port->equivalent);
|
||||||
|
if (source_pb_pin == pb->pb_route.at(pin).pb_graph_pin) {
|
||||||
|
pb_route_indices.push_back(pin);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return pb_route_indices;
|
return pb_route_indices;
|
||||||
|
|
Loading…
Reference in New Issue