Commit Graph

4 Commits

Author SHA1 Message Date
YRabbit dd4d3056eb Gowin. DSP. Refactor port renaming.
Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2026-03-04 09:04:55 +01:00
YRabbit 008ccae25b Gowin. DSP. Implement MULT27X36.
The new multiplier is made from two 27x18 units by switching inputs and
creating a cluster connected via CASO->CASI.

A second pass was required to process the multipliers created on the
fly—the processing of DSP cells was separated into a separate function,
which resulted in a large diff, but in reality there were very few
changes.

An important point is that in the 5A series, there is a gap between
adjacent DSPs in one row. There are still SIA/CASI wires, so the DSPs on
either side of the gap are connected, but the distance between them is
greater than usual. We take this fact into account based on the gap
coordinates from the chip database.

Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2026-03-04 09:04:55 +01:00
YRabbit 6235ba21e3
Gowin.DSP. Add MULTALU27X18. (#1650)
This primitive occupies one DSP block entirely and can be connected into
complex chains both by arguments (shifting operands from SOA to SIA) and
by results (CASO->CASI cascades).

Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2026-02-26 12:25:10 +01:00
YRabbit d43c09d070
Gowin. Divide packer. (#1645)
Split the packer into several files.

Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2026-02-21 08:11:39 +01:00