VARIABLE Mode - VARIABLE Mode - UG861

Spartan UltraScale+ FPGAs SelectIO Resources User Guide (UG861)

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

The DELAY_TYPE attribute set to VARIABLE selects the variable tap delay line (see the following table). In VARIABLE mode, the CE and INC pins are used to manually increment and decrement the delay line tap per tap (INC/DEC increments or decrements one tap at a time). The tap delay increments by setting CE = 1 and INC = 1, or decrements by CE = 1 and INC = 0. The increment/decrement operation depends on the UPDATE_MODE attribute (see the following figure). The EN_VTC pin should be held Low during the delay change command to ensure that any automatic adjustments are stopped.

To increment/decrement delay lines when using TIME mode, use the following steps (see the following figure):

  1. Deassert (Low) the EN_VTC pin.
  2. Wait a minimum of 10 clock cycles.
  3. Use the CE and INC ports to increment or decrement the delay line.
  4. Wait a minimum of 5 clock cycles.
  5. (Option for multiple updates) Increment or decrement of the delay line needs to be performed. Go to step 3, or else proceed to step 6.
  6. Wait a minimum of 10 clock cycles.
  7. Assert the EN_VTC pin.

In COUNT mode, the EN_VTC port is always Low. Use the preceding TIME mode procedure, step 2 through step 4.

Table 1. Control Pin when DELAY_TYPE = VARIABLE 1
EN_VTC CLK LOAD CE INC Tap Setting
1 1/0 X X X Not supported, EN_VTC must be Low when LOAD, CE, and INC are active.
0 0 X X X No change
0 1 0 0 X No change
0 1 0 1 1 Current value +1 Tap 2
0 1 0 1 0 Current value –1 Tap 2
0 1 0 0 0 No change
  1. Only valid port combinations are provided in the table.
  2. Value depends upon the UPDATE_MODE attribute. See the following figure.
Figure 1. Variable Mode, UPDATE_MODE = ASYNC