Commit Graph

4385 Commits

Author SHA1 Message Date
Keith Rothman
b8c823ef99 Avoid linear scan in PIP check loop.
The previous additions to archcheck increased the runtime of the nexus
archcheck quiet a bit.

Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-01-29 13:42:14 -08:00
David Shah
15b2852b91
Merge pull request #556 from YosysHQ/dave/cleanup
General opportunistic cleanup
2021-01-28 16:10:22 +00:00
D. Shah
94e8847d67 cleanup: Spelling fixes
Signed-off-by: D. Shah <dave@ds0.me>
2021-01-28 15:19:06 +00:00
D. Shah
5fc3e8e4d2 cleanup: Fix compiler warnings
Signed-off-by: D. Shah <dave@ds0.me>
2021-01-28 15:02:08 +00:00
D. Shah
6ecf7f86c8 cleanup: Remove dead/unused code
Note that some '#if 0' code that might still be useful for debugging in
the future has been retained.

Signed-off-by: D. Shah <dave@ds0.me>
2021-01-28 14:59:13 +00:00
D. Shah
0d97904216 clangformat
Signed-off-by: D. Shah <dave@ds0.me>
2021-01-28 14:38:20 +00:00
David Shah
b671d8f59d
Merge pull request #553 from YosysHQ/rel-slice
Switch from RelPtr to RelSlice
2021-01-28 12:53:03 +00:00
David Shah
a95d6678b1
Merge pull request #550 from pepijndevos/gw1n4
Gowin: Add GW1N-4 support
2021-01-28 08:13:21 +00:00
David Shah
6a7fa4b402
Merge pull request #554 from litghost/default_to_release
Default to Release, but allow other modes (e.g. Debug, RelWithDebInfo).
2021-01-28 07:31:27 +00:00
David Shah
bf8a14252b
Merge pull request #555 from litghost/complete_archcheck
Add connectivity round trip checks to archcheck.
2021-01-28 07:31:07 +00:00
Keith Rothman
b8770915ad Add connectivity round trip checks to archcheck.
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-01-27 18:14:09 -08:00
Keith Rothman
a5472bc5c1 Default to Release, but allow other modes (e.g. Debug, RelWithDebInfo).
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-01-27 18:13:10 -08:00
D. Shah
b87ab0ee9d Make RelSlice uncopyable
Signed-off-by: D. Shah <dave@ds0.me>
2021-01-27 20:49:14 +00:00
D. Shah
75ee2fc4e6 Move RelPtr/RelSlice out of arches into common
The bba approach seems widely used enough that it's reasonable for this
to become part of common code.

Signed-off-by: D. Shah <dave@ds0.me>
2021-01-27 20:43:01 +00:00
D. Shah
3fc5455ec5 ecp5: Switch from RelPtr to RelSlice
This replaces RelPtrs and a separate length field with a Rust-style
slice containing both a pointer and a length; with bounds checking
always enforced.

Thus iterating over these structures is both cleaner and safer.

Signed-off-by: D. Shah <dave@ds0.me>
2021-01-27 19:39:19 +00:00
D. Shah
c10238de8c ice40: Switch from RelPtr to RelSlice
This replaces RelPtrs and a separate length field with a Rust-style
slice containing both a pointer and a length; with bounds checking
always enforced.

Thus iterating over these structures is both cleaner and safer.

Signed-off-by: D. Shah <dave@ds0.me>
2021-01-27 18:35:49 +00:00
D. Shah
e049d5f2fc nexus: Switch from RelPtr to RelSlice
This replaces RelPtrs and a separate length field with a Rust-style
slice containing both a pointer and a length; with bounds checking
always enforced.

Thus iterating over these structures is both cleaner and safer.

Signed-off-by: D. Shah <dave@ds0.me>
2021-01-27 17:24:01 +00:00
D. Shah
dc46d84c35 ecp5: Fix bottom clock tile renaming for tilegroups
Signed-off-by: D. Shah <dave@ds0.me>
2021-01-25 15:45:56 +00:00
Pepijn de Vos
2700687c00 Gowin: Add GW1N-4 support 2021-01-03 19:45:00 +01:00
Miodrag Milanović
9b9628047c
Merge pull request #549 from YosysHQ/update
Update pybind11 version and fix for future python versions
2021-01-02 11:16:49 +01:00
Miodrag Milanovic
61b07bc9a6 PyEval_InitThreads only for older than 3.9 2021-01-02 10:22:51 +01:00
Miodrag Milanovic
e76cdab6dd Update pybind11 to version 2.6.1 2021-01-02 10:15:39 +01:00
David Shah
c6cdf30501
Merge pull request #548 from per-gron/c++17
C++17 compatibility: Don't use std::random_shuffle
2020-12-30 20:37:07 +00:00
Per Grön
60276e3447 C++17 compatibility: Don't use std::random_shuffle
std::random_shuffle deprecated in C++14 and was removed in C++17.
2020-12-30 18:53:32 +01:00
David Shah
818faa78aa clangformat
Signed-off-by: David Shah <dave@ds0.me>
2020-12-30 16:49:55 +00:00
Pepijn de Vos
3611f54902
Gowin target (#542)
* load wires

* add slice bels

* add IOB

* add aliases

* local aliases

* broken packing stuff

* working packer

* add constraints

* pnr runs1111

* add timing info

* constraints

* more constraint stuff

* add copyright

* remove generic reference

* remove parameters

* remove generic python api

* add newline to end of file

* some small refactoring

* warn on invalid constraints

* don't error on missing cell

* comment out debugging print

* typo

* avoid copy

* faster empty idstring

* remove intermediate variable

* no more deadnames

* fix cst warnings

* increase ripup and epsilon a bit

* take single device parameter

* add info to readme

* gui stubs

* Revert 4d03b681a8

* assign ff_used in assignArchInfo

* decrease beta for better routability

* try to fix CI
2020-12-30 14:59:55 +00:00
David Shah
5e53a18292 ecp5: Improve pseudo-diff IO error handling
Signed-off-by: David Shah <dave@ds0.me>
2020-12-27 20:14:49 +00:00
David Shah
74c4fa6751 ice40: Nicer error for unconstrained SB_GB_IO
Signed-off-by: David Shah <dave@ds0.me>
2020-12-27 20:11:08 +00:00
David Shah
a40829fef3 command.cc: Improve help text
Signed-off-by: David Shah <dave@ds0.me>
2020-12-27 20:05:33 +00:00
David Shah
84c55f8931
Merge pull request #543 from tcal-x/use-single-char-find
Use std::string::find(char c) when searching for a single character.
2020-12-17 21:19:05 +00:00
David Shah
c667c56bd9 ecp5: Fix FF timing data
Signed-off-by: David Shah <dave@ds0.me>
2020-12-17 20:27:32 +00:00
Tim Callahan
c967f8e434 Use std::string::find(char c) when searching for a single character.
Signed-off-by: Tim Callahan <tcal@google.com>
2020-12-16 20:07:56 -08:00
David Shah
c8cb9895a3
Merge pull request #540 from YosysHQ/dave/nexus-dotproduct
nexus: Add MULTADDSUB9X9WIDE support
2020-12-10 20:36:56 +00:00
David Shah
2c6caf4a9a nexus: Add MULTADDSUB9X9WIDE support
Signed-off-by: David Shah <dave@ds0.me>
2020-12-08 15:49:48 +00:00
David Shah
bdaa9f0eae
Merge pull request #536 from YosysHQ/dave/disable-default-gui
cmake: Disable building GUI by default
2020-12-08 12:02:30 +00:00
David Shah
0a54ffdd44 cmake: Disable building GUI by default
This should reduce the number of Qt5-related issues, which often prevent
even the basic command line flow from working.

Signed-off-by: David Shah <dave@ds0.me>
2020-12-08 10:01:23 +00:00
David Shah
ca08add9c9
Merge pull request #528 from YosysHQ/dave/nexus-lram
nexus: Add basic LRAM support
2020-12-08 09:26:09 +00:00
David Shah
588042dc99 nexus: Fix LRAM pin types
Signed-off-by: David Shah <dave@ds0.me>
2020-12-07 13:26:45 +00:00
David Shah
f923d32620 nexus: Add support for initialised LRAM
Signed-off-by: David Shah <dave@ds0.me>
2020-12-07 11:57:10 +00:00
David Shah
92ef01830c ice40: Clarify feedback paths in PLL constraints code
Signed-off-by: David Shah <dave@ds0.me>
2020-12-03 11:40:00 +00:00
David Shah
c73b4bec8f
Merge pull request #530 from YosysHQ/dave/ice40-derive-constr
ice40: Derive PLL timing constraints
2020-12-03 11:35:31 +00:00
David Shah
940b7efa15 ice40: Derive PLL timing constraints
Signed-off-by: David Shah <dave@ds0.me>
2020-12-03 09:55:30 +00:00
David Shah
270efdca85 nexus: Add basic LRAM support (no init)
Signed-off-by: David Shah <dave@ds0.me>
2020-12-02 17:07:34 +00:00
David Shah
f937982754
Merge pull request #527 from YosysHQ/dave/nexus-clocking
nexus: Clock constraint and PLL support
2020-12-02 16:21:29 +00:00
David Shah
86e6a2225c nexus: Add PLL support
Signed-off-by: David Shah <dave@ds0.me>
2020-12-02 15:01:46 +00:00
David Shah
b666c85824 nexus: Add support for deriving timing constraints in packer
Signed-off-by: David Shah <dave@ds0.me>
2020-12-02 09:44:17 +00:00
David Shah
5a291e4622 nexus/pdc: Parse simple clock constraints
Signed-off-by: David Shah <dave@ds0.me>
2020-12-02 09:34:11 +00:00
David Shah
868902fbdf
Merge pull request #526 from YosysHQ/dave/router2-timing
router2: Avoid ripup of critical path
2020-12-01 12:51:02 +00:00
David Shah
62dde576e0
Merge pull request #525 from YosysHQ/dave/router2-tweaks
router2: Improve thread safety
2020-12-01 10:22:42 +00:00
David Shah
402819c64b router2: Avoid ripup of critical path
Signed-off-by: David Shah <dave@ds0.me>
2020-12-01 09:54:19 +00:00