DE4335925C2 - Schaltungsanordnung zur Signalverarbeitung nach dem CORDIC-Verfahren - Google Patents
Schaltungsanordnung zur Signalverarbeitung nach dem CORDIC-VerfahrenInfo
- Publication number
- DE4335925C2 DE4335925C2 DE19934335925 DE4335925A DE4335925C2 DE 4335925 C2 DE4335925 C2 DE 4335925C2 DE 19934335925 DE19934335925 DE 19934335925 DE 4335925 A DE4335925 A DE 4335925A DE 4335925 C2 DE4335925 C2 DE 4335925C2
- Authority
- DE
- Germany
- Prior art keywords
- circuit arrangement
- iteration
- vector
- signal processing
- angle
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
- G06F7/5446—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation using crossaddition algorithms, e.g. CORDIC
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Description
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₀, y₀ soll
um den Winkel ϕ gedreht werden. Dazu dreht die den CORDIC-Prozeß
ausführende Schaltungsanordnung den Signalvektor (x₀,
y₀) zunächst um + oder - 90°. Der gedrehte Vektor hat dann die
Koordinaten x₁ = ∓ y₀ und y₁ = ± x₀. In n nachfolgenden
Iterationsschritten erfolgt dann eine Drehung des Vektors (x₁,
y₁) soweit bis er in möglichst guter Annäherung die
gewünschten Koordinaten xn, yn hat, welche der Drehung des
Ursprungsvektors (x₀, y₀) 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)
yi+1 = yi + aixibi (5)
wobei gilt:
ai = - 1 für yi 0
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.
Claims (3)
1. Schaltungsanordnung zur Signalverarbeitung nach dem CORDIC-Verfahren,
welche Schaltungsmittel enthält, die einen
Signalvektor mit den Koordinaten x₀ und y₀ 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 biberechnen, wobei gilt:ai = -1 für yi 0
ai = +1 für yi < 0dadurch gekennzeichnet, daß die Werte bi der Vorschriftbi = tan (90°2-i)genügen.
yi+1 = yi + aixibi
Θi+1 = Θi - ai arctan biberechnen, wobei gilt:ai = -1 für yi 0
ai = +1 für yi < 0dadurch gekennzeichnet, daß die Werte bi der Vorschriftbi = tan (90°2-i)genügen.
2. Schaltungsanordnung nach Anspruch 1, dadurch
gekennzeichnet, daß die Werte bi in einem Speicher abgelegt
sind.
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.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19934335925 DE4335925C2 (de) | 1993-10-21 | 1993-10-21 | Schaltungsanordnung zur Signalverarbeitung nach dem CORDIC-Verfahren |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19934335925 DE4335925C2 (de) | 1993-10-21 | 1993-10-21 | Schaltungsanordnung zur Signalverarbeitung nach dem CORDIC-Verfahren |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4335925A1 DE4335925A1 (de) | 1995-04-27 |
DE4335925C2 true DE4335925C2 (de) | 1997-04-03 |
Family
ID=6500678
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19934335925 Expired - Fee Related DE4335925C2 (de) | 1993-10-21 | 1993-10-21 | Schaltungsanordnung zur Signalverarbeitung nach dem CORDIC-Verfahren |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE4335925C2 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10164462A1 (de) * | 2001-12-20 | 2003-07-10 | Ihp Gmbh | CORDIC-Einheit |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19950577C2 (de) * | 1999-10-20 | 2002-08-22 | Siemens Ag | Komplexwertiges CORDIC-Verfahren für Signalverarbeitungsaufgaben sowie Funkkommunikationssystem zur Durchführung des Verfahrens |
JP3598938B2 (ja) * | 2000-04-19 | 2004-12-08 | 日本電気株式会社 | 携帯無線システム及びそれに用いる携帯無線装置並びにそれらに用いる周波数誤差推定方法 |
JP2007520009A (ja) | 2004-01-28 | 2007-07-19 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 複素位相回転に対するcordicアルゴリズムの実施 |
CN109032564B (zh) * | 2018-08-16 | 2022-12-02 | 电子科技大学 | 一种高稳定性的cordic算法实现电路 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2504102B2 (ja) * | 1988-02-17 | 1996-06-05 | 日本電気株式会社 | 逆三角関数演算装置 |
EP0365226A3 (de) * | 1988-10-17 | 1991-02-20 | Raytheon Company | "CORDIC"-Vorrichtung und Verfahren zur Annäherung der Grösse und der Phase einer komplexen Zahl |
-
1993
- 1993-10-21 DE DE19934335925 patent/DE4335925C2/de not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10164462A1 (de) * | 2001-12-20 | 2003-07-10 | Ihp Gmbh | CORDIC-Einheit |
DE10164462B4 (de) * | 2001-12-20 | 2007-04-26 | IHP GmbH - Innovations for High Performance Microelectronics/ Institut für innovative Mikroelektronik GmbH | CORDIC-Einheit |
Also Published As
Publication number | Publication date |
---|---|
DE4335925A1 (de) | 1995-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE68913499T2 (de) | Diskrete Autofokus-Einstellung für die Abbildungserzeugung in einem Radar mit synthetischer Apertur und sehr hoher Auflösung. | |
DE3432122C2 (de) | Vorrichtung zur Erzeugung der Größenwerte der Vektorsumme zweier Vektorkomponenten | |
DE2628471C3 (de) | Koordinaten-Transformationsschaltung | |
DE2311220A1 (de) | Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung | |
DE69130510T2 (de) | Arithmetisches Gerät zur Berechnung von transzendenten Elementarfunktionen | |
DE10164462B4 (de) | CORDIC-Einheit | |
DE3917059A1 (de) | Cordic-anordnung zum multiplizieren von komplexen zahlen | |
DE3034252A1 (de) | Vorrichtung zum feldorientierten betrieb einer umrichtergespeisten asynchronmaschine | |
DE2853560B2 (de) | Elektronische Schaltung zur Berechnung mehrerer Interpolationsgrößen bei der in der medizinischen Tomographie durchgeführten Bilderzeugung | |
DE69022926T2 (de) | Virtuelle Mikrophonanlage und dafür bestimmtes Verfahren. | |
DE2729912C2 (de) | Anordnung zum Erzeugen digitaler Ausgangssignalwerte | |
DE4335925C2 (de) | Schaltungsanordnung zur Signalverarbeitung nach dem CORDIC-Verfahren | |
DE3418624C2 (de) | ||
DE3038499A1 (de) | Farbisolationsverfahren | |
DE3852576T2 (de) | Einrichtung und Verfahren für eine erweiterte Arithmetik-Logik-Einheit zur Beschleunigung der ausgewählten Operationen. | |
DE19826252A1 (de) | Verfahren zur digitalen Signalverarbeitung und Anordnung zur Durchführung des Verfahrens | |
DE3915037C2 (de) | Mustergenerator | |
DE3538326A1 (de) | Anordnung zur berechnung des phasenwinkels eines summenvektors | |
DE3144188A1 (de) | Flussbestimmungseinrichtung fuer die feldorientierte steuerung einer drehfeldmaschine | |
DE69023979T2 (de) | Digitale Signalverarbeitung. | |
DE1574601A1 (de) | Sinus-Cosinus-Generator | |
DE2153347A1 (de) | Digital-Anzeige-Generator | |
DE2631073C3 (de) | Vorrichtung zur Struktur- und Textur-Analyse zumindestens eines Mediums | |
DE69131613T2 (de) | Vektorrechnergerät, welches schnell eine Berechnung auf zwei Eingangsvektoren ausführen kann | |
Yang | Transformation-density estimation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8127 | New person/name/address of the applicant |
Owner name: ROBERT BOSCH GMBH, 70469 STUTTGART, DE |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |