You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
MPL2 uses the IOs' locations to structure the physical hierarchy in a particular way:
we bundle the pins into clusters which will be fixed on the boundaries that they were placed.
With this mechanism, we can benefit from:
The connections between the other clusters and bundled IOs;
The data flow of the nets that have IOs.
However in ORFS, MPL2 uses the IOs' locations that come from random PPL. And so, there's a couple of problematic things:
These locations are random, so there's no guarantee that we're actually having some sort of benefit.
In many cases, bundled IOs cover all four boundaries and, due to the way they're modeled in sequence pair, SA can have a very hard time finding a good solution.
Suggested Solution
MPL2 should not rely on fixed locations for the pins (or have a new mode for it).
Instead of having bundled IOs, we can use the constraints data that is now stored by PPL to have some idea about the "preferred" boundary of the clusters during SA.
During cluster placement, instead of having a connection with each bundled IO, each cluster would have a min_dist connection to the boundaries that it has constrained IOs connected to.
Unconstrained IOs would be constrained to all boundaries, so we could just get the closest one.
Description
MPL2 uses the IOs' locations to structure the physical hierarchy in a particular way:
we bundle the pins into clusters which will be fixed on the boundaries that they were placed.
With this mechanism, we can benefit from:
However in ORFS, MPL2 uses the IOs' locations that come from random PPL. And so, there's a couple of problematic things:
Suggested Solution
MPL2 should not rely on fixed locations for the pins (or have a new mode for it).
Instead of having bundled IOs, we can use the constraints data that is now stored by PPL to have some idea about the "preferred" boundary of the clusters during SA.
During cluster placement, instead of having a connection with each bundled IO, each cluster would have a min_dist connection to the boundaries that it has constrained IOs connected to.
Unconstrained IOs would be constrained to all boundaries, so we could just get the closest one.
Additional Context
This can be the solution for #4867 and #2079
The text was updated successfully, but these errors were encountered: