Main Content

getLatency

Latency of CIC decimation filter

Description

Y = getLatency(hdlcic) returns the latency, Y, between the first valid input sample and the first valid output sample, assuming contiguous input samples. The latency depends on the NumSections and GainCorrection properties.

example

Y = getLatency(hdlcic,V) returns the latency, Y, between the first valid input sample and the first valid output sample, assuming contiguous input samples and vector input of size V. The latency depends on the vector input size, NumSections property, and the GainCorrection property.

example

Examples

collapse all

The latency of the dsphdl.CICDecimator System object™ varies depending on how many integrator and comb sections your filter has, the input vector size, and whether you enable gain correction. Use the getLatency function to find the latency of a particular filter configuration. The latency is the number of cycles between the first valid input and the first valid output, assuming the input is continuously valid.

Create a dsphdl.CICDecimator System object and request the latency. The default System object filter has two integrator and comb sections, and the gain correction is disabled.

hdlcic = dsphdl.CICDecimator
hdlcic = 
  dsphdl.CICDecimator with properties:

     DecimationSource: 'Property'
     DecimationFactor: 2
    DifferentialDelay: 1
          NumSections: 2
       GainCorrection: false

  Use get to show all properties

L_def = getLatency(hdlcic)
L_def = 
5

Modify the filter object so it has three integrator and comb sections. Check the resulting change in latency.

hdlcic.NumSections = 3;
L_3sec = getLatency(hdlcic)
L_3sec = 
6

Enable the gain correction on the filter object with vector input size 2. Check the resulting change in latency.

hdlcic.GainCorrection = true;
vecSize = 2;
L_wgain = getLatency(hdlcic,vecSize)
L_wgain = 
25

Input Arguments

collapse all

CIC decimation filter System object that you created and configured. See dsphdl.CICDecimator.

Vector size, specified in the range from 1 to 64. DecimationFactor property must be an integer multiple of the input frame size. Use this argument to request the latency of an object similar to hdlcic, but with V sample vector input. When you do not specify this argument, the function assumes scalar input.

Output Arguments

collapse all

Cycles of latency that the CIC decimator object takes between the first valid input and the first valid output. Each call to the object simulates one cycle. This latency assumes valid input data on every cycle.

Version History

Introduced in R2019b

See Also

Objects