Engee documentation

Lowpass Resampler

Converting a signal from one sampling period to another.

blockType: SubSystem

Path in the library:

/Mixed-Signal/Utilities/Lowpass Resampler

Description

Block Lowpass Resampler converts the sampling period of a discrete signal with a fixed or variable step at the input into the sampling period of a continuous signal at the output. To calculate the output values of the samples, the block uses an interpolation algorithm using low-frequency filtering. The algorithm minimizes the frequency overlap at the output relative to the rise/fall time of the output signal.

If the rise/fall time of the output signal is inherited from a discrete input signal with a fixed step, then the cutoff frequency is equal to the Nyquist frequency of this input signal. Otherwise, the cutoff frequency is equal to the Nyquist frequency associated with the sampling interval obtained by scaling a given rise/fall time of the output signal in the range 20%–80% to the value for the rise/fall time in the range 0%–100%.

Ports

Input

# IN_1 — discrete input signal
scalar

Details

A discrete input signal specified as a scalar with a fixed or variable pitch.

Data types

Float32, Float64, Int8, Int16, Int32, UInt8, UInt16, UInt32, Bool

Complex numbers support

No

Output

# OUT_1 — continuous output signal
scalar

Details

A continuous output signal returned as a scalar with a fixed or variable pitch.

Data types

Float32, Float64

Complex numbers support

No

Parameters

Main group

# Inherit output rise/fall time — inheritance of the rise/fall time of the output signal from the sampling period of the input signal with a fixed step

Details

Select this option to inherit the rise/fall time of the output signal from the sampling period of the input signal with a fixed step.

In the case of an input signal with a variable pitch, there is no rise/fall time for inheritance.
Default value

true (switched on)

Program usage name

InheritRiseFall

Tunable

No

Evaluatable

Yes

# Output rise/fall time — rise/fall time 20%–80% of the output signal

Details

Rise/fall time 20%–80% of the output signal, set as a positive real scalar.

Dependencies

To use this option, check the box Inherit output rise/fall time.

Default value

1.0e-10

Program usage name

OutputRiseFall

Tunable

No

Evaluatable

Yes

# Number of samples of delay — number of propagation delay counts for fixed step mode

Details

The number of propagation delay samples for the fixed-step mode, set as a positive real scalar.

If the block Lowpass Resampler inherits the value of the parameter Output rise/fall time in the fixed step mode, the delay of the resampler conversion is defined as , where — parameter value Number of samples of delay, and — inherited sampling interval of the input signal.

In the variable pitch mode of the input signal, the delay of the resampler conversion is defined as by and how by . Meaning in times the value of the parameter Output rise/fall time.

There is a correlation between conversion delay and suppression of out-of-band numerical artifacts: a longer delay provides better accuracy in the frequency band and greater suppression of out-of-band artifacts.

If you need to suppress anti-aliasing using a filter, set the parameter value Number of samples of delay an equal 5 or more.

Dependencies

To use this option, uncheck the box. Inherit output rise/fall time.

Default value

5

Program usage name

NDelay

Tunable

No

Evaluatable

Yes

# Output sample time — type of sampling period of the output signal
Inherited | Fixed step discrete

Details

The type of sampling period of the output signal used by subsequent blocks, set as Inherited or Fixed step discrete. The sampling rate of the output signal must be higher than the sampling rate of the input signal.

Values

Inherited | Fixed step discrete

Default value

Inherited

Program usage name

OutputTsType

Tunable

No

Evaluatable

Yes

# Samples out per rise/fall time — the number of samples of the output signal in one period of rise/fall of the output signal

Details

The number of samples of the output signal for one period of rise/fall of the output signal, set as a positive real scalar.

Dependencies

To use this parameter, set for the parameter Output sample time meaning Fixed step discrete.

Default value

5

Program usage name

OutputTsRatio

Tunable

No

Evaluatable

Yes

# Enable larger buffer — enabling additional buffer counts

Details

Select this option to enable additional buffer counts. The checkbox is unchecked by default.

Default value

false (switched off)

Program usage name

ExtraBuffer

Tunable

No

Evaluatable

Yes

# Number of extra buffer samples — the number of additional buffer counts to ensure sample delays

Details

The number of additional buffer samples required to support the number of sample delays, set as a positive real scalar.

Dependencies

To use this option, check the box Enable larger buffer.

Default value

10

Program usage name

NBuffer

Tunable

No

Evaluatable

Yes

Additional information

Frequency response and impulse response

Details

Block Lowpass Resampler interpolates the incoming discrete signal using a smoothing filter. The anti-aliasing filter introduces some delay, and suppressing the output signals above a given signal bandwidth is not ideal. The introduction of large delays provides better accuracy in the bandwidth and greater suppression outside the bandwidth due to the greater delay introduced into the signal path. In all cases, the interpolation filter is designed in such a way as to provide minor distortion of the group delay in the passband.

lowpass resampler 1 en

In the time domain, interpolation introduces some fluctuations in the impulse response of the smoothing filter, which may affect the operation of some digital switching applications. However, if you set for the parameter Number of samples of delay value 1, and for the parameter Output rise/fall time If the value is greater than zero, then a smooth transition of the waveform will be ensured without hesitation.

lowpass resampler 2 en