Operator SignalDelay

Operator Library: Signal

The operator delays the input signal and provides it on its output. The delay is controlled by parameter Delay.

The rising edge of a pulse at the input starts the delay. The current value of parameter Delay defines the delay. The pulse width of the input pulse is kept i.e. the rising and falling edges are delayed.

The operator can be run in two modes defined using parameter Mode:

  • SinglePulse:

    The operator can delay a single pulse at once only. During delaying of a pulse no new pulses at the operator input can be accepted. In this case, every new input pulse will be ignored. Any changes of the delay parameter are ignored while a pulse is currently processed.

    The operator can be reseted using input link Reset. While the reset input is high, no output pulses are processed. Any processing is aborted. The operator restarts operation when the reset input is low. The following waveform illustrates the operator's behavior.

  • MultiplePulses:

    In this mode, the operator can delay multiple input pulses at the same time. The operator is a shift register of fixed length. The delay cannot be changed in this mode. In the following figure, the mode is illustrated.

    The reset input can result in undefined values if used in combination with the MutliPulses mode. Therefore, the reset input must be set for the duration defined in the parameter DurationBits if used. Tie it to GND if not used.

    The intention of the MultiPulses mode is to use it for short delays only. Long delays will require many resources.

The Tick input defines the time, the operator is processing data. It can be used like a prescaler. In most cases, the Tick input is not required. In this case, tie it to operator VCC. In the following figure, the influence of the Tick input is shown.

One special case when using ticks is that input pulses are sampled even if no tick is present. This is shown for the second input pulse of the waveform. This ensures that no input pulses can get lost.

This operator is excluded from the VisualApplets functional simulation.

I/O Properties

Property Value
Operator Type O
Input Links I, signal data input
Tick, signal data input
Reset, signal data input
Output Link O, signal data output

Supported Link Format

Link Parameter Input Link I Input Link Tick Input Link Reset Output Link O
Bit Width 1 1 1 as I
Arithmetic unsigned unsigned unsigned as I
Parallelism 1 1 1 as I
Kernel Columns 1 1 1 as I
Kernel Rows 1 1 1 as I
Max. Img Width any any any as I
Max. Img Height any any any as I


Type static parameter
Default SinglePulse
Range {SinglePulse, MultiplePulses}

Defines if the operator can delay only a single or multiple pulses at the same time. See description above.

Type static parameter
Default 16
Range [1, 64]

The maximum possible signal delay is defined using this parameter. This parameter is enabled only if Mode is set to SinglePulse.

Type dynamic/static parameter
Default 0
Range [0,2^DelayBits-1] if Mode=SinglePulse, [1, 2^64-1] else

The actual delay is defined using this parameter. The parameter is always static if Mode is set to MultiplePulses.

Examples of Use

The use of operator SignalDelay is shown in the following examples: