INTRODUCCION - uncor.edu

16
gina 1 de 16 FCEFyN Universidad Nacional de Cordoba TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT Procesamiento Digital de Señales – FCEFyN – UNC TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT INTRODUCCION El estudio de las señales cotidianas en el dominio de la frecuencia nos proporciona un conocimiento de las características frecuenciales de éstas. Por ejemplo nos es muy útil el conocer la respuesta en frecuencias de un canal de telecomunicaciones, para poder determinar la máxima frecuencia que puede transmitir sin provocar distorsiones de la señal de modo que ésta sea recibida y reconstruida con total garantía. Otro ejemplo puede ser el análisis de la voz. Transformando la señal de voz en sus componentes frecuenciales podemos distinguir las diferencias entre las voces de distintas personas y determinar las palabras que está diciendo. Esto es muy útil para reconocimiento e identificación de voz, dos aplicaciones que están haciéndose muy familiares, al tiempo que aumenta la velocidad de los DSP. También podemos mencionar a los Analizadores de Espectro que realizan transformación de señales en el dominio del tiempo al dominio de la frecuencia. Este tipo de instrumentos se han hecho muy populares en los laboratorios electrónicos. Se utilizan para examinar la señal de salida de sensores conectados a estructuras que soportan esfuerzos mecánicos, como puentes o rascacielos en los cuales un cambio significativo de la respuesta en frecuencia puede suponer un exceso de carga en alguna parte de la estructura que puede provocar el colapso a futuro. FFT es la abreviatura usual (del inglés Fast Fourier Transform) de un eficiente algoritmo que permite calcular la transformada de Fourier discreta (DFT) y su inversa. La FFT es de gran importancia en una amplia variedad de aplicaciones digitales, desde el tratamiento digital de señales y filtrado digital en general, a la resolución de ecuaciones diferenciales parciales o los algoritmos de multiplicación rápida de grandes enteros. El presente texto tiene como objetivo presentar cómo se transforman las señales del dominio del tiempo al dominio de la frecuencia y viceversa desde un punto de vista introductorio. El resto del trabajo estará destinado a la manera de implementar la FFT en un DSP. SERIE DE FOURIER Y TRANSFORMADA DE FOURIER Mientras que una función en el dominio temporal indica cómo la amplitud de la señal cambia en el tiempo, su representación en el dominio de la frecuencia permite conocer cuan a menudo esos cambios tienen lugar. Básicamente, el pasaje del dominio del tiempo al dominio de la frecuencia se puede visualizar considerando que la señal en estudio está compuesta por la suma de ondas sinusoidales simples de amplitud y fase adecuadas o de exponenciales complejas relacionadas armónicamente.

Transcript of INTRODUCCION - uncor.edu

Page 1: INTRODUCCION - uncor.edu

 

 

        

Página  1 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

 

INTRODUCCION 

El estudio de las señales cotidianas en el dominio de la frecuencia nos proporciona un conocimiento de las  características  frecuenciales  de  éstas.  Por  ejemplo  nos  es  muy  útil  el  conocer  la  respuesta  en frecuencias de un canal de telecomunicaciones, para poder determinar la máxima frecuencia que puede transmitir sin provocar distorsiones de  la señal de modo que ésta sea recibida y reconstruida con total garantía.  

Otro  ejemplo  puede  ser  el  análisis  de  la  voz.  Transformando  la  señal  de  voz  en  sus  componentes frecuenciales podemos distinguir  las diferencias entre  las voces de distintas personas y determinar  las palabras  que  está  diciendo.  Esto  es  muy  útil  para  reconocimiento  e  identificación  de  voz,  dos aplicaciones que están haciéndose muy familiares, al tiempo que aumenta la velocidad de los DSP. 

También podemos mencionar a los Analizadores de Espectro que realizan transformación de señales en el  dominio  del  tiempo  al  dominio  de  la  frecuencia.  Este  tipo  de  instrumentos  se  han  hecho  muy populares  en  los  laboratorios  electrónicos.  Se  utilizan  para  examinar  la  señal  de  salida  de  sensores conectados a estructuras que soportan esfuerzos mecánicos, como puentes o rascacielos en  los cuales un cambio significativo de la respuesta en frecuencia puede suponer un exceso de carga en alguna parte de la estructura que puede provocar el colapso a futuro. 

FFT es  la  abreviatura usual  (del  inglés  Fast  Fourier Transform) de un eficiente  algoritmo que permite calcular  la  transformada de Fourier discreta  (DFT) y  su  inversa. La FFT es de gran  importancia en una amplia  variedad de  aplicaciones digitales, desde  el  tratamiento digital de  señales  y  filtrado digital  en general, a la resolución de ecuaciones diferenciales parciales o los algoritmos de multiplicación rápida de grandes enteros. 

El presente texto tiene como objetivo presentar cómo se transforman las señales del dominio del tiempo al dominio de la frecuencia y viceversa desde un punto de vista introductorio. El resto del trabajo estará destinado a la manera de implementar la FFT  en un DSP.   

 

SERIE DE FOURIER Y TRANSFORMADA DE FOURIER 

Mientras que una  función  en  el dominio  temporal  indica  cómo  la  amplitud  de  la  señal  cambia  en  el tiempo, su representación en el dominio de la frecuencia permite conocer cuan a menudo esos cambios tienen  lugar.  Básicamente,  el  pasaje  del  dominio  del  tiempo  al  dominio  de  la  frecuencia  se  puede visualizar  considerando  que  la  señal  en  estudio  está  compuesta  por  la  suma  de  ondas  sinusoidales simples de amplitud y fase adecuadas o de exponenciales complejas relacionadas armónicamente.  

Page 2: INTRODUCCION - uncor.edu

 

 

        

Página  2 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

La representación de estas amplitudes y fases en función de la frecuencia es lo que se llama espectro de 

la  señal  y  lo  representamos  con  X(ω)  para  señales  a  tiempo  continuo  y  X(Ω)  para  señales  a  tiempo discreto.  La  herramienta matemática  que  permite  el  pasaje  del  dominio  temporal  al  dominio  de  la frecuencia es  la Serie de Fourier para  las señales periódicas, y de  la Transformada de Fourier para  las señales de energía finita. En la Tabla 1, se muestran las ecuaciones de síntesis y análisis correspondientes a las series de Fourier y las transformadas de Fourier.  

Tabla 1: Serie de Fourier  y Transformada de Fourier 

TIEMPO CONTINUO 

  Dominio del tiempo  Dominio de la frecuencia 

Serie de Fourier  ( ) oj k tk

k

x t a e ω+∞

⋅ ⋅ ⋅

= −∞

= ⋅∑   dtetxT

a tkj

Tok

o

o

⋅⋅⋅−⋅= ∫ ω)(1

 

⎟⎟⎠

⎞⎜⎜⎝

⎛=

ooT

ωπ2

 

Tiempo continuo 

Periódica en tiempo 

Frecuencia discreta 

Aperiódica en frecuencia 

Transformada de Fourier  ( ) ( )∫+∞

∞−

⋅⋅ ⋅⋅= ωωπ

ω deXtx tj

21

 

( ) ∫+∞

∞−

⋅⋅− ⋅⋅= dtetxX tj ωω )( 

 Tiempo continuo

Aperiódica en tiempo 

Frecuencia continua

Aperiódica en frecuencia 

TIEMPO DISCRETO 

  Dominio del tiempo  Dominio de la frecuencia 

Serie de Fourier  [ ] ( )∑=

⋅⋅⋅=Nk

nNkjk eanx /2π

 

[ ] ( ) nNKj

Nnk enx

Na .2.1 π−

>=<

⋅= ∑ 

⎟⎟⎠

⎞⎜⎜⎝

⎛Ω

=o

N π2

 

Tiempo discreto 

Periódico en tiempo 

Frecuencia discreta 

Periódico en frecuencia 

Transformada de Fourier  [ ] ( ) Ω⋅⋅Ω= Ω∫ deXnx nj ..

221

ππ 

( ) [ ] nj

nenxX ..Ω−

+∞

−∞=

⋅=Ω ∑ 

 Tiempo discreto 

Aperiódico en tiempo 

Frecuencia continua 

Periódico en frecuencia 

 

Page 3: INTRODUCCION - uncor.edu

 

 

        

Página  3 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

Series de  Fourier 

Es de amplio conocimiento de  las propiedades que presentan  las funciones seno o coseno, de una sola frecuencia,  y  como  estas  están  relacionadas  a  través de  las  exponenciales  complejas  armónicamente relacionadas. De  la misma manera  si  contamos  con  una  señal  producto  de  la  combinación  lineal  de señales seno y coseno. Este concepto puede trasladarse al resto de las funciones periódicas, por ejemplo un tren de pulsos rectangulares el cual consiste en  la suma de un número  infinito de senos de distinta amplitud. De este modo podemos describir cualquier señal periódica compleja en forma de una suma de muchos  fasores  (senos o  cosenos). Un método de describir una  señal de  esta  forma,  es  las  llamadas series de Fourier, en  las  cuales asumimos que el  conjunto de  fasores  tienen  frecuencias múltiplos de 

alguna frecuencia fundamental, f0 (o frecuencia angular ω0): 

 

( )

cos( ) sin ( )

o

o

j k tk

k

j k to o

x t a e

siendo e k t j k t

ω

ω ω ω

+∞⋅ ⋅ ⋅

= −∞

⋅ ⋅ ⋅

= ⋅

= ⋅ ⋅ + ⋅ ⋅

∑                                       (1) 

Los componentes frecuenciales individuales son conocidos como armónicos.  

 

Series de Fourier Discretas 

Necesitamos  traducir  estas  ecuaciones  de  tiempo  continuo  al  dominio  discreto  o  digital  para  poder derivar  algunas  fórmulas  útiles  para  los  DSP’s.  El  análisis  anterior  se  puede  extender  a  sistemas  de tiempo discreto. Lo único que necesitamos es reemplazar  la función continua, t, con otra que varíe en 

saltos de ω0.Ts, así para el caso en que la señal es periódica: 

 

[ ] ( )∑=

⋅⋅⋅=Nk

nNkjk eanx /2π

                                                                       (2) 

Es interesante advertir que cuando existe un incremento de la fase para el k‐ésimo armónico está dado por: 

( )0 2 /2

sk T k N

siendoN

ω ππ

=

Ω=                                                                                (3) 

Page 4: INTRODUCCION - uncor.edu

 

 

        

Página  4 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

en donde Ω es  la  frecuencia discreta   con N como el periodo  fundamental.   Recordar que  la  relación 

2π/Ω es un número racional y que la tasa de oscilación es Ω + 2π, por lo que se tienen ak = ak+rN, esto es N coeficientes distintos. Esto significa que la respuesta en frecuencia de una señal discreta es periódica.  

 

La Transformada de Fourier 

En aplicaciones reales  la mayor parte de  las señales no son periódicas y debemos transformar nuestras series de Fourier para poder analizarlas. Consideremos  la serie de Fourier general en  la cual  todas  las frecuencias son múltiplos de la fundamental, es decir: 

0k kω ω=                                                                                      (4) 

El hecho de que la señal no es periódica se puede representar por: 

0 0ω →                                                                                       (5) 

Esta simple ecuación expresa que no hay mínimo común denominador entre las frecuencias de todos lo fasores. Cuando el número de  fasores  tiende a  infinito nuestro  sumatoria se convierte en  la siguiente integral: 

( ) ( )∫+∞

∞−

⋅⋅ ⋅⋅= ωωπ

ω deXtx tj

21

(6) 

 

En  la  anterior  ecuación  asumimos  que  la  amplitud  de  la  señal  se  puede  definir  como  función  de  la 

frecuencia ω, es decir, X(ω). La ecuación inversa que define X(ω), viene dada por : 

( ) ∫+∞

∞−

⋅⋅− ⋅⋅= dtetxX tj ωω )( (7) 

Por  lo  tanto, ahora  tenemos una ecuación que nos permite  calcular  la  respuesta en amplitud de una señal continua en el dominio de  la frecuencia usando su respuesta en el dominio del tiempo. Estas dos ecuaciones  se  denominan  el  par  de  Transformadas  de  Fourier,  las  cuales  son  muy  útiles  para  los matemáticos, pero desafortunadamente no es posible implementarlas directamente en un DSP. Por ello debemos deducir la forma discreta de estas ecuaciones. 

 

 

Page 5: INTRODUCCION - uncor.edu

 

 

        

Página  5 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

LA TRANSFORMADA DISCRETA DE  FOURIER (DFT) 

Para  poder  encontrar  el  equivalente  discreto  de  la  transformada  de  Fourier  debemos  transformar  la 

variable continua t por  la variable discreta nTs. Fuera de  los  límites ±π/Ts, el espectro se repite, por  lo tanto  podríamos  cambiar  los  límites  de  este  valor.  Por  conveniencia,  sin  embargo,  haremos  que  la 

variable de integración sea ω.Ts así la integral se convierte en: 

[ ] ( ) Ω⋅⋅Ω= Ω∫ deXnx nj ..

221

ππ                                                         (8) 

La transformada inversa es: 

( ) [ ] nj

nenxX ..Ω−

+∞

−∞=

⋅=Ω ∑                                                                    (9) 

Hay que advertir que  la  segunda ecuación aún usa un  sumatoria en  lugar de una  integral. Podríamos haber esperado esto porque sabemos que x[n] sólo es válido en  los  instantes de tiempo nTs. Estas dos ecuaciones forman la transformada de Fourier a tiempo discreto. El espectro que obtenemos al usar esta transformada tiene algunas propiedades interesantes, por ejemplo, es periódica. También para una señal real, como  los fasores aparecen en forma de complejos conjugados, el espectro siempre tiene simetría par  a  lo  largo  del  eje  real,  y  simetría  impar  en  el  eje  imaginario.  Esto  simplemente  significa  que  si nosotros  sabemos  que  trabajamos  con  una  señal  real,  la  cantidad  de  información  que  necesitamos recordar sobre el espectro en frecuencias es menor, ya que es repetitivo.  

La continuidad y periodicidad de  la transformada hace  imposible su  implementación en un DSP, por  lo que  es  necesario  reformular  las  ecuaciones  (8)  y  (9)  de manera  de  contar  con  una  representación discreta tanto en el dominio del tiempo como en dominio de la frecuencia.  

Si acotamos la sumatoria a N elementos, de la respuesta en frecuencia obtenida de la transformada de Fourier  a  tiempo  discreto  y  teniendo  en  cuenta  las  propiedades  de  periodicidad  de  la  transformada, notaremos una similitud entre  los coeficientes ak de  la serie discreta de Fourier (ver Tabla 1). Se define entonces  a  la  transformada  de  Fourier  discreta  (por  su  sigla  en  ingles  DFT  por  Discrete  Fourier Transform) de la siguiente manera: 

 

1

0

1

0

( ) [ ] 0,1,..., 1

1[ ] ( ) 0,1,..., 1

Nnk

n

Nnk

k

X k x n W k N

x n X k W n NN

=

−−

=

= = −

= = −

∑                                             (10) 

Page 6: INTRODUCCION - uncor.edu

 

 

        

Página  6 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

Donde las constantes W son conocidas como factores twiddle y definidas como: 

 

2 /j NW e π−=                                                                                (11) 

Observar  que W  es  una  función  de  longitud N,  por  ello,  también  suele  expresarse  como WN.   Notar además que:  

2 2cos sinnW n j nN Nπ π⎛ ⎞ ⎛ ⎞= −⎜ ⎟ ⎜ ⎟

⎝ ⎠ ⎝ ⎠                                                            (12) 

 

Con lo anterior, el cálculo de un punto de la transformada discreta de Fourier está dada por: 

 

0 2 ( 1)( ) [0] [1] [2] ... [ 1] , 0,1,..., 1k k k NX k x W x W x W x N W k N−= + + + + − = −                (13) 

 

Desarrollando  (13) para  los N valores posibles de k  se obtiene una matriz de  tamaño NxN. De  (13)  se puede  calcular  el  número  de  operaciones  necesarias  para  realizar  la  transformación  de  los  datos mediante este algoritmo. El número de sumas complejas que se deben realizar es de (N‐1)N y la cantidad de multiplicaciones complejas asciende a N2. Es claro que ésta cantidad de operaciones es alta y requiere de un enorme poder de cálculo.  

El cálculo directo de la DFT no es eficiente debido, fundamentalmente, a que no explota las propiedades de simetría y periodicidad del factor de fase WN.  

De la observación de (13) es claro que no es necesario realizar las N2 multiplicaciones ya que los valores de  los factores W0 = 1 no son necesarios de multiplicar. Además existen propiedades de periodicidad y simetría en estos factores de forma tal que:  

 

2

k N k

Nk k

W W

W W

+

+

=

= −                                                                               (14) 

La simetría y periodicidad de los factores W quedan de manifiesto en la Figura 1. El ejemplo mostrado en dicha figura es para N = 8.  

Page 7: INTRODUCCION - uncor.edu

 

 

        

Página  7 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

Note  además  que  la DFT  es  obtenida  al multiplicar  los  datos  de  entrada  por  una  cantidad  finita  de 

funciones  sinusoidales  de  frecuencia  2πn/N,  por  lo  que DFT’s  de N  puntos  entregan N  componentes 

espectrales equiespaciadas cada 2π/ N, donde 2π representa la frecuencia de muestreo fs. 

 

Figura 1: Periodicidad y simetría de los factores W 

 

A partir de la DFT y las consideraciones anteriores es posible llegar a un método de cálculo mucho más eficiente, que  entrega  los mismos  resultados  y  con un número menor de operaciones.  Es  el  llamado algoritmo de Transformada Rápida de Fourier (FFT por sus siglas en ingles de Fast Fourier Transform). 

 

TRANSFORMADA RÁPIDA DE FOURIER (FFT)  Y EL ALGORITMO FFT BASE 2  

El  término  genérico  “transformada  rápida  de  Fourier”  abarca  distintos  algoritmos  con  distintas características, ventajas y desventajas. Por ejemplo, una FFT diseñada y optimizada usando un lenguaje de alto nivel probablemente no funcionará correctamente en un DSP de coma fija. Sin embargo, todas las  FFT’s  usan  la  misma  aproximación  para  reducir  el  algoritmo  en  un  número  reducido  de  DFT’s sucesivas, cortas y simples. Hay que tener en cuenta que:  

La FFT es un algoritmo (no una aproximación) a iguales intervalos de espaciamiento.  

Las limitaciones de la FFT surgen de las que tiene la DFT.  

No es ni mejor ni peor. Sin embargo se logra una eficiencia debido a los números  de operaciones menores que utiliza la FFT para ser resuelta.  

Page 8: INTRODUCCION - uncor.edu

 

 

        

Página  8 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

 El algoritmo de FFT a presentar en este trabajo, descompone la DFT de N puntos en transformadas más pequeñas. Una DFT de N puntos es descompuesta en dos DFT’s de N/2 puntos. Cada DFT de N/2 puntos se descompone a su vez en dos DFT’s de N/4 puntos y así sucesivamente. Al final de la descomposición se obtienen N/2 DFT´s de 2 puntos cada una. La transformada más pequeña viene determinada por  la base de la FFT. Para una FFT de base 2, N debe ser una potencia de 2 y la transformada más pequeña es la DFT de 2 puntos. Para implementar la FFT existen dos procedimientos: diezmado en el tiempo (DIT del inglés Decimation In Time) y diezmado en frecuencia (DIF del inglés Decimation In Frequency).  

 

Algoritmo FFF en Base 2 y Diezmado en el tiempo. 

Consideremos el cálculo de la DFT de N = 2v a partir de dividir la secuencia de datos de N puntos, en dos secuencias de N/2, correspondientes a las muestras pares e impares de x[n], respectivamente, esto es:  

 

1

2

[ ] [2 ]

[ ] [2 1] , 0,1,..., 12

f n x nNf n x n n

=

= + = −                                                  (15) 

Obsérvese,  que  se  realizó  el  diezmado  de  la  secuencia  x[n],  una  vez.    La  DFT  de  N  puntos  puede expresarse ahora en términos de las DFTs de las secuencias diezmadas como sigue: 

 

1

0( / 2) 1 ( / 2) 1

2 (2 1)

0 0

( ) [ ] 0,1,..., 1

[2 ] [2 1]

Nnk

Nn

N Nmk k m

N Nm m

X k x n W k N

x m W x m W

=

− −+

= =

= = −

= + +

∑ ∑                                        (16) 

Pero  2/ 2N NW W= . Sustituyendo esta igualdad en la expresión (16) se obtiene: 

 

( / 2) 1 ( / 2) 1

1 / 2 2 / 20 0

1 2

( ) ( ) ( )

( ) ( ) , 0,1,..., 1

N Nkm k km

N N Nm m

kN

X k f m W W f m W

F k W F k k N

− −

= =

= +

= + = −

∑ ∑                                     (17) 

donde F1(k) y F2(k) son las DFTs de N/2 puntos de las secuencias de la expresión (15). 

Page 9: INTRODUCCION - uncor.edu

 

 

        

Página  9 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

Puesto que F1(k) y F2(k) son periódicas, de periodo N/2,  tenemos     F1(k+N/2)= F1(k) y F2(k+N/2)= F2(k).  

Por  otro  lado,  se  cumple  que  / 2k N kN NW W+ = − .  Por  lo  que  se  puede  rescribir  la  expresión  (17)  de  la 

siguiente manera: 

 

1 2

1 2

( ) ( ) ( ) , 0,1,..., 12

( ) ( ) ( ) , 0,1,..., 12 2

kN

kN

NX k F k W F k k

N NX k F k W F k k

= + = −

+ = − = −                                           (18)  

 

Se observa que el calculo directo de F1(k) requiere  (N/2)2 multiplicaciones complejas al  igual que F2(k). 

Además, se requieren N/2 multiplicaciones más para calcular  2 ( )kNW F k . De aquí que el calculo de X(k) 

requiere N2 /2 + N/2 multiplicaciones complejas. El primer paso realizado de una reducción en el número de multiplicaciones de N2 a  N2 /2 + N/2, lo que equivale aproximadamente a dividir por dos el número de multiplicaciones cuando N es grande. 

Habiendo  realizado el diezmado en  tiempo una vez, podemos  repetir el proceso para cada una de  las secuencias de la expresión (15). Por lo tanto, se obtendrá dos secuencias de N/4 puntos:  

 

11 1

12 1

21 2

22 2

[ ] [2 ] , 0,1,..., 14

[ ] [2 1] , 0,1,..., 14

[ ] [2 ] , 0,1,..., 14

[ ] [2 1] , 0,1,..., 14

Nv n f n n

Nv n f n n

Nv n f n n

Nv n f n n

= = −

= + = −

= = −

= + = −

                                                      (19) 

 

Calculando  las DFTs  de N/4  puntos  se  obtienen  las DFTs  de N/2  puntos  F1(k)  y  F2(k)  a  partir  de  las siguientes relaciones: 

Page 10: INTRODUCCION - uncor.edu

 

 

        

Página  10 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

1 11 / 2 12

1 11 / 2 12

2 21 / 2 22

2 21 / 2 22

( ) ( ) ( ) , 0,1,..., 14

( ) ( ) ( ) , 0,1,..., 14 4

( ) ( ) ( ) , 0,1,..., 14

( ) ( ) ( ) , 0,1,..., 14 4

kN

kN

kN

kN

NF k V k W V k k

N NF k V k W V k k

NF k V k W V k k

N NF k V k W V k k

= + = −

+ = − = −

= + = −

+ = − = −

                              (20) 

donde Vij(k) son las DFTs de N/4 puntos de las secuencias vij[n]. 

Se observa que el calculo de Vij(k) requiere 4(N/4)2 multiplicaciones y por  lo tanto el calculo de F1(k) y 

F2(k)  puede  realizarse  con  N2/4  +  N/2 multiplicaciones  complejas.  Se  requieren  N/2 multiplicaciones 

complejas  más  para  calcular  X(k)  a  partir  de  F1(k)  y  F2(k).  Consecuentemente,  el  número  total  de multiplicaciones necesarias N2/4 + N/2 se reduce otra vez aproximadamente por un factor de dos.  

El diezmado de  la secuencia de datos se repite v =  log2 N veces, ya que se  tienen N = 2v datos. Por  lo 

tanto el número total de multiplicaciones complejas se reduce a  2( / 2) logN N , mientras que el número 

de  sumas  complejas  es  2logN N .  En  la  Tabla  2  se  muestra  la  comparación  entre  el  número  de 

multiplicaciones complejas usando la FFT y el cálculo directo de la DFT. En la Figuras 2 y 3 se representan esquemáticamente el desarrollo del algoritmo de la FFT en base 2.  

 

Tabla 2: Comparación entre la cantidad de multiplicaciones complejas a realizar por parte de la DFT y el algoritmo FFT de base 2 (Proakis y Manolakis, 2003). 

Números de Puntos, N 

Multiplicaciones Complejas en calculo 

directo, N2 

Multiplicaciones Complejas en el algoritmo FFT, 

2( / 2) logN N  

Factor de mejora de la velocidad 

4  16  4 4.0 

8  64  12 5.3 

16  256  32 8.0 

32  1024  80 12.8 

64  4096  192 21.3 

128  16384  448 36.6 

256  65536  1024 64.0 

512  262144  2304 113.8 

1024  1048576  5120 204.8 

Page 11: INTRODUCCION - uncor.edu

 

 

        

Página  11 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

 

Figura 2: Tres etapas en el calculo de la FFT de 8 puntos (Proakis y Manolakis, 2003). 

 

Figura 3: Algoritmo para la FFT de diezmado en tiempo de 8 puntos (Oppenheim et al. 1999). 

 

Como  puede  observarse,  el  calculo  que  se  realiza  en  cada  etapa,  el  cual  consiste  en  aplicar  las operaciones  de  una  transformada DFT  de  dos  puntos  o  “mariposa”    (ver  Figura  4).  En  general  cada mariposa implica una multiplicación y dos sumas complejas. Para N puntos, tenemos N/2 mariposas por 

Page 12: INTRODUCCION - uncor.edu

 

 

        

Página  12 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

cada etapa del proceso y  2log N etapas de mariposas. Por lo tanto podemos guardar el resultado de cada 

operación de  la mariposa  (A, B), en  las mismas posiciones de  sus operandos  (a, b). En  consecuencia, necesitamos una cantidad  fija de memoria, en concreto 2N registros de almacenamiento para guardar los resultados de N  números complejos. 

   

Figura 4: Mariposa básica del algoritmo para la FFT de diezmado en el tiempo (Oppenheim et al. 1999). 

 

Con  respecto  a  la  tarea  de  diezmado,  esta  se  puede  entender  como  un  reacomodamiento  antes  de proceder con el algoritmo de la FFT. Por ejemplo si N = 16  la tarea de diezmar queda graficada a través de la Figura 5, esto es (v‐1) = log2 N veces. 

 

Figura 5: Secuencia de diezmado para N = 16 (Smith, 1999). 

 

Notar que al realizar el diezmado,  las posiciones de  la secuencia de datos x[n], o sea n, cambian de tal manera, que si asumimos la generación de dicho numero a través de un numero binario tal como se lo 

Page 13: INTRODUCCION - uncor.edu

 

 

        

Página  13 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

ilustra en  la Figura 6; se dice que  luego del diezmado  la secuencia de datos x[n], se almacena en orden binario invertido. 

 

Figura 6: Mezclado de los datos e inversión binaria (Smith, 1999). 

 

Algoritmo FFF en Base 2 y Diezmado en frecuencia. 

Para deducir el  algoritmo empezamos dividiendo  la  formula de  la DFT en dos  sumatorias, una de  las cuales contiene  los primeros N/2   puntos de datos y el otro  los últimos N/2   puntos de datos. De esta manera se obtiene: 

( / 2) 1 1

0 / 2

( / 2) 1 ( / 2) 1/ 2

0 0

( ) [ ] [ ]

[ ] [ ]2

N Nkn kn

N Nn n N

N Nkn N k kn

N N Nn n

X k x n W x n W

Nx n W W x n W

− −

= =

− −

= =

= +

= + +

∑ ∑

∑ ∑                                            (21) 

Dado que  / 2 ( 1)kN kNW = − , la expresión (21) puede rescribirse como:  

( / 2) 1

0( ) [ ] ( 1) [ ]

2

Nk kn

Nn

NX k x n x n W−

=

⎡ ⎤= + − +⎢ ⎥⎣ ⎦∑                                             (22) 

 

Realizamos el primer diezmado X(k) (diezmado en frecuencia), obtenemos dos secuencias, par e impar respectivamente de la transformada, esto es: 

Page 14: INTRODUCCION - uncor.edu

 

 

        

Página  14 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

( / 2) 1

/ 20

( / 2) 1

/ 20

(2 ) [ ] [ ] , 0,1,..., 12 2

(2 1) [ ] [ ] , 0,1,..., 12 2

Nkn

Nn

Nn kn

N Nn

N NX k x n x n W k

N NX k x n x n W W k

=

=

⎡ ⎤= + + = −⎢ ⎥⎣ ⎦⎧ ⎫⎡ ⎤+ = − + = −⎨ ⎬⎢ ⎥⎣ ⎦⎩ ⎭

∑                      (23) 

en donde se utilizó la propiedad  de simetría  2/ 2N NW W= . 

Definiendo las secuencias de N/2 puntos g1 [n] y g2 [n] como: 

1

2

[ ] [ ] [ ]2

[ ] [ ] [ ] , 0,1,..., 12 2

nN

Ng n x n x n

N Ng n x n x n W n

= + +

⎡ ⎤= − + = −⎢ ⎥⎣ ⎦

                                        (24) 

puede rescribirse la expresión (23) de la siguiente manera: 

( / 2) 1

1 / 20

( / 2) 1

2 / 20

(2 ) [ ]

(2 1) [ ]

Nkn

Nn

Nkn

Nn

X k g n W

X k g n W

=

=

=

+ =

∑                                                       (25) 

El calculo de  las secuencias g1  [n] y g2  [n] según  la expresión  (24) y el uso de estas secuencias para el cálculo de las DFTs de N/2 puntos se muestra en la  Figura 7. 

 

 

Figura 7: Mariposa básica del algoritmo FFT de diezmado en frecuencia (Oppenheim et al. 1999). 

 

Este procedimiento computacional puede repetirse diezmando las DFTs de N/2 puntos, X(2k) y X(2k+1). El proceso completo conlleva v =  log2 N etapas de diezmado, donde cada etapa  implica N/2 mariposas. Consecuentemente, el calculo de la DFT de N puntos por medio de la DFT a través del algoritmo FFT de diezmado en frecuencia requiere  2( / 2) logN N  multiplicaciones complejas y  2logN N  sumas complejas.  

Page 15: INTRODUCCION - uncor.edu

 

 

        

Página  15 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

En la Figura 8, se grafica como es la entrada de la secuencia de datos x[n] y en la Figura 9 se muestra el algoritmo de diezmado en frecuencia completo de ocho puntos. 

 

 

Figura 8: Primera etapa del algoritmo para la FFT de diezmado en frecuencia (Oppenheim et al. 1999). 

 

 

Figura 9: Algoritmo para la FFT de diezmado en frecuencia para N= 8 (Oppenheim et al. 1999). 

Page 16: INTRODUCCION - uncor.edu

 

 

        

Página  16 de  16

FCEFyN  Universidad Nacional de Cordoba

TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT

Procesamiento Digital de Señales – FCEFyN – UNC     TRANSFORMADA DE FOURIER Y EL ALGORITMO FFT 

BIBIOGRAFIA 

DSP56800 Family Manual. 16‐Bit Digital Signal Controllers. DSP56800FM Rev. 3.1 11/2005. Freescale.  

Higgins, R. J., 1990. Digital Signal Processing In Vlsi. Prentice‐Hall,Inc. New Jersey. 

Orfanidis, S. J., 1996. Introduction to Signal Processing. Prentice may, Inc.  

Smith, S. W., 1999. The Scientist and Engineer's Guide  to Digital Signal Processing. California Technical Publishing, Second Edition.   

Proakis,  J. G.  y Manolakis, D. G., 2003. Tratamiento Digital de  Señales. Tercera Edición. Prentice Hall. Madrid.  

Oppenheim, A. V., Schafer, R. W. and Buck, J. R., 1999. Discrete‐Time Signal Processing. 2nd Ed. Prentice‐Hall Signal Processing Series.