Commit Graph

2646 Commits

Author SHA1 Message Date
nella a26e2adfe6
Merge 52b828e725 into 4821ed17b4 2026-07-29 09:48:58 +02:00
nella 52b828e725 Extend latch policy. 2026-07-27 16:27:45 +02:00
nella b840725012 check make always_latch exempt. 2026-07-27 16:27:45 +02:00
nella 511017acc1
Merge branch 'main' into nella/fuse-2 2026-07-24 12:20:35 +02:00
nella 526ab7aab3 Use Nexus DSP pipelined registers. 2026-07-24 12:10:07 +02:00
Lofty f0b5225134 flowmap: remove 2026-07-22 13:50:33 +01:00
drewbabel 3006280d70
xilinx_srl: keep the clock enable on FDRE shift registers
run_fixed inferred a fixed length shift register from a chain of FDRE
flops but assigned it ENPOL 2, which the cells_map template reads as no
enable and ties the enable high. FDRE has an active high clock enable, so
the shift register shifted every cycle and ignored stalls. Give FDRE and
FDRE_1 chains ENPOL 1 so the active high enable is kept.

Add tests/arch/xilinx/xilinx_srl_enable.ys covering the FDRE path.
2026-07-20 23:59:40 -07:00
myrtle a0fbe6e133
Merge pull request #6054 from YosysHQ/gatecat/nexus-radiant-fix
nexus: Fix Radiant netlist compatibility
2026-07-19 13:22:46 +00:00
gatecat 15c54ae15e nexus: Fix Radiant netlist compatibility
Signed-off-by: gatecat <gatecat@ds0.me>
2026-07-19 12:44:40 +02:00
Johan Olby 63457de80e
mul2dsp: normalize operand order
Move the operand commute that puts the wider operand on A ahead of the
min-width checks. Checking the min-widths first made an asymmetric rule
(DSP_A_MINWIDTH != DSP_B_MINWIDTH) match only products that already had the
wider operand on A; a product in the other order was rejected before the
normalization.
2026-07-15 16:21:07 +02:00
nella 388ed215c4 Remove old techmap. 2026-07-08 12:07:58 +02:00
nella fe1ce9e5c1 Fix merge. 2026-07-08 11:54:55 +02:00
nella f5809a7c2c
Merge branch 'main' into nella/latch-toggle 2026-07-08 11:41:08 +02:00
nella 362e828dc2 Simplify check -latchonly calls in synth. 2026-07-07 10:10:00 +02:00
Leo Moser b06c57b2bf fabulous: remove unused `-blif` option
Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-07-01 13:38:45 +02:00
Leo Moser 655cb40d0f fabulous: add `--cells-map` option
Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:09:51 +02:00
Leo Moser 4fac567673 fabulous: add `-arith-map` option
Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:09:51 +02:00
Leo Moser d50999ea45 fabulous: format using clang
Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:09:51 +02:00
Leo Moser 2535504217 fabulous: update CMakeLists.txt
Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:09:51 +02:00
Leo Moser aa84f4a13b fabulous: remove legacy `arith_map.v` mapping
Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:09:51 +02:00
Leo Moser f79c0ad214 fabulous: add `-multiplier-map` option, map to `$__FABULOUS_MUL`
- an example: `-multiplier-map multiplier_map.v 8:8:2:2:10`

Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:09:44 +02:00
Leo Moser d72cca2945 fabulous: add `-clkbuf-map` option, map to `$__FABULOUS_GBUF`
Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:09:33 +02:00
Leo Moser ec8155e040 fabulous: convert `-iopad` to `-noiopad`, map to `$__FABULOUS_[I|O|T|IO]BUF`
- with PCF support in nextpnr fabulous, `-iopad` is now the default
- supply further mapping using `-extra-plib`

Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:09:19 +02:00
Leo Moser c73fd4f70b fabulous: add `-extra-mlibmap` option, remove legacy `-noregfile` option
- this allows to map to any memories
- to map legacy register files, use: `-extra-plib regfile.v -extra-mlibmap ram_regfile.txt -extra-map regfile_map.v`

Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:08:54 +02:00
Leo Moser 6c82468031 fabulous: add `-ff` option, remove legacy `-plib`/`-complex-dff` option
The concept of 'COMPLEX_DFF' is deprecated. Instead, simply specify the supported flip-flops using `-ff <cell_type_pattern> <init_values>` and supply the mapping file.

Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:06:38 +02:00
Leo Moser 30640c71e2 fabulous: fix argument check in `-carry` option
Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:02:41 +02:00
Leo Moser 54c37b395b fabulous: fix argument check in `-lut` option
Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:02:41 +02:00
Leo Moser d671de97e9 fabulous: remove legacy `-vpr` option
Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:02:41 +02:00
Leo Moser 32bd3e5418 fabulous: remove unused `-encfile` option
Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:02:41 +02:00
Leo Moser a1759e7ae7 fabulous: remove unused `-edif` option
Signed-off-by: Leo Moser <leomoser99@gmail.com>
2026-06-30 16:02:41 +02:00
nella a3b8609c84 Add -nolatches check option. 2026-06-24 10:38:10 +02:00
Miodrag Milanovic a689342207 Remove trailing whitespaces 2026-06-23 07:24:59 +02:00
Miodrag Milanovic 48a3dcc02a End of file fix 2026-06-23 07:23:41 +02:00
Miodrag Milanovic 3ac58b3ac1 Fixed line endings 2026-06-23 07:17:22 +02:00
Miodrag Milanovic 09eef69e31 synth_intel: fix broken dsp mapping 2026-06-22 17:51:26 +02:00
nella 1c851aecfb Fixup op precedence. 2026-06-22 14:22:14 +02:00
nella b3b1394cf1 Fixup level policy. 2026-06-18 18:00:51 +02:00
nella 32a268d745 Emit errors before dfflegalize. 2026-06-18 17:07:24 +02:00
nella b2d688dbf9 Error out on latches. 2026-06-17 17:36:32 +02:00
nella c814ef35e3 Emit latch warning. 2026-06-17 11:27:43 +02:00
nella 7473fcf939 Add latch inference msg severity option. 2026-06-15 14:17:02 +02:00
nella 3948e7f94c Use Nexus DSP pipelined registers. 2026-06-03 12:46:26 +02:00
Catherine a727e7f6e7 Migrate build system to CMake
See #5895 for details.

This commit does not include CI or documentation changes.
2026-06-03 08:58:10 +00:00
Miodrag Milanović b85777a6e6
Merge pull request #5914 from pu-cc/gatemate-scopename
gatemate: add option to create 'scopename' attributes when flattening netlist
2026-05-29 10:31:04 +00:00
Patrick Urban 1d86b3cd6e gatemate: add option to create 'scopename' attributes when flattening the netlist 2026-05-28 14:46:25 +02:00
nella 1414012676 Add sign and op checks. 2026-05-28 09:58:18 +02:00
nella 7fef67a141 Simplify nexus map. 2026-05-28 09:58:18 +02:00
nella d6106f141c Add matching for fused mac operations for Nexus (fix #5906). 2026-05-28 09:58:18 +02:00
Miodrag Milanovic 75dcbe03c6 Convert RTLIL::unescape_id of IdString to unescape() 2026-05-16 19:49:45 +02:00
Miodrag Milanovic 8bbc3c359c Remove id2cstr uses in our code base 2026-05-16 19:49:45 +02:00