Commit Graph

109 Commits

Author SHA1 Message Date
David Shah
f66999a883 Minor performance tweaks and fixes
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 16:03:16 +02:00
David Shah
748171dae2 place_sa: Adding seed option
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 15:04:53 +02:00
David Shah
681c9654d7 place_sa: Add a rip-up feature when initial placement fails
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 14:36:19 +02:00
David Shah
153b800f6a place_sa: Make placement independant of unordered_map ordering
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 13:24:42 +02:00
David Shah
1b077320dc General reformatting
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 12:53:39 +02:00
David Shah
6a937e0b45 Updating copyrights
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 11:49:57 +02:00
David Shah
3afce5ff5a Improving the placer output
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 11:45:41 +02:00
David Shah
c604426341 place_sa: Ignore Bels locked by manual placement for SA swaps
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 11:33:31 +02:00
David Shah
f9bfccf68e Add 'get or default' functions
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 11:14:49 +02:00
David Shah
e95f38e88e place_sa: Run a validity check at the end of placement
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-17 10:55:19 +02:00
David Shah
0df9a11b1f Merge branch 'master' of gitlab.com:SymbioticEDA/nextpnr 2018-06-16 18:45:56 +02:00
David Shah
e497575c8e place: Fix placer validity checks
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 18:45:48 +02:00
ZipCPU
218c4cd740 Renamed place.h to place_sa.h in place_sa.cc
Signed-off-by: ZipCPU <dgisselq@ieee.org>
2018-06-16 12:09:51 -04:00
ZipCPU
41156d188e Changed place.h place_sa.h 2018-06-16 12:03:25 -04:00
ZipCPU
6d68af1e62 Renamed placer to Simulated-Annealing placer 2018-06-16 11:59:42 -04:00
David Shah
bb92dc09a8 ice40: Promote reset signal
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 17:09:41 +02:00
David Shah
c4241db117 Tweaking placer and router
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 16:54:57 +02:00
Clifford Wolf
ad0df6cea8 Update placer for new Chip API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-16 15:38:26 +02:00
Clifford Wolf
4d14bc2914 Merge remote-tracking branch 'origin/master' into chipdbng 2018-06-16 15:25:03 +02:00
Clifford Wolf
6acf23cf37 Some refactoring of Chip API (prep for chipdb refactoring)
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-16 15:23:04 +02:00
David Shah
ef2164708b router: Fixing loop issue
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:49:38 +02:00
David Shah
c0a2627179 place: Tidying up the SA placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
71903e29d4 place: Reformat placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
2479b4ecbf Improve placement heuristic
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
Clifford Wolf
579455d1b0 Fix router for routing to the same dest wire twice
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-16 14:44:10 +02:00
David Shah
432fe52274 Remove dead code
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
47566cf5e9 Improving SA placer performance
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
2d993d8ee9 Very slow SA placer based on arachne-pnr
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
32dcf6b3fe Experimenting with more unplacing
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
104c2dad9b Adding randomness and changes metrics to placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
828c96f80b Updating placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
2f01ec5157 Update basic placer to use new API
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
3ef45d2a27 Another heuristic experiment
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
b1e08fa064 Playing about with placement heuristics
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
David Shah
6b74d326d4 experiment: Simple heuristic-based placer
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-16 14:44:10 +02:00
Clifford Wolf
5d343a168b Fix router for routing to the same dest wire twice
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-15 20:56:40 +02:00
Clifford Wolf
8c46cc2fce Add output of estimated total wire delay to router (as metric for placement quality)
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-14 19:13:14 +02:00
Clifford Wolf
66ced800d7 Increase ripup penalties over time
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-14 15:45:47 +02:00
Clifford Wolf
312699e590 Add route-ripup routing loop
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-14 15:09:13 +02:00
Clifford Wolf
7787ce5fd9 Refactor position/delay estimation API
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-14 12:43:00 +02:00
David Shah
b1cbae1293 python: Clear SIGINT handler after Python loads
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-14 10:08:54 +02:00
Clifford Wolf
9b3af68e44 Improve router error reporting
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-13 18:28:02 +02:00
Clifford Wolf
3d5954f997 Improve router error messages
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-13 18:10:09 +02:00
Clifford Wolf
794fc6df60 Add support for CellInfo->pins in router
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-13 17:52:18 +02:00
Clifford Wolf
9eb4943bd5 Fix router error handling for unplaced cells
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-13 17:26:03 +02:00
Clifford Wolf
aa4fedfd54 Add A*-like optimizations to router
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-13 16:52:21 +02:00
David Shah
a76f5c5678 Remove IO buffers when fed by SB_IO
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-13 10:50:05 +02:00
Miodrag Milanovic
9953012154 reveresed logic for enabling main file, and made tests link arch files 2018-06-12 19:56:03 +02:00
David Shah
330d393c59 Fixing regression due to IDStrings
Signed-off-by: David Shah <davey1576@gmail.com>
2018-06-12 16:04:02 +02:00
Clifford Wolf
da33da5bc2 Minor clangformat changes
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-06-12 15:52:38 +02:00