DE3517338C2 - Anordnung zur Ermittlung des Betrags eines Vektors - Google Patents
Anordnung zur Ermittlung des Betrags eines VektorsInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/02—Digital function generators
- G06F1/03—Digital function generators working, at least partly, by table look-up
- G06F1/035—Reduction of table size
- G06F1/0356—Reduction of table size by using two or more smaller tables, e.g. addressed by parts of the argument
-
- 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/4806—Computations with complex numbers
- G06F7/4812—Complex multiplication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2101/00—Indexing scheme relating to the type of digital function generated
- G06F2101/08—Powers 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.
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) |
-
1985
- 1985-05-14 DE DE19853517338 patent/DE3517338C2/de not_active Expired - Fee Related
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 |