Friday, November 7, 2014

Discrete-time signals: time shift vs phase shift

This article is based on my answer to this question on dsp.stackexchange.com. There was also another question asking basically the same thing, so it seems that people get confused about the relation between time shifts and phase shifts for discrete-time signals.

First let's consider a continuous time sinusoidal signal: $$x(t)=\cos(\omega_0t)$$ Applying a time shift of $t_0$ gives $$x(t+t_0)=\cos(\omega_0(t+t_0))=\cos(\omega_0t+\omega_0t_0)=\cos(\omega_0t+\phi)$$ with $\phi=\omega_0t_0$. So for a continuous-time sinusoidal signal a time shift always corresponds to a phase shift, but, more importantly, the opposite is also always true: a phase shift always corresponds to a time-shift. The time shift is given by
$$t_0=\frac{\phi}{\omega_0}$$ With discrete-time signals, things are different. A time-shift always corresponds to a phase shift, but the opposite is generally not true. Let $$x[n]=\cos(n\theta_0)$$ Applying a time-shift of $n_0\in\mathbb{Z}$ gives $$x[n+n_0]=\cos((n+n_0)\theta_0)=\cos(n\theta_0+n_0\theta_0)$$ which corresponds to a phase shift of $\phi=n_0\theta_0$. However, assume another signal $$y[n]=\cos(n\theta_0+\phi),\quad\phi\in\mathbb{R}$$ If $n$ were a continuous variable, the signal $y[n]$ could be obtained from $x[n]$ by applying an appropriate time-shift. However, in discrete-time $y[n]$ cannot generally be obtained by time-shifting  $x[n]$. This is only possible if $$\phi=n_0\theta_0$$ is satisfied for some integer $n_0$. This can be seen as follows: $$y[n]=\cos(n\theta_0+\phi)=\cos((n+\phi/\theta_0)\theta_0)$$ which only equals $x[n+n_0]$ if $n_0=\phi/\theta_0$ is an integer.

In sum, in continuous time a phase shift corresponds to a time shift and vice versa. In discrete-time, a time shift always corresponds to a phase shift, but the opposite is generally not true.

No comments:

Post a Comment