
3
ECP5 and ECP5-5G Hi
g
h-Speed I/O Interface
PLL
The PLL provides frequency synthesis, with additional static and dynamic phase adjustment, as well. Four output
ports are provided, CLKOP, CLKOS, CLKOS2 and CLKOS3. All four outputs have the same set of dividers. There is
one PLL per corner on the biggest device, totaling to four PLLs on each device.
DDRDLL
The DDRDLL is a dedicated DLL for creating the 90° clock delay. The DDRDLL outputs delay codes that are used
in the DQSBUF elements to delay the DQS input or in the DLLDEL module to delay the input clock. There is one
DDRDLL at each corner of the device, totaling to four DDRDLLs on each device. The DDRDLL on the top corners
of the device can drive delay codes to two adjacent edges of the device, providing a possible two DDRDLL codes
for an edge.
Figure 3. DDRDLL Connectivity
DQSBUF
There is one DQSBUF for each DQS lane (every 12 to 16 I/Os depending on the selected device). The DQS input
is used when interfacing to DDR memories. It generates the delay on the DQS pin of the DQS lane, to provide a
90o phase shift on DQS to clock the DDR data at the center. The delay is set by a delay code generated in the
DDRDLL component. Each DQSBUF can receive delay codes from two different DDRDLs hence two different DDR
memory interfaces can be built on one side of the device.
Each of the DQSBUF modes has an additional feature that allows the user to adjust the delay from the delay set by
the DDRDLL code, by using the MOVE and DIRECTION inputs controlled by the user logic. The LOADN will reset
the delay back to the DDRDLL code.
DLLDEL
DLLDEL provides phase shift on the receive side clocks to each ECLK. It functions similar to the DQSBUF, shifting
the clock input by delay set by the DDRDLL delay code, before the clock drives the clock tree. The DLLDEL ele-
ment has the ability to further adjust the delay from the delay set by the DDRDLL code, by using the MOVE and
DIRECTION inputs controlled by the user logic. The LOADN will reset the delay back to the DDRDLL code.
DLLDEL
DLLDEL
DLLDEL
DQSBUF
DQSBUF
ULC_DDRDLL
LLC_DDRDLL
LRC_DDRDLL
URC_DDRDLL