Académique Documents
Professionnel Documents
Culture Documents
OBJETIVO
Presentar al alumno la forma de obtencin de la Transformada
Discreta de Fourier de un conjunto de muestras mediante el
algoritmo de la Transformada Rpida de Fourier.
BOSQUEJO DE LA
PRESENTACIN
Introduccin
Antecedentes
Representacin
matemtica
Aplicaciones
frmula
x=[1 2 1 0]
x=
1 2
X=fft(x)
X=
4.0000
-0.0000 - 2.0000i
-0.0000 + 2.0000i
EL ALGORITMO DE LA FFT
Como:
Redefiniendo:
n
1
NT
N
N 1
m(kT )e
n
1 N 1
kn
F
m(kT )W
N k 0
NT
para W kn e 2 j / N
2nk
N
k 0
X [ n] x[k ]W nk
para
0n4
k 0
N 1
N 1
N 1
N 1
EL ALGORITMO DE LA FFT
La expresin anterior toma la forma matricial:
X [0]
X [1]
X [2]
X [3]
o bien
W 0 W 0 W 0 W 0 x[0]
0
1
2
3
x
[
1
]
W W W W
W 0 W 2 W 4 W 6 x[2]
0
3
6
9
W W W W x[3]
1
1 x[0]
X [0] 1 1
X [1] 1 W 1 W 2 W 3 x[1]
X [2] 1 W 2 W 4 W 6 x[2]
3
6
9
X [3] 1 W W W x[3]
EL ALGORITMO DE LA FFT
La expresin anterior se puede simplificar debido a que: Wnk=Wmod(nk,N), lo cual
se puede verificar con:
EL ALGORITMO DE LA FFT
Por lo tanto la expresin se convierte en:
1
1 x[0]
X [0] 1 1
X [1] 1 W 1 W 2 W 3 x[1]
2
0
2
X [2] 1 W W W x[2]
3
2
1
X
[
3
]
1
W
W
W
x
[
3
]
X [0] 1 W 0
X [1]
2
1
W
X [2] 0 0
X [3] 0 0
0 0 1
0 0 0
1 W1 1
3
1 W 0
0 W 0 0 x[0]
0
1 0 W x[1]
0 W 2 0 x[2]
2
1 0 W x[3]
EL ALGORITMO DE LA FFT
La matriz anterior puede ser descompuesta como el producto de 2 partes
separables, de tal forma que la expresin para la primera de ellas queda de la
forma:
X [0] 1 0 W 0 0 x[0] 1 W 0
X [1]
0
2
x
[
1
]
0
1
0
W
1
W
*
X [2] 1 0 W 2 0 x[2] 0 0
2
X [3] 0 1 0 W x[3] 0 0
0 0
0 0
1 W1
3
1 W
x1 (0) x(0) W 0 x( 2)
EL ALGORITMO DE LA FFT
Con lo que se llega a la siguiente expresin:
X [0] 1 W 0
X [1]
2
1
W
X [2] 0 0
X [3] 0 0
0 0 x1 (0)
x
(
1
)
0 0 1
1 W 1 x1 (2)
3
x
(
3
)
1 W 1
X (3) x1 ( 2) W 3 x1 (3)
EJEMPLO DE LA FFT
Suponga la secuencia de entrada dada por el ejercicio antes analizado en esta
presentacin:
X [1]
0
1
X [2]
X
[
3
]
0
0 W0
1 0
0 W2
1 0
W0
0
W 2
1 1 W 0
2
2
* 1 W
1 0 0
0 0 0
0 0
0 0
1 W1
1 W 3
x1 (0) x (0) W 0 x( 2)
x1 (0) x(0) W 0 x ( 2)
x1 (0) 1 W 0 (1) 1 1 2
x1 (1) 2 W 0 (0) 2 0 2
x1 (2) x (0) W 2 x( 2)
x1 ( 2) x(0) W 0 x ( 2)
x1 (2) 1 W 0 (1) 1 1 0
x1 (3) 2 W 0 (0) 2 0 2
EJEMPLO DE LA FFT
X [0] 1 W 0
X [1]
2
1
W
X [2] 0 0
X
[
3
]
0 0
X (0) x1 (0) W 0 x1 (1)
0 2
0 2
1 W 1 0
3
2
1 W
0
0
X (3) x1 ( 2) W 1 x1 (3)
X ( 0) 2 W ( 2) 2 2 4
0
X (1) 2 W 0 (2) 2 2 0
1
1
X (2) 0 W 1 (2) 2(e j 2 / 4) ) 2(cos( ) jsen( )) 2(0 j ) 2 j
2
2
1
1
X (3) 0 W 1 (2) 2(e j 2 / 4 ) 2(cos( ) jsen( )) 2(0 j ) 2 j
2
2
Aplicando bit
reversi
X(0)=4
X(1)=-2j
X(2)=0
X(3)=2j
DECIMACIN EN TIEMPO
Otra forma de visualizar la descomposicin de la FFT es factorizar la expresin de
la DFT en muestras de entrada par e impar, tal que:
N 1
X (k ) x(n)WNnk
k 0,1,2,....., N
n 0
X (k )
par
( N / 2 ) 1
m 0
kn
N
n impar
x(2m)W
donde :
x(n)W
x(n)WNkn
2 mk
N
( N / 2 ) 1
x(2m 1)W
m 0
( 2 m 1) k
N
WN e 2 j / N
X (k )
( N / 2 ) 1
m 0
f1 (m)W
mk
N /2
k
N
( N / 2 ) 1
m 0
f 2 (m)WNmk/ 2
2n
n
W
W
N
N
/ 2, y cada una de los trminos de la sumatoria es reducido a
En donde
N/2 puntos de la DFT. Grficamente, el clculo se ha reducido a:
DECIMACIN EN TIEMPO
Tomando en consideracin el hecho
de que:
F1 (k )
F2 (k )
X (k )
F1 (k ) WNk F2 (k )
X (k N / 2) F1 (k ) WNk N / 2 F2 (k )
F1 (k ) WNk F2 (k )
donde
WNk N / 2 WNk , y WNm/(2k N / 2 ) WNmk/ 2
con k 0,1,....,
N
1
2
DECIMACIN EN TIEMPO
Para ser consistentes con la notacin que anteriormente se utiliz, se tiene:
X (k )
F1 ( k ) WNk F2 ( k )
G1 (k ) F1 (k )
k 0,1,....., ( N / 2) 1
G2 ( k ) WNk F2 (k )
k 0,1,2,...., ( N / 2) 1
X (k )
X (k
G1 (k ) G2 (k )
k 0,1,...., ( N / 2) 1
N
) G1 (k ) G2 (k )
2
k 0,1,...., ( N / 2) 1
DECIMACIN EN TIEMPO
x(N-2)
X(N/2-1)
DFT de
x(4)
x(2)
x(0)
x(3)
x(1)
G1(k)
F1(N/2-1)
F1(2)
F1(1)
F1(0)
N/2 puntos
F2(1)
F2(0)
X(N-1)
X(0)
Factores de
WNk
fase
DFT de
2 puntos
X(N/2+1)
X(N/2)
G2(k)
X(1)
DECIMACIN EN TIEMPO
Habiendo realizado el diezmado en tiempo una vez, se puede repetir el proceso
para cada una de las secuencias f1(n) y f2(n). Por lo tanto, f1(n) dar lugar a las dos
secuencias de N/4 puntos.
n 0,1,.....,
N
1
4
N
n 0,1,....., 1
4
n 0,1,.....,
N
1
4
N
n 0,1,....., 1
4
DECIMACIN EN TIEMPO
Calculando las DFTs de N/4 puntos obtendremos las DFTs de dos puntos F1(k) y
F2(k) a partir de las relaciones.
F1 ( k ) V11 (k ) W
k
N / 2 12
V (k )
N
F1 ( k ) V11 (k ) WNk / 2V12 (k )
4
F2 (k ) V21 (k ) WNk / 2V22 (k )
N
F2 (k ) V21 (k ) WNk / 2V22 (k )
4
N
k 0,1,......., 1
4
N
k 0,1,......., 1
4
N
k 0,1,......., 1
4
N
k 0,1,......., 1
4
EJEMPLO
x n x0 , x1 , x2 , x3
siendo :
( N / 2 ) 1
x (2n)W
X (k )
n 0
X (k N / 2)
( N / 2 ) 1
x (2n)W
e
n 0
X (k N / 2)
( N / 2 ) 1
x (2n)W
e
n 0
para
N 4,
adems
k 0,
2 nN / 2
WN
quedando al
( N / 2 ) 1
x (2n 1)W
2n k N / 2
N
2 nk
N
x (2n)W
e
( N / 2 ) 1
x (2n)W
e
2 nk
N
2 nk
N
X (k )
x (2n)W
n 0
kN / 2
N
2 nN / 2
N
2 nk
N
( N / 2 ) 1
x (2n 1)W
m 0
kN /2
N
x (2n 1)W
o
m 0
j 2 n
2 nk
N
f1 (k ) W f 2 ( k )
k
N
X (k N / 2) f1 (k ) WNk f 2 (k )
( N / 2 ) 1
x (2n 1)W
o
n 0
( N / 2 ) 1
x (2n 1)W
n 0
( N / 2 ) 1
x (2n 1)W
n 0
1/ 2
2 nk
N
WN2 nN / 2
e j 1
cos 2n jsen 2n 1
2 nk
N
2 nk
N
anteriores :
f 2 (k )
k
N
2n k N / 2
N
( N / 2 ) 1
WNN / 2 W 1/ 2 e j 2
WNk
N
1 0,1
2
( N / 2 ) 1
n 0
( N / 2 ) 1
n 0
W n e j 2
n 0
X (k N / 2)
k
N
final
X (k )
2 nk
N
2 nk
N
para k 0
x(0)
f1(0)
X0
x(2)
x (2n)W
n0
f 2 (0)
f1 (1)
f 2 (1)
en la
x (2n 1)W
o
n0
( N / 2 ) 1
x (2n)W
n 0
2 nk
N
( N / 2 ) 1
x (2n 1)W
n 0
figura
mientras que
x(1)
x(0)W40 x(2)W40
2 nk
N
( N / 2 ) 1
2 nk
N
x(3)
f1 (0),
0
4
salidas
0
4
x(1)W
0
4
x(2) W x(1)W
x(3)W40
x(3)
1
4
0
4
X2
W1 4
-1
para k 0
f2(1)
W04
x(1)W40 x(3)W42
se observa que
f 2 (0),
W0 4
-1
x(0)W40 x(2)W42
2 nk
N
f2(0)
x(1)W40 x(3)W40
X1
-1
Sustituyendo
f 1 ( 0)
f1(1)
W04
de una mariposa
X3
-1
salidas
DECIMACIN EN TIEMPO
W80
-1
W80
-1
W82
0
8
-1
-1
W80
-1
W80
W80
-1
W82
-1
-1
W80
-1
W81
-1
W82
-1
W83
-1
A=a+WNb
WN
-1
B=a-WNb
DECIMACIN EN FRECUENCIA
N N
1 ,......., x N 1
, x
2 2
( N / 2 ) 1
x(n)W
nk
n 0
Considerando
N 1
x(n)W
nk
n N / 2
( N / 2 ) 1
x(n)W
nk
n 0
( N / 2 ) 1
n 0
x(n
N
)W nk
2
kN / 2
En donde W
se toma fuera de la seguna sumatoria debido a que no es
una funcin de n. Utilizando
W kN / 2 e jk e j
cos jsen 1
k
DECIMACIN EN FRECUENCIA
X (k )
( N / 2 ) 1
n 0
N nk
k
x
(
n
)
1
x
n
Debido a que 1 para cada k par y -1 para k impar, la ecuacin anterior puede ser separada
para k par e impar, o bien
k
1. Para k impar:
X (k )
( N / 2 ) 1
N nk
x ( n ) x n 2 W
n 0
2. Para k par:
X (k )
( N / 2 ) 1
n 0
N nk
x ( n ) x n 2 W
Sustituyendo k=2k para k par, y k=2k+1 para k impar, las expresiones anteriores
pueden escribirse de la forma k=0,1,..,(N/2)-1 como
X ( 2k )
( N / 2 ) 1
n0
X (2k 1)
N 2 nk
x
(
n
)
x
n
( N / 2 ) 1
n 0
N n 2 nk
x
(
n
)
x
n
W W
Debido a que la constante twiddle W es una funcin de longitud N, sta puede ser
representada como W . Entonces W se puede escribir comoW . Considere
N
2
N
N /2
X (2k )
N / 2 1
nk
a
(
n
)
W
N /2
n 0
X (2k 1)
( N / 2 ) 1
n
nk
b
(
n
)
W
W
N
N /2
n 0
W 0 1
W 1 e j 2 / 8 cos( / 4) j sin( / 4) 0.7071 j 0.7071
W 2 e j 4 / 8 j
W 3 e j 6 / 8 0.7071 j 0.7071
La salida de secuencia intermedia se puede encontrar despus de cada
etapa.
Etapa 1
x(0) x(4) 1 x' 0
x(1) x(5) 1 x' 1
x(2) x(6) 1 x' 2
x(3) x(7) 1 x' 3
Etapa
2
x' (0) x' (2) 2 x' ' 0
x' (1) x' (3) 2 x' ' 1
x' (5) x' (7) (0.7071 0.7071) (0.7071 j 0.7071) j1.41 x' ' 5
Etapa
DECIMACIN EN FRECUENCIA
El algoritmo se estructura en log 2 N niveles de cmputo 1,2,3,.....,.
Para el desarrollo de este algoritmo deben tenerse en cuenta los siguientes
puntos:
Cada par de puntos de un cierto nivel s obtienen a partir de otros dos del nivel
anterior. Estos dos puntos origen se dicen que son nodos duales.
El espaciado entre dos nodos duales es
Cmputo de nodos duales: mariposas. El cmputo de dos nuevos nodos a
partir de dos nuevos nodos duales se denomina mariposa. Su estructura se
muestra en la grfica (b) y se corresponde con la siguiente expresin:
xl (k ) xl 1 (k ) W p xl 1 (k N / 2l )
xl (k N / 2l ) xl 1 (k ) W p xl 1 (k N / 2l )
Lo cual se puede simplificar a la estructura mostrada en la parte c de la
figura.
DECIMACIN EN FRECUENCIA
Determinacin de Wp
1.Escribir k (nodo actual) en forma de nmero binario de
2.Desplazar
bits
log 2 N
1,2,3,.....,
j=0
DO i=0, N-2
IF (i<j) THEN
xt=xj
xj=xi
xi=xt
yt=yj
yj=yi
yi=yt
END IF
k=N/2
DO
IF (k>=j+1) EXIT
j=j-k
k=k/2
END DO
j=j+k
END DO
DO i=0, N-1
x(i)=x(i)/N
y(i)=y(i)/N
END DO
CONCLUSIONES