Polyphase filter

34 次查看(过去 30 天)
i Venky
i Venky 2011-10-26
I have been reading about this since yesterday and I couldn't come to any conclusion. I need your help.
Consider a signal x. When we upsample it we interpolate zeros between the non-zero values in the signal x. Now when you pass this through a low pass filter we remove the images (or alias). Okay what would we get in the time domain?
What would be the output of the polyphase filter (when it is used for interpolating)?
Thanks in advance.

回答(3 个)

Wayne King
Wayne King 2011-10-26
There is no single interpolation filter. You can design different interpolators with different results. The simplest case is a constant interpolator.
x = randn(16,1);
y = upsample(x,2);
h = [1 1]; % constant interpolator impulse response
y1 = filter(h,1,y);
Note that every two samples in y1 are the same, y1(1:2) are the same, y1(3:4) are the same on so on. This is probably not desirable, which leads people to design other interpolators.
  3 个评论
i Venky
i Venky 2011-10-26
The filter should remove the images too.
Wayne King
Wayne King 2011-10-26
h =[1 1] is a lowpass filter. The transfer function is
H(e^{j\omega}) = 2e^{-j\omega/2}cos(\omega/2)
You cannot realize an ideal lowpass filter

请先登录,再进行评论。


Honglei Chen
Honglei Chen 2011-10-26
The idea of polyphase filter is to avoid unnecessary computations by performing the computation at the lowest data rate possible.
For example, if you do upsample by 2 first and then perform the filtering, as the text says, every other sample is 0, so that computation is wasted. Therefore, if we can switch the order of upsampling and filtering, then the filter can be run at half data rate, which translates to lower cost, and there is no waste of multiplying by 0.
A quick search reveals the following slides and I think the figures in there should be helpful for you to understand what's going on.
HTH
  1 个评论
i Venky
i Venky 2011-10-27
Hello chen. I have only one doubt. What should be the output after coming out of the polyphase filter in the time domain(not in the frequency domain)? Will the output have any zeros in it?

请先登录,再进行评论。


Honglei Chen
Honglei Chen 2011-10-27
The output is determined by both input and the filter coefficients, so we don't have control for that, if it is a 0, it is a 0. I guess your question is really whether there is wasted samples at the output of the polyphase filter and the answer to that is no, and that is they beauty of polyphase filter.

类别

Help CenterFile Exchange 中查找有关 Multirate and Multistage Filters 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by