interp_var_xbit

interp_var_xbit :
: A delay-interpolating buffer between two xbit-typed signals with variable delay.

The interp_var_xbit primitive is similar to the interp_xbit primitive, which takes two xbit-typed inputs and produces an xbit-typed output whose delay is referenced to a weighted average of the two inputs” arrival times. However, the difference is that the propagation delay of the interp_var_xbit primitive can be varied by the input delay, while that of the interp_xbit primitive is fixed.

The propagation delay of the interp_var_xbit primitive determines the maximum delay difference allowed between the two inputs. In other words, the primitive cannot interpolate two input pulses of which arrival times are apart by more than the propagation delay. If the second edge does not arrive until this delay after the arrival of the first edge, then the primitive may drive the output into an indeterminate state (1″bx). For instance, the difference between the arrival times of the two inputs, t0 and t1 are spaced by more than delay (i.e. t1-t0 > delay), then the output will have 1″bx during the period of t0+delay ~ t1+delay. The parameter max_warn sets the maximum warning message count for consecutive clock edges that violate this constraint. Setting it to 0 suppresses all warning messages and setting it to -1 displays them all.

The interpolation weight is controlled by the input weight, which spans the range from 0 to 1. For instance, if the rising edge of the first input in_0 arrives at t0 and the rising edge of the second input in_1 arrives at t1, the interp_var_xbit primitive produces a rising edge of its output at t_out:

t_out = t0*(1-weight) + t1*weight + delay.

The interp_var_xbit primitive models an inertial delay, meaning that if a new input event arrives before the previous input event propagates to the output, the output event will be overridden with the one corresponding to the new input event.

Input/Output Terminals

Name I/O Type Description
out output xbit output signal
in_0 input xbit input signal 0
in_1 input xbit input signal 1
weight input real weighting signal
delay input xreal propagation delay

Parameters

Name Type Default Unit Description
max_warn integer -1 None maximum warning count
« dff_xbit
interp_xbit »