aboutsummaryrefslogtreecommitdiffstats
path: root/ecp5/docs/primitives.md
blob: 19976021de76dbbbaa239e8b0f4c1f7c0ff315c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# nextpnr-ecp5 Primitive Support List

nextpnr-ecp5 currently supports the following primitives:
 
 - **ALU54B** - 54-bit ternary adder/subtractor for high speed (limited support, must be manually placed)
 - **CCU2C** - carry chain
 - **CLKDIVF** - clock divider
 - **DCUA**
 - **DDRDLLA** - 90° delay for DQS or clock for DDR interface
 - **DELAYF** - configurable signal delay
 - **DELAYG** - simple signal delay
 - **DP16KD** - true dual port block RAM
 - **DQSBUFM** - DQS circuit for DDR memory
 - **DTR** - die temperature readout *notice: The IO-names in the FPGA Libraries Reference Guide 08/16 are wrong*
 - **ECLKSYNCB** - external clock stop block for DDR-stuff
 - **EHXPLLL** - global(??) phase-locked-loop
 - **EXTREFB** - reference clock input buffer for external clock for Serdes TxPLL
 - **GSR** - global set/reset interface
 - **IDDR71B** - 7:1 LVDS input
 - **IDDRX1F** - generic input DDR primitive
 - **IDDRX2DQA** - DDR2/3 memory input interface
 - **IDDRX2F** - generic input DDR primitive
 - **IOLOGIC**
 - **JTAGG** - access to JTAG controller (untested)
 - **L6MUX21** - 2 to 1 multiplexer
 - **LUT4** - 4 input Look Up Table
 - **MULT18X18D** - DSP multiplier (cascade functionality not supported)
 - **ODDR71B** - 7:1 LVDS ODDR implementation
 - **ODDRX1F** - generic X1 ODDR implementation
 - **ODDRX2DQA** - memory output DDR primitive for DQ outputs
 - **ODDRX2DQSB** - memory output DDR primitive for DQS outputs
 - **ODDRX2F** - generic X2 ODDR implementation
 - **OSCG** - access to / control of internal oscillator
 - **OSHX2A** - memory output DDR primitive for address and command
 - **PCSCLKDIV**
 - **PFUMX** - 2 input multiplexer within the programmable function unit (PFU)
 - **SEDGA** - allows checking configuration data for soft-errors, see TN1268 (untested)
 - **SIOLOGIC**
 - **TRELLIS_DPR16X4**
 - **TRELLIS_ECLKBUF**
 - **TRELLIS_FF**
 - **TRELLIS_IO**
 - **TRELLIS_SLICE**
 - **TSHX2DQA** - tristate control for DQ data output for DDR2 and DDR3 memory
 - **TSHX2DQSA** - tristate control for DQS output
 - **USRMCLK** - provides access to SPI PROM