gatecat
d2579282a6
nexus: Fix bank Vcco FASM
...
Signed-off-by: gatecat <gatecat@ds0.me>
2021-03-29 20:38:50 +01:00
gatecat
0f425aff5a
nexus: Fix FASM gen for LIFCL-17
...
Signed-off-by: gatecat <gatecat@ds0.me>
2021-03-26 13:06:03 +00:00
Keith Rothman
fe4608386e
Split nextpnr.h to allow for linear inclusion.
...
"nextpnr.h" is no longer the god header. Important improvements:
- Functions in log.h can be used without including
BaseCtx/Arch/Context. This means that log_X functions can be called
without included "nextpnr.h"
- NPNR_ASSERT can be used without including "nextpnr.h" by including
"nextpnr_assertions.h". This allows NPNR_ASSERT to be used safely in
any header file.
- Types defined in "archdefs.h" are now available without including
BaseCtx/Arch/Context. This means that utility classes that will be
used inside of BaseCtx/Arch/Context can be defined safely in a
self-contained header.
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-03-15 09:05:23 -07:00
gatecat
08c7f97b1e
nexus: Support for hard DPHY
...
Signed-off-by: gatecat <gatecat@ds0.me>
2021-03-08 15:59:18 +00:00
Keith Rothman
c99fbde0eb
Mark IdString and IdStringList single argument constructors explicit.
...
Single argument constructors will silently convert to that type. This
is typically not the right thing to do. For example, the nexus and
ice40 arch_pybindings.h files were incorrectly parsing bel name strings,
etc.
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-02-04 16:38:07 -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
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
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
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
86e6a2225c
nexus: Add PLL support
...
Signed-off-by: David Shah <dave@ds0.me>
2020-12-02 15:01:46 +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
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
e6c2887773
nexus: Basic support for carries
...
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
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
cbf99d5e53
nexus: LUTRAM support
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
c80144b7f0
nexus: Generate FASM files that can be used standalone
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
da1e3c8612
nexus: Add constant/inversion packing
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
1bb509897c
nexus: More pin styles and FASM pinmux gen
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
0eb5c72cc5
nexus: Refactor cell pin style db
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
7f03f4d896
nexus: Tidy up FASM backend
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
af3af59df4
nexus: Use tilegroups for IO bitgen
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
df3866a800
nexus: Add IO packing
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
682351df7f
nexus: Updates and fixes
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
a586bfc290
nexus: Support Lattice-style parameters
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
a280f893d4
nexus: Add oscillator support
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
f8f3ee06c7
nexus: Add SEIO18 support
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
2fc75bae79
nexus: Fix FF naming
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
ee4e30ce8b
nexus/fasm: Fix SLICE lettering
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
1ff42e9936
nexus: Fixes
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
cef0e1db8f
nexus: Minimal IO FASM output
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
689922bc21
nexus: Add FASM export for comb logic and FFs
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00
David Shah
eb15463406
nexus: Add routing FASM export
...
Signed-off-by: David Shah <dave@ds0.me>
2020-11-30 08:45:27 +00:00