DE3517338C2 - Anordnung zur Ermittlung des Betrags eines Vektors - Google Patents

Anordnung zur Ermittlung des Betrags eines Vektors

Info

Publication number
DE3517338C2
DE3517338C2 DE19853517338 DE3517338A DE3517338C2 DE 3517338 C2 DE3517338 C2 DE 3517338C2 DE 19853517338 DE19853517338 DE 19853517338 DE 3517338 A DE3517338 A DE 3517338A DE 3517338 C2 DE3517338 C2 DE 3517338C2
Authority
DE
Germany
Prior art keywords
read
arrangement
amount
vector
memory device
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
Application number
DE19853517338
Other languages
English (en)
Other versions
DE3517338A1 (de
Inventor
Norbert Dipl Ing Fuechter
Frank Hagedorn
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Airbus Defence and Space GmbH
Original Assignee
Deutsche Aerospace AG
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Deutsche Aerospace AG filed Critical Deutsche Aerospace AG
Priority to DE19853517338 priority Critical patent/DE3517338C2/de
Publication of DE3517338A1 publication Critical patent/DE3517338A1/de
Application granted granted Critical
Publication of DE3517338C2 publication Critical patent/DE3517338C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/02Digital function generators
    • G06F1/03Digital function generators working, at least partly, by table look-up
    • G06F1/035Reduction of table size
    • G06F1/0356Reduction of table size by using two or more smaller tables, e.g. addressed by parts of the argument
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/4806Computations with complex numbers
    • G06F7/4812Complex multiplication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2101/00Indexing scheme relating to the type of digital function generated
    • G06F2101/08Powers or roots

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 Erfindung betrifft eine Anordnung zur Ermittlung des Betrags eines Vektors nach dem Oberbegriff des Patentanspruchs 1.
In der digitalen Signalverarbeitung tritt in vielerlei Anwendungen immer wieder die Aufgabe auf, die Länge R eines Vektors zu ermitteln, der durch zwei orthogonale Komponenten, beispielsweise ein Koordinatenpaar x, y innerhalb eines rechtwinkligen Koordinatensystems, gegeben ist. Dies ist identisch mit der Aufgabenstellung, die Länge der Hypotenuse eines durch die Länge der Katheten gegebenen rechtwinkligen Dreiecks zu ermitteln. Rechenalgorithmen hierfür sind durch den Satz des Pythagoras oder über die Winkelfunktionen bekannt.
In der Signalverarbeitung ist es zudem im allgemeinen nötig, das Ergebnis sehr schnell und möglichst kostengünstig zu erhalten, was rekursive Verfahren wie sie üblicherweise in Computern verwandt werden, aus Zeitgründen ausschließt.
In Betracht kommt daher nur der Einsatz von Anordnungen mit einfachen und schnellen Hardware-Komponenten, wofür Näherungsverfahren bekannt sind, bei welchen beispielsweise die Annäherung eines Kreises durch ein regelmäßiges Vieleck zugrunde gelegt wird. Solche bekannten Anordnungen kommen zwar mit wenigen verhältnismäßig einfachen und schnellen Bauelementen aus, führen aber aufgrund der Näherung zu schlechten Fehlerverteilungen.
Aufgabe der vorliegenden Erfindung ist es daher, eine Anordnung der eingangs genannten Art anzugeben, welche schnell und mit geringem Aufwand eine deutlich bessere Fehlerverteilung zeigt.
Die erfindungsgemäße Anordnung ist im Patentanspruch 1 beschrieben. Die Unteransprüche beinhalten vorteilhafte Ausführungsformen der Erfindung.
Die besonderen Vorteile der Erfindung liegen darin, daß der Anordnungsaufbau einer exakten Berechnung entspricht, wobei Fehler allein aus Abbruchrundungen resultieren, und daß trotzdem nur wenige und sehr einfache und schnelle Bauelemente benötigt werden. Die Rundungsfehler können durch eine geringfügig größere Verarbeitungstiefe (ein oder zwei Bit größere Wortlängen) zwischen Eingang und Ausgang der Anordnung noch stark verringert werden. Durch die geringe Zahl von Bauelementen läßt sich die erfindungsgemäße Anordnung als ein einheitlicher IC-Baustein ausführen, in welchem auch noch die Mittel zur Betragsbildung und Sortierung der Vektorkomponenten enthalten sein können.
Die Erfindung ist nachfolgend an einem Beispiel unter Bezugnahme auf die Abbildungen noch veranschaulicht. Dabei zeigt
Fig. 1 eine bekannte Anordnung
Fig. 2 die Fehlerverteilung der bekannten Anordnung
Fig. 3 ein Ausführungsbeispiel der Erfindung
Fig. 4 die Fehlerverteilung der erfindungsgemäßen Anordnung.
Bei der in Fig. 1 skizzierten bekannten Anordnung werden aus den Vektorkomponenten x und y in Betragsbildnern B zunächst die Beträge der Komponenten gebildet, die anschließend in einem Sortierer S der Größe nach geordnet werden. Der größere der beiden Werte ist am Ausgang des Sortierers mit MAX, der kleinere mit MIN bezeichnet. Über Rechenoperationen wie Division, Subtraktion, Addition werden zwei Werte
gebildet, von denen der größere ausgewählt und als gesuchter Betrag R des Vektors ausgegeben wird. Der erforderliche Aufwand an Bauelementen ist gering und die Rechenoperationen einschließlich der Divisionen durch Potenzen von Zwei können sehr schnell durchgeführt werden. Nachteilig ist aber die aus Fig. 2 ersichtliche Häufigkeitsverteilung des relativen Fehlers der Ergebnisse bei dieser bekannten Anordnung. Die Werte streuen sehr stark um den exakten Wert und die Verteilung ist auch deutlich unsymmetrisch.
Bei dem in Fig. 3 skizzierten Ausführungsbeispiel der Erfindung werden wieder die Beträge der Vektorkomponenten gebildet und der Größe nach sortiert. Der größere Betrag MAX adressiert einen ersten Lesespeicher P1 der ersten Lesespeichereinrichtung L1. Auf den Speicherplätzen dieses Lesespeichers sind die Logarithmenwerte der adressierenden Werte abgelegt, so daß am Ausgang des ersten Lesespeichers P1 ein log (MAX) entsprechender Wert auftritt. In gleicher Weise adressiert der kleinere Betrag MIN den zweiten Lesespeicher P1′, an dessen Ausgang dann der negative Wert bzw. der Komplementärwert des Logarithmus des adressierenden Werts, -log (MIN), auftritt. In einem ersten Addierer A1 der ersten Lesespeichereinrichtung L1 werden die beiden Ausgangswerte der Lesespeicher P1 und P1′ addiert und als Wert V ausgegeben. Wie leicht ersichtlich ist, entspricht dieser Wert dem Logarithmus des Verhältnisses MAX/MIN.
Der von der ersten Lesespeichereinrichtung L1 ausgegebene Wert V adressiert in der zweiten Lesespeichereinrichtung L2 einen weiteren Lesespeicher P2, zu dessen Ausgabewert in einem zweiten Addierer A2 ein unabhängig von dem adressierenden Wert V konstanter Betrag K addiert wird. Die so gebildete Summe wird als Faktor F von der zweiten Lesespeichereinrichtung ausgegeben und auf einen Eingang eines Multiplizierers M gegeben. Der andere Eingang des Multiplizierers ist mit dem Maximumausgang des Sortierers S verbunden, so daß am Ausgang des Multiplizierers als gesuchter Betrag des Vektors das Produkt R=F · MAX abgreifbar ist. Wie aus den geometrischen Zusammenhängen im rechtwinkligen Dreieck bekannt ist, hängt der Faktor F damit von dem Verhältnis der Beträge MAX/MIN nach der Beziehung
ab, so daß eine eindeutige Zuordnung zwischen dem Eingangswert
und dem Ausgangswert F der zweiten Lesespeichereinrichtung L2 besteht. Der Wertebereich von F geht von F=1 bis F=. Um die im Lesespeicher P2 für die gespeicherten Werte F′ verfügbare Wortlänge optimal ausnützen zu können, umfassen diese einen verschobenen Wertebereich von F′=0 bis F′=-1. Durch Addition eines konstanten Betrags K=1 werden die gespeicherten Werte auf die für die Multiplikation erforderlichen Werte F angehoben. Dies wird bevorzugterweise in der Art realisiert, daß zu den Ausgangswerten des Lesespeichers L2, die beispielsweise in einer Wortlänge von N-1 Bits vorliegen, ein weiteres nächsthöheres Bit zugefügt wird, das immer auf logisch 1 (HIGH) gesetzt wird. Der Einsatz eines Addierers als separate Signalverarbeitungsstufe kann dadurch vorteilhafterweise entfallen.
Durch die Abbruchrundung in den beiden Lesespeichereinrichtungen ergeben sich zwangsläufig Rundungsfehler. Diese können deutlich verringert werden, wenn die Verarbeitungstiefe zwischen Eingang und Ausgang der Anordnung geringfügig vergrößert wird, wobei bereits eine um ein oder zwei Bit größere Wortlänge eine wesentliche Verbesserung bringt. So kann beispielsweise bei einer Eingangs- und Ausgangswortlänge von 8 Bit für MAX, MIN und R die Wortlänge für die Ausgabewerte der Lesespeicher auf 9 Bit gesetzt werden.
Die Fehlerverteilung für die beschriebene erfindungsgemäße Anordnung mit 8 Bit Eingangswortlänge und 9 Bit interner Verarbeitungswortlänge zeigt Fig. 4. Die Werte sind stark um den mit größter Häufigkeit auftretenden exakten Wert konzentriert (sehr kleine Varianz). Mehr als die Hälfte der Werte liegt innerhalb eines Fehlerintervalls von ±0,1% und somit unter dem Quantisierungsfehler eines Ausgabewertes mit 8 Bit Wortlänge. Die Verteilung ist auch weitgehend symmetrisch zum exakten Wert, so daß sich die verbleibenden Fehler im Mittel nahezu aufheben (verschwindend kleiner Mittelwert). Mit weniger als 1 k Byte Speicherplatzbedarf für die Lesespeicher ist die Anordnung problemlos in einem IC-Baustein implementierbar.

Claims (5)

1. Anordnung zur Ermittlung des Betrags (R) eines Vektors der durch zwei orthogonale Komponenten gegeben ist, aus den in digitaler Form vorliegenden und der Größe nach geordneten Beträgen (MAX, MIN) der beiden Komponenten, gekennzeichnet durch eine erste Lesespeichereinrichtung (L1), die durch den größeren Betrag (MAX) und den kleineren Betrag (MIN) adressierbar ist und einen das Verhältnis (MAX/MIN) der beiden Beträge beinhaltenden Wert (V) ausgibt, durch eine zweite Lesespeichereinrichtung (L2), die durch den von der ersten Lesespeichereinrichtung ausgegebenen Wert (V) adressierbar ist und einen Faktor (F) ausgibt, und durch einen Multiplizierer (M), an dessen Eingängen zum einen der von der zweiten Lesespeichereinrichtung ausgegebene Faktor (F) und zum anderen der größere (MAX) der beiden Beträge der orthogonalen Komponenten des Vektors anliegen und an dessen Ausgang der Betrag (R) des Vektors abgreifbar ist.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die erste Lesespeicheranordnung (L1) zwei durch je einen der Beträge der orthogonalen Komponenten des Vektors adressierbare und Logarithmen dieser Beträge ausgebende Lesespeicher (P1, P1′) sowie Mittel (A1) zur Bildung der Differenz der Logarithmen enthält.
3. Anordnung nach Anspruch 1 oder Anspruch 2, dadurch gekennzeichnet, daß die zweite Lesespeichereinrichtung (L2) einen Lesespeicher (P2), dessen kleinster Ausgabewert gleich Null ist, und ein Addierglied (A2) zur Erhöhung der Ausgabewerte dieses Lesespeichers um einen konstanten Betrag (K) umfaßt.
4. Anordnung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß von der ersten Lesespeichereinrichtung (L1) bis zum Multiplizierer (M) eine gegenüber der Eingangswortlänge größere Verarbeitungswortlänge vorgesehen ist.
5. Anordnung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die gesamte Anordnung als ein einheitlicher integrierter Schaltkreis ausgeführt ist.
DE19853517338 1985-05-14 1985-05-14 Anordnung zur Ermittlung des Betrags eines Vektors Expired - Fee Related DE3517338C2 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19853517338 DE3517338C2 (de) 1985-05-14 1985-05-14 Anordnung zur Ermittlung des Betrags eines Vektors

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19853517338 DE3517338C2 (de) 1985-05-14 1985-05-14 Anordnung zur Ermittlung des Betrags eines Vektors

Publications (2)

Publication Number Publication Date
DE3517338A1 DE3517338A1 (de) 1986-11-20
DE3517338C2 true DE3517338C2 (de) 1993-12-23

Family

ID=6270701

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19853517338 Expired - Fee Related DE3517338C2 (de) 1985-05-14 1985-05-14 Anordnung zur Ermittlung des Betrags eines Vektors

Country Status (1)

Country Link
DE (1) DE3517338C2 (de)

Also Published As

Publication number Publication date
DE3517338A1 (de) 1986-11-20

Similar Documents

Publication Publication Date Title
DE10106023A1 (de) Verfahren und Vorrichtung zur Kollisionserkennung von Objekten
DE2523860C3 (de) Vorrichtung zur digitalen, linearen Interpolation einer fabulierten Funktion
DE2058612A1 (de) Verfahren und Schaltung zur Bildung eine Reziprowertes
DE3520014A1 (de) Datenkorrelationsanordnung und verfahren zur bestimmung von anpassungen durch pseudokorrelationswerte
DE4403917C2 (de) Vorrichtung zum Berechnen einer Bit-Besetzungszählung
DE1162111B (de) Gleitkomma-Recheneinrichtung
DE2220784A1 (de) Verfahren und Anordnung zur Echtzeitverarbeitung von elektrischen Signalen
DD208499A3 (de) Mehrdimensionaler paralleler speicher
DE2212967A1 (de) Einrichtung und Verfahren zur Verwendung eines dreifeldrigen Wortes zur Darstellung einer Gleitkommazahl
DE3434777C2 (de)
EP0779585A2 (de) Digitale Signalprozessoranordnung zum Vergleich von Merkmalsvektoren und zugehöriges Betriebsverfahren
DE2720666A1 (de) Verfahren und anordnung zur geraeuschanalyse
DE3517338C2 (de) Anordnung zur Ermittlung des Betrags eines Vektors
DE3026055A1 (de) Schaltungsanordnung zur maschinellen zeichererkennung
EP0090298A1 (de) In MOS-Technik integrierter schneller Multiplizierer
EP0249279A2 (de) Digitales Filter
DE3416536A1 (de) Recheneinrichtung zur schnellen fourier-transformation
EP0721618B1 (de) Verfahren zur beschleunigten regelauswertung in einem fuzzy-inference-prozessor und vorrichtung zu dessen durchführung
DE10050589B4 (de) Vorrichtung und Verfahren zur Verwendung beim Durchführen einer Gleitkomma-Multiplizier-Akkumulier-Operation
DE3302550C2 (de)
DE2432373A1 (de) Breitband-splittingschaltung
DE4225401C1 (de) Verfahren zum Bestimmen spektraler Anteile eines Signals und Vorrichtung zur Durchführung des Verfahrens
WO2023031352A1 (de) Anordnung zur durchführung einer diskreten fouriertransformation
DE1616410A1 (de) Kanonischer Digitalfilter und Schaltung mit einem solchen Filter
DE2262873B2 (de) Schaltungsanordnung zur ermittlung der klassenzugehoerigkeit von zeichen

Legal Events

Date Code Title Description
8127 New person/name/address of the applicant

Owner name: TELEFUNKEN SYSTEMTECHNIK GMBH, 7900 ULM, DE

8110 Request for examination paragraph 44
8127 New person/name/address of the applicant

Owner name: DEUTSCHE AEROSPACE AG, 8000 MUENCHEN, DE

D2 Grant after examination
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: DAIMLER-BENZ AEROSPACE AKTIENGESELLSCHAFT, 80804 M

8339 Ceased/non-payment of the annual fee