Commit Graph

2836 Commits

Author SHA1 Message Date
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 3503f4e907 router2: Make splitting of wires thread-safe
Signed-off-by: David Shah <dave@ds0.me>
2020-12-01 09:38:52 +00:00
David Shah b6c91d1621 router2: Add per-thread rng
Signed-off-by: David Shah <dave@ds0.me>
2020-12-01 09:21:44 +00:00
Miodrag Milanović 8b5c0dc1e4
Merge pull request #524 from daveshah1/nextpnr-nexus
Upstreaming basic support for Nexus devices
2020-11-30 10:56:59 +01:00
David Shah 2fe8bebc6c nexus: Update docs and CMake
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:59:04 +00:00
David Shah 567166aece nexus: Fix db integrity check
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah bb50b54d80 nexus: Add to CI
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah ca73e14cf9 nexus: Add post-place LUTFF optimisation
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah f84850064f nexus: Improve error handling in global router
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah df3c6dfe3e nexus: Preliminary integration of DSP timing data
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 76543d05e7 nexus: Tweak heuristics to improve routeability
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah e3b3201d53 nexus: Clocked MULTADDSUB36X36 fix
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 5cf7f01169 nexus: Add MULTADDSUB36X36
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah f795527454 nexus: Add MULTADDSUB18X18 support
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah edd719c5c5 nexus: ACC54 definitions
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 91d746cfc8 nexus: Add DSP pre-adder support
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah fcde8e2d56 nexus: Fix DSP signed ports
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 54539b8519 nexus: Larger DSP tweaks
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 6b5277638b nexus: Fix slow routing around DSPs
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 160045a058 nexus: Fix validity checking when DSPs are used
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah d8e748bc58 nexus: Refactor DSP macro splitting to make it more generic
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 30c65931b2 nexus: Add support for clocked MULT9X9s
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 9203181625 nexus: Support for unclocked 9x9 multiplies
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah d9a19897c4 nexus: More DSP primitive config
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 094bf419d4 nexus: Miscellaneous DSP infrastructure
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 90608f2c89 nexus: Add some infrastructure for DSP packing
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah c7ad3cece6 nexus: Tweak delay heuristics
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah a69c595802 router1: Fix same-source-dest case
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 530d6ce9e9 nexus: Add EBR timing analysis
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 9b89a82573 nexus: Add LUTRAM and WIDEFN9 timing support
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 8c1f25cf31 timing: Add a few more cell types
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 6457b4ca7b nexus: Swap sort order to make some lookups easier
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah fa9194e3e2 nexus: Add cell delay lookup
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 963fd175ad nexus: Lookup speed grade and pip delays
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 4e5ad7feac nexus: Add timing structures to BBA
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 629a06b0ae nexus: Add error if device not specified
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah f41b4045d4 nexus: Add missing Q_MOC_RUN guard
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 3d41656168 nexus: Default EBR DWS pins to 1
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 0a59cbb8ce nexus: Use dedicated Vcc routing for OXIDE_COMB pins
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah e6c2887773 nexus: Basic support for carries
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah c89d830e16 nexus: Add WIDEFN9 support
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 00ff7c6cfe nexus: Default to router2 for now
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah 5e90086d4f router2: Fix case where src and dst are the same
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah f8dca82a71 nexus: Basic support for differential IO types
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:28 +00:00
David Shah f749038959 nexus: Improve placer config
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah e8e6316f88 nexus: EBR fixes
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah 27ecaf3e88 nexus: EBR FASM generation
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah 4503608c7c nexus: Add packing rules for BRAM
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah 8d1678f0ef nexus: Add stub GUI
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah 70749b37d0 nexus: Fix Python bindings
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00