nextpnr/himbaechel
YRabbit c7836625b9
Gowin. Add BSRAM SDP fix. (#1575)
In the GW5A series, the primitive SemiDual Port BSRAM cannot function
when the width of any of the ports is 32/36 bits - it is necessary to
divide one block into two identical ones, each of which will be
responsible for 16 bits.

Here, we perform such a division and, in addition, ensure that the new
cells resulting from the division undergo the same packing procedure as
the original ones.

Naturally, with some reservations (the AUX attribute is responsible for
this) - in the case of SP, when service elements are added, it makes
sense to do this immediately for 32-bit SP and only then divide.

Also, SDPs are currently being corrected for cases where both ports are
‘problematic’, but it may happen that one port is 32 and the other is,
say, 1/2/4/8/16. This has been left for the future.

Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2025-10-13 11:07:39 +02:00
..
himbaechel_dbgen himbaechel: Extend API to enable cell delay override (#1535) 2025-08-20 06:32:18 +02:00
uarch Gowin. Add BSRAM SDP fix. (#1575) 2025-10-13 11:07:39 +02:00
.gitignore himbächel: Initial implementation 2023-05-13 08:26:41 +02:00
CMakeLists.txt Gatemate FPGA initial support (#1473) 2025-04-22 16:41:01 +02:00
arch.cc himbaechel: Extend API to enable cell delay override (#1535) 2025-08-20 06:32:18 +02:00
arch.h himbaechel: Extend API to enable cell delay override (#1535) 2025-08-20 06:32:18 +02:00
arch_pybindings.cc himbaechel: Add Python binding for get_tile_wire_range 2025-06-25 18:37:17 +02:00
arch_pybindings.h himbächel: Initial implementation 2023-05-13 08:26:41 +02:00
archdefs.h Add GroupId related calls to Himbaechel API (#1399) 2024-12-05 13:59:33 +01:00
chipdb.h himbaechel: Extend API to enable cell delay override (#1535) 2025-08-20 06:32:18 +02:00
himbaechel_api.cc himbaechel: Extend API to enable cell delay override (#1535) 2025-08-20 06:32:18 +02:00
himbaechel_api.h himbaechel: Extend API to enable cell delay override (#1535) 2025-08-20 06:32:18 +02:00
himbaechel_constids.h himbächel: Initial implementation 2023-05-13 08:26:41 +02:00
himbaechel_gfxids.h Add GroupId related calls to Himbaechel API (#1399) 2024-12-05 13:59:33 +01:00
himbaechel_helpers.cc himbaechel: Add support for new constants API 2023-11-07 09:00:03 +01:00
himbaechel_helpers.h clangformat 2024-09-30 14:51:33 +02:00
main.cc CMake: refactor architecture-specific build system parts. 2025-01-21 17:13:03 +00:00