-
Die Erfindung betrifft einen Radarsensor für Kraftfahrzeuge, mit einem Hochfrequenzteil, der dazu konfiguriert ist, Folgen von modulierten Radarpulsen zu senden und die entsprechenden Radarechos zu empfangen, und einem elektronischen Auswerteteil, der dazu konfiguriert ist, Abstands- und Winkelmessungen nach dem Prinzip der synthetischen Apertur (SA) vorzunehmen, und der aufweist:
- - ein Abtastmodul, das dazu konfiguriert ist, die Amplituden der empfangenen Radarechos als Rohdaten in einem zweidimensionalen Datenraum abzutasten, in dem eine Dimension die zeitliche Veränderung der Amplituden innerhalb eines Radarpulses repräsentiert und die andere Dimension die Änderung der Amplituden von Puls zu Puls repräsentiert,
- - ein FFT-Modul mit spezialisierter Hardware für die Ausführung von schnellen Fourier-Transformationen (FFT) zur Berechnung eines zweidimensionalen Abstands-Geschwindigkeits-Radarbildes,
- - ein Transformationsmodul, das dazu konfiguriert ist, die Rohdaten bei gleichzeitiger Korrektur von Migrationseffekten in ein von dem FFT-Modul verarbeitbares Format zu transformieren, durch Anwendung einer Transformationsfunktion, die durch eine Anzahl N von Koeffizienten definiert ist, und
- - ein Koeffizientenmodul zur Bereitstellung der Koeffizienten für das Transformationsmodul.
-
Stand der Technik
-
Radarsysteme zur Messung von Abständen, Relativgeschwindigkeiten und Winkeln von Objekten (wie z. B. von Fahrzeugen und Hindernissen) werden zunehmend in KFZ für Sicherheits- und Komfortfunktionen eingesetzt. Seit einigen Jahren wird die Verwendung von Radarsensoren mit synthetischer Apertur (SA) im Automobilbereich untersucht. Das Prinzip der synthetischen Apertur erlaubt bei Eigenbewegung des Radarsensors besonders genaue Winkelmessungen, indem die Messungen an unterschiedlichen örtlichen Positionen als eine synthetische Antennenapertur (Antennenfläche) interpretiert und entsprechend verarbeitet werden. Die synthetische Apertur kommt dadurch zustande, dass sich die Sende- und Empfangsantennen zum Zeitpunkt jeder einzelnen Messung wegen der Eigenbewegung des Radars an unterschiedlichen örtlichen Positionen befinden und somit rechnerisch so behandelt werden können, als sei entlang der Fahrttrajektorie eine große Antennenapertur vorhanden. Damit sind mit einzelnen Sende- und Empfangsantennen Auflösungen in der Winkelmessung möglich, die mit der vorhandenen realen Antennenapertur unerreichbar wären.
-
Heutige Kfz-Radarsysteme setzen in der Regel eine FMCW-Modulation mit schnellen Rampen (Fast-Chirp-Modulation) ein, bei der nacheinander mehrere lineare Frequenzrampen (frequenzmodulierte Pulse) mit derselben Steigung gesendet werden. Die Mischung des momentanen Sendesignals mit dem Empfangssignal ergibt ein niederfrequentes Signal (Beatfrequenz genannt), dessen Frequenz zum Abstand proportional ist. Das System wird in der Regel so ausgelegt, dass der durch die Dopplerverschiebung bei radialer Relativbewegung des Objekts versursachte Anteil an der Beatfrequenz vernachlässigbar ist. Die gewonnene Abstandsinformation ist dann weitgehend eindeutig. Die Dopplerverschiebung - und damit die Radialgeschwindigkeit - kann anschließend durch Beobachtung der zeitlichen Entwicklung der Phase des komplexen Abstandssignals über die Rampen hinweg bestimmt werden. Abstands- und Geschwindigkeitsbestimmung finden unabhängig voneinander statt, in der Regel mittels zweidimensionaler schneller Fourier-Transformation (engl. fast Fourier transform, FFT).
-
Auch bei einem SA-Radar kann das Messprinzip der Fast-Chirp-Modulation verwendet werden. Die Abstandsauswertung bleibt weitgehend unverändert. Die Dopplerauswertung über die Rampen hinweg wird nun durch eine SA-Auswertung ersetzt. Diese liefert im Endergebnis nicht eine Dopplermessung, sondern unter der Annahme von stationären Zielen und mit Kenntnis der Eigenbewegung des Fahrzeugs eine Winkelmessung. Hierzu wird die sich aus der Dopplermessung ergebende Relativgeschwindigkeit des Objekts ausgewertet, die eine Projektion der Eigengeschwindigkeit auf die Sichtachse zum Objekt ist.
-
Für die Datenauswertung nach dem Prinzip der synthetischen Apertur ist zwar eine Eigenbewegung des Fahrzeugs erforderlich, damit überhaupt eine synthetische Apertur entsteht, jedoch wird die Berechnung des Abstands-Geschwindigkeits-Radarbildes dadurch erschwert, dass aufgrund der Eigenbewegung des Fahrzeugs die stationären Objekte, deren Winkel gemessen werden sollen, während der Dauer des Messzyklus eine scheinbare Ortsveränderung (Migration) erfahren, die zu Verzerrungen des Radarbildes führt.
-
In der Literatur ist eine Anzahl von Algorithmen bekannt, mit denen solche Migrationseffekte korrigiert werden. Konzeptuell kann man dabei zwischen zwei Klassen von Algorithmen unterscheiden: (a) Algorithmen, die auf Kosten größeren Rechenaufwands in der Lage sind, eine beliebige synthetische Apertur zu verarbeiten (z.B. back projection), und (b) andere, die sich auf einen gewissen Aperturtyp einschränken (z.B. linear), dafür aber recheneffizienter sind (z.B. der Keystone-Algorithmus). Dabei ist in der Automotive Anwendung die effiziente Berechnung des Abstands-Geschwindigkeits-Radarbildes und es sich daraus ergebenden Abstands-Winkel-Radarbildes von großer Bedeutung, da eine Echtzeitverarbeitung erforderlich ist.
-
Um eine hohe Recheneffizienz und damit Echtzeitverarbeitung zu erreichen, werden in konventionellen KFZ-Radarsensoren Beschleuniger für die FFT-Operationen eingesetzt. Z.B. ist der Kern des Keystone-Algorithmus eine sogenannte Chirp-Z-Transformation, die als Faltung zweier Funktionen betrachtet werden kann, zu deren Berechnung ebenfalls FFT-Beschleuniger eingesetzt werden können. Dazu müssen die Koeffizienten der Chirp-Z-Transformation, die in die schnelle Faltung eingehen, entweder vorab berechnet und in einen Speicher geschrieben werden oder aber sie müssen online berechnet werden. Der erstere Ansatz benötigt zusätzlichen Speicher, während der letztere Ansatz komplexe Exponenten-Berechnungen in Echtzeit erfordert.
-
Offenbarung der Erfindung
-
Aufgabe der Erfindung ist es, einen Radarsensor zu schaffen, der nur wenig Speicherplatz für die Speicherung der Koeffizienten der Transformationsfunktion benötigt, mit dem es aber dennoch möglich ist, die für die Echtzeit-Berechnung des Radarbildes benötigten Koeffizienten schnell genug bereitzustellen.
-
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, dass das Koeffizientenmodul aufweist:
- - einen Speicher, in dem ein Anfangssatz von Koeffizienten gespeichert ist, der weniger als N Koeffizienten umfasst, und
- - ein Rekursionsmodul zur rekursiven Berechnung der übrigen Koeffizienten.
-
Die Erfindung nutzt den Umstand aus, dass die benötigten Koeffizienten der Transformationsfunktion rekursiv berechnet werden können. Da die Rohdaten, auf welche die Transformation angewandt wird, in einem zweidimensionalen Datenraum definiert sind, ist auch die Transformationsfunktion auf einem zweidimensionalen Raum definiert, und ihre Koeffizienten c(n, k) sind folglich Funktionen zweier Indizes n und k. So kann man als Anfangssatz beispielsweise die Koeffizienten c(0, k) speichern und die übrigen Koeffizienten c(n, k) mit n > 0 anhand einer Rekursionsformel c(n, k) = f(c(n-1, k)) berechnen. Es zeigt sich, dass sich die Koeffizienten auf diese Weise deutlich schneller berechnen lassen als bei einem herkömmlichen Algorithmus, bei dem die Koeffizienten für die Indexpaare (n, k) einzeln und unabhängig voneinander berechnet werden. Auf diese Weise gelingt es, die Koeffizienten so schnell bereitzustellen, wie sie für die Ausführung der Transformation in Echtzeit benötigt werden. Wenn die Anzahl der Koeffizienten n, also die Größe des Datenraumes in der ersten Dimension, mit Nfast bezeichnet wird und die Anzahl der Koeffizienten k in der zweiten Dimension Nslow, so ist der Speicherplatzbedarf für die Koeffizienten bei dem erfindungsgemäßen Verfahren nicht proportional zu Nfast × Nslow, sondern nur proportional zu entweder Nfast oder Nslow. Da die Anzahlen Nfast und Nslow relativ groß sein müssen, beispielweise 256 bzw. 512, damit die SA-Auswertung mit hinreichender Genauigkeit ausgeführt werden kann, und da es sich bei den Koeffizienten außerdem um komplexe Zahlen handelt, kann durch die rekursive Berechnung der Koeffizienten beträchtlicher Speicherplatz eingespart werden.
-
Die Erfindung ist nicht auf die Datenauswertung nach dem Keystone-Algorithmus beschränkt, sondern lässt sich generell bei allen Auswertungsalgorithmen anwenden, bei denen die Koeffizienten der Transformationsfunktion rekursiv berechnet werden können. Ebenso wenig ist die Erfindung auf ein Rapid Chirp FMCW-Radar beschränkt, sondern generell bei Radarsensoren anwendbar, bei denen das Sendesignal aus modulierten, beispielsweise phasenmodulierten, Pulsfolgen besteht.
-
Vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.
-
Wenn es sich bei der Transformation der Rohdaten mathematisch um eine Faltung handelt, lässt sich die im Radarsensor vorhandene spezialisierte Hardware für schnelle Fourier-Transformationen auch zur Berechnung der durch die Koeffizienten definierten Transformation einsetzen, beispielsweise indem die Rohdaten und auch die Transformationsfunktion mittels FFT aus der Zeitdomäne in die Frequenzdomäne transformiert werden, die Funktionen dann in der Frequenzdomäne multipliziert und danach mittels inverser FFT wieder in die Zeitdomäne zurücktransformiert werden, bevor dann im FFT-Modul die zweidimensionale Fouriertransformation zur Berechnung des Abstands-Geschwindigkeits-Radarbildes ausgeführt wird.
-
Bei dem gespeicherten Anfangssatz der Koeffizienten muss es sich nicht um einen einzelnen Vektor (mit den Indizes n oder k als Komponenten) handeln, sondern es können beispielsweise zwei oder mehr solcher Vektoren gespeichert werden. Wenn Nfast oder Nslow sehr groß ist, hat das den Vorteil, dass die Akkumulation von Rundungsfehlern unterdrückt wird, weil die berechneten Koeffizienten dann mehrere kurze rekursive Folgen anstelle einer einzigen sehr langen Folge bilden.
-
Wenn die Matrix der Koeffizienten n, k einen oder mehrere Blöcke bildet, kann es auch zweckmäßig sein, die Rekursion mit einem gespeicherten Anfangssatz von Koeffizienten für eine Spalte oder Zeile in der Mitte des jeweiligen Blockes zu beginnen und dann mit zwei separaten Rekursionsfolgen in entgegengesetzte Richtungen in dem Block fortzuschreiten. Dadurch wird nicht nur die Länge der Rekursionsfolgen halbiert und somit der Rundungsfehler verkleinert, sondern zugleich erreicht, dass größere Rundungsfehler allenfalls an den Rändern des Blockes auftreten, wo die Daten ohnehin durch eine Fensterfunktion herunterskaliert werden, so dass die Fehler sich weniger stark auswirken.
-
Im folgenden werden Ausführungsbeispiele anhand der Zeichnung näher erläutert.
-
Es zeigen:
- 1 ein Blockdiagramm eines erfindungsgemäßen SA-Radarsensors;
- 2 ein Zeitdiagramm einer von dem Radarsensor gesendeten Pulsfolge;
- 3 ein Ablaufdiagramm für eine Chirp-Z-Transformation;
- 4 ein Rekursionsschema zur Berechnung der Koeffizienten der Chirp-Z-Transformation; und
- 5 ein Beispiel für ein modifiziertes Rekursionsschema.
-
Der in 1 gezeigte Radarsensor weist einen Hochfrequenzteil 10 auf, der beispielsweise als Rapid Chirp FMCW-Radar konfiguriert ist und in jedem Messzyklus über ein Array von Antennen 12 eine Folge von frequenzmodulierten Radarpulsen oder -rampen aussendet. Die an Objekten 14 reflektierten Radarsignale werden von den Antennen 12 wieder empfangen und, wie bei einem FMCW-Radar üblich, mit einem Anteil des zum jeweiligen Zeitpunkt gesendeten Signals gemischt, so dass man ein Schwebungssignal mit einer deutlich reduzierten Frequenz (Beatfrequenz) erhält.
-
Eine Analog-Digital-Wandlerstufe 16 bildet eine Schnittstelle zwischen dem Hochfrequenzteil 10 und einem Auswerteteil 18. Dort werden die digitalisierten komplexen Amplituden des Schwebungssignals in regelmäßigen Zeitintervallen abgetastet und als Zeitsignal gespeichert. Die Datenspeicherung erfolgt in einem zweidimensionalen Datenraum, d. h., die Amplituden A(n, k) werden als Funktionen eines „schnellen“ Index n und eines „langsamen“ Index k gespeichert.
-
In 2 sind die vom Hochfrequenzteil gesendeten frequenzmodulierten Pulse 22, auch als Rampen oder „Chirps“ bezeichnet, für zwei aufeinanderfolgende Messzyklen schematisch in einem Frequenz-Zeit-Diagramm dargestellt. Auf der vertikalen Achse ist die Frequenz f aufgetragen und auf der horizontalen Achse die Zeit t. Innerhalb jedes Chirps steigt die Frequenz f linear an. Die Mittenfrequenz der Pulse ist mit fc bezeichnet, und die Bandbreite ist mit B bezeichnet. Der schnelle Index n zählt die auf aufeinanderfolgenden Abtastzeitpunkte 24 innerhalb jedes einzelnen Pulses 22, während der langsame Index k die aufeinanderfolgende Pulse innerhalb jedes Messzyklus zählt. Die Anzahl der Abtastzeitpunkte 24 innerhalb jedes Pulses ist mit Nfast bezeichnet, und die Anzahl der Pulse 22 innerhalb jedes Messzyklus ist mit Nslow bezeichnet. In der Praxis sind die Anzahlen in Nfast und Nslow allerdings deutlich größer als in dem vereinfachten Diagramm. Typische Werte sind beispielsweise Nfast = 256 und Nslow = 512.
-
Der Auswerteteil 18 (1) weist außerdem ein FFT-Modul 26 für schnelle Fourier-Transformationen (FFT) auf. Die Hardware dieses Moduls ist darauf ausgelegt, diskrete Fourier-Transformationen auf besonders schnelle und effiziente Weise auszuführen. Wie bei einem Rapid Chirp FMCW-Radar üblich, findet im FFT-Modul eine ein- oder zweidimensionale Fouriertransformation statt, bei der eine Dimension die Abfolge der durch den Index n gezählten Abtastzeitpunkte ist.
-
Bei einem üblichen Rapid Chirp Radar (ohne SA-Auswertung) werden die im Abtastmodul aufgezeichneten Amplituden A(n, k) direkt an das FFT-Modul übermittelt. Das vom FFT-Modul erzeugte zweidimensionale Spektrum stellt dann ein Abstands-Geschwindigkeits-Radarbild 28 dar, in dem sich jedes Objekt 14 im Radarecho durch einen Peak 14' abzeichnet, dessen Lage in dem zweidimensionalen Abstands-Geschwindigkeits-Raum in den Abstand d des Objekts sowie dessen Relativgeschwindigkeit v angibt. Da die Frequenzrampen der Pulse 22 sehr steil sind, ist die aus der Relativbewegung der Objekte resultierende Dopplerverschiebung innerhalb eines Pulses vernachlässigbar, so dass die Lage des Peaks in der ersten Dimension in guter Näherung den Objektabstand d angibt. Die Relativgeschwindigkeit v des Objekts ergibt sich aus der Änderung der Phasen der Signale von Impuls zu Impuls, jeweils bei demselben Abtastzeitpunkt gemessen, und wird deshalb durch die Fouriertransformation in der zweiten Dimension erhalten.
-
Bei dem hier beschriebenen SA-Radar sind die Objekte 14 jedoch nicht, zumindest nicht in erster Linie, vorausfahrende Fahrzeuge, deren Abstand und Relativgeschwindigkeit gemessen werden soll, sondern vielmehr in erster Linie stationäre Objekte am Fahrbahnrand, deren genaue Lage (Abstand und Winkel) gemessen werden soll. In 1 gibt ein Vektor Vf die Eigenbewegung des Kraftfahrzeugs an, in dem der Radarsensor installiert ist, und somit auch die Eigenbewegung des Radarsensors. Der Sehstrahl vom Radarsensor zum Objekt 14 bildet mit dem Vektor Vf (mit der Fahrtrichtung) einen Winkel PHI. Aufgrund der Eigenbewegung des Radarsensors wird für das Objekt 14, obgleich es stationär ist, eine Radialgeschwindigkeit Vr = -Vf cos(PHI) gemessen. Durch Auflösen dieser Gleichung nach PHI kann somit die gemessene Radialgeschwindigkeit Vr des Objekts 14 in den Richtungswinkel PHI umgerechnet werden, unter dem das Objekt gesehen wird, und das Abstands-Geschwindigkeits-Radarbild 28 kann folglich auch als Abstands-Winkel-Radarbild 30 interpretiert werden, wobei sich das Vorzeichen von PHI (Objekt auf der rechten oder der linken Seite des Fahrzeugs) anhand der Phasendifferenzen zwischen den von verschiedenen Antennen 12 empfangenen Signalen bestimmten lässt.
-
Aufgrund der scheinbaren Ortsveränderung des Objekts 14 während der Dauer eines Messzyklus kommt es jedoch zu Migrationseffekten, die zu einer Verzerrung des Abstands-Geschwindigkeits-Radarbildes 28 führen. Um diese Verzerrung zu korrigieren, ist zwischen dem Abtastmodul 20 und dem FFT-Modul 26 ein Transformationsmodul 32 eingefügt, das an den im Abtastmodul 20 aufgezeichneten Amplituden A(n, k) nach einem bestimmten Algorithmus, beispielsweise dem Keystone-Algorithmus, eine Transformation vornimmt, durch die die Migrationseffekte korrigiert werden. Das FFT-Modul 26 erhält somit als Eingangsdaten nicht unmittelbar die Amplituden A(n, k), sondern transformierte (migrationsfreie) Amplituden T(n, k). Außerdem findet im Transformationsmodul 32 bereits eine Fourier-Transformation in der Dimension statt, die der Abfolge der durch den Index k gezählten Pulse entspricht.
-
Die Transformation, die die Migrationseffekte korrigiert, ist definiert durch einen Satz von Koeffizienten c(n, k), die ihrerseits von den Indizes n und k abhängig sind.
-
Im Fall des Keystone-Algorithmus gilt beispielsweise:
-
Im Prinzip brauchen diese Koeffizienten c(n, k) für jedes Indexpaar n, k nur einmal berechnet um dann in einem Speicher des Auswerteteils 18 abgelegt zu werden. Allerdings benötigt man dann Speicherplatz für Nfast × Nslow (= 131072 im gezeigten Beispiel) komplexe Koeffizienten. Wenn der Radarsensor verschiedene Betriebsmodi aufweist, die sich beispielsweise in der Mittenfrequenz fc unterscheiden (z,B. um Interferenzen mit den Radarsensoren anderer Fahrzeuge auszuweichen), so vervielfacht sich der benötigte Speicherplatz entsprechend.
-
Wenn man andererseits jeden einzelnen Koeffizienten bei Bedarf nach der oben angegebenen Formel berechnet, so muss während jedes Messzyklus eine hohe Zahl sehr komplexer Berechnungen ausgeführt werden, so dass ein Rechner mit hoher Rechenkapazität benötigt wird.
-
Aus der oben angegebenen Formel (1) lässt sich jedoch die folgende Rekursionsformel ableiten:
-
Die Konstante D(k) braucht für jedes k nur einmal berechnet zu werden und kann dann gespeichert werden. Wenn man außerdem einen Anfangssatz von Koeffizienten
speichert, so lassen sich alle Koeffizienten rekursiv berechnen, wobei für jedes Inkrement von n und jeden Wert des Index k nur eine einfache Multiplikation ausgeführt zu werden braucht. Der benötigte Speicherplatz ist deutlich reduziert, da man nur noch Speicherplatz für die N
slow Anfangswerte c(0, k) und für die Konstanten D(k) benötigt.
-
Man erreicht auf diese Weise einen günstigen Kompromiss zwischen Speicherbedarf und Rechenkapazität, so dass sich insgesamt die Kosten für die Hardware deutlich senken lassen.
-
Wie 1 zeigt, enthält der Auswerteteil 18 ein Koeffizientenmodul 34, das die Koeffizienten c(n, k) für das Transformationsmodul 32 bereitstellt. Das Koeffizientenmodul enthält einen Speicher 36, in dem für jeden der Nslow Werte des Index k ein Anfangswert c(0, k) sowie der zugehörige Faktor D(k) gespeichert ist, und ein Rekursionsmodul 38 zur rekursiven Berechnung der Koeffizienten c(n, k) für n > 0. Wenn das Rekursionsmodul 38 einen Satz von Koeffizienten c(n-1, k) berechnet und an das Transformationsmodul 32 übergeben hat, wird dieser Satz auch in einem Register des Rekursionsmoduls gespeichert und dann zur Berechnung des nächsten Satzes von Koeffizienten c(n, k) benutzt.
-
Die Arbeitsweise des Transformationsmoduls 32 ist in 3 detaillierter dargestellt. Die komplexen Amplituden A(n, k) sind Funktionen der Zeit, genauer, der schnellen Zeit (Index n) und der langsamen Zeit (Indeex k). Die Chirp-Z-Transformation ist mathematisch eine Faltung dieser zeitabhängigen Funktion mit eine weiteren zeitabhängigen Funktion, die als Phasenfaktor exp (i PSI) mit einer zeitabhängigen Phase PSI geschrieben werden kann. Statt diese Faltung direkt, durch numerische Integration, auszuführen, wird eine mathematisch äquivalente Operation ausgeführt, die im Kern eine Fouriertransformation beider Funktionen in die Frequenz-Domäne, eine Multiplikation der beiden frequenzabhängigen Funktionen und dann eine Rücktransformation in die Zeit-Domäne einschließt. Dazu werden zunächst die komplexen Amplituden A(n, k) für jedes Indexpaar mit dem von diesen Indizes n und k abhängigen Phasenfaktor exp (i PSI) multipliziert. Das Produkt wird dann in einer FFT-Stufe 40 einer komplexen Fouriertransformation cFFTslow in der „langsamen“ Dimension (Index k) unterzogen. Parallel dazu wird in einer weiteren FFT-Stufe 42 auch der Phasenfaktor exp (i PSI) der gleichen Fouriertransformation unterzogen. Die in die Frequenz-Domäne transformierten Funktionen werden miteinander multipliziert und danach in einer weiteren FFT-Stufe 44 mit der inversen Fouriertransformation cIFFTslow wieder in die Zeit-Domäne zurücktransformiert. Das Resultat wird dann für jedes Indexpaar n, k noch einmal mit dem Phasenfaktor exp (i PSI) multipliziert. Das so erhaltene Produkt liefert die transformierten Amplituden T(n, k), die dann als Eingangsdaten an das FFT-Modul 26 für die Fouriertransformation in der durch den Index n gegebenen Dimension übergeben werden.
-
Die in 3 gezeigte Prozedur hat den Vorteil, dass die Fouriertransformationen in den FFT-Stufen 40, 42 und 44 mit Hilfe von spezialisierter Hardware sehr schnell und effizient ausgeführt werden können. Gegebenenfalls kann dazu auch die Hardware des FFT-Moduls 32 mit benutzt werden. Bei den übrigen Operationen, die im Transformationsmodul 32 vorzunehmen sind, handelt es sich dann um einfache Multiplikationen, die sich wesentlich schneller durchführen lassen als numerische Faltungsoperationen.
-
Die Multiplikationen mit dem Phasenfaktor exp (i PSI) werden im Transformationsmodul 32 so vorgenommen, dass zunächst für einen festen Wert des Index n (beispielsweise n = 0) die Produkte für alle Werte des Index k berechnet werden und man dann zum nächsthöheren Wert des Index n übergeht. Das Koeffizientenmodul 34 kann dann die für die Berechnung der Phasenfaktoren benötigten Koeffizienten c(n, k) in der Reihenfolge liefern, in der sie für die Multiplikation mit dem Phasenfaktor benötigt werden. Auch in der FFT-Stufe 42 wird jeweils bei festem n über den Index k integriert. Die rekursive Berechnung der Koeffizienten im Koeffizientenmodul 34 braucht somit je Messzyklus nur einmal durchgeführt zu werden.
-
Die Reihenfolge, in der die Berechnungen im Transformationsmodul 32 für die verschiedenen Werte von n durchgeführt werden, ist im Grunde beliebig. Es ist deshalb nicht zwingend, mit der Rekursion im Koeffizientenmodul 34 bei n = 0 zu beginnen. Beispielsweise könnte man auch bei einem Wert von n starten, der in der Nähe von Nfast/2 liegt, und dann mit zwei Rekursionsfolgen zu kleineren n und größeren n fortzuschreiten, wie in 4 schematisch gezeigt ist. Das hat zum einen den Vorteil, dass jede der beiden Rekursionsfolgen nur halb so lang ist als die Folge von n = 0 bis n = Nfast. Da sich die bei der Berechnung unvermeidlichen Rundungsfehler tendenziell im Lauf der Rekursion akkumulieren, wird durch die Verkürzung der Rekursionsfolgen eine geringere Fehlerakkumulation erreicht.
-
Ein weiterer Vorteil dieser Vorgehensweise ergibt sich daraus, dass die transformierten Amplituden (T(n, k) im FFT-Modul 26 typischerweise mit einer Fensterfunktion multipliziert werden, die die Amplituden an den Rändern des betrachteten Zeitintervalls (bei n = 0 und n = Nfast) unterdrückt. Diese Fensterung dient dazu, Artefakte zu mildern, die sich daraus ergeben, dass die Transformation nur über ein endliches Zeitintervall ausgeführt werden kann. Wenn nun auch die Rekursion bei der Berechnung der Koeffizienten von der Mitte zu den Rändern des Zeitintervalls fortschreitet, ergibt sich der Vorteil, dass auch die akkumulierten Fehler an den Rändern des Intervalls durch die Fensterfunktion unterdrückt werden.
-
Eine Möglichkeit, die Fehlerakkumulation weiter zu unterdrücken, besteht darin, dass der Wertebereich der Indizes n in mehrere Blöcke aufgeteilt wird und dann die Rekursion blockweise vorgenommen wird, vorzugsweise wiederum von der Mitte zu den Rändern fortschreitend, wodurch sich eine weitere Verkürzung der Rekursionsfolgen ergibt.
-
5 zeigt ein Beispiel für ein Rekursionsschema bei dem der Wertbereich für den Index n (0 - 255) in zwei Blöcke unterteilt wird, die von 0 - 128 und von 129 - 255 reichen. Im Speicher 36 werden in diesem Fall zwei Sätze von Anfangskoeffizienten c(96, k) und c(160, k) gespeichert. Die Rekursion schreitet dann von diesen Anfangswerten zu den Rändern des jeweiligen Blockes fort. Die Anfangswerte bei n = 96 und n = 160 liegen jedoch nicht in der Mitte des jeweiligen Blockes, sondern sind zur Mitte des gesamten Wertebereiches verschoben.
-
Daher sind die Rekursionsfolgen, die zu n = 128 bzw. zu n = 129 fortschreiten, kürzer als die Rekursionsfolgen, die zu den äußeren Rändern n = 0 und n = 255 fortschreiten. In der Mitte des Wertebereiches ergibt sich so eine geringere Fehlerakkumulation als an den äußeren Rändern, wo die Fehler durch die Fensterung noch zusätzlich unterdrückt werden.
-
Des Weiteren kann der Fehler auch dadurch verringert werden, dass anstelle des einen Satzes von Konstanten D(k) mehrere Sätze gespeichert werden, die für unterschiedliche Schrittgrößen, d.h. unterschiedliche Inkremente des Index n vorab exakt berechnet werden. Beispielsweise, kann ein Satz D_1 (k) für Inkrement der Länge 1 und ein zusätzlicher Satz D_10(k) für Inkremente der Länge 10 verwendet werden, sodass man jede zehnte Iteration mit D_10(k) berechnen kann, und die Iterationen dazwischen mit dem D_1 (k). Damit reduziert sich auch die Anzahl der Iterationen um Faktor 10. Die Anzahl der benutzten Sätze D_i(k) und deren Staffelung kann dabei beliebig gewählt werden und richtet sich nach Genauigkeitsbedarf, Zahlendarstellung und vorhandenem Speicher.