1
$\begingroup$

I'm trying to design a FIR filter(direct form) the coefficient of which will be used to design a polyphase resampler that does Zero-Order Hold resampling. If the direct form impulse response is triangular, then we get a linear interpolator.

Is it possible to imagine a filter response that would produce a ZOH interpolator? I have some constraints that prevent a simple MATLAB's repelem() based ZOH implementation.

$\endgroup$
3
  • $\begingroup$ Zero-order hold means you're not actually interpolating/filtering, so the filter taps you're looking for is simply [1]. $\endgroup$ Oct 19, 2016 at 18:13
  • 2
    $\begingroup$ @MarcusMüller, ZOH most certainly is an interpolator. just not a very good one. $\endgroup$ Jan 12, 2017 at 17:44
  • $\begingroup$ @robertbristow-johnson well, that's certainly true :) My bad! $\endgroup$ Jan 12, 2017 at 19:49

1 Answer 1

0
$\begingroup$

I was able to achieve this with a square pulse impulse response of length I(interpolation rate). The square impulse response in relation to an equivalent sin(x)/x and linear interpolator(triangular) response is show in the figure below. This is still not a perfect design as I see discontinuities every I samples in the resampled output.

Edit: The discontinuities are addressed by changing the transition of high-low in the square impulse response, from two samples to three sample. So instead of the transitions being (high, low) in two samples, it will be (high, mean(high,low),low) over three sample and likewise for transition from low ot high.

enter image description here

$\endgroup$
2
  • $\begingroup$ What were you supposed to do exactly? $\endgroup$
    – Ben
    Oct 28, 2019 at 20:23
  • $\begingroup$ To simply design a filter for ZOH step interpolation instead of using standard ring buffer approach @Ben $\endgroup$
    – Naveen
    Nov 8, 2019 at 15:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.