2019-02-24 05:06:42 +08:00
|
|
|
# nextpnr-ecp5 Primitive Support List
|
|
|
|
|
|
|
|
nextpnr-ecp5 currently supports the following primitives:
|
|
|
|
|
2020-10-01 16:02:29 +08:00
|
|
|
- **ALU54B** - 54-bit ternary adder/subtractor (limited support, must be manually placed)
|
|
|
|
- **CCU2C** - 2x LUT4 with carry logic
|
2020-10-01 03:29:13 +08:00
|
|
|
- **CLKDIVF** - clock divider
|
2020-10-01 16:02:29 +08:00
|
|
|
- **DCUA** - dual channel 3/5Gbps SERDES
|
2020-10-01 03:29:13 +08:00
|
|
|
- **DDRDLLA** - 90° delay for DQS or clock for DDR interface
|
|
|
|
- **DELAYF** - configurable signal delay
|
|
|
|
- **DELAYG** - simple signal delay
|
|
|
|
- **DP16KD** - true dual port block RAM
|
2020-10-01 16:02:29 +08:00
|
|
|
- **DQSBUFM** - DQS control for DDR memory
|
2020-10-01 03:29:13 +08:00
|
|
|
- **DTR** - die temperature readout *notice: The IO-names in the FPGA Libraries Reference Guide 08/16 are wrong*
|
2020-10-01 16:02:29 +08:00
|
|
|
- **ECLKSYNCB** - edge clock stop/synchronisation
|
|
|
|
- **EHXPLLL** - phase-locked-loop
|
|
|
|
- **EXTREFB** - reference clock input buffer for external clock for SERDES
|
2020-10-01 03:29:13 +08:00
|
|
|
- **GSR** - global set/reset interface
|
2020-10-01 16:02:29 +08:00
|
|
|
- **IDDR71B** - 7:1 input gearbox
|
|
|
|
- **IDDRX1F** - generic 1:2 input DDR
|
|
|
|
- **IDDRX2DQA** - DDR2/3 memory 1:4 input interface
|
|
|
|
- **IDDRX2F** - generic 1:4 input DDR
|
|
|
|
- **JTAGG** - JTAG access to fabric
|
|
|
|
- **L6MUX21** - 2 input multiplexer for LUT6 and above
|
2020-10-01 03:29:13 +08:00
|
|
|
- **LUT4** - 4 input Look Up Table
|
|
|
|
- **MULT18X18D** - DSP multiplier (cascade functionality not supported)
|
2020-10-01 16:02:29 +08:00
|
|
|
- **ODDR71B** - 7:1 ODDR implementation
|
|
|
|
- **ODDRX1F** - generic 2:1 output DDR
|
|
|
|
- **ODDRX2DQA** - memory 4:1 output DDR primitive for DQ outputs
|
|
|
|
- **ODDRX2DQSB** - memory 4:1 output DDR primitive for DQS outputs
|
|
|
|
- **ODDRX2F** - generic 4:1 output DDR
|
|
|
|
- **OSCG** - internal oscillator
|
|
|
|
- **OSHX2A** - memory 4:1 output DDR primitive for address and command
|
|
|
|
- **PCSCLKDIV** - clock divider for SERDES clock outputs
|
|
|
|
- **PFUMX** - 2 input multiplexer for LUT5s
|
2020-10-01 03:29:13 +08:00
|
|
|
- **SEDGA** - allows checking configuration data for soft-errors, see TN1268 (untested)
|
2020-10-01 16:02:29 +08:00
|
|
|
- **TRELLIS_DPR16X4** - 16x4 LUTRAM
|
|
|
|
- **TRELLIS_ECLKBUF** - internal edge clock buffer
|
|
|
|
- **TRELLIS_FF** - SLICE flipflop
|
|
|
|
- **TRELLIS_IO** - tristate IO, mapped by Yosys from BB, IB, OB, etc
|
|
|
|
- **TRELLIS_SLICE** - logic SLICE (2x LUT4, 2x FF, 2x MUX2, CCU2 carry)
|
2020-10-01 03:29:13 +08:00
|
|
|
- **TSHX2DQA** - tristate control for DQ data output for DDR2 and DDR3 memory
|
|
|
|
- **TSHX2DQSA** - tristate control for DQS output
|
2020-10-01 16:02:29 +08:00
|
|
|
- **USRMCLK** - provides access to SPI flash clock (MCLK)
|