David Shah
8e4e03d980
HeAP: Fix occupancy count
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-03-22 10:31:54 +00:00
David Shah
6cf001d355
HeAP: Legaliser fixes
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
352f15e96b
HeAP: Avoid getting stuck in legaliser ripup
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
70a6379bf6
HeAP: Chain support
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
2e2f44c82e
HeAP: tidying up
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
fb02fc69c6
HeAP: Make strict legalisation wirelength driven where needed
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
8295f997ae
HeAP: Use for ECP5 as well as iCE40
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
ba1e05f16b
HeAP: Implement 'all+rotate' HeAP strategy
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
3dedc62593
HeAP: Weight arcs by criticality for timing-driven placement
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
05e9ae183d
HeAP: Add multithreading
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
eb638c47b3
HeAP: fine tuning
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
2a0c117662
HeAP: Add performance counters
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
f3d9b45387
HeAP: Add SA-based iterative refinement after AP
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
0570cb7ae9
HeAP: Spreading working acceptably
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
030b02588b
HeAP: Make cut-based spreading recursive
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
b483008cdf
HeAP: Cut peturbation, binning and intra-bin linear spreading
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
8a791e8309
HeAP: Cut finder for spreading
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
4d2906378f
HeAP: Region finder for spreading and strict legaliser
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
d1808c2594
HeAP: Fix how initial placement handles chains
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
d5cfd38179
HeAP: Successful solver convergance
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
ea56dc9d08
HeAP: Add TAUCS wrapper and integration
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
e36460b83e
HeAP: Initial infrastructure
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
4cf8549f5c
placer1: Legalise after reaching a diameter, not temperature
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
9cd5980d35
placer1: Add (currently-unused) option for fanout threshold for timing cost calc
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-03-22 10:31:54 +00:00
David Shah
bd0a33022b
placer1: Implement non-timing-driven mode
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-03-22 10:31:54 +00:00
David Shah
0118ac00c4
placer1: Improve handling of regions
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
a8289b699f
pycontainers: Implement __contains__
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
493d6c3fb9
Add Python helper functions for floorplanning
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
ae33ff397f
placer1: Consider regions during placement
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
ade72de02f
placer1: Optimise for performance
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
0cb351df52
placer1: New temperature heuristic
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:54 +00:00
David Shah
222abb5be2
placer1: Encourage chain swaps
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-03-22 10:31:54 +00:00
David Shah
c926b273de
placer1: Tweaks
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-03-22 10:31:54 +00:00
David Shah
23306c163f
placer1: Allow chain position swaps after legalisation
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-03-22 10:31:54 +00:00
David Shah
3650c8a0e7
placer1: Tweaking temperature
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-03-22 10:31:54 +00:00
David Shah
0d80181c5e
placer1: Make budget-based placement an option
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-03-22 10:31:28 +00:00
David Shah
a218c27305
placer1: Tuning
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-03-22 10:31:28 +00:00
David Shah
3938ea41fc
placer1: Fix cost delta calculation
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-03-22 10:31:28 +00:00
David Shah
2ef2d2b2cb
placer1: Bugfixes
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:28 +00:00
David Shah
f8f89cea71
placer1: Rework to use new criticality-based weighted cost function
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:31:00 +00:00
David Shah
3e40f0b9c3
placer1: New cost calculation infrastructure
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-22 10:29:59 +00:00
David Shah
997a66791e
json: Fix inputs directly driving inouts
...
Signed-off-by: David Shah <dave@ds0.me>
2019-03-20 16:07:47 +00:00
Miodrag Milanovic
0bcf57bd47
Add flag timing-allow-fail to allow PnR to pass with warning
2019-03-04 12:29:19 +01:00
David Shah
89de4caf6c
timing: Fix negative slack overflow issue
...
Signed-off-by: David Shah <dave@ds0.me>
2019-02-25 11:49:25 +00:00
David Shah
55b0b60d9d
ecp5: Router performance improvements
...
Signed-off-by: David Shah <dave@ds0.me>
2019-02-25 11:49:25 +00:00
David Shah
e50ab2106f
ecp5: Fixes for litedram
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-02-24 10:28:25 +01:00
David Shah
817ba5a4b9
ecp5: Add DELAYF/DELAYG support
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-02-24 10:28:25 +01:00
Eddie Hung
63a7f57b01
[timing] Fix off-by-one error
2019-02-11 08:32:01 -08:00
Eddie Hung
a520b38424
Merge pull request #226 from YosysHQ/190207
...
Fix slack_histogram computation accessing num_bins+1
2019-02-09 10:16:23 -08:00
David Shah
db990d2175
clangformat
...
Signed-off-by: David Shah <dave@ds0.me>
2019-02-08 13:43:55 +00:00
David Shah
c900bcc949
Merge branch 'ecp5func'
2019-02-08 12:57:17 +00:00
Eddie Hung
f9f15e79cd
Fix slack_histogram computation accessing num_bins+1
2019-02-07 09:26:41 -08:00
David Shah
564a7e27b1
timing: Add --ignore-loops option
...
Signed-off-by: David Shah <dave@ds0.me>
2019-02-05 08:20:05 +01:00
David Shah
8e8c103b34
router1: Print route time
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-01-30 17:50:49 +00:00
David Shah
0ca0af6c72
placer1: Add place time print
...
Signed-off-by: David Shah <davey1576@gmail.com>
2019-01-30 17:50:49 +00:00
David Shah
cc53c312de
timing: Path related fixes
...
Signed-off-by: David Shah <dave@ds0.me>
2019-01-27 16:45:37 +00:00
David Shah
7f69c0f455
command: Setup logging before attempting to create Context
...
This way errors (such as an invalid package type) occurring
during Context creation are printed properly.
Signed-off-by: David Shah <dave@ds0.me>
2018-12-26 16:05:12 +00:00
David Shah
f21791fe22
common/chain_utils: Don't allow overlapping chains
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-12-19 10:36:55 +00:00
David Shah
f4d4244534
timing: Fix critical path print
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-13 12:10:18 +00:00
David Shah
e8c03a0dd7
timing_opt: Fix generic build
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-12-07 23:51:09 +01:00
David Shah
b732e42fa3
timing_opt: Reduce iterations to 30, tidy up logging
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 11:00:16 +00:00
David Shah
56dfd5564a
timing: Fix xclock crit calc and compiler warnings
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
2b84b33cd6
timing_opt: Reduce search diameter to 2
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
745960fa85
timing_opt: Neighbour related fixes
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
f53dc8d3c9
timing_opt: Improve heuristics
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
a990a1576c
timing_opt: Fix criticality and cost calculations
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
0f40e5fe8c
timing: Fixes to criticality calculation
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
254c5ea359
clangformat
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
e1c74ad3db
timing_opt: Fixes including single-move legality
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
b51308708b
timing_opt: Debugging and integration
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
1b7214a18a
timing_opt: Implement the BFS-based path optimisation
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
51a662d37e
timing_opt: Implement critical path finder
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
cd9a65a84c
timing_opt: Neigbour bel validity checking
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
2de506c071
timing_opt: Functions to calculate arc delay limits
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
83e3277577
timing_opt: Implement neighbour Bel finder
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
David Shah
9a42b64a68
timing: Add criticality calculation to timing analysis
...
Signed-off-by: David Shah <dave@ds0.me>
2018-12-06 10:53:01 +00:00
Miodrag Milanovic
a6315833d3
Renamed LogLevel members, to prevent issue with system defines on Windows
2018-12-05 19:58:38 +01:00
David Shah
90138fc120
rulecheck: Improve message printed at start
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-29 19:28:15 +00:00
Miodrag Milanovic
0b5748a7af
Fix compile on GCC 5.5 or older
2018-11-27 19:20:15 +01:00
David Shah
4a44bc569a
Print warning and error count at end of execution
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-26 19:14:38 +00:00
David Shah
0adc0d7529
timing: Improve clock constraint log output
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-26 18:56:10 +00:00
Sylvain Munaut
822b525035
placer1: During initial placement, don't rip-up strongly binded cells
...
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2018-11-26 12:51:14 +01:00
David Shah
fe670cf3f6
clangformat
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-26 09:37:39 +00:00
David Shah
22ac41d627
Merge pull request #138 from YosysHQ/refactor_log
...
Tidy up logging code, add log file support, make timing failures non-fatal errors
2018-11-26 09:37:07 +00:00
David Shah
98858fe611
Merge pull request #139 from YosysHQ/fix_117
...
router1: Fix unrouted, undriven nets
2018-11-26 09:36:58 +00:00
David Shah
b035cb9fcf
Add nonfatal error support and use for timing failures
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-26 09:22:42 +00:00
David Shah
65a5d05952
python: Fixes to get net wires map working
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-22 13:42:20 +00:00
David Shah
e48c9e73e7
python: Add wrapper for vectors to allow Python access to net.users
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-22 12:35:07 +00:00
David Shah
1731590160
Merge pull request #122 from YosysHQ/ecp5_timing
...
ecp5: Use cell and pip timings from the Trellis database
2018-11-22 11:55:25 +00:00
David Shah
8471d4249c
router1: Fix unrouted, undriven nets
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-21 17:23:20 +00:00
David Shah
51d1363dfe
Change the log level of some timing-related messages
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-21 17:13:53 +00:00
David Shah
b550791d92
Refactor log code and add log file support
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-21 17:08:45 +00:00
Clifford Wolf
b5d518583e
Add missing router1 ctx->yield() calls
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-20 18:58:15 +01:00
David Shah
0fb7735e45
Merge pull request #130 from smunaut/issue_127
...
common/placer1: In random pick, only use grid if there is more than 64 BELs
2018-11-20 10:11:21 +00:00
Maik Merten
e167043e73
add "randomize-seed" command-line option
2018-11-19 19:45:12 +01:00
Sylvain Munaut
d6fd0e7e5b
common/placer1: In random pick, only use grid if there is more than 64 BELs
...
If you have a large grid and very few BELs of a given type, picking a
random grid location yields very little odds of finding a BEL of that
type.
So for those, just put all of them at (0,0) and do a true random pick.
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2018-11-19 18:52:40 +01:00
David Shah
72b53016c0
timing: Improve crit path statistics
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-16 16:24:06 +00:00
David Shah
1ae722272a
ecp5: clangformat timing changes
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-16 13:27:03 +00:00
David Shah
50b85da619
ecp5: Use speed-grade-specific delay estimate
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-16 13:26:28 +00:00
David Shah
13244e513b
ecp5: Fix db import, improve timing data debugging
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-16 13:26:28 +00:00
David Shah
9c52afcf5f
clangformat
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-16 13:25:51 +00:00
Eddie Hung
e1d2c595a1
Improve message spacing
2018-11-14 18:27:43 -08:00
Eddie Hung
06ddb632d1
Merge remote-tracking branch 'origin/master' into timingapi
2018-11-14 17:59:21 -08:00
David Shah
adc50a207f
Timing fixes
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-11-14 08:46:10 +00:00
Eddie Hung
df2622d300
[placer1] Only perform slack redist if legalised
2018-11-13 16:33:01 -08:00
Eddie Hung
1b93107843
[placer1] Only increase temperature if legaliser moved something
2018-11-13 16:33:01 -08:00
Eddie Hung
cab91b035b
[common] Fix 'after after'
2018-11-13 16:33:01 -08:00
Eddie Hung
6527e3b6ae
[common] Fix typo in Loc::operator!=()
2018-11-13 16:33:01 -08:00
Eddie Hung
519bcd31bf
[placer1] Fix require_legal polarity
2018-11-13 16:33:01 -08:00
Eddie Hung
42d1990784
[timing] Path report to include pips when --verbose set
2018-11-13 16:32:06 -08:00
Eddie Hung
9f13bc7eb0
[timing] Crit path report to print out edges
2018-11-13 14:14:51 -08:00
Eddie Hung
4134bfa78e
[timing] Resolve another merge conflict
2018-11-13 12:12:26 -08:00
Eddie Hung
2d39cde17b
Merge remote-tracking branch 'origin/master' into timingapi
2018-11-13 12:12:11 -08:00
Eddie Hung
3b2b15dc4a
Merge pull request #107 from YosysHQ/router_improve
...
Major rewrite of "router1"
2018-11-13 11:39:51 -08:00
Clifford Wolf
d0ae4c77be
Merge pull request #105 from YosysHQ/placer1_tmg_ignore
...
[placer1] Ignore timing of TMG_IGNORE nets
2018-11-13 18:48:59 +01:00
Eddie Hung
7402a4b955
[placer1] Tidy up logic
2018-11-13 09:26:28 -08:00
Clifford Wolf
caca485cff
Minor router1 debug log improvements
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-13 17:30:49 +01:00
Clifford Wolf
51b09f2407
Improve router1 debug output, switch to nameOf APIs
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-13 16:29:33 +01:00
Clifford Wolf
e06eef375c
Add more nameOf() convenience methods
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-13 16:08:44 +01:00
Clifford Wolf
06e0e1ffee
Various router1 fixes, Add BelId/WireId/PipId::operator<()
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-13 05:05:56 +01:00
David Shah
ba7a7a3733
timing: Fix compile warning
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
fc5e6bec9a
timing: Add support for clock constraints
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
8af86ff37d
ecp5: Update arch to new timing API
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
bd2b3e5e02
timing: Fix Fmax for clocks with mixed edge usage
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
07e265868b
archapi: Add getDelayFromNS to improve timing algorithm portability
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
e633aa09cc
timing: Fix handling of clock inputs
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
fad69d4930
timing: Don't include false startpoints in async paths
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
cba9b528e8
timing: Improve Fmax output and print cross-clock paths
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
143abc6034
timing: Multiple clock analysis
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
9687f7d1da
Working on multi-clock analysis
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
3ca02cc55c
Working on adding multiple domains to timing analysis
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 14:03:58 +00:00
David Shah
b6312abc5d
timing: Implementing parts of new timing API
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-11-12 14:03:58 +00:00
David Shah
83b1c43630
timing: Working on a timing constraint API
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-11-12 14:03:58 +00:00
David Shah
e0fe523606
Fix router1 check for ECP5
...
Signed-off-by: David Shah <dave@ds0.me>
2018-11-12 11:23:31 +00:00
Eddie Hung
7af788f9e3
[timing] Fix combinational -> combinatorial
2018-11-11 13:49:09 -08:00
Eddie Hung
32517dfb04
[timing] Better messaging for failed timing analysis, allow --force to
...
continue
2018-11-11 13:23:00 -08:00
Clifford Wolf
6002a0a80a
clangformat
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-11 19:48:15 +01:00
Clifford Wolf
f9a5126338
Another router1 bugfix
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-11 17:50:42 +01:00
Clifford Wolf
f93129634b
Add getConflictingWireWire() arch API, streamline getConflictingXY semantic
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-11 17:28:41 +01:00
Clifford Wolf
ee8826b6e8
Ignore "duplicate" arcs in the same net in router1
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-11 12:16:25 +01:00
Clifford Wolf
dac553cab4
Add some additional checks to router1 to find issues in input netlist
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-11 12:04:02 +01:00
Clifford Wolf
d2bdb670c0
Add getConflictingPipWire() arch API, router1 improvements
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-11 11:34:38 +01:00
Clifford Wolf
285bffeac5
Another bugfix in router1
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-11 10:11:55 +01:00
Clifford Wolf
5cc9b9f61f
Bugfix in router1
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-11 10:02:32 +01:00
Eddie Hung
78b684bcf8
[placer1] Actually check for TMG_IGNORE!
2018-11-10 22:30:35 -08:00
Eddie Hung
200fb3f664
[placer1] Ignore timing of TMG_IGNORE nets
2018-11-10 20:05:36 -08:00
Clifford Wolf
e7ae28cafe
Minor improvements in router1
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-11 00:29:25 +01:00
Clifford Wolf
5b8c8bb966
Some router1 cleanups
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-10 23:50:49 +01:00
Clifford Wolf
d904a37138
flush logs when throwing an assertion_failure
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-10 23:50:08 +01:00
Clifford Wolf
6b94102e5a
Add checkers and assertions to router1 and other improvements
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-10 21:14:50 +01:00
Clifford Wolf
97070486f0
Fixes and cleanups in router1
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-10 14:00:36 +01:00
Clifford Wolf
c780ce584a
Fix log msg typo
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-09 23:03:14 +01:00
Clifford Wolf
e312fc79bc
Improve router console output
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-09 22:59:23 +01:00
Clifford Wolf
f0a3a272ca
Fixes and improvements in new router
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-09 22:39:39 +01:00
Clifford Wolf
aeaa0552ba
Essentially a rewrite router1
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-11-09 17:00:45 +01:00
Clifford Wolf
66dd17664c
Merge branch 'master' of github.com:YosysHQ/nextpnr into router_improve
2018-11-09 12:57:14 +01:00
Eddie Hung
8258586c7d
[common] placer to produce error when >1 cell->bel constraint
2018-11-08 16:21:31 -08:00
Mateusz Zalega
d03291eeb1
gui: improved FPGAViewWidget::paintGL() performance
...
Profiling revealed that memcpy() in QOpenGLBuffer::allocate() had been taking
the most time during paintGL() calls. I've been able to take the CPU usage
down to about 1/4 of its previous values by caching elements in VBOs and
updating them only after subsequent calls to renderGraphicElement().
Signed-off-by: Mateusz Zalega <mateusz@appliedsourcery.com>
2018-10-23 15:43:51 +02:00
David Shah
cdc9e0e81c
Merge pull request #92 from YosysHQ/python-cmdline
...
Allow running Python scripts for all points in flow
2018-10-21 10:08:04 +01:00
David Shah
b53a4862db
Merge pull request #89 from YosysHQ/ecp5_bram
...
ECP5 BRAM support
2018-10-17 11:14:27 +01:00
David Shah
7c9ab173da
common: Allow running Python scripts for all points in flow
...
Signed-off-by: David Shah <dave@ds0.me>
2018-10-17 10:51:23 +01:00
David Shah
228cbf77d0
placer: Fix conflicts during constraint legalisation
...
Signed-off-by: David Shah <dave@ds0.me>
2018-10-11 11:50:56 +01:00
Eddie Hung
96efe48847
Merge pull request #88 from YosysHQ/issue72
...
Resolve issue #72
2018-10-11 02:54:19 -07:00
David Shah
9ebec3b87f
clangformat
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 18:20:14 +01:00
David Shah
c8a9bb807c
ecp5: Debugging DRAM packing
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 17:45:35 +01:00
David Shah
a4ac174ccb
design_utils: Adding some design helper functions
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 15:43:02 +01:00
David Shah
d770eb672f
ecp5: Helper functions for distributed RAM support
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-10-01 15:23:12 +01:00
David Shah
a27c7b45de
Refactor chain finder to its own file
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-30 16:29:26 +01:00
David Shah
6afc2c75fd
ecp5: Adding carry helper functions
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-30 15:13:31 +01:00
David Shah
ea03aafc26
clangformat
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-30 15:13:18 +01:00
David Shah
2e7aeaef97
Merge pull request #81 from YosysHQ/ecp5_globals
...
Adding a simple ECP5 global network router
2018-09-30 13:31:27 +01:00
David Shah
0e0ad26f07
ecp5: Use ArchNetInfo to mark global nets to ignore
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 19:31:49 +01:00
David Shah
c5f9a12bb1
ecp5: Global router produces a working bitstream
...
Signed-off-by: David Shah <davey1576@gmail.com>
2018-09-29 17:36:08 +01:00
Miodrag Milanovic
bbfe0f969d
Make warnings visible in quiet mode
2018-09-19 19:28:34 +02:00
Eddie Hung
8749327f1e
[timing] Restore and skip false startpoints
2018-09-15 15:17:37 -07:00
Clifford Wolf
e91241f10d
Dispose of far too long routes earlier (use 3x est. delay as limit)
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-09-04 17:55:43 +02:00
Serge Bazanski
b8db177612
Merge pull request #66 from YosysHQ/issue65
...
Fix for min_slack == max_slack => bin_size == 0
2018-08-26 17:14:34 +01:00
Eddie Hung
32a4c5bd79
Fix for min_slack == max_slack => bin_size == 0
2018-08-22 09:24:30 -07:00
Clifford Wolf
26be6f9761
Merge pull request #47 from YosysHQ/settings_propagate
...
Use settings for placer1 and router1
2018-08-18 19:25:19 +02:00
Clifford Wolf
a8ca33a33a
Add stringf() helper function
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-18 14:13:27 +02:00
Miodrag Milanovic
eaf824ca73
Use emplace result for get,set of settings
2018-08-12 10:02:32 +02:00
Miodrag Milanovic
b400cd8d73
Read settings and check validity
2018-08-11 13:04:51 +02:00
Eddie Hung
fc0496ec71
Merge remote-tracking branch 'origin/master' into placer_speedup
2018-08-10 19:51:35 -07:00
Miodrag Milanovic
e5006d4f2f
Save settings and give nicer names to some
2018-08-10 19:11:30 +02:00
Eddie Hung
ded8308683
std::vector::resize() not reserve()
2018-08-09 21:03:07 -07:00
Eddie Hung
1514903ea9
Get rid of map lookup by borrowing udata to use as index into vector
2018-08-09 20:45:20 -07:00
Eddie Hung
e419b34027
Try with vector
2018-08-09 19:10:50 -07:00
Miodrag Milanovic
93a0d24560
Use settings for placer1 and router1
2018-08-09 18:39:10 +02:00
Miodrag Milanovic
8b04a64629
Fix compile warning
2018-08-09 17:34:57 +02:00
Miodrag Milanovic
0696d62358
Expose log_always that will be displayed disregarding quite flag
2018-08-09 13:35:18 +02:00
Miodrag Milanovic
6b6a0c6d3c
Added quiet mode for logging
2018-08-09 13:28:21 +02:00
Miodrag Milanovic
8420cb4c80
Fix MSVC compile
2018-08-09 11:00:24 +02:00
David Shah
ed602baa06
Merge pull request #42 from YosysHQ/floorplan
...
Add basic data structures for floorplanning
2018-08-09 10:49:11 +02:00
Clifford Wolf
5ddde5c49f
Add pip locations
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-09 10:39:53 +02:00
Clifford Wolf
a9b6543361
Add Region struct
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-09 10:39:53 +02:00
Miodrag Milanovic
5dd7a74b87
Make loading works nice and use settings
2018-08-08 21:15:54 +02:00
Miodrag Milanovic
61bce47f3c
Use settings for json and pcf
2018-08-08 20:14:18 +02:00
Clifford Wolf
f6189e4677
Merge branch 'master' of github.com:YosysHQ/nextpnr into constids
2018-08-08 19:35:13 +02:00
David Shah
cd4e761bb7
Merge pull request #44 from YosysHQ/improve_timing_spec
...
Speed up budget allocator using topographical ordering and update cell timing API
2018-08-08 19:23:47 +02:00
Clifford Wolf
2390f7f59c
Add ctx->settings
...
Signed-off-by: Clifford Wolf <clifford@clifford.at>
2018-08-08 18:46:33 +02:00