Digital Signal Processing II
Lecture 9: Filter Banks - Special Topics
Marc Moonen
Dept. E.E./ESAT, K.U.Leuven
www.esat.kuleuven.be/scd/
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 2
Part-II : Filter Banks
: Preliminaries• Filter bank set-up and applications
• `Perfect reconstruction’ problem + 1st example (DFT/IDFT)
• Multi-rate systems review (10 slides)
: Maximally decimated FBs• Perfect reconstruction filter banks (PR FBs)
• Paraunitary PR FBs
: Modulated FBs• Maximally decimated DFT-modulated FBs
• Oversampled DFT-modulated FBs
: Special Topics• Cosine-modulated FBs
• Non-uniform FBs & Wavelets
• Frequency domain filtering
Lecture-6
Lecture-7
Lecture-8
Lecture-9
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 3
Topic-1: Cosine-Modulated Filter Banks
Motivation :
Cosine-modulated FBs offer an alternative
to DFT-modulated FBs…
• Similar to DFT-modulated FBs, cosine-modulated FBs offer economy in design- and implementation complexity
• Unlike DFT-modulated FBs, cosine-modulated FBs can be PR/FIR/paraunitary under maximal decimation (with design flexibility).
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 4
Cosine-Modulated Filter Banks
• Uniform DFT-modulated filter banks: Ho(z) is prototype lowpass filter, cutoff at for N filters
• Cosine-modulated filter banks :
Po(z) is prototype lowpass filter, cutoff at for N filters
Then...
etc...
N/
N2/
H0 H3H2H1
2N/
).(.).(.)()5.0(
0*0
)5.0(
000N
jN
jezPezPzH
P0
2
2
2
N2/
N/H1
Ho).(.).(.)(
)5.01(
0*1
)5.01(
011N
jN
jezPezPzH
).()( /20
Nkjk ezHzH
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 5
Cosine-Modulated Filter Banks
• Cosine-modulated filter banks : - if Po(z) is prototype FIR lowpass filter with real coefficients po[n], n=0,1,…,L then
i.e. `cosine modulation’ (with real coefficients) instead of `exponential modulation’ (with complex coeffs, see DFT-modulated FBs Lecture-8)
- if Po(z) is `good’ lowpass filter, then Hk(z)’s are `good’ bandpass filters
).(.).(.)()5.0(
0*)5.0(
0N
kj
kN
kj
kk ezPezPzH
}4
.)1()2
)(5.0(cos{].[.2][ 0
kk
Lnk
Nnpnh
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 6
Cosine-Modulated Filter Banks
Realization based on polyphase decomposition (analysis):
- if Po(z) has 2N-fold polyphase expansion (ps: 2N-fold for N filters!!!)
then...
k
kl
N
l
Nl
lL
k
k zlkNpzEzEzzkpzP ]..2[)( , )(.].[)( 0
12
0
2
000
NNT 2
u[k]
)( 20
NzE
)( 21
NzE
)( 212
NN zE
)(0 zH
)(1 zH
)(1 zH N
: :
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 7
Cosine-Modulated Filter Banks
Realization based on polyphase decomposition (continued):
- if Po(z) has L+1=m.2N taps, and m is even (similar formulas for m odd) (i.e. `m’ is the number of taps in each polyphase component) then...
With
00...1
:::
01...0
10...0
,
1...00
:::
0...10
0...01
)()(... 22
JI
JIJICNT NNNN
})5.0(cos{
})5.01(cos{
})5.0(cos{
...00
:::
0...0
0...0
mN
m
m
)}5.0).(5.0.(cos{2
}{ , qpNN
C qp
ign
ore
all
det
ails
h
ere
!!!!!
!!!!!!
!!!!
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 8
Cosine-Modulated Filter Banks
Realization based on polyphase decomposition (continued): - Note that C (the only dense matrix here) is NxN DCT-matrix (`Type 4’)
hence fast implementation (=fast matrix-vector product) based on fast discrete cosine transform (DCT) procedure, with complexity O(N.logN)
Modulated filter bank gives economy in * design (only prototype Po(z) ) * implementation (prototype + modulation (DCT))
Similar structure for synthesis bank
)}5.0).(5.0.(cos{2
}{ , qpNN
C qp
NNT 2
u[k]
)( 20
NzE
)( 21
NzE
)( 212
NN zE
)(0 zH
)(1 zH
)(1 zH N
: :
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 9
Cosine-Modulated Filter Banks
Maximally decimated cosine modulated (analysis) bank :
NNT 2
u[k]
)( 20
NzE
)( 21
NzE
)( 212
NN zE
:
N
N
N
NNT 2
u[k]
)( 20 zE
)( 21 zE
)( 212 zE N
:
N
N
N=
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 10
Cosine-Modulated Filter Banks
Question: How do we obtain Maximal Decimation + PR/FIR/Paraunitariness?
Theorem: (proof omitted)
-If prototype Po(z) is a real-coefficient (L+1)-taps FIR filter, (L+1)=2N.m for integer m and po[n]=po[L-n] (linear phase), with polyphase components Ek(z), k=0,1,…2N-1, -then the (FIR) cosine-modulated analysis bank is PARAUNITARY if and only if (for all k) are power complementary, i.e. form a lossless 1 input/2 output system
And then FIR synthesis bank (for PR) can be obtained by paraconjugation !!! = great result…
)( and )( zEzE Nkk
..th
is is
th
e h
ard
par
t…
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 11
Cosine-Modulated Filter Banks
Perfect Reconstruction (continued)
Design procedure: Parameterize lossless systems for k=0,1..,N-1 Optimize all parameters in this parametrization so that the prototype Po(z) based on these polyphase components is a linear-phase lowpass filter that satisfies the given specifications
Example parameterization: Parameterize lossless systems for k=0,1..,N-1, -> lattice structure (see Part-I), where parameters are rotation angles
)( and )( zEzE Nkk
)(zEk
)(zE Nk
)( and )( zEzE Nkk
kl
kl
kl
klk
l
kkkm
km
Nk
k
zzzzE
zE
cossin
sincos
0
1..
0
01....
0
01..
0
01.
)(
)(0111211
E
EEEE
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 12
Cosine-Modulated Filter Banks
PS: Linear phase property for po[n] implies that only half of the power
complementary pairs have to be designed. The other pairs are then
defined by symmetry properties.
NNT 2
u[k]
:
N
Np.9 = )( 20 zE
)( 2zEN
)( 21 zEN
)( 212 zE N
:
:
lossless 1-in/2-out
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 13
Cosine-Modulated Filter Banks
PS: Cosine versus DFT modulation In a maximally decimated cosine-modulated (analysis) filter bank 2 polyphase components of the prototype filter, ,
actually take the place of only 1 polyphase component in the DFT- modulated case. For paraunitariness (hence FIR-PR) in a cosine-modulated bank, each such pair of polyphase filters should form a power complementary pair, i.e. represent a lossless system.
In the DFT-modulated case, imposing paraunitariness is equivalent to imposing losslessness for each polyphase component separately, i.e. each polyphase component should be an `allpass’ transfer function. Allpass functions are always IIR, except for trivial cases (pure delays). Hence all FIR paraunitary DFT-modulated banks (with maximal decimation) are trivial modifications of the DFT bank.
)( and )( zEzE Nkk
no FIR-design flexibility
provides flexibility for FIR-design
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 14
Topic-2: Non-Uniform FBs / Wavelets
Starting point is discrete-time Fourier transform:
= infinitely long sequence u[k] is evaluated at infinitely many
frequencies
Inversion/reconstruction/synthesis (=filter bank jargon) is..
= sequence u[k] is represented as weighted sum of basis functions
20 , ].[)(
k
kjj ekueU
2
0
).(2
1][ deeUku kjj
Prelude
je
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 15
Non-Uniform FBs / Wavelets
• `uncertainty principle’ says that if u[k] has a narrow support
(i.e. is localized), then U(.) has a wide support (i.e. is non-
localized), and vice versa• Hence notion of `frequency that varies with time’ not
accommodated (e.g. `short lived sine’ will correspond to
non-localized spectrum)
20 , ].[)(
k
kjj ekueU
2
0
).(2
1][ deeUku kjj
Prelude
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 16
Tool to fill this need is `short-time Fourier transform’(STFT)
where w[n] is your favorite window function (typically with `compact
support’ (=FIR) )
• Window slides past the data. For each window position n, compute discrete-time Fourier transform.
• PS: If w[n]=1 for all n, then result is discrete-time FT for all n
• In following slides, will provide a filter bank version of STFT, also leading to simple inversion formula
nenkwkuneUk
kjj , 20 ].[].[),(
Non-Uniform FBs / Wavelets
][nwn
Prelude
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 17
Non-Uniform FBs / Wavelets
Rewrite STFT formula as…
• If we forget about the fase factor up front (meaning what?),
then this corresponds to performing a convolution with a filter
• In practice, will compute this for a discrete set of (N) frequencies
leading to a set of filters• This is a DFT-modulated analysis bank, prototype filter = window function
k
nkjnjj enkwkueneU )(].[].[.),(
njenw ].[
nje
][][ , ].[][ 0/.2
0 nwnhenhnh Nnkjk
1,...,0 , 2
. NkN
kk
Prelude
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 18
Non-Uniform FBs / Wavelets
• Efficient implementation based on polyphase decomposition of prototype Ho + DFT-modulation
• Often window length=N, hence
1-tap polyphase components
)(.)(1
00
N
l
Nl
l zEzzH
u[k]
0w
1w
2w
3w
)(0 zH
)(1 zH
)(2 zH
)(3 zH
*NNF
Prelude
fre
q.re
solu
tion
N
*NNF
u[k]
)( 40 zE
)( 41 zE
)( 42 zE
)( 43 zE
)(0 zH
)(1 zH
)(2 zH
)(3 zH
window length/N
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 19
Non-Uniform FBs / Wavelets
• If maximally decimated (M=N, decimation=`window shift’),
decimated DFT-modulated analysis bank corresponds to
xk[n] = decimated subband signals = STFT-coefficients
= infinitely long sequence u[k] is evaluated at N frequencies, infinitely
many times (i.e. for infinitely many window positions)
..to be compared to page 14
nNkmnNhmunxm
kk - 1,...,0 ].[].[][
Prelude
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 20
Non-Uniform FBs / Wavelets
• With a corresponding (PR) synthesis filter bank (see Lecture 7)
Ex:
the reconstruction/synthesis formula (=inverse STFT) is
..to be compared to page 14
• PS: can also do oversampled versions
nNkmnNhmunxm
kk - 1,...,0 ].[].[][
1
0
].[].[][N
kk
mk mNnfmxnu
Prelude
FRFE .)( .)( 1* ii wdiagzwdiagz
H2(z)
H3(z)
44
44
F2(z)
F3(z)
y[k]H0(z)
H1(z)
44u[k]
44
F0(z)
F1(z)+
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 21
Non-Uniform FBs / Wavelets
Now, for some applications (e.g. audio) would like to have
a non-uniform filter bank, hence also with non-uniform
(maximum) decimation, for instance
• non-uniform filters = low frequency resolution at high frequencies, high frequency resolution at low frequencies (as human hearing)
• non-uniform decimation = high time resolution at high frequencies, low time resolution at low frequencies
H2(z)
H3(z)
4
2
H0(z)
H1(z)
8
8u[k] H0 H3H2H1
2
8
4
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 22
Non-Uniform FBs / Wavelets
This can be built as a tree-structure, based on a
2-channel filter bank with
H0 H3H2H1
2
8
4
)(zHLP )(zHHP
u[k]2
2)(zHHP
)(zHLP
2
2)(zHHP
)(zHLP
2
2)(zHHP
)(zHLP
)().().()(
)().().()(
)().()(
)()(
240
241
22
3
zHzHzHzH
zHzHzHzH
zHzHzH
zHzH
LPLPLP
LPLPHP
LPHP
HP
)(),( zHzH HPLP
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 23
Non-Uniform FBs / Wavelets
Note that may be viewed as a prototype filter,
from which a series of filters is derived
The lowpass filters are then needed to turn these
multi-band filters into bandpass filters (i.e. remove images)
)()(1 zHzH HPN
)()( )2( 1
k
zHzH HPkN
2
8
4
)(zHHP
)( 4zHHP
)( 2zHHP
)().().()(
)().().()(
)().()(
)()(
240
241
22
3
zHzHzHzH
zHzHzHzH
zHzHzH
zHzH
LPLPLP
LPLPHP
LPHP
HP
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 24
Non-Uniform FBs / Wavelets
Similar synthesis bank can be constructed with
• If and form a PR FB, then the complete analysis/synthesis structure is PR (why?)
)(),( zFzF HPLP
2
2 +
2
2 + 2
2 + )(zFLP
)(zFHP
)(zFLP
)(zFLP)(zFHP
)(zFHP
)(),( zFzF HPLP)(),( zHzH HPLP
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 25
Non-Uniform FBs / Wavelets
• Analysis bank corresponds to `discrete-time wavelet transform’ (DTWT)
• With a corresponding (PR) synthesis filter bank, the reconstruction/synthesis formula (inverse DTWT) is
..to be compared to page 14 & 20
nNkmnhmunx
mnhmunx
m
kNkk
m
N
- 1,...,1 ].2[].[][
].2[].[][ 100
1
1
100 ].2[].[].2[].[][
N
k
kNk
mk
N
m
mnfmxmnfmxnu
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 26
Non-Uniform FBs / Wavelets
• Reconstruction formula may be viewed as an expansion of u[n], using a set of basis functions (infinitely many)
• If the 2-channel filter bank is paraunitary, then this basis is orthonormal (which is a desirable property) :
=`orthonormal wavelet basis’
...,1...1 ].2[][
].2[][
,
10,0
mNkmnfnb
mnfnbkN
kmk
Nm
)'().'(][].[ *'',, mmkknbnb
nmkmk
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 27
Non-Uniform FBs / Wavelets
• Example : `Haar’ wavelet (after Alfred Haar)
• Compare to 2-channel DFT/IDFT bank• Derive formulas for Ho, H1, H2, H3, …
Derive formulas for Fo, F1, F2, F3, …
Paraunitary FB (orthonormal wavelet basis) ?
)1(2
1
)1(2
1
1
1
zH
zHH
LP
HPHaar
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 28
Non-Uniform FBs / Wavelets
Not treated here :• `continuous wavelet transform’ (CWT) of a continuous-time function u(t)
h(t)=prototype p,q are real-valued continuous variables p introduces `dilation’ of prototype, q introduces `shift’ of prototype • `discrete wavelet transform’ (DWT) is CWT with discretized p,q
T is sampling interval k,n are real-valued integer variables mostly a=2
).()( ).()( : 2/2/ jaHajHtahathPS kkk
kkk
dt
p
tqhtu
pqpxCWT )().(
1),(
dttaTnhtuaTnaaxnkx kkkkCWTDWT ).().().,(),( 2/
ignore details…
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 29
Non-Uniform FBs / Wavelets
Not treated here :• Theory
- multiresolution analysis
- wavelet packets
- 2D transforms
- etc …• Applications :
- audio: de-noising, …
- communications : wavelet modulation
- image : image coding
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 30
Topic-3 : Frequency Domain Filtering
• See DSP-I : cheap FIR filtering based on frequency domain realization (`time domain convolution equivalent to component-wise multiplication in the frequency domain’), cfr. `overlap-add’ & `overlap-save’ procedures
• This can be cast in the subband processing setting, as a non-critically downsampled (2-fold oversampled) DFT-modulated filter bank operation!
• Leads to more general approach to performance/delay trade-off
PS: formulae given for N=4, for conciseness (but without loss of generality)
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 31
Frequency Domain Filtering
Have to know a theorem from linear algebra here: • A `circulant’ matrix is a matrix where each row is obtained from the previous row using a right-shift (by 1 position), the rightmost element which spills over is circulated back to become the leftmost element
• The eigenvalue decomposition of a `circulant’ matrix is trivial…. example (4x4):
with F the NxN DFT-matrix, this means that the eigenvectors are equal to the column-vectors of the IDFT-matrix, and that then eigenvalues are obtained as the DFT of the first column of the circulant matrix (proof by Matlab)
d
c
b
a
F
D
C
B
A
F
D
C
B
A
F
abcd
dabc
cdab
bcda
. with ,.
000
000
000
000
.1
abcd
dabc
cdab
bcda
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 32
Frequency Domain Filtering
Starting point is this (see Lecture-7) :
meaning that a filtering with
can be realized in a multirate structure, based on a pseudo-
circulant matrix
T(z)*u[k-3]1z2z3z
1
u[k] 444
4 4444
+1z
2z
3z
1
)(zT
)()(.)(.)(.
)()()(.)(.
)()()()(.
)()()()(
)(
031
21
11
1031
21
21031
3210
zpzpzzpzzpz
zpzpzpzzpz
zpzpzpzpz
zpzpzpzp
zT
)()()()()( 43
342
241
140 zpzzpzzpzzpzT
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 33
Frequency Domain Filtering
Now some matrix manipulation… :
)()(
)(
44.1
44
7
6
5
4
3
2
1
0
144
44.1
44
3210
3210
3210
3210
0321
1032
2103
3210
44
..
)(0000000
0)(000000
00)(00000
000)(0000
0000)(000
00000)(00
000000)(0
0000000)(
..0
.
0)()()()(000
00)()()()(00
000)()()()(0
0000)()()()(
)(0000)()()(
)()(0000)()(
)()()(0000)(
)()()()(0000
.0
zz
z
x
xx
x
xx
Iz
IF
zP
zP
zP
zP
zP
zP
zP
zP
FI
Iz
I
zpzpzpzp
zpzpzpzp
zpzpzpzp
zpzpzpzp
zpzpzpzp
zpzpzpzp
zpzpzpzp
zpzpzpzp
I
ER
T
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 34
Frequency Domain Filtering
• An (8-channel) filter bank representation of this is...
Analysis bank:
Synthesis bank:
Subband processing: …………………………… This is a 2N-channel filter bank, with N-fold downsampling. The analysis FB is a 2N-channel uniform DFT filter bank. The synthesis FB is matched to the analysis bank, for PR under 2-fold oversampling.
..
.)(44
144
x
x
Iz
IFzE
144 .0)( FIz xR
1z2z3z
1
u[k] 444
4 4444
+y[k]
1z
2z
3z
1
)(zR)(zH)(zE
}
0
0
0
)(
)(
)(
)(
0
.{)(0
1
2
3
zp
zp
zp
zp
FdiagzH
441)().( xIzzz ER
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 35
Frequency Domain Filtering
• This is known as an `overlap-save’ realization :– Analysis bank: performs 2N-point DFT (FFT) of a block of (N=4)
samples, together with the previous block of (N) samples (hence `overlap’)
– Synthesis bank: performs 2N-point IDFT (IFFT), throws away the first half of the result, saves the second half
(hence `save’)
– Subband processing corresponds to `frequency domain’ operation
..
.)(44
144
x
x
Iz
IFzE
`block’
`previous block’
144 .0)( FIz xR
`save’`throw away’
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 36
Frequency Domain Filtering
`Overlap-add’ can be similarly derived :
)()(
)(
44
44
7
6
5
4
3
2
1
0
14444
.1
44
44
3210
3210
3210
3210
0321
1032
2103
3210
4444.1
0..
)(0000000
0)(000000
00)(00000
000)(0000
0000)(000
00000)(00
000000)(0
0000000)(
..
0.
0)()()()(000
00)()()()(00
000)()()()(0
0000)()()()(
)(0000)()()(
)()(0000)()(
)()()(0000)(
)()()()(0000
.
zz
z
x
xxx
x
xxx
IF
zP
zP
zP
zP
zP
zP
zP
zP
FIIz
I
zpzpzpzp
zpzpzpzp
zpzpzpzp
zpzpzpzp
zpzpzpzp
zpzpzpzp
zpzpzpzp
zpzpzpzp
IIz
ER
T
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 37
Frequency Domain Filtering
• This is known as an `overlap-add’ realization :– Analysis bank: performs 2N-point DFT (FFT) of a block of (N=4)
samples, padded with N zero samples
– Synthesis bank: performs 2N-point IDFT (IFFT), adds second half of the result to first half of previous IDFT (hence `add’)
– Subband processing corresponds to `frequency domain’ operation
.0
.)(44
44
x
xIFzE
`block’
`zero padding’
14444
1 ..)( FIIzz xxR
`add’`overlap’
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 38
Frequency Domain Filtering
• Standard `Overlap-add’ and `overlap-save’ realizations are derived when 0th order poly-phase components are used in the above derivation, i.e. each poly-phase component represents 1 tap of an N-tap filter T(z).
The corresponding 0th order subband processing (H) then corresponds to what is usually referred to as the `component-wise multiplication’ in the frequency domain.
Note that for an N-tap filter, with large N, this leads to a cheap realization based on FFT/IFFTs instead of DFT/IDFTs.
However, for large N, as 2N-point FFT/IFFTs are needed, this may also lead to an unacceptably large processing delay (latency) between filter input and output.
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 39
Frequency Domain Filtering
• In the more general case, with higher-order polyphase components (hence N smaller than the filter length), a smaller complexity reduction is achieved, but the processing delay is also smaller.
• This provides an interesting trade-off between complexity reduction and latency !!
DSP-IIVersion 2009-2010 Lecture-9: Filter Banks – Special Topics p. 40
Conclusions
• Great (=FIR/paraunitary) perfect reconstruction FB designs based on `modulation’:– Oversampled DFT-modulated FBs (Lecture-8)– Maximally decimated (and oversampled (not treated here))
cosine-modulated FBs
• `Perfect reconstruction’ concept provides framework for time-frequency analysis of signals
• Filter bank concept provides framework for frequency domain realization of long FIR filters
Top Related