Digital Signal Processing Reference
In-Depth Information
frequenzwahlverfahren nur 8 von 256, kann die Einsparung erheblich sein. Hinzu kommt, dass
nun anders als bei der Radix-2-FFT, die DFT-Länge prinzipiell nicht gebunden ist.
Anmerkung:
Für den praktischen Einsatz kann der Algorithmus noch effizienter gestaltet werden, so dass
nur reelle Operationen durchgeführt werden müssen, was in Abschnitt 8.4.3 noch genauer erläutert wird.
Eingang
Ausgang
x
[
n
]
y
[
n
]
D
a
1
y
[
n
1]
System
Bild 8-5
Blockdiagramm eines zeitdiskreten Systems 1. Ordnung in Direktform I für den Goertzel-
Algorithmus
Programmbeispiel 8-2
DGL 1. Ordnung, Goertzel-Algorithmus (Programmausschnitt)
a1 = -exp(j*2*pi*k/N);
%
h
[1]
y = x(1);
%
y
[0] =
x
[0]
for n = 2:N
y = x(n) - a1*y;
%
recursion
end
Xk = -a1*y;
%
DFT coefficient
8.3.2
Versuchsdurchführung
M8.3
Überprüfen Sie den Goertzel-Algorithmus mit MATLAB. Erzeugen Sie dazu ein
Sinus- oder Kosinussignal dessen
k
-fache Periode
N
= 256 ergibt. Wenden Sie den
Goertzel-Algorithmus in Bild 8-5 für verschiedene DFT-Koeffizienten an und über-
prüfen Sie die Ergebnisse.
Hinweis:
Schreiben Sie dazu eine MATLAB-Funktion für den Goertzel-Algorith-
mus 1. Ordnung,
function y = goertzel_1(x,k,N)
.
M8.4
Erzeugen Sie ein DTMF-Signal der Länge 205 und bestimmen Sie mit dem
Goertzel-Algorithmus die den 8 DTMF-Tönen am nächsten liegenden DFT-Koeffi-
zienten.
Hinweis:
Bild 8-6 zeigt das Ergebnis für den Wählton Nummer 6.
Anmerkung:
Die DFT-Länge 205 liefert die besten Resultate für die DTMF-Signalerkennung
[Mar92], [Mit06].