Sunteți pe pagina 1din 29

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

Universidad del Per, DECANA DE AMERICA


FACULTAD DE INGENIERIA ELECTRONICA Y ELECTRICA
Flavio Carrillo Gomero
fcarrillog@unmsm.edu.pe
DEPARTAMENTO ACADEMICO DE TELECOMUNICACIONES
Captulo VII
Transformada Discreta de Fourier
INTRODUCCION
Introduccin Transformada Discreta de Fourier
Adecuado para ser ejecutado por la PC o por el PDS



x[n] X(e
j
)

X(e
j
) es una funcin compleja continua en el dominio de la frecuencia .
OBJETIVO: representar x[n] a partir de las muestras de su espectro X(e
j
)
Como los computadores slo pueden almacenar y manejar un conjunto
finito de datos, es necesario representar x
c
(t) mediante un conjunto finito de
valores.
TRANSFORMADA DISCRETA DE FOURIER
Transformada Discreta de Fourier Transformada Discreta de Fourier
Segundo paso. Como la seal analgica puede no estar limitada en el
tiempo, hay que obtener un conjunto finito de muestras de la secuencia
discreta mediante truncamiento.
x[n] = x
c
[n].w[n]
Sea x[n] una secuencia finita, definida de la siguiente manera:
Primer paso es muestrear x
c
(t) para obtener una seal discreta x
c
[n].
Donde:
x
c
[n] seal discreta de infinitas muestras.
w[n] funcin ventana.
w[n] =
1, 0 n N-1
0, en el resto
.
Respuesta en Frecuencia de los Sistemas SDLIT Transformada Discreta de Fourier
Calculando ahora la Transformada de Fourier para seales discretas:
1
0
( ) [ ]
N
j j n
n
X e x n e

O O
=
=

Como es una variable continua en el intervalo [0, 2], ahora hay que evaluar
X(e
j
) en un conjunto discreto de valores de k mediante muestreo uniforme en el
mismo intervalo.
DERIVACION DE LA TRANSFORMADA DISCRETA DE
FOURIER
De la definicin de la Transformada de Fourier para Seales Discretas:



Como =.T , entonces:



Ahora consideremos N muestras de x[n], n = 0, 1, 2, ., N-1 y calculando
solamente para N muestras de utilizando:
( ) [ ]
j j n
n
X e x n e

O O
=
=

Derivacin de la DTF Transformada Discreta de Fourier
( ) [ ]
j j Tn
n
X e x n e
e e

=
=

( )
j
X e
e
0
k e e =
0,1, 2........, 1 N k =
( )
0
2
1 N T
t
e

=

Frecuencia de
muestreo dividida por
(N 1)

Reemplazando obtenemos:
0 0
2
1 1
0 0
( ) [ ] [ ]
NT
N N
jkn T
jk jkn T
n n
X e x n e x n e
t
e e

= =
= =

Derivacin de la DTF Transformada Discreta de Fourier
0
2
1
0
( ) [ ]
kn
N
N
j
jk
n
X e x n e
t
e


=
=

1
0
[ ] [ ]
kn
N
n
X k x n W

=
=

2
j
N
W e
t
| |

|
\ .
=
k=0,1,2, ., N-1
| |
1
0
1
[ ]
kn
N
k
n
N
x X k W

=
=

n=0,1,2, ., N-1
DFT
IDFT
Ejemplo:
Derivacin de la DTF Transformada Discreta de Fourier
0 1 2 3 4 5 6 7 n
x[n]
1
Hallar la DFT de la seal discreta x[n]:
Solucin:
De la expresin para la DFT, aplicndola a x[n] tenemos:
2
7
0
[ ] [ ]
kn
N
j
n
X k x n e
t

=
=

Donde:
0,1, 2........, 7 k =
0,1, 2........, 7 n =
N=8

Derivacin de la DTF Transformada Discreta de Fourier
2
7
0
( ) [ ]
kn
N
j
n
X k x n e
t

=
=

Calculando cada uno de los componentes de frecuencia de X[k] :


| | | | | | | | | | | | | | | | | | 0 0 1 2 3 4 5 6 7 X x x x x x x x x + + + + + + + =
| | | | | | | | | | | | | | | | | |
2 2 2 2 2 2 2
.1.1 .1.2 .1.3 .1.4 .1.5 .1.6 .1.7
8 8 8 8 8 8 8
1 0 1 2 3 4 5 6 7
j j j j j j j
e e e e e e e X x x x x x x x x
t t t t t t t

+ + + + + + + =
| | | | | | | | | | | | | | | | | |
2 2 2 2 2 2 2
2.1 .2.2 2..3 2.4 2.5 2..6 2..7
8 8 8 8 8 8 8
2 0 1 2 3 4 5 6 7
j j j j j j j
e e e e e e e X x x x x x x x x
t t t t t t t

+ + + + + + + =
| | | | | | | | | | | | | | | | | |
2 2 2 2 2 2 2
3.1 .3.2 3..3 3.4 3.5 3..6 3..7
8 8 8 8 8 8 8
3 0 1 2 3 4 5 6 7
j j j j j j j
e e e e e e e X x x x x x x x x
t t t t t t t

+ + + + + + + =
| | | | | | | | | | | | | | | | | |
2 2 2 2 2 2 2
4.1 .4.2 4..3 4.4 4.5 4..6 4..7
8 8 8 8 8 8 8
4 0 1 2 3 4 5 6 7
j j j j j j j
e e e e e e e X x x x x x x x x
t t t t t t t

+ + + + + + + =
| | | | | | | | | | | | | | | | | |
2 2 2 2 2 2 2
5.1 .5.2 5..3 5.4 5.5 5..6 5..7
8 8 8 8 8 8 8
5 0 1 2 3 4 5 6 7
j j j j j j j
e e e e e e e X x x x x x x x x
t t t t t t t

+ + + + + + + =
| | | | | | | | | | | | | | | | | |
2 2 2 2 2 2 2
6.1 .6.2 6..3 6.4 6.5 6..6 6..7
8 8 8 8 8 8 8
6 0 1 2 3 4 5 6 7
j j j j j j j
e e e e e e e X x x x x x x x x
t t t t t t t

+ + + + + + + =
| | | | | | | | | | | | | | | | | |
2 2 2 2 2 2 2
7.1 .7.2 7..3 7.4 7.5 7..6 7..7
8 8 8 8 8 8 8
7 0 1 2 3 4 5 6 7
j j j j j j j
e e e e e e e X x x x x x x x x
t t t t t t t

+ + + + + + + =


K

X[k]

[k] (rad)

0

6.0000

+0.0000

1

1.8478

- 1.9635

2

1.4142

- 0.7854

3

0.7653

+0.3927

4

0.0000

+0.0000

5

0.7653

- 0.3927

6

1.4142

+0.2854

7

1.8478

+1.9635



Resultados del clculo:
Derivacin de la DTF Transformada Discreta de Fourier
TRANSFORMADA DE FOURIER DE UN PULSO RECTANGULAR CONTINUO
Transformada Discreta de Fourier
1
2.5 2.5 t (seg)
x(t)
Sea x(t) una seal pulso rectangular continua en el tiempo. Determinar la
Transformada de Fourier X().
( )
1 / 2 / 2
0
t
x t
otros
t t s s

( )
( )
( )
/ 2
/ 2
sen
X
et
e t
et
=
Transformada Discreta de Fourier
3 2 1 0 1 2 3 4 5 6 n
TRANSFORMADA DE FOURIER DE UN PULSO RECTANGULAR DISCRETO
x[n]
1
(Rad)
( )
j
X e
O
| |
1 2 2
0
n
x n
otros
s s

( )
2 2
1
j j j j j
X e e e e e
O O O O O
= + + + +
Transformada Discreta de Fourier

K


X(k)


(k) (rad)

0

6.0000

+ 0.0000

1

4.73571

- 0.9817

2

1.8478

- 1.9635

3

0.6888

+ 0.1963

4

1.4142

- 0.7854

5

0.4602

- 1.7671

6

0.7653

+ 0.3927

7

0.9419

- 0.5890

8

0.0000

+ 0.0000

9

0.9419

+ 0.5890

10

07653

- 0.3927

11

0.4602

+ 1.7671

12

1.4142

+ 0.7854

13

0.6888

- 0.1963

14

1.8478

+ 1.9635

15

4.7357

+ 0.9817



TRANSFORMADA DISCRETA DE FOURIER DE UN
PULSO RECTANGULAR DISCRETO PARA N=16
Transformada Discreta de Fourier
TRANSFORMADA DISCRETA DE FOURIER DE UN
PULSO RECTANGULAR DISCRETO PARA N=32
Transformada Discreta de Fourier
TRANSFORMADA DISCRETA DE FOURIER DE UN
PULSO RECTANGULAR DISCRETO PARA N=64
TRANSFORMADA RAPIDA DE FOURIER - FFT
La Transformada de Fourier de Seales Discretas requiere:
N sumas y N productos complejos para obtener un valor particular de X[k].
NxN sumas y NxN productos complejos para obtener todos los valores de X[k].

Ejemplo: Si N=1024 muestras, entonces se requiere 1048,576 sumas y 1048,576 productos
complejos. Si cada producto y cada suma se ejecuta en 1 useg, entonces se requiere
1.048576 x 2 segundos aproximadamente para mostrar os valores desde X[0], X[1], ..,
X[1023]



FFT Transformada Discreta de Fourier
0 8
... W W = =
4 12
... W W = =
7 15
... W W = =
3 11
... W W = =
6 14
... W W = =
2 10
... W W = =
5 13
... W W = =
1 9
... W W = =
k k N
W W
+
=
2
k N
k
W W
+
=

Entonces la FFT aprovecha las propiedades de:
Periodicidad y
Simetria de W

Periodicidad :



Simetria:



FFT Transformada Discreta de Fourier
La FFT descompone la DFT de N puntos en transformadas ms pequeas.
Una DFT de N puntos es descompuesta en dos DFTs de (N/2) puntos.
Cada DFT de (N/2) puntos se descompone a su vez en dos DFTs de (N/4) puntos
y as sucesivamente.
Al final de la descomposicin de obtienen (N/2) DFTs de 2 puntos cada una.
La transformada ms pequea viene determinada por la base de la FFT.
Para una FFT de base 2, N debe ser una potencia de 2 y la transformada ms
pequea es la DFT de 2 puntos.
Para implementar la FFT existen dos procedimientos:
Decimacin en Frecuencia.
Decimacin en el Tiempo.

ALGORITMO PARA LA FFT Radix-2:
DECIMACION EN FRECUENCIA
2
0
2
2
1 1
0
2
[ ] [ ] [ ]
N N
kn kn
N
k
n n
W
N
X k x n W x n W

= =
= + +

( )
2
1
0
[ ] 1 [ ]
2
[ ]
N
k
kn
n
N
x n x n X k W

=

= + +
`
)

FFT Transformada Discreta de Fourier


Sea la secuencia x[n] , para n = 0, 1, 2, , N-1
Separando x[n] en secuencias pares e impares y aplicando la DFT:
2
2
1
1 1
0 0
[ ] [ ] [ ] [ ]
N
kn kn kn
N
N N
n n
n
X k x n W x n W x n W


= =
=
= = +

Como y reemplazando, tenemos: ( ) ( ) ( )
2
cos 1
N
k
k
k
W jsen t t = = (

Haciendo y reemplazando en la segunda sumatoria, tenemos:
2
N
n n = +
..
FFT Transformada Discreta de Fourier
Separando X[k] en secuencias separadas pares e impares
Como: para k par
para k impar
( ) 1 1
k
=
( ) 1 1
k
=
2
1
0
[ ] [ ]
2
[ ]
N
kn
n
N
x n x n X k W

=

= +

)
+
`

Para k par
2
1
0
[ ] [ ]
2
[ ]
N
kn
n
N
x n x n X k W

=

= +

Para k impar
Haciendo k=2k para la sumatoria de los pares y k=2k+1 para los impares
2
2
1
0
[ ] [ ]
2
[ ]
N
kn
n
N
x n x n X k W

=

= +

)
+
`

Para k par
2
2
1
0
[ ] [ ]
2
[ ]
N
kn kn
n
N
x n x n X k W W

=

= +
`
)

Para k impar
..
FFT Transformada Discreta de Fourier
Haciendo:
| | | |
2
N
x n a n x n
(
= +

+
(

Las ecuaciones pueden ser escritas como 2 DFT de N/2 puntos:


| |
2
/ 2
1
0
[2 ]
N
kn
N
n
n X k W a

=
=

2
/ 2
1
0
[2 ] [ ] 1
N
kn n
N N
n
b n X k W W

=
= +

| | | |
2
N
x n b n x n
(
= +

..
FFT Transformada Discreta de Fourier
Haciendo:
| | | |
2
N
x n a n x n
(
= +

+
(

Las ecuaciones pueden ser escritas como 2 DFT de N/2 puntos:


| |
2
/ 2
1
0
[2 ]
N
kn
N
n
n X k W a

=
=

2
/ 2
1
0
[2 ] [ ] 1
N
kn n
N N
n
b n X k W W

=
= +

| | | |
2
N
x n b n x n
(
= +

EJEMPLO PARA N=8


| | | | | | | | | |
0 0 0 0 0
4 4 4 4 4
3
0
0 1 2 3 [0]
n
n a W a W a W a W X a W
=
= = + + +

| | | | | | | | | |
1 0 1 2 3
4 4 4 4 4
3
0
0 1 2 3 [2]
n
n
n a W a W a W a W X a W
=
= = + + +

| | | | | | | | | |
2 0 2 4 6
4 4 4 4 4
3
0
0 1 2 3 [4]
n
n
n a W a W a W a W X a W
=
= = + + +

FFT Transformada Discreta de Fourier


Descomponiendo la DFT de N puntos en dos DFT de N/2 puntos.
Aplicando las dos ecuaciones:
| | | | | | | | | |
3 0 3 6 9
4 4 4 4 4
3
0
0 1 2 3 [6]
n
n
n a W a W a W a W X a W
=
= = + + +

| | | | | | | | | |
0 0 0 0 1 0 2 0 3
4 8 4 8 4 8 4 8 4 8
3
0
0 1 2 3 [1]
n
n
n b W W b W W b W W b W W b W W X
=
= = + + +

| | | | | | | | | |
0 0 1 1 2 2 3 3
4 8 4 8 4 8 4 8 4 8
3
0
0 1 2 3 [3]
n n
n
n b W W b W W b W W b W W b W W X
=
= = + + +

| | | | | | | | | |
2 0 0 2 1 4 2 6 3
4 8 4 8 4 8 4 8 4 8
3
0
0 1 2 3 [5]
n n
n
n b W W b W W b W W b W W W X b W
=
= = + + +

| | | | | | | | | |
3 0 0 3 1 6 2 9 3
4 8 4 8 4 8 4 8 4 8
3
0
0 1 2 3 [7]
n n
n
n b W W b W W b W W b W W W X b W
=
= = + + +

..
FFT Transformada Discreta de Fourier
| | | | | | 1 1 5 a x x = +
| | | | | | 2 2 6 a x x = +
| | | | | | 3 3 7 a x x = +
| | | | | | 0 0 4 a x x = +
| | | | | |
0 0 4 b x x =
| | | | | |
3 3 7 b x x =
| | | | | |
1 1 5 b x x =
| | | | | |
2 2 6 b x x =
Descomponiendo a[n] y b[n]
..
FFT Transformada Discreta de Fourier
El proceso de descomposicin puede ser repetido nuevamente pero para N/4
que es la etapa final para N=8.
El nmero de etapas, o DFTs se deber repetir hasta llegar a la DFT de 2
puntos.
En general una FFT de N puntos tendr m etapas con 2
m
N =
..
FFT Transformada Discreta de Fourier
La ltima descomposicin, ya que se ha llegado a aplicar la DFT de 2 puntos,
es la ms baja descomposicin del algoritmo Radix 2. Luego para una DFT de
2 puntos las salidas X[k] de esta ltima etapa pueden ser escritas de la
siguiente forma:
| | | | | | | | | |
0 0
0 0 1 0 1 X x W x W x x = = +
| | | | | | | | | |
0 1
1 0 1 0 1 X x W x W x x = + =
..
FFT Transformada Discreta de Fourier
La decimacin en Frecuencia adquiere su nombre del hecho de que la
secuencia de salida X[k] es descompuesta (decimada) en subsecuencias ms
pequeas, continuando por a etapas o iteraciones.
Ejemplo numrico
FFT Transformada Discreta de Fourier
0
1
2
4
2
8
8
cos
4 4
1
0.707 0.707
j
j
W
e j en j W
j
s
e W
t
t
t t

=
| | | |
= = =
| |
=

. \ .
=
\
Para N = 8, los coeficientes W pueden ser calculados una sola vez y
almacenados para ser utilizados luego:
6
3
8
0.707 0.707
j
e j W
t

= =
Ahora calculamos las salidas intermedias para cada etapa:

ETAPA 1:
| | | | | |
| | | | | |
| | | | | |
| | | | | |
0 4 2 0
1 5 2 1
2 6 1 2
3 7 1 3
x x x
x x x
x x x
x x x
+ =
+ =
+ =
+ =
| | | | { } | |
| | | | { } | |
| | | | { } | |
| | | | { } | |
0
1
2
3
0 4 0 4
1 5 0 5
2 6 6
3 7 0.707 0.707 7
x x W x
x x W x
x x W j x
x x W j x
=
=
=
=
x[0], x[1],.., x[7] representan salidas intermedias de la primera iteracin:

| | | | | |
| | | | | |
| | | | | |
| | | | | |
0 0 1 3 3 6
1 4 5 0.707 1.707
2 2 3 1
3 6 7 0.707 0.2929
X x x
X x x j
X x x j
X x x j
= + = + =
= + =
= + =
= + = +
FFT Transformada Discreta de Fourier
ETAPA 2:
| | | | | |
| | | | | |
| | | | { } ( ) | |
| | | | { } ( )( ) | |
0
2
0 2 2 1 3 0
1 3 2 1 3 1
0 2 2 1 1=1 2
1 3 2 1 = 3
x x x
x x x
x x W x
x x W j j x
+ = + =
+ = + =
=
=
| | | | | |
| | | | | |
| | | | { } | |
| | | | { } | |
0
2
4 6 0 4
5 7 0.707 0.707 5
4 6 6
5 7 0.707 0.707 7
x x j j x
x x j x
x x W j x
x x W j x
+ = =
+ =
=
=
x[0], x[1],.., x[7] representan salidas intermedias de la segunda iteracin:
ETAPA 3:
| | | | | |
| | | | | |
| | | | | |
| | | | | |
4 0 1 0
5 4 5 0.707 0.2929
6 2 3 1
7 6 7 0.707 1.7071
X x x
X x x j
X x x j
X x x j
= =
= =
= = +
= = +
Bibliografia
Sistemas Discretos
Alan V. Oppenheim, Ronald W. Schafer y John R. Buck.
TRATAMIENTO DE SEALES EN TIEMPO DISCRETO. Prentice
Hall. 2000. ISBN 84-205-2987-7. pp. 543 630.