PatentDe  


Dokumentenidentifikation DE4335925C2 03.04.1997
Titel Schaltungsanordnung zur Signalverarbeitung nach dem CORDIC-Verfahren
Anmelder Robert Bosch GmbH, 70469 Stuttgart, DE
Erfinder Göckler, Heinz, Dr., 71522 Backnang, DE
DE-Anmeldedatum 21.10.1993
DE-Aktenzeichen 4335925
Offenlegungstag 27.04.1995
Veröffentlichungstag der Patenterteilung 03.04.1997
Veröffentlichungstag im Patentblatt 03.04.1997
IPC-Hauptklasse G06F 7/548

Beschreibung[de]

Die vorliegende Erfindung betrifft eine Schaltungsanordnung zur Signalverarbeitung nach dem CORDIC-Verfahren gemäß den Merkmalen des Oberbegriffs des Anspruchs 1.

Das bekannte CORDIC-Verfahren (Coordinate Rotation Digital Computer) ist z. B. in dem Lehrbuch "Meßtechnik in der seriellen digitalen Signalverarbeitung", M. Büttner, B. Eckhardt, G. Oetken, Erlangen 1976, S. 68-79 beschrieben. Das CORDIC-Verfahren ermöglicht es, mit sehr geringem Schaltungsaufwand Polarkoordinaten eines Signalvektors in kartesische Koordinaten und umgekehrt umzuwandeln. Ebenso können damit aus der Amplitude und der Phase eines Signals Realteil und Imaginärteil bestimmt werden. Das CORDIC-Verfahren arbeitet iterativ und erfordert an arithmetischen Operationen nur einfaches binäres Schieben und Addieren. Die Genauigkeit hängt von der Anzahl der Iterationsschritte und der verwendeten Signalwortlänge ab.

Bei dem aus der obengenannten Literaturstelle hervorgehenden CORDIC-Verfahren werden ein dem Iterationsprozeß Drehwinkelschritte Δ Θi verwendet, die sich aus der Rechenvorschrift

Δ Θi = ai arctan 21-i

ergeben, wobei i die Nummer des jeweiligen Iterationsschritts und ai die Drehrichtung angibt. Der Iterationsprozeß konvergiert mit diesem Drehwinkelkrement nicht sehr schnell bzw. liefert nur bei einer relativ großen Zahl von Iterationsschritten ein sehr genaues Ergebnis.

Der Erfindung liegt daher die Aufgabe zugrunde, eine Schaltungsanordnung der eingangs genannten Art anzugeben, die einen Iterationsprozeß mit möglichst schneller Konvergenz durchführt bzw. mit möglichst wenig Iterationsschritten ein sehr genaues Ergebnis liefert.

Erfindungsgemäß wird diese Aufgabe durch die Merkmale des Anspruches 1 gelöst. Zweckmäßige Anführungen der Erfindung gehen aus den Unteransprüchen hervor.

Anhand eines in der Zeichnung dargestellten Zeigerdiagramms wird nun die Erfindung näher erläutern.

Ein Signalvektor mit den kartesischen Koordinaten x&sub0;, y&sub0; soll um den Winkel φ gedreht werden. Dazu dreht die den CORDIC-Prozeß ausführende Schaltungsanordnung den Signalvektor (x&sub0;, y&sub0;) zunächst um + oder - 90°. Der gedrehte Vektor hat dann die Koordinaten x&sub1; = ∓ y&sub0; und y&sub1; = ± x&sub0;. In n nachfolgenden Iterationsschritten erfolgt dann eine Drehung des Vektors (x&sub1;, y&sub1;) soweit bis er in möglichst guter Annäherung die gewünschten Koordinaten xn, yn hat, welche der Drehung des Ursprungsvektors (x&sub0;, y&sub0;) um den Winkel φ entsprechen. Welche relativ einfachen Rechenoperationen der CORDIC Prozessor in jedem Iterationsschritt durchzuführen hat, geht aus der folgenden Herleitung der Iterationsgleichungen hervor. In einem (i-1)-ten Iterationsschritt wird ein Vektor mit den Koordinaten xi, yi und der Länge φi um einen Winkel Δ Θi gedreht.

Aus dieser Drehung entsteht ein neuer Vektor mit den Koordinaten xi+1, yi+1 und der Länge φi+1. Die Länge φi+1 dieses Vektor berechnet sich aus der Länge φi des vorherigen Vektors und einer vorgegebenen Tangente der Länge φi · bi:



Es gilt weiter



Aus (2) und (3) folgen:

xi+1 = xi - aiyibi (4)

yi+1 = yi + aixibi (5)

wobei gilt:

ai = - 1 für yi ≤ 0

ai = + 1 für yi < 0

Außerdem gilt für die Drehwinkel:

Θi+1 = Θi - ai Δ Θi (6)

Das Winkelinkrement wird festgelegt auf:

Δ Θi = 90° · 2-i, (7)

woraus sich für bi ergibt:



bi = tan (90 · 2-i) (8)

In (1) ist mit



ein Korrekturwert gegeben, der die Vergrößerung des Betrages eines Vektors nach einem Rotationsschritt gegenüber dem vorherigen Vektor beschreibt.

Die Betragsvergrößerung des resultierenden Vektors nach n Iterationsschritten ist dann:



Um den unverfälschten Betrag des resultierenden Vektors zu erhalten, bildet ein Multiplizierer das Produkt aus der Länge



des Vektors und dem Kehrwert 1/K des Korrekturwerts.

Die aus (8) hervorgehenden Werte bi und die Winkelinkremente Δ Θi gemäß (7) wie sie aus der untenstehenden Tabelle hervorgehen, können in einem Speicher abgelegt werden, so daß der Prozessor in jedem Iterationsschritt i auf die zugehörigen Werte bi und Δ Θi zugreifen kann.



Gegenüber dem im Stand der Technik (s. einleitend genannte Literatur) verwendeten Winkelinkrement führt das gemäß (7) verwendete Winkelinkrement zu einer erheblich schnelleren Konvergenz des Iterationsprozesses bzw. bei gleicher Zahl der Iterationsschritte zu einer höheren Genauigkeit.

Ein weiterer Effekt des hier verwendeten Winkelinkrements ist, daß die Veränderung K der Vektorlänge während des Iterationsprozesses geringer ist als beim Stand der Technik.


Anspruch[de]
  1. 1. Schaltungsanordnung zur Signalverarbeitung nach dem CORDIC-Verfahren, welche Schaltungsmittel enthält, die einen Signalvektor mit den Koordinaten x&sub0; und y&sub0; in n Iterationsschritten um einen Winkel drehen, wobei nach einer ersten Drehung des Signalvektors um ± 90° die Schaltungsmittel in jedem i-ten Iterationsschritt die Koordinaten xi+1, yi+1 und den Drehwinkel Θi+1 nach den Vorschriften:

    xi+1 = xi - aiyibi

    yi+1 = yi + aixibi

    Θi+1 = Θi - ai arctan bi

    berechnen, wobei gilt:

    ai = -1 für yi ≤ 0

    ai = +1 für yi < 0

    dadurch gekennzeichnet, daß die Werte bi der Vorschrift

    bi = tan (90°2-i)

    genügen.
  2. 2. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Werte bi in einem Speicher abgelegt sind.
  3. 3. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß ein Prozessor während der Iteration einen Korrekturwert



    berechnet und daß ein Multiplizierer das Produkt aus dem Betrag des um den gewünschten Winkel gedrehten Signalvektors und dem Kehrwert 1/K des Korrekturwertes bildet.






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com