One-Dimensional FFTs. Figure 6.19a shows z(t), a continuous cosine wave with a period of T 0. . Its Fourier transform, Z(f) is two impulses, at 1/T 0

Similar documents
Performance Analysis of FIR Digital Filter Design Technique and Implementation

DSP Filter Design for Flexible Alternating Current Transmission Systems

Digital Signal Processing

Chapter 5 Window Functions. periodic with a period of N (number of samples). This is observed in table (3.1).

A Comparison of Two Computational Technologies for Digital Pulse Compression

ECE Digital Signal Processing

Understanding Digital Signal Processing

The Polyphase Filter Bank Technique

Using the DFT as a Filter: Correcting a Misconception by Richard G. Lyons

When and How to Use FFT

An Efficient Design of Parallel Pipelined FFT Architecture

ECEn 487 Digital Signal Processing Laboratory. Lab 3 FFT-based Spectrum Analyzer

Fourier Theory & Practice, Part I: Theory (HP Product Note )

Discrete Fourier Transform (DFT)

Fundamentals of Time- and Frequency-Domain Analysis of Signal-Averaged Electrocardiograms R. Martin Arthur, PhD

EE 215 Semester Project SPECTRAL ANALYSIS USING FOURIER TRANSFORM

Lab 3 FFT based Spectrum Analyzer

Reduction in sidelobe and SNR improves by using Digital Pulse Compression Technique

ME scope Application Note 01 The FFT, Leakage, and Windowing

COURSE PLAN. : DIGITAL SIGNAL PROCESSING : Dr.M.Pallikonda.Rajasekaran, Professor/ECE

Biomedical Signals. Signals and Images in Medicine Dr Nabeel Anwar

A New Method of Emission Measurement

FIR window method: A comparative Analysis

Blind Dereverberation of Single-Channel Speech Signals Using an ICA-Based Generative Model

Window Functions And Time-Domain Plotting In HFSS And SIwave

FFT Convolution. The Overlap-Add Method

DOPPLER SHIFTED SPREAD SPECTRUM CARRIER RECOVERY USING REAL-TIME DSP TECHNIQUES

(i) Understanding of the characteristics of linear-phase finite impulse response (FIR) filters

FIR Filter Design using Different Window Techniques

6 Sampling. Sampling. The principles of sampling, especially the benefits of coherent sampling

Elliptic Jes Window Forms in Signal Processing

Corso di DATI e SEGNALI BIOMEDICI 1. Carmelina Ruggiero Laboratorio MedInfo

Noise estimation and power spectrum analysis using different window techniques

FFT Analyzer. Gianfranco Miele, Ph.D

Discrete Fourier Transform, DFT Input: N time samples

(i) Understanding of the characteristics of linear-phase finite impulse response (FIR) filters

A SIMPLE APPROACH TO DESIGN LINEAR PHASE IIR FILTERS

B.Tech III Year II Semester (R13) Regular & Supplementary Examinations May/June 2017 DIGITAL SIGNAL PROCESSING (Common to ECE and EIE)

Practical issue: Group definition. TSTE17 System Design, CDIO. Quadrature Amplitude Modulation (QAM) Components of a digital communication system

Effect of shape parameter α in Kaiser-Hamming and Hann-Poisson Window Functions on SNR Improvement of MST Radar Signals

Architecture for Canonic RFFT based on Canonic Sign Digit Multiplier and Carry Select Adder

FIR FILTER DESIGN USING A NEW WINDOW FUNCTION

IMPLEMENTATION OF 64-POINT FFT/IFFT BY USING RADIX-8 ALGORITHM

Advanced Digital Signal Processing Part 5: Digital Filters

DFT: Discrete Fourier Transform & Linear Signal Processing

AD-AG90 64&8 MASSACHUSETTS INST OF TECH LEXINGTON LINCOLN LAB F/G 9/3 EFFICIENT MULTIPLIERS FOR THE FFT,(U) W I0JUL 80 S C POHLIG,.

CG401 Advanced Signal Processing. Dr Stuart Lawson Room A330 Tel: January 2003


GUJARAT TECHNOLOGICAL UNIVERSITY

ISSN: X International Journal of Advanced Research in Electronics and Communication Engineering (IJARECE) Volume 7, Issue 5, May 2018

Design of FIR Filters

An Improved Window Based On Cosine Hyperbolic Function

AutoBench 1.1. software benchmark data book.

Digital Signal Processing

Part One. Efficient Digital Filters COPYRIGHTED MATERIAL

EE 403: Digital Signal Processing

The Fast Fourier Transform

Cepstrum alanysis of speech signals

4. Design of Discrete-Time Filters

Butterworth Window for Power Spectral Density Estimation

Analysis of Processing Parameters of GPS Signal Acquisition Scheme

System Identification & Parameter Estimation

Bibliography. Practical Signal Processing and Its Applications Downloaded from

LABORATORY - FREQUENCY ANALYSIS OF DISCRETE-TIME SIGNALS

Digital Signal Processing

CHAPTER 2 FIR ARCHITECTURE FOR THE FILTER BANK OF SPEECH PROCESSOR

FOURIER analysis is a well-known method for nonparametric

FFT analysis in practice

The University of Texas at Austin Dept. of Electrical and Computer Engineering Final Exam

A Brief Introduction to the Discrete Fourier Transform and the Evaluation of System Transfer Functions

FAST RADIX 2, 3, 4, AND 5 KERNELS FOR FAST FOURIER TRANSFORMATIONS ON COMPUTERS WITH OVERLAPPING MULTIPLY ADD INSTRUCTIONS

Application Note, V1.0, March 2008 AP XC2000 Family. DSP Examples for C166S V2 Lib. Microcontrollers

Linguistic Phonetics. Spectral Analysis

Keysight Technologies Pulsed Antenna Measurements Using PNA Network Analyzers

Signal Processing Toolbox

Isolated Digit Recognition Using MFCC AND DTW

ME scope Application Note 02 Waveform Integration & Differentiation

REAL-TIME PROCESSING ALGORITHMS

Quantification of glottal and voiced speech harmonicsto-noise ratios using cepstral-based estimation

F I R Filter (Finite Impulse Response)

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 50, NO. 12, DECEMBER

Biosignal filtering and artifact rejection. Biosignal processing, S Autumn 2012

Frequency Domain Representation of Signals

Real-time digital signal recovery for a multi-pole low-pass transfer function system

Biosignal filtering and artifact rejection. Biosignal processing I, S Autumn 2017

ISSN (PRINT): , (ONLINE): , VOLUME-5, ISSUE-2,

EE470 Electronic Communication Theory Exam II

Digital Filters IIR (& Their Corresponding Analog Filters) Week Date Lecture Title

Outline. Introduction to Biosignal Processing. Overview of Signals. Measurement Systems. -Filtering -Acquisition Systems (Quantisation and Sampling)

The Design and Implementation of Classifying Bird Sounds

EC6502 PRINCIPLES OF DIGITAL SIGNAL PROCESSING

Vibroseis Correlation An Example of Digital Signal Processing (L. Braile, Purdue University, SAGE; April, 2001; revised August, 2004, May, 2007)

Experiment 4- Finite Impulse Response Filters

DISCRETE-TIME CHANNELIZERS FOR AERONAUTICAL TELEMETRY: PART II VARIABLE BANDWIDTH

Coherence Function in Noisy Linear System

REFERENCES. Telephony: Digital Signal Processing: Systems: WWW Sites:

The Fundamentals of FFT-Based Signal Analysis and Measurement Michael Cerna and Audrey F. Harvey

Sampling and Reconstruction

Summary of Lecture 7

Impulse Response as a Measurement of the Quality of Chirp Radar Pulses

Transcription:

6.7 LEAKAGE The input to an FFT is not an infinite-time signal as in a continuous Fourier transform. Instead, the input is a section (a truncated version) of a signal. This truncated signal can be thought of as an infinite signal multiplied by a rectangular function. For a DFT, the product of the signal and the rectangular function is sampled (multiplied by a series of impulses). Because multiplication in the time domain corresponds to convolution in the frequency domain, the effect of truncating a signal is seen in the FFT results (Brigham, 1974). Figure 6.19 illustrates the effect truncation and sampling have on the Fourier transform. Figure 6.19a shows z(t), a continuous cosine wave with a period of T 0. Its Fourier transform, Z(f) is two impulses, at 1/T 0 and 1/T 0. Figure 6.19c shows the product of z(t) and u(t), a sampling function. The sampled signal z(t) x u(t) is truncated by multiplication with w(t), a rectangular function. Figure 6.19e shows the resulting signal, y(t), and its Fourier transform, Y(f) (the convolution of Z(f), U(f), and W(f)). The DFT interprets its input as one complete cycle of a periodic signal. To create a periodic signal from the N samples (y(t)), we convolve y(t) with v(t), a series of impulses at intervals of T 0. T 0 is the length of the rectangular function as well as exactly one period of the input signal z(t). Notice that V(f), the Fourier transform of v(t), is a series of impulses located at multiples of 1/T 0. Because the zero values of the side lobes of Y(f) are also located at multiples of 1/T 0, multiplying Y(f) by V(f) in Figure 6.19g produces the same transform as in Figure 6.19c (the transform of the non-truncated signal). If the length of the rectangular function (w(t)) is not equal to one period or a multiple of periods of the input signal, leakage effects appear in the DFT output. Figure 6.20 illustrates these effects. Notice that in this case T 1, the width of the rectangular function w(t), is not equal to T 0, the period of z(t). Because of the convolution of impulses at locations 1/T 0 and 1/T 0 with W(f), which has zero values at multiples of 1/T 1, Y(f) has zero values at frequencies other than multiples of 1/T 1 or 1/T 0. Convolution in the time domain of y(t) and v(t) in Figure 6.20g corresponds to multiplication of Y(f) and V(f) in the frequency domain. Because the samples in V(f) spaced at 1/T 1 do not correspond to zero values in Y(f), noise (or leakage) in the DFT output is produced. Another way to think of leakage is to conceptualize the DFT output as a series of bins at specific frequencies. If f s is the sampling frequency and N 244

6 Figure 6.19 Development of DFT, Window = Input Period 245

246 Figure 6.20 Development of DFT, Window Input Period

6 is the number of samples, the bins range from 0 Hz to f s /2 Hz and are equally spaced in frequency f s /N Hz apart. If the N input samples contain one period or a multiple of periods of the input signal, each of the frequency components falls into a frequency bin. If the N input samples do not contain one period or a multiple of periods, at least one of the frequency components falls between bins. The energy of this frequency component is distributed to the surrounding bins, producing a spectrum similar to Figure 6.20g (Brigham, 1974). In a real system, it is difficult to capture exactly one period or a multiple of periods of a signal. In most cases, leakage in the FFT output will result. One method of reducing this leakage is called windowing. Although windowing has many applications, we use it here to reduce leakage. Truncation of a signal is a form of windowing in which the window function is rectangular. Leakage caused by truncation can be reduced by selecting a non-rectangular window function with specific characteristics. The window function is selected for two characteristics (Brigham, 1974). First, to reduce the effect of side lobe multiplication, the side lobes in the Fourier transform of the window function should be significantly smaller than those of the rectangular window function's Fourier transform. Second, the main lobe of the window function's Fourier transform should be sufficiently narrow so that important signal information is not lost. Two examples of window functions that exhibit these characteristics are the Hanning and the Hamming windows. Hanning: w(n) = 1/2 [1 cos(2πn/(n 1))] 0 < n < N 1 Hamming: w(n) = 0.54 0.46cos(2πn/(N 1)) 0 < n < N 1 Noise reduction is accomplished by dividing the selected window function into N equally spaced samples (called window coefficients) and multiplying each FFT input sample by the corresponding coefficient. The module window, shown in Listing 6.37, performs this calculation. This module works with both the radix-2 and radix-4 DIF subroutines. It assumes that the inplacedata buffer contains sequentially ordered data organized with real and imaginary values interleaved. It is written for a 1024-point FFT, but the window size can be changed by changing the constant N_x_2. 247

The window_coeffs buffer is initialized with the window coefficients. This buffer is organized with real and imaginary values interleaved. The buffer is initialized with an external file window_coeffs.dat that contains the precalculated window coefficients. Pointers are set to point to the inplacedata and window_coeffs buffers. The initial data fetch of a window coefficient and a sample is done before the loop. Inside the loop, a coefficient and sample are multiplied at the same time as the next coefficient and sample are read. After each multiplication, the product is written over the original FFT input sample. The loop is repeated for N samples (real and imaginary parts)..module windowing; { Calling Parameters FFT input data in the inplacedata buffer Return Values Windowed FFT input data in the inplacedata buffer }.CONST.VAR/PM.INIT.ENTRY Altered Registers I0,I1,I4,M0,M4,MX0,MY0,MR N_x_2=2048; window_coeffs[n_x_2]; window_coeffs:<window_coefs.dat>; window; window: I0=^inplacedata; {I0 --> 1st sample in FFT input data} I1=I0; I4=^window_coeffs; {I4 --> 1st window coefficient} M0=1; M4=1; CNTR=N_x_2-1; MX0=DM(I0,M0),MY0=PM(I4,M4); {Read 1st sample and coefficient} DO window_loop UNTIL CE; {Window N_x_2-1 samples} MR=MX0*MY0(RND),MX0=DM(I0,M0),MY0=PM(I4,M4); window_loop: DM(I1,M0)=MR1; MR=MX0*MY0(RND); {Multiply last sample and coefficient} DM(I1,M0)=MR1; {Last sample updated} RTS;.ENDMOD; 248 Listing 6.37 Windowing Routine

6 6.8 BENCHMARKS Benchmarks for the optimized radix-2 DIT FFT and radix-4 DIF FFT routines are given in this section. Straight-line code occupies much more memory than looped code, is hard to understand and is tedious to debug. All programs used to generate the benchmarks presented in this section are relatively short and uncomplicated looped programs. The FFT benchmarks in Table 6.1 are worst-case. For example, the 1024- point radix-2 FFT benchmark assumes that the data grows by two bits in every stage. Routine Number Number Execution Time of Points of Cycles (12.5MHz ADSP-2100A) Radix-2 DIT 1024 52911 4.23 ms Input scaling Radix-2 DIT 1024 113482 9.08 ms Conditional BFP* Radix-4 DIF 64 1381 0.11 ms Input scaling 256 7372 0.59 ms 1024 37021 2.96 ms Radix-4 DIF 64 1405 0.11 ms Input scaling 256 7423 0.59 ms Built-in digit-reverse 1024 37203 2.98 ms * BFP = Block Floating-Point Scaling Table 6.1 Benchmarks for FFT Routines 249

Table 6.2 lists the benchmarks for the other routines presented in this chapter (bit reversal, digit reversal, and windowing). Routine Number Number Time (12MHz ADSP-2100A) of Points of Cycles (µs) Bit-Reverse 64 138 11.04 (scramble, 128 266 21.28 real data) 256 522 41.76 1024 2058 164.64 Bit-Reverse 64 270 21.60 (unscramble, 128 526 42.08 complex data) 256 1038 83.04 1024 4110 328.80 Digit-Reverse 64 430 34.40 (unscramble, 256 1812 144.96 complex data) 1024 7188 575.04 Window 64 267 21.36 (complex data) 128 523 41.84 256 1035 82.80 1024 4107 328.56 Table 6.2 Benchmarks for Other Routines 250

6 6.9 REFERENCES Brigham, E.O. 1974. The Fast Fourier Transform. Englewood Cliffs, N.J.: Prentice-Hall, Inc. Burrus, C.S. and T.W. Parks. 1985. DFT and Convolution Algorithms. New York, NY: John Wiley and Sons. Dudgeon, D. and Mersereau, R. 1984. Multidimensional Digital Signal Processing. Englewood Cliffs, N.J.: Prentice-Hall Inc. Gonzalez, R. and Wintz, P. 1977. Digital Image Processing. Reading, MA: Addison-Wesley Publishing Company. Hakimmashhadi, H. 1988. Discrete Fourier Transform and FFT. Signal Processing Handbook. New York, NY: Marcel Dekker, Inc. Haykin, S. 1983. Communication Systems. New York: John Wiley and Sons. Oppenheim, A. V., and Schafer, R. W. 1975. Digital Signal Processing. Englewood Cliffs, N.J.: Prentice-Hall, Inc. Proakis, J. G. and D. G. Manolakis. 1988. Introduction to Digital Signal Processing. New York, NY: Macmillan Publishing Company. Rabiner, L. R. and Gold, B. 1975. Theory and Applications of Digital Signal Processing. Englewood Cliffs, N.J.: Prentice-Hall, Inc. Rabiner, Lawrence R. and Gold, Bernard. 1975. Theory and Applications of Digital Signal Processing. Englewood Cliffs, N.J.: Prentice-Hall, Inc. 251

252