필터 지우기
필터 지우기

How to avoid the prominent damping to output of "FIR Rate Conversion HDL Optimized".

조회 수: 2 (최근 30일)
We are using the "FIR Rate Conversion HDL Optimized" block to achieve a 4n/5 upsample rate. The output signal has a significant damping, much smaller than my simulated input signal.
Is this expected?
How do we avoid that?

채택된 답변

Garrey Rice
Garrey Rice 2023년 7월 25일
It looks like FIR filter coefficients you are using have a passband gain of 0 dB of. As a result, the output of the block is being attenuated by a factor of Interpolation factor as you can see in the three plots you've attached. This is expected. Conceptually, the block interpolates by inserting zeros between each sample and then applying the filter, which spreads the energy of the input samples across all of the interpolated samples.
To avoid this, you can either scale your coefficients by multiplying them by the Interpolation factor, or apply a gain of Interpolation factor at the output of the block. For example you could use the dsp.FIRRateConverter System object to design a suitable filter. Note that the following configuration has a passband gain of 5 (~14 dB).
firrc = dsp.FIRRateConverter(5,4,'Auto');
fvtool(firrc.Numerator);
Also, it looks like the signals in the plots you have provided are heavily quantized, and the output of the FIR Rate Conversion HDL Optimized block has a DC offset. Consider adjusting the fixed point data type settings of the block and choosing a different rounding mode.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Optimization에 대해 자세히 알아보기

제품


릴리스

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by