Contents Digital Signal Processing, Part II: Power Spectrum Estimation 5. Application of the FFT for 7. Parametric Spectrum Est. Filtering and Spectrum Estimation 7.1 ARMA-Models 5.1 Fast Convolution 7.2 Markov Process (1st Order) 5.2 Analysis of Periodic Signals 7.3 Yule-Walker Equation 5.3 Window-Functions (Time Domain) 7.4 Linear Prediction (Survey) 5.4 Transform of Real Valued Bandpass Signals 7.5 Levinson-Durbin Recursion 6. Traditional Spectrum Estimation 7.6 Lattice Structure 6.1 Estimation of the Autocorrelation 7.7 Solution of the Yule-Walker Equation 6.2 Calculation of the ACF based on FFT 7.8 Examples 6.3 Periodogram (Variance) complete slides 6.4 Consistent Spectrum Estimation (Survey) partly on slides Contents DSV Part II Page 1
5.1 Fast Convolution 5.1.1 Overlap-Add Algorithm task: solution of y(k) = m h(µ) x(k µ) X(n) H(n) IFFT y(k) = m h(i) x((k i)) N i=0 µ=0 with aid of the FFT warning: circular convolution! zero-padding, so that circular aperiodic conv. h(k) finite length m + 1 x(k) finite length L x(k) h(k) finite length L + m periodic repetition from k = L + m on doesn t matter. Fast Convolution Page 2
very long input series decomposition into R = N/L fragments with L samples: x(k) = x r (k) = 0 R 1 r=0 x r (k) { for k < r L and k (r + 1) L superposition of the fragment responses y(k) = y r (k) = 0 R 1 r=0 y r (k) { for k < r L and k (r + 1) L + m Fast Convolution Page 3
fast convolution overlap-add algorithm: zero-padding of the impulse-response up to an overall length of L + m (L + m)-points FFT calculation of the system function H(n). for R subsequences with increasing index r: zero-padding of the rth subsequence up to an overall size of L + m (L + m)-point FFT of the subsequence x r (k) to calculate X r (n) elementwise multiplication of X r (n) and H(n) leads to Y r (n) (L + m)-points IFFT of Y r (n) leads to y r (k) superposition of y r (k) and y r 1 (k) see example on transparency 3 Fast Convolution Page 4
demand L+m = 2 p, p IN, comparison computational costs: FFT-length! = power of 2. N Add = 2 p log 2 (2 p ) = 2 p p elementary operations of the overlap-add algorithm: 1-times FFT of h(k) p 2 p R-times FFT of x r (k) R-times multiplication of (L + m)-point spectrals R-times IFFT R-times addition in overlapping regions overall computations costs of the fast convolution R p 2 p R 2 p R p 2 p R m 2 p [(2R + 1) p + R]+R m conventional convolution: N (m + 1) = L R (m + 1) = (2 p m) R (m + 1) Fast Convolution Page 5
conditions whereby the fast convolution performs better than the conventional one Q = 2p [(2R + 1) p + R] + R m R [2 p + m (2 p 1) m 2 ]? < 1 break even point for large block length: Q = lim R Q = 2p [2 p + 1] + m 2 p + m (2 p 1) m 2! = 1 m 2 m (2 p 2) + 2p 2 p = 0 m = 1/2 (2 p 2) approximation: 1 x 1 x/2 m 2 p 2p 2 p 2 2 p [ 1 ± 1 8 p 2p (2 p 2) 2 The overlap-add algorithm is superior to the discrete convolution, if the order of the FIR-filter is m > 2 p e.g. 1024 FFT m > 20 remark: derivation for complex valued filters; for real valued filters shift in favour of the conventional convolution. ] Fast Convolution Page 6
5.1.2 Overlap-Save Algorithm input series is splitted in overlapping subsequences (m samples overlapping) calculation of the circular convolution using a FFT suppression of the portions that araise due to the circular convolution Computational costs of overlap-add and overlap-save are nearly equal. Slight advantage for overlap-save, because m additions of the overlapping fragments do not apply. Dirichlet Function Page 7
Dirichlet Funktion, N=16 Dirichlet Function: 1 0.8 di N (x) = sin (Nx/2) N sin (x/2) 0.6 0.4 0.2 di N (x) 0 0.2 0.4 0.6 0.8 1 π 0 x π Matlab: diric(x,n) Dirichlet, or periodic sinc function Dirichlet Function Page 8
5.2.3 The Leakage Effect f p T N = m + α, α 1/2, m IN sin [π (m n + α)] X(n) = e jπ(m n+α)n 1 N sin [ π (m n + α)] N ( ) X(n) = e jπ(m n+α)n 1 N N din N (m n + α) The Leakage Effect Page 9
Example: N = 16, f p = 5 (f A /16) }{{} f 16/5 = 3.2 samples per period f p / f IN DFT provides an exact Spectrum leakage effect if f p / f = f p T N = m + α non integer, i.e. α 0 example: cosine, f p = 1kHz f A = 20kHz a) N = 32 m = 2, α = 0.4 b) N = 128 m = 6, α = 0.4 c) N = 1024 m = 51, α = 0.2 Analysis of Periodic Signals Page 10
5.3 Application of Window-Functions in Time Domain 5.3.1 General Interpretation of the Leakage Effect discrete time fourier transform of x(k) with rectangular-limiting: { x(k) 0 k N 1 x R (k) = x(k) f R (k) = mit f R (k) = 0 otherwise convolution in spectral domain: X R (e jω ) = 1 π π X(e jθ ) F R (e j(ω Θ) )dθ summation-formula for the spectrum of the rectangular sequence: N 1 F R (e jω ) = f R (k)e jωk = e jωk = e j(n 1)Ω/2 k= k=0 { 1 0 k N 1 0 otherwise sin(n Ω/2) sin(ω/2) therewith: X R (e jω ) = 1 π π X(e jθ j(n 1)(Ω Θ)/2 sin[n(ω Θ)/2] )e sin[(ω Θ)/2] dθ General Interpretation of the Leakage Effect Page 11
DTFT DFT by means of sampling in the spectral domain Ω n Tf A /N = n/n general expression for the DFT: X(n) = X R (e jn/n ) = 1 π π X(e jθ )e j(n 1)(n/N Θ)/2 sin[n(n N Θ)/2] sin[( n N Θ)/2] dθ example: complex valued exponentional series x(k) = e jω pk X(e jω ) = δ 0 (Ω Ω p ), π Ω π in the upper integral expression: filtering of X(n) = e jπ(n f pt N) N 1 sin[π(n f p T N)] N sin[ π N (n f pt N)]. compare with the direct formulation of the DFT of a complex exponential series! General Interpretation of the Leakage Effect Page 12
5.3.2 Hann-Window as an Example for the Suppression of the Leakage Effect f Hn (k) = x Hn (k) = { 0, 5[1 cos(k/(n 1))] for 0 k N 1 0 otherwise { x(k) f Hn (k) for 0 k N 1 0 otherwise X Hn (e jω ) = 1 X(ejΩ ) F Hn (e jω ) DFT: Ω n/n, 0 n N 1 Hann-Window Page 13
Spectrum of a Hann-Window: f Hn (k) = 0.5[1 cos(k/(n 1))] f R (k) = 0.5[1 1 2 (ejk/(n 1) +e jk/(n 1) )] f R (k) in general: DTFT{e jk/(n 1) f R (k)} = F R (e j[ω /(N 1)] ) using following transform: F Hn (e jω ) = 1 [ F R (e jω ) 1 2 2 ( [F R j[ω+ e ]) ( N 1 + F R j[ω e ])]] N 1. using F 0 (e jω ) = sin(nω/2)/ sin(ω/2) leads to ( F R j[ω± e ]) ( N 1 j(n 1)(Ω± = e N 1 )/2 F0 R j[ω± e ]) N 1 jπ = e j(n 1)Ω/2 e }{{} F0 R 1 non causal formulation: F Hn 0 ( e jω ) = 1 2 [ F R 0 ( e jω ) + 1 2 [ F R 0 ( j[ω+ e ]) N 1 + F0 R ( j[ω e ])]] N 1 ( j[ω± e ]) N 1. three shifted sin(n x)/ sin(x)-spektra attenuation of the first overshot Hann-Window Page 14
advantage: overshot in stopband reduced reduction of leakage-effect drawback: doubled width of the passband decrease of spectral resolution Hann-Window Page 15
without Hann-Window: with Hann-Window: for α = 0 DFT ideal Hann-window leads to additional spectral lines! If α = 0 can be ensured: don t use a window! Hann-Window Page 16
5.3.3 More Common Window{ Functions (1 β) β cos(k/(n 1)) 0 k N 1 modified Hann-Window: f(k) = 0 otherwise Calculation of β to satisfy (Ω = 5π/N) = 0 in the middle of the 1st overshot. using large values of N sin(5π/2n) 5π/2N. F0 Hn (e j5π/n ) F0 Hn (1) = 32 db F 0 Hm (e j5π/n ) Hn F0 Hm 4 [ ] 1 5 (1 β) (1) π 5 21 β = 0 β = 0.46 { 0, 54 0, 46 cos(k/(n 1)) 0 k N 1 Hamming-Window: f Hm (k) = 0 otherwise further increased attenuation in stopband (at reduced frequency resolution): } 0, 42 0, 5 cos(k/(n 1)) Blackman-window: f Bl 0 k N 1 (k) = +0, 08 cos(4πk/(n 1)) 0 otherwise Overview of Common Window Functions Page 17
spectra see overview on slide 20 5.3.4 Dolph-Chebyshev window equiripple approximation in stopband (cf. chap. 3, FIR-filter) { cosh (N 1) arcosh approach: F0 DT (e jω ) = cos { (N 1) arccos [ cos(ω/2) [ cos(ω s /2) cos(ω/2) cos(ω s /2) ]} ]} 0 Ω Ω s Ω s Ω π, compromise: resolution (Ω s ) leakage (a min ) with fixed N: Ω s 1,46 π [log2 +a min/20] N 1 { } window time-domain: f DT (k) = A 0 DFT 1 N e} jπn(n 1)/N {{} F0 DT (e jn/n ) causality, k = 0,..., N 1. Dolph-Chebyshev Window Page 18
5.3.5 Overview: The Different Window Functions fig. window FFT- Ω s a min abs. max.-value length [ db] of the spectrum left: a) rectangular 32 π/16 13 32 = N b) Hann 32 π/8 32 15, 6 N/2 c) Hamming 32 π/8 42 16,8 d) Blackman 32 π3/16 58 13,0 right: a) Dolph-Cheb. 32 π3/16 74 14,3 b) Dolph-Cheb. 32 π/8 47 16,6 c) Dolph-Cheb. 32 π/16 21 20,0 d) Dolph-Cheb. 64 π/16 48 33,0 Overview Window-Properties Page 19
Real Valued Bandpass Signals Page 20
5.4 Transform of Real Valued Bandpass Signals 5.4.1 Sampling Theorem for Bandpass Signals continuous time real valued BP-signal: X BP (jf) = 0, f < f 1 ; f > f 2 bandwidth: b = f 2 f 1 special case: f 1 = λ b, λ IN resp. f 2 = (λ + 1) b sampling: f A = 2 b λ even λ odd Real Valued Bandpass Signals Page 21
Violation of the Condition f 1 = λ b overlapping of the spectra: intentional raise of the bandwidth (b b ) symmetric increase of the bandwidth: f 1 = q b, f 2 = (q + 1) b, q IR f 1 f 1 = f 1 a b = (q a) b and f 2 f 2 = f 2 + a b = (q + 1 + a) b demand: f 1 = q a b 1 + 2 a = λ IN a = q λ 2 λ + 1, min{a} λ = q IN (s.u. )) b = b ( 1 + 2 q q ) IN 2 q IN + 1 2q + 1 = b 2 q IN + 1, f A = 2 b = 2 b ( 1 + 2 q q ) IN 2 q IN + 1 ) q IN largest integer q Page 22
Generalized Sampling Theorem for Analytic Signals analytic signal: x + BP (t) = x BP(t) + jh{x BP (t)} = x BP (t) + jˆx BP (t) f A b lowest possible sampling rate: f 1 = 3.75 b, f A = b constraint: symmetry with regard to the center frequency f m = 4.25b f m /f A = M IN, f A = 4.25b/4 = 1.0625b Generalized Sampling Theorem for Analytic Signals Page 23
5.4.2 Spectral Transform of the Complex Envelope alternative structure to generate the complex envelope interpretation of the N-element DFT advantages of the complex structure: signalprocessing at lowest possible sampling-rate spectral overlapping impossible if f A b FFT works with complex signals anyway basic structure of modern (digital) receivers are complex DFT of the Complex Envelope Page 24