Main goal:
B. more advanced multirate filtering and analysis (ex: some wavelet decompositions)
Proof.
Proof.
10A-1
10A-2
Let
h[n + k] n is an integer multiple of M
hk [n] =
0 else
so
M−1
h[n] = ∑ h j [n − j]
j=0
h[n] e0[n]
M M
h[n+1] e1[n]
z M M −1
z
h[n+2] e2[n]
2 M M −2
z z
h[n] h[n]
. . . .
. . . .
. h[n+M−1] . . .
eM−1[n]
M−1 M M −(M−1)
z z
Note:
z is time advance notation
Figure 10A.1:
So
ek [n] = h[nM + k] = hk [nM]
Alternatively, cascade the advance units and we get the system in Fig. 10.2 and 10.3.
Recall basic relationships: If y[n] is an M-upsampling of x[n], Y (z) = X(zM ). If y[n] is an M-downsampling of x[n],
Y (z) = M1 ∑M−1
i=0 X(z
1/M e j2πi/M ).
So
hk [nM] = ek [n] = h[nM + k]
10A-3
z z−1
z z−1
. . . .
. . . .
. . . .
z z−1
h[n+M−1] eM−1[n] hM−1[n]
M M
Figure 10A.2:
h[n]
...... ......
e0[n]
e1[n]
e2[n]
Figure 10A.3:
10A-4
so
F
h[n] ←→ H(z)
F
ek [n] ←→ Ek (z)
x[n]
E 0(z M)
−1
z y[n]
E 1(z M)
−1
z
E 2(z M)
−1
z
E M−1(z M)
Figure 10A.4: Note: Delay can go before or after the filter since systems are assumed LTI.
M
M
M
Figure 10A.5:
Therefore the system is further equivalent to the one in Fig. 10.7. Now, except for FIR H(z) of length N, each of Ek (z)
has length N/M. There are M repetitions so only O(M(N/M)) = O(N) operations per sample of w[n], i.e., a factor of
M improvement.
10A-5
x[n]
E 0(z M) M
−1
z y[n]
E 1(z M) M
−1
z
E 2(z M) M
−1
z
E M−1(z M) M
Figure 10A.6:
x[n]
M E 0(z)
−1
z w[n]
M E 1(z)
−1
z
M E 2(z)
−1
z
M E M−1(z)
Figure 10A.7:
10A-6
L E 0(z L )
x[n] y[n]
z−1
L E 1(z L )
z−1
L E L−1 (z L ) z−1
Figure 10A.8:
Use
−→ [↑ L] −→ H(zL ) −→
≡ −→ [H(z)] −→ [↑ L] −→
then we get the system in Fig. 10.9.
E 0(z) L
x[n] y[n]
z−1
E 1(z) L
z−1
E M−1(z) L z−1
Figure 10A.9:
Similarly,
−→ [H(z)] −→ [↓ M] −→ ≡ −→ [H(z)] −→ [↓ M1 ] −→ [↓ M2 ] −→ · · · −→ [↓ MI ] −→
when M = ∏Ii=1 Mi can be made so that the system is further equivalent to
−→ [H(z)] −→ [H1 (z)] −→ [↓ M1 ] −→ [H2 (z)] −→ [↓ M2 ] −→ · · · −→ [HI (z)] −→ [↓ MI ] −→
How can this help?
1. L >> 1(M = 1)
2. M >> 1(L = 1)
3. L/M ≈ 1 L >> 1, M >> 1 (e.g., L/M = 80/69 say)
Ex:
x[n](10kHz) −→ [ LPFN] −→ [↓ 100] −→ y[n](100Hz)
Let’s say we want LPF to be (deisgn criteria) as shown in Fig. 10.10.
LPF
45 50 5kHz
Figure 10A.10:
FIR design might say N = 5080 points. So, the number of operations per second is 5080 · 10kHz/100Hz ≈ 500k
operations per second. Instead might do
200Hz
x[n](10kHz) −→ [ LPF1 N1 ] −→ [↓ 50] −→ [ LPF2 N2 ] −→ [↓ 2] −→ y[n](100Hz)
Possible criteria for filters are shown in Fig. 10.11. so much less stringent requirements on filter (cheaper filter).
Same filter design criteria gives
N1 = 263 =⇒ 263 · 10k/50 = 52, 600 operations per second
N2 = 110 =⇒ 110 · 200/2 = 11k operations per second
total operations per second in this system is 53k + 11k = 64k vs. 500k. Savings of factor of 7.8. So potentially huge
savings can occur with simple use of multirate signal processing.
10A-8
LPF 1
45 150 5kHz
LPF 2
45 50 100 Hz
Figure 10A.11: