ODELAYE3 - ODELAYE3 - UG861

Spartan UltraScale+ FPGAs SelectIO Resources User Guide (UG861)

Document ID
UG861
Release Date
2026-04-28
Revision
1.1 English

Any output signal can be delayed using the ODELAYE3 primitive, having been either forwarded from the device logic directly or registered in a simple flip-flop or OSERDES using an SDR or DDR clock.

The ODELAYE3 primitive (see the following figure) contains a 512-tap delay line. (See the tap resolution in the Spartan UltraScale+ FPGA Data Sheet: DC and AC Switching Characteristics (DS930) . Each individual tap is uncalibrated. However, the logic to calibrate the delay line is available in the IDELAYCTRL component.

The ODELAYE3 can be used in two modes:

  • COUNT mode:
    • No need to use an IDELAYCTRL component because the delay line is used in the uncalibrated state without voltage and temperature compensation.
    • The delay line must count only taps and not count delay/tap.
    • The DELAY_VALUE is expressed as taps (0 to 511).
    • Example: Scanning a serial data stream for transitions must be expressed in a number of taps and not translated to time in ps.
  • TIME mode:
    • An IDELAYCTRL component must be used.
    • The delay line is calibrated for the requested time value and voltage/temperature compensation makes sure that this value is kept over time.
    • The DELAY_VALUE is expressed in ps.
Figure 1. ODELAYE3 Primitive