
4
ECP5 and ECP5-5G Hi
g
h-Speed I/O Interface
Input DDR (IDDR)
The input DDR function can be used in either 1X (2:1), 2X (4:1) or 7:1 gearing modes. In the 1X mode, the IDDR
module inputs a single DDR data input and SCLK (primary clock) and provides a 2-bit wide data synchronized to
the SCLK (primary clock) to the FPGA fabric.
The 2X gearing is used for interfaces with data rate higher than 400Mbps which would require higher than 200 MHz
system clock. There the IDDR element inputs a single DDR data input and DQS clock (for DDR memory interface)
or Edge Clock ECLK (for all other high speed interfaces) and provides a 4-bit wide parallel data synchronized to
SCLK (primary clock) to the FPGA fabric.
In the 7:1 mode, mostly used in video applications required 7:1 interface, the IDDR element will input a single DDR
data input and ECLK and output a 7 bit wide parallel data synchronized to SCLK (primary clock) to the FPGA fab-
ric.
Output DDR (ODDR)
The output DDR function can also be supported in 1X (2:1), 2X (4:1) or 7:1 gearing modes. In the 1X mode, the
ODDR element receives 2-bit wide data from the FPGA fabric and generates a single DDR data output and Clock
output.
Similar to input interfaces the 2X gearing is used for data rate higher than 400Mbps which would require higher
than 200 MHz system clock. Here the ODDR element receives 4-bit wide data from the FPGA fabric and generates
a single DDR data output and Clock output. The 2X element will use high speed edge clock (ECLK) to clock the
data out for generic high speed interfaces and DQS clock for DDR memory interfaces.
In 7:1 mode, the ODDR element receives 7-bit wide data from FPGA fabric and generates a single DDR data out-
put and Clock output. The 7:1 element will send out data using high speed edge clock.
Ed
g
e Clock Dividers (CLKDIV)
Clock dividers are provided to create the divided down clocks used with the I/O Mux/DeMux gearing logic (SCLK
inputs to the DDR) and drives to the Primary Clock routing to the fabric. There are two clock dividers on each side
of the device.
Input/Output DELAY
There are two different types of input/output data delay available. Both DELAYF and DELAYG provide a fixed value
of delay to compensate for clock injection delay. The DELAYF element also allows the delay value to be set by the
user using 128 steps of delay. Each delay step generates ~25ps of delay. In DELAYF, user can overwrite the
DELAY setting dynamically using the MOVE and DIRECTION control inputs. The LOADN will reset the delay back
to the default value.