ELEC8040: Project - The Design of 16-Point Complex FFT Processor - MATLAB Assignment Help

Download Solution Order New Solution
Assignment Task:

Task:

The project is concerned with the design of 16-point complex FFT processor using radix-2, Decimation-in-Time (DIT) butterfly architecture. The following MATLAB function is provided to you to use in the project: res_analysis.

The project consists of two parts:

Part A

(i) Design and implement a 16-point radix-2 DIT complex FFT in MATLAB using complex variables, exp(–j*x) for twiddle factor WN calculations (e.g. no storage for the twiddle factors is required), and one or more 16-element arrays for the data memory. Assume that all the input time domain data values are available in a 16-element array to start with. Inputs and outputs are all complex values.

(ii) Show that your FFT correctly calculates an FFT for a random input, Din, by comparing it in MATLAB using input signal:

>>Din = (1.99*rand(1,16)-1) + j*(1.99*rand(1,16)-1);
and:
>>res_analysis(fft(Din)*Scale, YourFFTOutput);
where Scale is a real valued constant specific to your design and YourFFTOutput is the output of your FFT implementation. Submit as part of your typed report:

(1) 16-Point, radix-2, DIT FFT Signal Flow Graph (SFG) showing butterflies for each stage and their associated data input/output locations and twiddle factors.

(2) Block diagram representing your scaled butterfly and high-level diagram showing the overall FFT processor implementation in MATLAB.

(3) res_analysis() plot and res_analysis() text output

(4) Discussion about how you have tested the MATLAB code to verify correct operation.

(5) Your fully commented MATLAB code.
 

Part B

(i) Repeat the requirements in Part A but now the input, output, and all values between stages must be 16-bit values with valid ranges matching 16-bit 2's complement numbers. Use “Convergent” to round extra bits from wide numbers at the end of each butterfly computation. The twiddle factors WN are also quantised to 16-bit 2’s complement numbers.

 

(ii) State the Q[n.m] number format for the input, output, and all values between stages as well as the twiddle factors. Where, n represents the number of integers bits and m the number of fractional bits.

(iii) Repeat Part A (ii) and demonstrate the effect of data and coefficient quantisation on the output of your implemented FFT processor. Submit as part of your typed report:

(5) Block diagram representing your quantised butterfly and overall FFT implementation showing where the quantization and scaling taking place.

(6) res_analysis() plot and res_analysis() text output

(7) Discussion about how you have tested the MATLAB code to verify correct operation.

(8) Your fully commented MATLAB code.

 

This ELEC8040: MATLAB  Assignment has been solved by our MATLAB Experts at My Uni Paper. Our Assignment Writing Experts are efficient to provide a fresh solution to this question. We are serving more than 10000+Students in Australia, UK & US by helping them to score HD in their academics. Our Experts are well trained to follow all marking rubrics & referencing style.

Be it a used or new solution, the quality of the work submitted by our assignment Experts remains unhampered. You may continue to expect the same or even better quality with the used and new assignment solution files respectively. There’s one thing to be noticed that you could choose one between the two and acquire an HD either way. You could choose a new assignment solution file to get yourself an exclusive, plagiarism (with free Turnitin file), expert quality assignment or order an old solution file that was considered worthy of the highest distinction.
    

Get It Done! Today

Country
Applicable Time Zone is AEST [Sydney, NSW] (GMT+11)
+

Every Assignment. Every Solution. Instantly. Deadline Ahead? Grab Your Sample Now.