nextpnr/himbaechel/uarch
YRabbit b82cf51aea Gowin. Add the ability to place registers in IOB
IO blocks have registers: for input, for output and for OutputEnable
signal - IREG, OREG and TREG respectively.

Each of the registers has one implicit non-switched wire, which one
depends on the type of register (IREG has a Q wire, OREG has a D wire).
Although the registers can be activated independently of each other they
share the CLK, ClockEnable and LocalSetReset wires and this places
restrictions on the possible combinations of register types in a single
IO.

Register placement in IO blocks is enabled by specifying the command
line keys --vopt ireg_in_iob, --vopt oreg_in_iob, or --vopt ioreg_in_iob.

It should be noted that specifying these keys leads to attempts to place
registers in IO blocks, but no errors are generated in case of failure.

Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2024-12-08 16:40:45 +10:00
..
example Add GroupId related calls to Himbaechel API (#1399) 2024-12-05 13:59:33 +01:00
gowin Gowin. Add the ability to place registers in IOB 2024-12-08 16:40:45 +10:00
ng-ultra Adding NanoXplore NG-Ultra support (#1397) 2024-12-04 09:00:05 +01:00
xilinx Himbaechel Xilinx : XDC commands : Also search nets with lowercase for better interoperability with other synthesis tools and RTL languages 2024-10-01 15:24:40 +02:00