Processing math: 100%

Exercise 5.5: Fast Fourier Transform

From LNTwww
Revision as of 15:36, 1 September 2020 by Javier (talk | contribs) (Text replacement - "Signal_Representation/Fast-Fouriertransformation_(FFT)" to "Signal_Representation/Fast_Fourier_Transform_(FFT)")

FFT-Algorithmus für  N=8

Die Grafik zeigt den Signalflussplan der FFT für  N=8. Aus den Zeitkoeffizienten  d(0),...,d(7)  werden die dazugehörigen Spektralkoeffizienten  D(0),...,D(7)  ermittelt. Für diese gilt mit  0μ7:

D(μ)=1NN1ν=0d(ν)wνμ,

wobei der komplexe Drehfaktor  w=ej2π/N  zu verwenden ist, also  w=ejπ/4  für  N=8.

  • Am Eingang wird die alternierende ±1–Folge  d(ν)  angelegt.
  • Nach der Bitumkehroperation ergibt sich daraus die Folge  b(κ).


Es gilt  b(κ)=d(ν), wenn man  ν  als Dualzahl darstellt und die resultierenden drei Bit als  κ  in umgekehrter Reihenfolge geschrieben werden. Beispielsweise

  • folgt aus  ν=1  (binär  001)  die Position  κ=4  (binär  100),
  • verbleibt  d(2)  an der gleichen Position  2  (binär  010).


Der eigentliche FFT–Algorithmus geschieht für das Beispiel  N=8  in  log2N=3  Stufen, die mit  L=1L=2  und  L=3  bezeichnet werden. Weiter gilt:

  • In jeder Stufe sind vier Basisoperationen – so genannte Butterflies – durchzuführen.
  • Die Werte am Ausgang der ersten Stufe werden in dieser Aufgabe mit  X(0),...,X(7)  bezeichnet, die der zweiten mit  Y(0),...,Y(7).
  • Nach der dritten und letzten Stufe sind alle Werte noch durch  N  zu dividieren. Hier liegt dann das endgültige Ergebnis  D(0),...,D(7)  vor.




Hinweis:



Fragebogen

1

Berechnen Sie den DFT–Koeffizienten  D(3).

D(3) = 

2

Berechnen Sie den DFT–Koeffizienten  D(4).

D(4) = 

3

Ermitteln Sie die Ausgangswerte  X(0), ... , X(7)  der ersten Stufe. Welche der folgenden Aussagen sind zutreffend?

Alle  X–Werte mit geradzahligen Indizes sind gleich  2.
Alle  X–Werte mit ungeradzahligen Indizes sind gleich  0.

4

Ermitteln Sie die Ausgangswerte  Y(0), ... , Y(7)  der zweiten Stufe. Geben Sie zur Kontrolle die Werte  Y(0)  und  Y(4)  ein.

Y(0) = 

Y(4) = 

5

Berechnen Sie alle  N  Spektralwerte  D(μ), insbesondere

D(μ=4) = 

D(μ4) = 

6

Welche Spektralkoeffizienten würden sich für  d(ν=4)=1  und  d(ν4)=0  ergeben?
Geben Sie zur Kontrolle die Werte  D(3)  und  D(4)  ein.

D(μ=3) = 

D(μ=4) = 


Musterlösung

(1)  Entsprechend der auf dem Angabenblatt gegebenen allgemeinen DFT–Gleichung gilt mit  w=ejπ/4  unter Berücksichtigung der alternierenden Zeitkoeffizienten:

8D(3)=w0w3+w6w9+w12w15+w18w21=w0w3+w2w1+w4w7+w6w5.
  • Hierbei ist berücksichtigt, dass aufgrund der Periodizität  w9=w1w12=w4w15=w7w18=w2  und  w21=w5  ist.
  • Nach Umsortieren gilt in gleicher Weise:
8D(3)=(w0+w4)(w1+w5)+(w2+w6)(w3+w7)=(1+w+w2+w3)(w0+w4).
  • Wegen  w0=1  und  w4=ejπ=1  erhält man somit  D(3)=0_.


(2)  In analoger Weise zur Teilaufgabe  (1)  ergibt sich nun:

8D(4)=w0w4+w8w12+w16w20+w24w28=4(w0w4)=8D(4)=1_.


Beispiel für den FFT-Algorithmus

(3)  Richtig ist der Lösungsvorschlag 2:

  • Der Term  w0=1  muss nicht berücksichtigt werden.
  • Alle Ausgangswerte mit ungeraden Indizes sind durch die Subtraktion zweier identischer Eingangswerte Null.
  • Die erste Aussage trifft nicht zu:   Es gilt  X(0)=X(2)=+2  und  X(4)=X(6)=2.


(4)  Auf die Multiplikation mit  w2=j  kann verzichtet werden, da im Signalflussplan die entsprechenden Eingangsgrößen Null sind.

  • Man erhält somit  Y(0)=4_  und  Y(4)=4_.
  • Alle anderen Werte sind Null.


(5)  Wegen  Y(5)=Y(6)=Y(7)=0  spielen auch in der dritten Stufe die Multiplikationen mit  ww2  und  w3  keine Rolle. Alle Spektralkoeffizienten  D(μ)  ergeben sich deshalb zu Null mit Ausnahme von

D(4)_=1/N[Y(0)Y(4)]=1_.

Dieses Ergebnis stimmt mit den Ergebnissen aus  (1)  und  (2)  überein.


(6)  Nachdem sowohl die Zeitkoeffizienten  d(ν)  als auch alle Spektralkoeffizienten  D(μ)  rein reell sind, besteht kein Unterschied zwischen der FFT und der IFFT.

  • Das bedeutet gleichzeitig:  Die Eingangs– und Ausgangswerte können vertauscht werden.
  • Die Teilaufgabe  (5)  hat das folgende Ergebnis geliefert:
d(geradesν)=+1,d(ungeradesν)=1
D(μ=4)=1,D(μ4)=0.
  • Durch Vertauschen der Eingangs– und Ausgangswerte kommt man zur Aufgabenstellung  (6):
d(ν=4)=1,d(ν4)=0D(geradesμ)=+1,D(ungeradesμ)=1.
  • Insbesondere ergibt sich sich  D(3)=1_  und  D(4)=+1_.