| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
|
|
|
|
| |
This uses a new data structure for net.users that allows gaps, so
removing a port from a net is no longer an O(n) operation on the number
of users the net has.
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This makes predictDelay be based on an arbitrary belpin pair rather
than a arc of a net based on cell placement. This way 'what-if'
decisions can be evaluated without actually changing placement;
potentially useful for parallel placement.
A new helper predictArcDelay behaves like the old predictDelay to
minimise the impact on existing passes; only arches need be updated.
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
| |
Signed-off-by: Maciej Dudek <mdudek@antmicro.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Issue was due to dest_bels being not cleared between clusters unbindes, causing
newly bind bels to be unbinded and having their old bel value changed to new bel value.
Then when swap failed 2 cells were being bind to a single bel.
I tested leaving dest_bels in the function scope and moving it to the loop scope.
Code with dest_bels in the loop scope was faster than leaving it in the function scope,
and checking if the cell is in the processed cluster.
Signed-off-by: Maciej Dudek <mdudek@antmicro.com>
|
|
|
|
|
|
| |
Macros with potentially inconsistent spacing are now permissible.
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
| |
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
| |
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
| |
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
| |
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
| |
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
| |
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
| |
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
| |
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
| |
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
|
|
|
|
| |
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
| |
Signed-off-by: gatecat <gatecat@ds0.me>
|
|\
| |
| | |
Add placement sanity check in placer_heap.
|
| |
| |
| |
| | |
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
|
|/
|
|
| |
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
|
|
|
|
| |
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This Arch API dates from when we were first working out how to
implement placement validity checking, and in practice is little used by
the core parts of placer1/HeAP and the Arch implementation involves a
lot of duplication with isBelLocationValid.
In the short term; placement validity checking is better served by the
combination of checkBelAvail and isValidBelForCellType before placement;
followed by isBelLocationValid after placement (potentially after
moving/swapping multiple cells).
Longer term, removing this API makes things a bit cleaner for a new
validity checking API.
Signed-off-by: gatecat <gatecat@ds0.me>
|
|
|
|
|
|
| |
This makes the ongoing migration to IdStringList easier.
Signed-off-by: D. Shah <dave@ds0.me>
|
|
|
|
|
|
|
|
|
|
|
| |
This uses the new IdStringList API to store bel names for the ECP5. Note
that other arches and the GUI do not yet build with this
proof-of-concept patch.
getBelByName still uses the old implementation and could be more
efficiently implemented with further development.
Signed-off-by: D. Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
|
|
|
|
| |
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
|
|
|
|
| |
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
|
|
|
|
| |
Signed-off-by: D. Shah <dave@ds0.me>
|
|
|
|
|
|
|
|
| |
Prevents a hang during routing when using --force
Fixes #462
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <davey1576@gmail.com>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|
|
|
|
| |
Signed-off-by: David Shah <dave@ds0.me>
|