Main Content

Lowpass Resampler

Convert signal from one sample time to another

  • Library:
  • Mixed-Signal Blockset / Utilities

  • Lowpass resampler block

Description

The Lowpass Resampler block converts either a fixed-step discrete or a variable-step discrete sample time at its input to a different sample time at its output. To calculate the output sample values, the block uses a lowpass filtering interpolation algorithm. The algorithm minimizes frequency aliasing at the output with respect to an output rise/fall time.

If the output rise/fall time is inherited from a fixed-step discrete input, the cutoff frequency is the Nyquist rate of the input. Otherwise, the cutoff frequency is the Nyquist rate associated with a sample interval obtained by scaling the specified 20%−80% output rise/fall time to a value for 0%−100% rise/fall time.

Ports

Input

expand all

Discrete time input signal, specified as fixed-step or variable-step scalar.

Data Types: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean

Output

expand all

Continuous time output signal, returned as a fixed-step or variable-step scalar.

Data Types: single | double

Parameters

expand all

Select to inherit the output rise/fall time from the fixed-step input sample time. You cannot inherit output rise/fall time from a variable-step input sample time.

20%−80% output rise/fall time, specified as a positive real scalar.

Programmatic Use

Block parameter: OutputRiseFall
Type: character vector
Values: positive real scalar
Default: 1e-10

Number of samples of propagation delay for fixed-step operation, specified as a positive real scalar.

If the Lowpass Resampler block inherits Output rise/fall time in fixed-step mode, the resampler conversion delay is given by NDelay·τ, where NDelay is the Number of samples of delay parameter and τ is the inherited input sample interval.

In the variable-step input mode, the resampler conversion delay is given by 0.6τv when NDelay equals to one, and is (NDelay-0.5)·τv when NDelay is greater than one. τv is 5/3 times the Output rise/fall time parameter.

There is a tradeoff between the delay of the conversion and the suppression of out-of-band numerical artifacts, with greater delay producing better fidelity in band and greater suppression out-of-band.

Note

If you need anti-aliasing filter rejection, set Number of samples of delay to 5 or higher.

Programmatic Use

Block parameter: NDelay
Type: character vector
Values: positive real scalar
Default: 1

Select to enable extra buffer samples. This option is enabled by default.

Number of extra buffer samples needed to support the number of samples of delay, specified as a positive real scalar.

Programmatic Use

Block parameter: NBuffer
Type: character vector
Values: positive real scalar
Default: 10

More About

expand all

Introduced in R2021a