nextpnr/himbaechel
YRabbit 91b0c4f90a gowin: Himbaechel. Deal with SP BSRAM ports.
The OCE signal in the SP(X)9B primitive is intended to control the
built-in output register. The documentation states that this port is
invalid when READ_MODE=0 is used. However, it has been experimentally
established that you cannot simply apply VCC or GND to it and forget it
- the discrepancy between the signal on this port and the signal on the
CE port leads to both skipping data reading and unnecessary reading
after CE has switched to 0.
Here we force these ports to be connected to the network, except in the
case where the user controls the OCE signal using non-constant signals.

Also:
  * All PIPs for clock spines are made inaccessible to the common router
    - in general, using these routes for signals that have not been
    processed by a special globals router is fraught with effects that
    are difficult to detect.
  * The INV primitive has been added purely to speed up development -
    this primitive is not generated by Yosys, but is almost always
    present in vendor output files.

Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2024-01-23 14:00:29 +01:00
..
himbaechel_dbgen himbaechel: Fix when more then 32k unique node shapes 2023-11-22 17:11:27 +01:00
uarch gowin: Himbaechel. Deal with SP BSRAM ports. 2024-01-23 14:00:29 +01:00
.gitignore himbächel: Initial implementation 2023-05-13 08:26:41 +02:00
arch_pybindings.cc himbaechel: Add discovery of uarch and chipdb 2023-09-15 08:23:43 +02:00
arch_pybindings.h himbächel: Initial implementation 2023-05-13 08:26:41 +02:00
arch.cc himbaechel: Switch default back to router1 for now 2023-11-17 09:09:59 +01:00
arch.h Add ability to override Cluster methods in Himbaechel 2023-12-11 13:53:52 +01:00
archdefs.h himbaechel: Initial timing support 2023-09-08 09:55:49 +02:00
chipdb.h himbaechel: Add support for new constants API 2023-11-07 09:00:03 +01:00
family.cmake himbaechel: Adding a xilinx uarch for xc7 with prjxray 2023-11-14 17:12:09 +01:00
himbaechel_api.cc Add ability to override Cluster methods in Himbaechel 2023-12-11 13:53:52 +01:00
himbaechel_api.h Add ability to override Cluster methods in Himbaechel 2023-12-11 13:53:52 +01:00
himbaechel_constids.h himbächel: Initial implementation 2023-05-13 08:26:41 +02:00
himbaechel_helpers.cc himbaechel: Add support for new constants API 2023-11-07 09:00:03 +01:00
himbaechel_helpers.h himbaechel: Add support for new constants API 2023-11-07 09:00:03 +01:00
main.cc himbaechel: Add discovery of uarch and chipdb 2023-09-15 08:23:43 +02:00