0% found this document useful (0 votes)
10 views6 pages

DSP Simulation 05 Fast Fourier Transform

Uploaded by

bonjeerlyn
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views6 pages

DSP Simulation 05 Fast Fourier Transform

Uploaded by

bonjeerlyn
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

Course (Subject) : ECE 113

Title of Fast Fourier Transform


Experiment

Submitted by: Date: Score:


/40

1. Pamaylaon, Jessa Mae 09/27/24

2. Bonje, Erlyn S. 09/27/24

3.

4.

5.

I. Objectives:

1. Understand the principles of the Fast Fourier Transform (FFT) algorithms, focusing on
the Decimation in Time (DIT) and Decimation in Frequency (DIF) methods.
2. Examine and compare the output at each stage of both algorithms to ensure the
results align with expected values, reinforcing the learning of FFT processing.
3. Write Scilab programs to effectively implement both the DIT and DIF FFT algorithms for
an 8-point input sequence, applying the appropriate mathematical steps.

II. Equipment, Materials and Tools

1 pc Laptop/Computer
SciLab Application

III. Procedure

Part 1: Decimation in Time (DIT) FFT


1. A program for 8-point radix-2 DIT FFT is prepared. An input sequence is defined: 0, 4, 2,
6, 1, 5, 3, 7.
2. The input sequence is restructured into proper order based on indices. In Scilab, the
indexing starts from 1. Adjustments for zero-based indices are applied.
3. The initial output variable is set to the restructured input. The length of the input
sequence is calculated as 8. The number of stages is determined as 3 (log2 of 8).
4. The first stage is performed with twiddle factors (w^0) (1) and (w^1). The sums and
differences of values are calculated.
5. The output from the first stage is used as the input for the second stage. Twiddle
factors (w^0) and (w^2) are applied. Sums and differences are again computed.
College of Engineering and Computer Studies
Bachelor of Science in Electronics Engineering (BSECE)
Form 01 Experiment Report Format
Original, 05-September-2022
6. The output from the second stage is used for the final stage. Four twiddle factors
(w^0), (w^1), (w^2), and (w^3) are used in computations.
7. The output from each stage is compared with expected results. The final output of the
DIT FFT is displayed.

Part 2: Decimation in Frequency (DIF) FFT


1. The same input sequence is used: 1, 1, 0, 0, 1, 1, 0, 0.
2. The length of the input sequence is again calculated as 8. The number of stages
remains at 3.
3. The sum of values is computed without applying the twiddle factor, while the
difference is multiplied by it.
4. The output from the first stage is used as the input for the second stage. Similar steps
are followed as in the first stage, maintaining the distinction in how twiddle factors are
applied.
5. The output from the second stage feeds into the final stage. Here, twiddle factors are
applied according to DIF rules.
6. The output is restructured if it is not in sequence. The final output is organized
correctly based on the expected sequence.
7. Each output from different stages is checked against expected results. The final output
of the DIF FFT is displayed.

IV. Observations.

We observed that since Scilab does not have an automatic way to rearrange sequences like
MATLAB, we adjusted the indices for Scilab's 1-based indexing by adding 1. After restructuring
the input as required for the DIT FFT algorithm, we moved on to the stages of the calculation.

In Stage 1, we took pairs of values, added and subtracted them using the twiddle factor
(w_8^0). The output matched our expectations, confirming that this stage was successful.
In Stage 2, we used the output from Stage 1 as input, grouping alternate terms and applying
the next set of twiddle factors, which also yielded correct results.
College of Engineering and Computer Studies
Bachelor of Science in Electronics Engineering (BSECE)
Form 01 Experiment Report Format
Original, 05-September-2022
In Stage 3, we applied four twiddle factors, and once again, the output reflected the
anticipated values, validating our understanding of the sequential nature of the stages. We
then compared the results from our manual calculations with Scilab's built-in fft function, and
were relieved to find that they produced the same output, reinforcing our confidence in our
implementation.

Next, we explored the Decimation in Frequency (DIF) algorithm, which flips the approach of
DIT. We modified our code to ensure the twiddle factor was only applied to the difference of
values in the sum. As with DIT, we verified the outputs at each stage of the DIF, finding our
results to be consistent with our manual calculations.

College of Engineering and Computer Studies


Bachelor of Science in Electronics Engineering (BSECE)
Form 01 Experiment Report Format
Original, 05-September-2022
V. Data and Results:

College of Engineering and Computer Studies


Bachelor of Science in Electronics Engineering (BSECE)
Form 01 Experiment Report Format
Original, 05-September-2022
College of Engineering and Computer Studies
Bachelor of Science in Electronics Engineering (BSECE)
Form 01 Experiment Report Format
Original, 05-September-2022
VI. Conclusion

We explored two algorithms for computing the Fast Fourier Transform (FFT) using Scilab: the
Decimation in Time (DIT) and the Decimation in Frequency (DIF) methods. Our main objective
was to demonstrate how these algorithms work by applying them to an 8-point input
sequence.

First, we implemented the DIT algorithm, which involves restructuring the input sequence
before performing the FFT. The main idea behind DIT is to organize the input in a specific
order and then apply a series of stages where we compute sums and differences of the input
values, accompanied by twiddle factors. This process breaks down the computation into
smaller parts, making it easier and faster to calculate the FFT. We were able to match the
outputs at each stage with expected results, confirming that our implementation was correct.

Next, we looked at the DIF algorithm, which is essentially a flipped version of DIT. The key
difference here is that the twiddle factors are applied differently in relation to the sums and
differences. This change in arrangement leads to a different sequence of computations but
aims to achieve the same final output. We implemented this in Scilab as well and verified that
the results matched the expected outputs, demonstrating the reliability of the DIF algorithm.

As a result both methods provided us with the same final outputs for the FFT of the specified
input sequence. This work shows that while the approaches to computing the FFT differ in
structure and the order of operations, they can yield consistent results, further emphasizing
the versatility of FFT algorithms. Our objectives to understand how these algorithms function
and to establish their effectiveness were successfully met through this practical
implementation.

College of Engineering and Computer Studies


Bachelor of Science in Electronics Engineering (BSECE)
Form 01 Experiment Report Format
Original, 05-September-2022

You might also like