mirror of
https://github.com/YosysHQ/yosys
synced 2026-07-18 13:15:46 +00:00
synth_gowin guarded the mul2dsp + dsp_map path to gw1n/gw2a, so GW5A multiplies expanded to LUTs. Add a gw5a branch mapping the GW5A's three multiplier widths: $__MUL27X18 (M0 27x18) for larger multiplies, $__MUL12X12 (M1 12x12) for <=12x12 (which pack two-per-block via M0+M1), and $__MUL27X36 (27x36) for wide (B>18) multiplies. The blocks are signed-only (no per-operand sign control), so DSP_SIGNEDONLY is mandatory without it a 32x16 -1*-1 mapping yields 0x08000001 instead of 1. |
||
|---|---|---|
| .. | ||
| add_sub.ys | ||
| adffs.ys | ||
| bug5688.ys | ||
| compare.v | ||
| compare.ys | ||
| counter.ys | ||
| dffs.ys | ||
| fsm.ys | ||
| generate_mk.py | ||
| init-error.ys | ||
| init.v | ||
| init.ys | ||
| latches.ys | ||
| logic.ys | ||
| lutram.ys | ||
| mul_gw1n.ys | ||
| mul_gw2a.ys | ||
| mul_gw5a.v | ||
| mul_gw5a.ys | ||
| mux.ys | ||
| shifter.ys | ||
| tribuf.ys | ||