Connexions

You are here: Home » Content » Uniformally Modulated (DFT) Filterbank
Content Actions

Uniformally Modulated (DFT) Filterbank

Module by: Phil Schniter

Summary: This module covers the Uniformally Modulated Filterbanks.

The uniform modulated filterbank can be implemented using polyphase filterbanks and DFTs, resulting in huge computational savings. Figure 1 below illustrates the equivalent polyphase/DFT structures for analysis and synthesis. The impulse responses of the polyphase filters P l z P l z and P ¯ l z P ¯ l z can be defined in the time domain as p ¯ l m= h ¯ mM+l p ¯ l m h ¯ m M l and p l m=hmM+l p l m h m M l , where hn h n and h ¯ n h ¯ n denote the impulse responses of the analysis and synthesis lowpass filters, respectively.
poly_f1.png
Figure 1
Recall that the standard implementation performs modulation, filtering, and downsampling, in that order. The polyphase/DFT implementation reverses the order of these operations; it performs downsampling, then filtering, then modulation (if we interpret the DFT as a two-dimensional bank of "modulators"). We derive the polyphase/DFT implementation below, starting with the standard implementation and exchanging the order of modulation, filtering, and downsampling.

Polyphase/DFT Implementation Derivation

We start by analyzing the kkth filterbank branch, analyzed in Figure 2:
poly_f2.png
Figure 2: kkth filterbank branch
The first step is to reverse the modulation and filtering operations. To do this, we define a "modulated filter" H k z H k z :
vkn=ihixn-i2πMkn-i= ihi-2πNkixn-i 2πMkn= ihkixn-i 2πMkn vk n i h i x n i 2 M k n i i h i 2 N k i x n i 2 M k n i hk i x n i 2 M k n (1)
The equation above indicated that xn xn is convolved with the modulated filter and that the filter output is modulated. This is illustrated in Figure 3:
poly_f3.png
Figure 3
Notice that the only modulator outputs not discarded by the downsampler are those with time index n=mM n m M for m m . For these outputs, the modulator has the value 2πMkmM=1 2 M k m M 1 , and thus it can be ignored. The resulting system is portrayed by:
poly_f4.png
Figure 4
Next we would like to reverse the order of filtering and downsampling. To apply the Noble identity, we must decompose H k z H k z into a bank of upsampled polyphase filters. The technique used to derive polyphase decimation can be employed here:
Hk z=n=- hk nz-n=l=0M-1m=- h k mM+lz-mM+l Hk z n hk n z n l 0 M 1 m h k m M l z m M l (2)
Noting the fact that the llth polyphase filter has impulse response: h k mM+l=hmM+l-2πMkmM+l=hmM+l-2πMkl= p l m-2πMkl h k m M l h m M l 2 M k m M l h m M l 2 M k l p l m 2 M k l where p l m p l m is the llth polyphase filter defined by the original (unmodulated) lowpass filter Hz Hz , we obtain
Hk z=l=0M-1m=- p l m-2πMklz-mM-l=l=0M-1-2πMklz-lm=- p l mzM-m=l=0M-1-2πMklz-l P l zM Hk z l 0 M 1 m p l m 2 M k l z m M l l 0 M 1 2 M k l z l m p l m z M m l 0 M 1 2 M k l z l P l z M (3)
The kkth filterbank branch (now containing MM polyphase branches) is in Figure 5:
poly_f5.png
Figure 5: kkth filterbank branch containing MM polyphase branches.
Because it is a linear operator, the downsampler can be moved through the adders and the (time-invariant) scalings -2πMkl 2 M k l . Finally, the Noble identity is employed to exchange the filtering and downsampling. The kkth filterbank branch becomes:
poly_f6.png
Figure 6
Observe that the polyphase outputs { v l m|l=0M-1} v l m l 0 M 1 v l m are identical for each filterbank branch, while the scalings {-2πMkl|l=0M-1} 2 M k l l 0 M 1 once. Using these outputs we can compute the branch outputs via
y k m=l=0M-1 v l m-2πMkl y k m l 0 M 1 v l m 2 M k l (4)
From the previous equation it is clear that y k m y k m corresponds to the kkth DFT output given the MM-point input sequence { v l m|l=0M-1} v l m l 0 M 1 . Thus the MM filterbank branches can be computed in parallel by taking an MM-point DFT of the MM polyphase outputs (see Figure 7).
poly_f7.png
Figure 7
The polyphase/DFT synthesis bank can be derived in a similar manner.

Comments, questions, feedback, criticisms?

Send feedback