Digital Signal Processing. Midterm 2 Solutions

Similar documents
Digital Signal Processing. Midterm 1 Solution

VU Signal and Image Processing. Torsten Möller + Hrvoje Bogunović + Raphael Sahann

MAHALAKSHMI ENGINEERING COLLEGE-TRICHY

Module 3. Convolution. Aim

ECSE 512 Digital Signal Processing I Fall 2010 FINAL EXAMINATION

Discrete Fourier Transform

Lecture 10. Digital Signal Processing. Chapter 7. Discrete Fourier transform DFT. Mikael Swartling Nedelko Grbic Bengt Mandersson. rev.

Fall 2011, EE123 Digital Signal Processing

! Circular Convolution. " Linear convolution with circular convolution. ! Discrete Fourier Transform. " Linear convolution through circular

Lecture 20: Discrete Fourier Transform and FFT

Digital Signal Processing Lecture 10 - Discrete Fourier Transform

Digital Signal Processing. Lecture Notes and Exam Questions DRAFT

EDISP (NWL3) (English) Digital Signal Processing DFT Windowing, FFT. October 19, 2016

ELEN 4810 Midterm Exam

EE-210. Signals and Systems Homework 7 Solutions

/ (2π) X(e jω ) dω. 4. An 8 point sequence is given by x(n) = {2,2,2,2,1,1,1,1}. Compute 8 point DFT of x(n) by

Digital Signal Processing

ELEG 305: Digital Signal Processing

EE123 Digital Signal Processing

ELEG 305: Digital Signal Processing

Discrete Time Signals and Systems Time-frequency Analysis. Gloria Menegaz

Linear Convolution Using FFT

Discrete Fourier transform (DFT)

ECE538 Final Exam Fall 2017 Digital Signal Processing I 14 December Cover Sheet

LAB 2: DTFT, DFT, and DFT Spectral Analysis Summer 2011

ENT 315 Medical Signal Processing CHAPTER 2 DISCRETE FOURIER TRANSFORM. Dr. Lim Chee Chin

Multidimensional digital signal processing

Chapter 6: Applications of Fourier Representation Houshou Chen

DHANALAKSHMI COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING EC2314- DIGITAL SIGNAL PROCESSING UNIT I INTRODUCTION PART A

Digital Signal Processing Lecture 3 - Discrete-Time Systems

DISCRETE FOURIER TRANSFORM

VII. Discrete Fourier Transform (DFT) Chapter-8. A. Modulo Arithmetic. (n) N is n modulo N, n is an integer variable.

8 The Discrete Fourier Transform (DFT)

Definition. A signal is a sequence of numbers. sequence is also referred to as being in l 1 (Z), or just in l 1. A sequence {x(n)} satisfying

Lecture 19: Discrete Fourier Series

Discrete Time Fourier Transform (DTFT)

DSP Algorithm Original PowerPoint slides prepared by S. K. Mitra

Chap 2. Discrete-Time Signals and Systems

EEO 401 Digital Signal Processing Prof. Mark Fowler

Discrete-Time Signals and Systems

DFT-Based FIR Filtering. See Porat s Book: 4.7, 5.6

Question Bank. UNIT 1 Part-A

The Fourier transform allows an arbitrary function to be represented in terms of simple sinusoids. The Fourier transform (FT) of a function f(t) is

Q1 Q2 Q3 Q4 Q5 Total

EE482: Digital Signal Processing Applications

EE 225D LECTURE ON DIGITAL FILTERS. University of California Berkeley

Multimedia Signals and Systems - Audio and Video. Signal, Image, Video Processing Review-Introduction, MP3 and MPEG2

Frequency-Domain C/S of LTI Systems

EE 16B Final, December 13, Name: SID #:

Lecture 3 January 23

DEPARTMENT OF EI DIGITAL SIGNAL PROCESSING ASSIGNMENT 1

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Science Discrete-Time Signal Processing Fall 2005

Digital Signal Processing Lecture 4

IT DIGITAL SIGNAL PROCESSING (2013 regulation) UNIT-1 SIGNALS AND SYSTEMS PART-A

Problem Score Total

Review of Discrete-Time System

ECE-314 Fall 2012 Review Questions for Midterm Examination II

1. Calculation of the DFT

SIDDHARTH GROUP OF INSTITUTIONS:: PUTTUR Siddharth Nagar, Narayanavanam Road QUESTION BANK (DESCRIPTIVE)

R13 SET - 1

Roll No. :... Invigilator s Signature :.. CS/B.Tech (EE-N)/SEM-6/EC-611/ DIGITAL SIGNAL PROCESSING. Time Allotted : 3 Hours Full Marks : 70

ESE 531: Digital Signal Processing

! Introduction. ! Discrete Time Signals & Systems. ! Z-Transform. ! Inverse Z-Transform. ! Sampling of Continuous Time Signals

EEL3135: Homework #4

EE538 Final Exam Fall 2007 Mon, Dec 10, 8-10 am RHPH 127 Dec. 10, Cover Sheet

7.16 Discrete Fourier Transform

NAME: ht () 1 2π. Hj0 ( ) dω Find the value of BW for the system having the following impulse response.

ECE 413 Digital Signal Processing Midterm Exam, Spring Instructions:

EEE4001F EXAM DIGITAL SIGNAL PROCESSING. University of Cape Town Department of Electrical Engineering PART A. June hours.

ELEN E4810: Digital Signal Processing Topic 2: Time domain

LTI H. the system H when xn [ ] is the input.

ECE 301 Division 1 Final Exam Solutions, 12/12/2011, 3:20-5:20pm in PHYS 114.

ESE 531: Digital Signal Processing

New Mexico State University Klipsch School of Electrical Engineering EE312 - Signals and Systems I Fall 2015 Final Exam

Chapter 8 The Discrete Fourier Transform

Examination with solution suggestions SSY130 Applied Signal Processing

Solution 10 July 2015 ECE301 Signals and Systems: Midterm. Cover Sheet

Analog vs. discrete signals

Review of Frequency Domain Fourier Series: Continuous periodic frequency components

GEORGIA INSTITUTE OF TECHNOLOGY SCHOOL of ELECTRICAL & COMPUTER ENGINEERING FINAL EXAM

ECE 301 Division 1 Exam 1 Solutions, 10/6/2011, 8-9:45pm in ME 1061.

Voiced Speech. Unvoiced Speech

Aspects of Continuous- and Discrete-Time Signals and Systems

ECE 301. Division 2, Fall 2006 Instructor: Mimi Boutin Midterm Examination 3

HST.582J / 6.555J / J Biomedical Signal and Image Processing Spring 2007

E : Lecture 1 Introduction

DFT & Fast Fourier Transform PART-A. 7. Calculate the number of multiplications needed in the calculation of DFT and FFT with 64 point sequence.

Final Exam of ECE301, Section 1 (Prof. Chih-Chun Wang) 1 3pm, Friday, December 13, 2016, EE 129.

EE538 Final Exam Fall :20 pm -5:20 pm PHYS 223 Dec. 17, Cover Sheet

VALLIAMMAI ENGINEERING COLLEGE. SRM Nagar, Kattankulathur DEPARTMENT OF INFORMATION TECHNOLOGY. Academic Year

EE538 Digital Signal Processing I Session 13 Exam 1 Live: Wed., Sept. 18, Cover Sheet

EE 224 Signals and Systems I Review 1/10

Fourier series for continuous and discrete time signals

Examples. 2-input, 1-output discrete-time systems: 1-input, 1-output discrete-time systems:

Each problem is worth 25 points, and you may solve the problems in any order.

Use: Analysis of systems, simple convolution, shorthand for e jw, stability. Motivation easier to write. Or X(z) = Z {x(n)}

OLA and FBS Duality Review

ECE 301 Division 1, Fall 2006 Instructor: Mimi Boutin Final Examination

New Mexico State University Klipsch School of Electrical Engineering. EE312 - Signals and Systems I Spring 2018 Exam #1

Discrete-Time Signals & Systems

Transcription:

EE 123 University of California, Berkeley Anant Sahai arch 15, 2007 Digital Signal Processing Instructions idterm 2 Solutions Total time allowed for the exam is 80 minutes Please write your name and SID on every page of the exam Some useful formulas: N point Discrete Fourier Transform (DFT) X[k] = N 1 n=0 Inverse Discrete Fourier Transform (IDFT) 2πk j x[n]e N n x[n] = 1 N N 1 k=0 X[k]e j 2πn N k

1. (40 points) Let H(e jω ) be the frequency response of a discrete time LTI filter. The filter is arranged in the following cascade combination given below: jw 2 H(e ) 2 a. (10 pts) Is the system given in the above figure linear? Justify your answer by giving a brief proof or a counterexample. Solution: Since each of the individual blocks in the above cascade configuration are linear, the whole system is also linear. b. (10 pts) Is the system given in the above figure time-invariant? Justify your answer by giving a brief proof or a counterexample. Solution: Let x[n] denote the input to the system, w[n] the output after upconversion, g[n] the output after passing through the filter H(e jωn ) and y[n] denote the overall output of the cascade system. Also, let h[n] be the impulse response of the filter. We already know that the system is linear. So, we only need to verify time-invariance when the input to the system is a delta function. Let x[n] = δ[n]. Then, w[n] = δ[n] and g[n] = h[n]. Therefore, y[n] = h[2n]. Now, let the input to the system be a time-shifted delta function, i.e., x[n] = δ[n n 0 ]. Then, w[n] = This implies that g[n] = h[n 2n 0 ]. Finally, { 1 if n = 2n0 0 otherwise = δ[n 2n 0 ] ỹ[n] = g[2n] This proves that the system is time-invariant. = h[2n 2n 0 ] = h[2(n n 0 )] = y[n n 0 ] }

Now consider the following alternate cascade formation: jw 2 H(e ) 2 c. (10 pts) Is the system given in the above figure linear? Justify your answer by giving a brief proof or a counterexample. Solution: Since each of the individual blocks in the above cascade configuration are linear, the whole system is also linear. d. (10 pts) Is the system given in the above figure time-invariant? Justify your answer by giving a brief proof or a counterexample. Solution: Let x[n] denote the input to the system, w[n] the output after decimation, g[n] the output after passing through the filter H(e jωn ) and y[n] denote the overall output of the cascade system. Also, let h[n] be the impulse response of the filter. We already know that the system is linear. So, we only need to verify time-invariance when the input to the system is a delta function. Let x[n] = δ[n]. Then, w[n] = δ[n] and g[n] = h[n]. Therefore, y[n] = { h[n/2] if n is even 0 if n is odd Now, let the input to the system be a time-shifted delta function, i.e., x[n] = δ[n 1]. Then, the output after decimation is given by w[n] = 0. Hence, g[n] = 0 and ỹ[n] = 0. Since, ỹ[n] y[n 1] the system is not time-invariant. }

2. (80 points) Let x[n] be a given time sequence. Assume that the length of the sequence is = 3 ν. The goal is to compute its point DFT coefficients X[k] s. a. (10 pts) Find the total number of complex multiplications and additions required to compute X[k] s directly from the definition of the DFT. Solution: From the definition of the DFT, X[k] = 1 n=0 To compute X[k] for a single k, we need 1 complex additions complex multiplications x[n]w nk, k = 0, 1,, 1 Therefore, to compute the point DFT of x[n] we need a total of ( 1) complex additions 2 complex multiplications

b. (20 pts) Describe in detail a fast algorithm to compute the DFT of x[n]. Hint: Think of a recursive algorithm similar to the decimation in time FFT algorithm. Solution: From the definition of the DFT, X[k] = = = = 1 n=0 n=0 mod 3 3 1 r=0 3 1 r=0 x[n]w nk x[n]w nk + x[3r]w 3rk + x[3r]w rk 3 3 1 r=0 + W k n=1 mod 3 x[n]w nk + x[3r + 1]W (3r+1)k + 3 1 r=0 x[3r + 1]W rk 3 n=2 mod 3 3 1 r=0 + W 2k x[n]w nk x[3r + 2]W (3r+2)k 3 1 r=0 x[3r + 2]W rk 3 = G[k] + W k H[k] + W 2k L[k] (1) Where G[k], H[k] and L[k] are the 3 point DFT coefficients corresponding to the sequences x[3r], x[3r + 1] and x[3r + 2] respectively. Therefore, the problem of computing a point DFT has been reduced into computing three 3 point DFTs and combining them according to Eqn. (1). This process can be repeated recursively until a stage where you need to compute 3 point DFTs.

c. (10 pts) Find the total number of complex multiplications and additions required to compute X[k] s using the algorithm from part (b). Solution: From Eqn. (1), it is clear that we need 2 complex multiplications and 2 complex additions for computing X[k] given the G[k], H[k] and L[k] for k = 0, 1,, 1. The number of such recursive stages in the algorithm is log 3. Therefore, the algorithm in part (b) requires a total of 2 log 3 complex multiplications 2 log 3 complex additions

d. (20 pts) Now assume that the length of the sequence x[n] is = 2 ν 1 3 ν 2. For this case, describe a fast algorithm to compute the DFT. Also, find the total number of complex multiplications and additions required under this algorithm. Solution: There are several possible fast algorithms to compute the DFT of a sequence of length = 2 ν 1 3 ν 2. We give one possible such algorithm. One can easily modify this algorithm to come up with similar algorithms having the same computational complexity. Algorithm: Use the radix-2 decimation in time FFT algorithm discussed in class to write X[k] = G[k] + W k H[k] k = 0, 1,, 1 where G[k] and H[k] are the DFT coefficients of two 2 = 2ν1 1 3 ν 2 point sequences, x[2r] and x[2r +1] respectively. So, we have reduced the problem of computing a point DFT into the problem of computing two 2 point DFTs by partitioning the original sequence. Step 1 can be repeated recursively as long as the partitioned sequences have lengths divisible by two. So, the radix-2 decimation in time recursion will continue until the partitioned sequences are each of length 3 ν 2 At this stage, we have represented the DFT coefficients X[k] s in terms of DFT coefficients of sequences of length 3 ν 2. The number of such sequences are 2 ν 1. Finally, to complete the algorithm we need to compute the DFT coefficients of 3 ν 2 point sequences. This can be done by applying the algorithm in part (b) for each of these sequences. Computational Complexity of the Algorithm: Our algorithm has two distinct phases. First we divide using the radix-2 decimation in time algorithm, then we divide using the radix-3 decimation in time algorithm from part (b). We compute the number of computations required for each of the two phases separately and add them up to give the total number of computations. We have ν 1 radix-2 decimation in time stages. This requires ν 1 complex multiplications ν 1 complex additions After the radix-2 decimation in time stages, we need to compute the DFT of 3 ν 2 point sequences. The number of such sequences is 2 ν 1. From part (c) of the question, we know that to compute the DFT of a 3 ν 2 point sequence we need 2 3 ν 2 ν 2 complex multiplications 2 3 ν 2 ν 2 complex additions Since there are a total of 2 ν 1 such sequence, we need 2 ν 1 (2 3 ν 2 ν 2 ) = 2ν 2 complex multiplications 2 ν 1 (2 3 ν 2 ν 2 ) = 2ν 2 complex additions

Therefore, the total number of computations needed are ν 1 + 2ν 2 = (ν 1 + 2ν 2 ) complex multiplications ν 1 + 2ν 2 = (ν 1 + 2ν 2 ) complex additions

Let x[n] and y[n] be two = 3 ν point sequences. The goal is to compute the linear convolution of x[n] and y[n], i.e., z[n] = x[n] y[n]. e. (10 pts) Find the total number of complex multiplications and additions required to compute z[n] using the DFT algorithm in part (b). Solution: z[n] = x[n] y[n]. Since both x[n] and y[n] are point sequences, the length of the sequence z[n] is atmost 2 1. Let N (2 1). To compute z[n] we need to perform the following operations 1. Compute the N point DFT X[k] and Y [k]. 2. Compute the product Z[k] = X[k] Y [k]. 3. Compute the IDFT of Z[k], whose output will give us z[n]. Now, in order to use the algorithm in part (b) to compute the DFT and IDFT (in steps 1 and 3) we must choose N to be the smallest power of three greater than (2 1). Since = 3 ν, the smallest power of three greater than (2 3 ν 1) is 3 ν+1. Hence, we choose N = 3 ν+1 The computational complexity is given by Step 1: To compute two N point DFTs we need 4N log 3 N complex multiplications 4N log 3 N complex additions Step 2: To compute the product of X[k] and Y [k] we need N complex multiplications Step 3: To compute an N point IDFT we need 2N log 3 N complex multiplications 2N log 3 N complex additions Therefore, to compute z[n] using the DFT algorithm in part (b) we need a total of 6N log 3 N + N complex multiplications 2N log 3 N complex additions

f. (10 pts) Find the total number of complex multiplications and additions required to compute z[n] using the FFT algorithm discussed in class, i.e., the FFT algorithm for powers of two. Hint: The question asks for a linear convolution, which is different from a circular convolution. Solution: z[n] = x[n] y[n]. Since both x[n] and y[n] are point sequences, the length of the sequence z[n] is atmost 2 1. Let N (2 1). To compute z[n] we need to perform the following operations 1. Compute the N point DFT X[k] and Y [k]. 2. Compute the product Z[k] = X[k] Y [k]. 3. Compute the IDFT of Z[k], whose output will give us z[n]. In this question we are specifically asked to use the radix-2 FFT algorithm discussed in class to compute the DFT and IDFT in steps 1 and 3. So, we must choose N to be the smallest power of two greater than (2 1), i.e., N = 2 β, where β is the smallest number such that 2 β (2 3 ν 1). In this case, the computational complexity is given by Step 1: To compute two N point DFTs using the radix-2 FFT algorithm, we need 2N log 3 N complex multiplications 2N log 3 N complex additions Step 2: To compute the product of X[k] and Y [k] we need N complex multiplications Step 3: To compute an N point IDFT using the radix-2 IFFT algorithm, we need N log 3 N complex multiplications N log 3 N complex additions Therefore, to compute z[n] using the radix-2 FFT algorithm we need a total of 2N log 3 N + N complex multiplications 2N log 3 N complex additions

3. (40 points) Let h[n] be the impulse response of a LTI filter. Assume that h[n] = 0 for n < 0 and n L. Let d[n] be an N (N > L) point data sequence, i.e., d[n] = 0 for n < 0 and n N. Denote this sequence by the vector d = [d[0], d[1],,d[n 1]] Create a sequence x[n] by adding a L 1 point cyclic prefix to d[n]. This can be represented by the following vector x = [d[n L + 1], d[n L + 2],,d[N 1], d[0], d[1],,d[n 1]] Let w[n] denote the output of the filter when the input is x[n]. We ignore the first L 1 symbols of the output sequence w[n] and collect the next N symbols. Let y[n] denote this output of length N, which can be represented as y = [w[l], w[l + 1],,w[N + L 1]] D[k] IDFT d[n] Cyclic x[n] w[n] h[n] prefix Remove prefix y[n] DFT Y[k] Figure 1: Overall system a. (10 pts) Compute the sequence y[n] as a function of d[n] and the filter impulse response h[n]. Solution: From Fig. 3, we have w[n] = x[n] h[n] = y[n] = = L 1 l=0 L 1 l=0 L 1 l=0 y[n] = h[n] N d[n] h[l]x[n l], n = 1, 2,,N + L 1 h[l]x[n l], n = L,2,,N + L 1 h[l]d[((n L l)) N ] Here h[n] is zero-padded so as to make the length of the sequence N, that is, h[n] = [h[0], h[1],,h[l 1], 0, 0,,0].

b. (10 pts) Let Y [k], k = 0, 1,,N 1 denote the N point DFT of the sequence y[n]. Determine the sequence Y [k] as a function of H[k] and D[k], the N point DFTs of h[n] and d[n] respectively (See Fig. 1). Solution: From part (a) of the question we know that y[n] = d[n] N h[n] i.e., the N point circular convolution of d[n] and h[n]. Taking the DFT on both sides of the above equation, we have Y [k] = D[k] H[k], k = 0, 1,,N 1

c. (20 pts) Let N be a multiple of L, i.e., N = ml for some integer m > 0. Suppose that the DFT coefficients D[mk], k = 0, 1,,L 1 are known to be equal to 1. In this case can you recover the filter coefficients h[n] from the y[n] sequence. How would you do so? Solution: From part (b) of the question, we know that Y [k] = D[k] H[k], k = 0, 1,,mL 1 Since D[mk] = 1, for k = 0, 1,,L 1, we have By the definition of the DFT, Y [mk] = H[mk], k = 0, 1,,L 1 Y [mk] = H[mk] = H(e jω ) ω= 2πmk N = H(e jω ) ω= 2πmk ml = H(e jω ) ω= 2πk k = 0, 1,,L 1 L = L point DFT of h[n] Note, that the last equality is true only because h[n] is an L point sequence. Finally, in order to recover the filter coefficients h[n] we just need to take the IDFT of the sequence Y [mk], k = 0, 1,,L 1.