0
$\begingroup$

Let's say I have a causal 3-tap FIR filter:

$$y[n] = ax[n] + bx[n-1] + cx[n-2]$$

Assuming I have access to all the data prior to filtering and generate a similar non-causal filter:

$$y[n] = ax[n+1] + bx[n] + cx[n-1]$$

Would this new filter have the same frequency response but with different phase delay?

$\endgroup$
2
$\begingroup$

In general if you have a causal odd length $N$ FIR filter $h[n]$, defined for indices $n\in[0,N-1]$, moving the center bin to index $n=0$ means shifting the impulse response to the left by $(N-1)/2$ samples:

$$\tilde{h}[n]=h\left[n+\frac{N-1}{2}\right]\tag{1}$$

In the frequency domain this is equivalent to

$$\tilde{H}(e^{j\omega})=H(e^{j\omega})e^{j\omega (N-1)/2}\tag{2}$$

from which it follows that

$$\big|\tilde{H}(e^{j\omega})\big|=\big|H(e^{j\omega})\big|\tag{3}$$

and

$$\tilde{\phi}(\omega)=\phi(\omega)+\omega (N-1)/2\tag{4}$$

where $\phi(\omega)$ and $\tilde{\phi}(\omega)$ are the phases of $H(e^{j\omega})$ and $\tilde{H}(e^{j\omega})$, respectively.

If the coefficients $h[n]$ are symmetric with respect to the center tap, then $\tilde{H}(e^{j\omega})$ will be purely real-valued, if they are anti-symmetric, $\tilde{H}(e^{j\omega})$ will be purely imaginary, in all other cases, $\tilde{H}(e^{j\omega})$ will be a complex-valued function.

$\endgroup$
7
  • $\begingroup$ I would add that if the original length $N-1$, causal filter $h[n]$ is linear phase, that means that $$ h[N-1-n] = h[n] $$ and $$ \phi(\omega) = -\omega \frac{N-1}{2} $$ which causes $\tilde{\phi}(\omega) = 0 $ for all $\omega$. that means that $\tilde{H}(e^{j \omega})$ is purely real. $\endgroup$ – robert bristow-johnson Dec 4 '20 at 8:21
  • $\begingroup$ @robertbristow-johnson: Yes, or purely imaginary, for type III linear phase. $\endgroup$ – Matt L. Dec 4 '20 at 11:04
  • $\begingroup$ So does "shifting the impulse response to the left by (N−1)/2 samples" result in a zero phase filter? or just reduced phase? $\endgroup$ – Izzo Dec 4 '20 at 14:35
  • $\begingroup$ @Izzo: You get a zero-phase filter only if the impulse response is symmetric. That is what I meant by saying that $\tilde{H}(e^{j\omega})$ becomes purely real-valued, which is the same a zero-phase. $\endgroup$ – Matt L. Dec 4 '20 at 15:06
  • $\begingroup$ So because FIR is linear phase, it will have symmetric impulse response. Hence zero phase after shifting. $\endgroup$ – Izzo Dec 4 '20 at 15:19
2
$\begingroup$

Correct. The magnitude response would be the same and the phase response would be summed with $\omega$ (omega).

$\endgroup$
2
  • $\begingroup$ What does "phase response would be summed with omega" mean? $\endgroup$ – Izzo Dec 4 '20 at 0:02
  • $\begingroup$ The frequency response is a function of angular frequency, omega. By shifting the coefficients by one, that is equivalent to changing the phase of the frequency response by adding omega to phase. Put another way the group delay is one sample less for all frequencies. $\endgroup$ – Dan Szabo Dec 4 '20 at 0:48
0
$\begingroup$

Linear phase delay is the same as constant time delay. If you can offset the time of the output referenced to the input, forward or backward, you can change the slope of the phase versus frequency curve to any slope you like.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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