DE1801725A1 - Digitaler Echtzeit-Fourier-Analysator - Google Patents

Digitaler Echtzeit-Fourier-Analysator

Info

Publication number
DE1801725A1
DE1801725A1 DE19681801725 DE1801725A DE1801725A1 DE 1801725 A1 DE1801725 A1 DE 1801725A1 DE 19681801725 DE19681801725 DE 19681801725 DE 1801725 A DE1801725 A DE 1801725A DE 1801725 A1 DE1801725 A1 DE 1801725A1
Authority
DE
Germany
Prior art keywords
counter
register
address
adder
bits
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.)
Granted
Application number
DE19681801725
Other languages
English (en)
Other versions
DE1801725B2 (de
DE1801725C3 (de
Inventor
Gaithersburg Don Gilbert
Cutter Joseph Thorpe
Blerkom Richard Van
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE1801725A1 publication Critical patent/DE1801725A1/de
Publication of DE1801725B2 publication Critical patent/DE1801725B2/de
Application granted granted Critical
Publication of DE1801725C3 publication Critical patent/DE1801725C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/141Discrete Fourier transforms
    • G06F17/142Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Description

IBM Deutschland Internationale Büro-Maschinen Geselhchafl mbH
JBöblingen, 7. Oktober I968 Iw-hn
Anmelde rin:
International Business Machines Corporation, Armonk, N. Y. 10 504
Amtliches Aktenzeichen:
Ne uanme ldung
Aktenzeichen der Anmelderin: Docket WA 9-67-012 Digitaler E chtzeit-Fourier-Analysator
Die Erfindung betrifft einen digitalen E chtzeit-Fourier-Analysator zur Berechnung der diskreten Fouriertransformation nach der Danielson-Lanczos- und der Cooley-Tuckey-Methode.
Die Fouriertransformation stellt ein nützliches mathematisches Werkzeug dar, um z.B. aus periodischen Signalen, welche mit starken Störungen behaftet sind, die Nutzinformation zu ermitteln. Solche gestörte Signalformen ergeben sich z.B. in der Seismographie, der Elektro-encephalographie und in der Radartechnik. Ferner findet die Fouriertransformation eine nützliche Anwendung bei der Leistungsspektrumanalyse, bei Korrelationsberechnungen, bei der Simulation von digitalen Filtern und bei der Erkennung von Flächenmustern*
809821/0960
Bis jetzt sind hauptsächlich analoge Fourieranalysatoren bekannt geworden, welche naturgemäß im Auflösungsvermögen, in der Genauigkeit und in den Anwendungsmöglichkeiten beschränkt sind. Andererseits kostet die direkte digitale Berechnung der Fouriertransformation sehr viel Rechner zeit. Es ist deshalb getrachtet worden, die für das digitale Verfahren notwendige Berechnungszeit abzukürzen und es sind hauptsächlich zwei mathematische W Verfahren bekannt, welche eine rasche Berechnung der Fouriertransformation gestatten. Dies sind der sogenannte Danielson-Lanczos-Algorithmus und der Cooley-Tuckey-Algorithmus (abgekürzt D-L und C-T). Diesen Methoden liegt eine Darstellung des Eingangs signals in diskreten Amplitudenwerten, welche gleichen Zeitabstand untereinander haben können, zu Grunde. Zum Unterschied von einer Fourier-Reihenentwicklung eines kontinuierlichen Signales und des Fourierintegrals für nichtperiodische Vorgänge spricht man hier von der diskreten Fouriertransformation. Die ge-A nannten Rechenmethoden gestatten einen Zeitgewinn im Verhältnis von
N : log N, wobei N die Anzahl der diskreten Amplitudenwerte angibt. Die
Ct
ser Gewinn in der Berechnungsseit wird möglich gemacht durch eine systematische Benützung der Berechnungsergebnisse des vorhergegangenen Berechnungsschrittes. Die Menge der diskreten Amplitudenwerte wird durch Halbierung soweit wie möglich aufgeteilt und bei der kleinsten Gruj pe mit der Berechnung begonnen. Als Rechenoperationen werden nur MuI tiplikationen und Additionen von komplexen Größen durchgeführt.
Die beiden genannten Algorithmen Sind in einem Artikel von W. T. Coch-
90982t/0960 - ' oriöinälWected
.«·» λ η in λ 1
ran "What is the fast Fourier Transform?" in IEEE Transactions, Band AU-15, Nr. 2, Juni 1965, Seiten 45 bis 55 beschrieben. Bei der Berechnung nach der C-T-Methode stehen die berechneten Koeffizienten nach dem Ende der Berechnung nicht in der richtigen Reihenfolge im Speicher. Hingegen hat diese Methode den Vorteil, daß das Ergebnis eines Berechnungsschrittes in die vorher von den Operanden besetzten Spei ehe rs te Ilen geschrieben werden kann. Es ist also kein zusätzlicher oder Zwischenspeieher nötig und für die Berechnung von m-Koeffizienten sind also nur m Speicherstellen nötig. Zum. Unterschied hiervon liefert die D-L-Methode ein Koeffizientenergebnis, wobei die Fourierkoeffizienten schon in der richtigen Reihenfolge am Ende der Berechnung im Speicher gespeichert sind. Diese Methode benötigt jedoch doppelt soviel Speicherstellen als die C-T-Methode. Da das Ordnen der Koeffizienten außergewöhnlich viel Zeit erfordert, ist bei Echtzeit-Berechnungen die D-L-Methode vorzuziehen. Falls jedoch eine extrem rasche Berechnung nicht erforderlich ist und wenig Speicherplätze zur Verfügung stehen, ist die C-T-Methode vorzuziehen.
Nach beiden Berechnungsarten sind Gleichungen der Form
ZA = C + D:--.--. W (1)
2B = C-D .,W-, . (2)
zu lösen. Gj D· und W·■ sindnormalerweise komplexe Größen.
909821/0960
WA 9-67-012
Der Erfindung liegt die Aufgabe zu Grunde, einen digitalen Echtzeit-Fourieranalysator vorzusehen, welcher die Berechnung vom Fourierkoeffizienten nach den beiden oben genannten Rechenmethoden gestattet. Beim Wechsel von einer Rechenmethode zur anderen sollen nur geringfügige Umschaltungen nötig sein.
Zur Lösung dieser Aufgabe ist die Erfindung gekennzeichnet durch Rechenwerks-Eingangsregister zur Aufnahme zweier Operanden und einer Konstanten, durch Multiplizierer zur Bildung des Produktes der Konstanten mit einem der beiden Operanden, durch Addierer, welche Teilprodukte von den Multiplizierern zu Teilen des zweiten Operanden addieren und durch Adressengeneratoren zur Erzeugung der Auslese- und Einspeicheradressen der Rechengrößen im Speicher.
Die Erfindung hat den Vorteil, eine rasche Berechnung der Fourierkoeffizienten zu gestatten und für beide geschilderten Rechenmethoden die gleichen, einfachen Einrichtungen benützen zu können. Außerdem konnten in der Erfindung Gleitkommaberechnungen weitgehend eliminiert werden. Die Multiplikation der komplexen Größen erfolgt im Festkomma unter Gebrauch von Vor- und Nachmultipliziere rn, · .
Die vorliegende Erfindung wird im folgenden anhand eines Ausführungsbeispiels und den-zugehörigen Zeichnungen näher erklärt. Es zeigen:
Fig. 1: ein allgemeines Blockdiagramm des Fourier-Analysator s
nach der vorliegenden Erfindung,
909821/0880 original inspscted
Fig. 2a: eine graphische Darstellung der Berechnung einer Achtpunktreihe, durch den D-L-Algorithmus,
Fig. 2b: eine graphische Darstellung der Berechnung einer Achtpunkt -
eihe durch den C-T-Algorithmus,
Fig. 3: eine Ausführungsform des Rechenwerks, f
Fig. 4: eine Ausführungsform des Adressengenerators für den D-L-
Algorithmus,
Fig. 5: eine Ausführungsform des Adressengenerators für den C-T-
Algorithmus,
Fig. 6: die verschiedenen Zustände, welche die in den Fig. 4 und 5 |
gezeigten Register während der verschiedenen Stufen der Berechnung einer vollständigen Achtpunktreihe einnehmen,
Fig. 7: eine Ausführungsform der Vorzeichenlogik 312 in Fig. 3,
Fig. 8: eine Ausführungsform der modifizierten Zweie rkomple men-
tierer 341 und 343 in Fig. 3,
Fig. 9: eine Ausführungsform der Skalenlogik 375 in Fig. 3,
909021/0960
Fig. 10: eine Ausführungsform der Verschiebesteuerungen 369, 371,
373 oder 374 in Fig. 3.
Fig. 1 zeigt eine Ausführungsform des Fourier-Analysator s. Dem Rechenwerk 1 werden die im Speicher 3 gespeicherten Operanden zugeführt. Aus den Operanden C, D und W werden die Größen A und B nach den oben erwähnten Formeln berechnet. Da die Größen C, D und W alle komplex sein können, werden in dem Rechenwerk die nachfolgenden Berechnungen durchgeführt:
= 1/2 CR + 1/2 DRWR - 1/2 D1W1 (3)
A1 = 1/2 C1 + 1/2 D1 WR + 1/2 DRWj (4)
BR = 1/2 CR - 1/2 DRWR + 1/2 D^1 (5)
B1 = 1/2 C1 - 1/2 D1W11 - 1/2 DRWj (6)
Für beide erwähnten Algorithmen kann das gleiche Rechenwerk verwendet werden.
Es ist gezeigt worden, daß der höchste Wert eines Koeffizienten in einem bestimmten Zyklus nicht größer sein kann als ]Z mal dem höchsten Wert in einem vorhergehenden Zyklus. Bedingt durch diese Tatsache kann das Rechenwerk ohne Gleitkomma arbeiten. Es ist jedoch ein Abfühlen der . zwei werthöchsten signifikanten Bits eines Koeffizienten in jedem Zyklus
909821/0380
nötig. Wenn dieser Test negativ verläuft, wird die Größe um eine Stelle nach links verschoben (mit 2 multipliziert), wenn sie in den Speicher zurückübertragen wird und der Inhalt eines Zählers wird um 1 erhöht.
Weitere besondere Merkmale des Rechenwerkes 1 sind eine Vorschau-Zweierkomplement-Arithmetik, und eine Vormultiplikation, welche Teilprodükte bildet und in der e. rf indungs gemäßen Einrichtung eine vorteilhaf- f
te Verwendung findet.
Der Adressgenerator 2 bezeichnet die Speicherstellen, von welchen die Größen ausgelesen und zum Rechenwerk übertragen werden sollen. Ebenso gibt der Adressengenerator die Speicherstellen an, in denen die Größen nach der Berechnung wieder gespeichert werden. Diese Spei ehe rs te Ilen ergeben sich aus den Fig. 2a und 2b.
Fig. 2a zeigt eine graphische Darstellung der Berechnung von Fourier-Koeffizienten nach dem D-L-Algorithmus für 8 Einpunktreihen. -Ein direkter Amplitudenwert stellt seine eigene Einpunkt-Fourier-Reihe dar. Im ersten Zyklus der mathematischen Berechnung werden die Größen X bis X_ benötigt^ und in den Speicherstellen Ό bis 7 gespeichert. Die Hochzahl "zu "einer' Größe-gibt den mathematischen Zyklus und der Index zu der Größe den Schritt im Zyklus an. So zeigt z.B. X an, daß die Berechnung im nullten Schritt vom ersten Berechnungszyklus verläuft..
90902,1/0060.
WA 9-67-012
Von den Konstanten W wird angenommen, daß sie in den Spei eher stellen 0 bis 7 gespeichert sind; Obwohl hier also die Speiche rs te lie η 0 bis 7 zweimal verwendet wurden, ist es für den Fachmann ohne weiteres klar, wie durch Addition einer Konstanten zu einer Adresse der Bereich für die einen Größen verschoben werden kann.
W Während des ersten Zyklus wird X zu X multipliziert mit W, addiert.
11 2
Gleichermaßen wird X zu X · W addiert (Summe = X ). Während
2 2 3 2
des Zyklus 2 wird X zu X · W (Summe = X ) und X · W. (Sum-
\J L·» \J U Ct ^t
3 3
me = X ) addiert. Wenn man X in die vom Diagramm angezeigte Speiche rs te He speichern würde, würde dadurch X im Speicher überschrieben werden. Dieser Wert wird jedoch in einer späteren Berechnung noch gebraucht. Aus diesem Grunde benötigt der D-L-Algorithmus zwei Speicher. Man könnte den zweiten Speicher eventuell dadurch einsparen, daß Zwifc schenspeicher, wie z.B. Verzögerungsleitungen, vorgesehen würden.
Fig. 2b zeigt in ähnlicher· Weise die mathematische Berechnung nach dem C-T-Algorithmus. Der erste Zyklus im C-T-Algorithmus ist idenstisch
mit dem ersten Zyklus nach ύ&τη D-L-Algorithmus. Im zweiten Zyklus . wird X2 zu X2 2 · W (Summe = χ3 ) und X2 - W4 (Summe = X3 2)
addiert., Da weder X noch X nach dieser; Berechnung wieder gebraucht
3 3
werden, können die Größen X und X ' in die Speicher stellen ge: schrieben werden, worin vorher die. Größen X und X9 stangen·
Für den Speicher 3 kann jede beliebige Konstruktion verwendet werden. Zeitgeber- und Speicher Zugriffs-Schaltung 4 müssen der Arbeitsgeschwindigkeit des Speichers 3 sowie des Rechenwerkes 1 angepaßt werden. Zeitgeber- und Zugriffs-Schaltung bilden jedoch nicht Gegenstand der vorliegenden Erfindung.
Zusammenfassend ist aus Fig. 1 ersichtlich, wie das Rechenwerk 1 und der Adressengenerator 2 mit der Zeitgeber- und Speicher-Zugriffs schaltung 4 verbunden sind. Speicher 3 ist mit der Zeitgeber- und Speicherzugriffs-Schaltung 4 verbunden. Die Schaltung 4 stellt eine Zwischenspeicherungs- und Zeitsteuerungs-Schaltung dar und dient zur Übertragung der Größen in den und von dem Speicher 3.
In Fig. 3 ist eine bevorzugte Ausführungsform des Rechenwerkes dargestellt; Ein Größenpaar C und D werden vom Speicher ausgelesen, in Realunt Imaginärteil geteilt und in den Registern 301, 303, 305 und 307 gespeichert. Der Real- und Imaginärteil der Konstante W wird in den Registern 309 und 311 gespeichert. Die Vorzeichenbits in den Registern 305, 307, 309 und 311 werden der Vorzeichenlogik 312 zugeführt. Die Vorzeichenschaltung 312 bestimmt das Vorzeichen der verschiedenen zu berechnenden Teilprodukte, D_,W_, D_W D_W_ und D_WT. Die Vorzeichen dieser verschiedenen Teilprodukte werden den Komplementiere rn 3.13, 315, 317 und 319 (Fig. 3b) zugeführt. Fig. 7 zeigt die Ausführung der Vorzeichens chaltung 312.
909821/0980
Gleichzeitig werden die signifikanten Bits, d. h. alle Bits außer dem Vorzeichenbit, der Register 309, 311 den Multiplizierern 321 und 323 zugeführt. Diese Vormultiplizierer 321 und 323 formen Partialprodukte W„, 2W_. ... 7Wn und W_, 2W_ ... 7W_. Diese Partialprodukte werden den Auswahlschaltungen 325, 327, 329 und 331 zugeführt. Die signifikanten Bits des Registers 307 werden den Auswählechaltttngen 325 und 331 zugeführt; die signifikanten Bits des Registers 305 werden den Auswahl schaltun gen 327 und 329 zugeführt. Die Auswahlschaltung -unterteilt die zugeführte binäre Zahl in Gruppen zu je 3 Bits. Diese Dreibit-Zahlen geben an, welches der von den Vormultipli zierern 321 und 323 gebildeten acht Partialprodukte in den Nachmultiplizierern 333, 335, 337 und 339 kombiniert werden sollen. In diesen Nachmultipli zier ern werden die verschiedenen ausgewählten Partialprodukte von Wn mit der erforderlichen Potenz von 2 multipliziert und ergeben kombiniert das resultierende Produkt.
Z.B. wird angenommen, daß der Inhalt des Registers 307, D0, 11011100110 sei. Die Auswahlschaltung 325 und 331 formt aus dieser 12-Bitzahl vier getrennte Dreibitzahlen (110; 111; 001; 110). Jede dieser Dreibit-Zahlen wird dazu verwendet, ein entsprechendes Partialprodukt (d.h. 6W_.; 7W„;
Jx Jx"
W und 6W_) vom Vormultipli zierer auszuwählen. Der Nachmultipli zierer RR
333 bildet aus diesen vier Teilprodukten das vollständige Resultatprodukt:
DRWR s 6WR - 29 + 7WR * 26 +..WR · 23 + 6WR · 2° (7)
98^1/096 0
Die oben beschriebene Kombination vom Vorrmiltiplizierer, Auswählechaltong und Nachmultipli zierer stellt eine bevorzugte Ausführungsform'dar. Es ist jedoch ohne weiteres ersichtlich, daß auch andere Kombinationen gewählt werden können und z.B. der Nachmultiplizierer eingespart werden kann.
Die von den Nachmultipli zierern 333, 335, 337 und 339 berechneten Pro- f
dukte können entweder positiv oder negativ sein. Diese Produkte werden den Komplementierern 313, 315, 317 und 319 zur Berücksichtigung des Vorzeichens zugeführt. Abhängig von der Anzeige der Vorzeichenschaltung 312 erzeugen die Komplementierer 313, 315, 317 und 319 gegebenenfalls ein Einerkomplement der verschiedenen Produkte. Die Ausgangsgrößen der Komplementierer sind dann brauchbar für eine Addition zu anderen Produkten, wodurch schließlich" der gewünschte Koeffizient A und B berechnet wird. ι
Die Aus gangs signale der Vorzeichenschaltung 312 werden auch den modifizierten Zweierkomplementierern 341 und 343 zugeführt. Da die Komplementierer 313» 315, 317 und 319 ein Einerkomplement erzeugen, ist eine Korrektur nötig, wenn diese Ausgangsgrößen zu einer größeren positiven Zahl addiert werden und somit sich eine .um 1 zu klein« Summe ergibt. Diese Korrektur wird in den modifizierten Zweierkomplementierern 341 und 343 durchgeführt. Die Komplementierer 341 und 343 addieren die Anzahl von Einerkomplementen, welche von den Komplementierern 313, 315,
317 und 319 erzeugt wurden. Diese Anzahl der Komplemente ist nicht nur abhängig von den ursprünglichen Vorzeichen der verschiedenen Faktoren, . welche miteinander multipliziert das Endprodukt ergeben, sondern auch von den Vorzeichen der verschiedenen Addenden in den Gleichungen (2) bis (6). Als Beispiel soll die Berechnung von A1 betrachtet werden, wenn
C* und D1 negative Größen und T*., W1 und W* positive Größen sind. K. Jx 1 I Κ.
Gleichung (1) kann wie folgt entwickelt werden, wobei ein Querstrich das Einerkomplement angibt:
A*R = 1/2 (-C>R) + 1/2 (-D'jjfwy - 1/2
= 1/2 (C tR + 1) + 1/2 (DRWR + 1) + 1/2 (D^ + 1)
. = 1/2 (C> + 3) + (DRWR) +(D1W1) · (8)
Aus Gleichung (8) ist ersichtlich, daß 3 zur Einerkomplement-Endsumme addiert werden muß, um die doppelte wahre Summe zu erhalten.
Diese Korrekturzahl wird zum Einerkomplement der Register 301 und 303 durch die modifizierten Zweie rkoraplementie rer 341 und 343 addiert. Jeder der modifizierten Zweierkomplementierer hat zwei Aiisgänge, einen Ausgang zu jedem zugehörigen Addierer 345, 347, 349 und 351. Ein Eingang des Addierers 345 wird also gebildet vom Ausgang des modifizierten Zweierkomplementierers 341 und weitere Eingänge von Ausgängen der Komplementierer 313 und 317, der andere Ausgang des modifizierten Zweierkomplementiere rs 341 sowie die Ausgänge der Komplementierer 313 und
90 9821/0980
317 bilden die Eingänge zum Addierer 347. Ähnlich bildet ein Ausgang des modifizierten Zweierkomplementierers 343 mit Ausgängen von den Komplementierern 315 und 319 die Eingänge zum Addierer 349; der andere Aus-' gang des modifizierten Zweierkomplementierers 343 sowie die Ausgänge von den Komplementierern 315 und 319 bilden die Eingänge zum Addierer 351. Die Addierer 345, 347, 349 und 351 erzeugen entsprechend die Ausgangsgrößen 2A , 2B , 2A und 2 BT. Diese Ausgänge werden den Zwei- i Κ. K. II ' ~
erkomplementierern 353, 355, 357 und 359 zugeführt.
Da die von den Addierern 345, 347, 349 und 351 gebildeten Summen zweimal den wahren Koeffizienten darstellen, ist eine Teilung durch 2 nötig. In der bevorzugten binären Ausführungsform wird diese Division durch geeignete Auswahl de. Leitungen zwischen den Addierern 345, 347 und 351 und den Komplementierern 353, 355, 357 und 359 durchgeführt, d.h. die Größen werden um eine binäre Stelle nach rechts verschoben. *
Die zuletzt genannten Komplementierer erzeugen ein Zweierkomplement (vollständiges Komplement) der Ausgangsgrößen der zugehörigen Addierer, wenn ein solches Komplement nötig ist. Da bei der Zweierkomplementbildung normalerweise ein Addierer gebraucht wird (jedes Bit wird invertiert und eine 1 wird addiert), können die Komplementierer 353, 355, 357 und 359 die Summe abrunden, ohne zusätzlichen Zeitverlust für ein mögliches Durchlaufen des Übertrags. Die Ausgänge der Komplementierer 353, 355, 357 und 359 werden den Schieberegistern 361, 363, 365 und 367 zu-
909821/0960
geführt.
Die Konstruktion eines modifizierten Zweierkomplementierers wird in Fig. 8 gezeigt. Der Aufbau der Vorzeichenschaltung 312 wird in Fig. 7 gezeigt.
P Der vollständige Inhalt der Register 361, 363, 365 und 367 wird der Verschiebesteuerung 369, 371, 373 und 374 zugeführt. Eine genaue Beschreibung dieser Verschiebe Steuerungen wird in Fig. 10 gegeben. Die zwei werthöchsten Bits in diesen'zuletzt genannten Schieberegistern werden auf ■die Skalenbestimmungsschaltung 375 gegeben. Eine genaue Darstellung der Skalenbestimmungsschaltung 375 ist in Fig. 9 gegeben.
Aus Fig. 9 ist ersichtlich, daß die Eingänge von jedem der Register 361, fc 363, 365 und 367 mit den Invertern 976 bis 983 verbunden sind» Die Ausgänge dieser Inverter bilden die Eingänge zu einer Nicht-Und-Schaltung 985. Der Ausgang der Nicht-Und-Schaltung 985 bildet einen Eingang zu einer Verriegelungsschaltung 987. Der andere Eingang zur Kippschaltung 987 wird von einer Taktpulsschaltung gebildet. Die Kippschaltung 987 hat zwei Eingänge, zwei Ausgänge und zwei Steuer leitungen. Diese beiden Steuerleitungen sind in Fig. 9 mit Taktpuls- und Rückstellung bezeichnet. Nach der Rückstellung erzeugt die Kippschaltung 987 an dem unteren Ausgang eine logische "1". Der Taktpuls gibt den Stand der Kippschaltung 987 auf die Ausgangsleitung. Der obere und der untere Ausgang der
909821/0980
Kippschaltung 987 bilden den oberen und den unteren Eingang zu einer anderen Kippschaltung 989- Der obere Ausgang der Kippschaltung 987 bildet außerdem einen Eingang zur Nicht-Und-Schaltung 991. Der andere Eingang zur Nicht-Und-Sehaltung 991 wird von einem Rückstellimpuls gebildet, welcher der Überlaufpuls des binären Zählers 401 ist, wie unten im. Zusammenhang mit Fig. 4 noch beschrieben wird. Der Ausgang des Nicht-Und-Gliedes 991 bildet den Eingang zu einer Inverterschaltung 993, "
deren Ausgang den Eingang zum Zähler 995 bildet.
Der Überlaufpuls vom binären Zähler 401 bildet außerdem den Eingang zu einem Inverter 997, dessen Ausgang mit dem Rückstelleingang der Kippschaltung 987 verbunden ist. Der Überlaufpuls 1 bildet außerdem den Taktpulseingang für die Kippschaltung 989. Der obere und der untere Ausgang der Kippschaltung 989 bilden den Nicht-Schieben- und den Schieben-Eingang zur Verschiebesteuerung 369, 371, 373 und 374. i
Normalerweise, wenn die beiden werthöchsten Bits in den Registern 361, 363 und 365 und 367 11O" sind, erzeugen die Inverter 976 bis 983 alle ein Ausgang s signal. Dadurch entsteht am Ausgang des Nicht-Und-Gliedes kein Aus gangs signal, die Kippschaltung 987 steht auf "0" und auch die Kippschaltung 989 auf "0". Aus Fig. 10 ist ersichtlich, daß die Verschiebesteuerungen 369, 371, 373 und 374 den Inhalt der Register 361, 363, 365 und 367 um ein Bit nach links verschieben und den Inhalt des Zählers 995 um 1 erhöhen.
909821/0960
Wenn jedoch eines der Register 361, 363, 365 und 367 eine"}" in einem der beiden werthöchsten Bits enthält, erzeugt die Nicht-Und-S chaltung 985 eine "1". Nach Erscheinen des Täktpulses speichert die Kippschaltung· 987 also eine "1". Wenn der Rückstellpuls 1 anliegt, zeigt die KipEs chaltung 989 eine "1", und ein Nicht-S hie be η-Impuls wird zur "Ve rs chiebe steue rung 369, 371, 373 und 374 gesendet. Ebenso stellt der Rückstellpuls 1 die P Kippschaltung 987 zurück, so daß eine "0" darin gespeichert ist. Gleichzeitig mit dem Rückstellimpuls 1 geht der Ausgang des Nicht-Und-Gliedes 991 auf Null und wird.der Zähler 995 um 1 weitergeschaltet.
Der Zähler 995 enthält,also am Ende der vollständigen Berechnung der Fourier-Koeffizienten die genaue Anzahl der erfolgten Verschiebungen. Aus dieser Anzahl kann leicht der Stellenwert der Koeffizienten berechnet werden. Mit Ausnahme der im Zusammenhang mit Fig. 9 beschriebenen Funkfe tionen benützt die erfindungsgemäße Einrichtung also ein festes Komma.
In Fig. 10 ist eine bevorzugte Ausführungsform der Ve rs chie be steue runge η 369, 371, 373 und 374 gezeigt. Als Beispiel soll die Schaltung 369 dargestellt werden. Das werthöchste Bit des Registers 361 bildet einen Eingang zum Nicht-Und-Glied 901. Der andere Eingang zum Nicht-Und-Glied 901 wird von der Nicht-Schieben-Leitung von der Skalenbe Stimmung s schaltung (Fig. 9) gebildet. Das bis auf eins werthöchste Bit (MSB-I) bildet einen Eingang zum Nicht-Und-Glied 903; der andere Eingang wird durch die Ve rs chie be leitung von der Schaltung 375 gebildet. Die Ausgänge der Nicht-
909821/0960
tu· λ η Ln
Und-Glieder 901 und 903 bilden den Eingang zum Nicht-Und-Glied 905. Wenn ein Nicht-Verschieben-Signal anliegt, wird am Ausgang des Nicht-Und-GLiedes 905 ein Signal erzeugt, welches das werthöchste Bit darstellt. - Wenn jedoch auf der Schiebe-Leitung ein Signal 1 liegt, erzeugt die Nicht-Und-Schaltung 905 das bis auf eines werthöchste Bit.
Die Nicht-Und-GHe der 901, 903 und 905 bilden eine Bit-S chie be schaltung. Die Anzahl dieser Bit-S chie be schaltungen ist gleich der Anzahl der signifikanten Bits im Register 361. Die Schiebeschaltung 921 zusammen mit den gleichen Bit-Ver schiebe schaltungen 923, 925 .. . 927 erzeugen am Aus gang der Ve rs chiebe steuerung 369 ein Signal, welches entweder gleich ist dem Eingangssignal oder ein Signal, welches das werthöchste Bit nicht enthält, je nachdem ob ein Nicht-Vers chie ben- oder Verschieben-Signal anlie gt.
In Fig. 4 wird ein für die D-L-Variante geeigneter Adressengenerator gezeigt. Dieser besteht aus einem binären Zähler 401 mit einer Kapazität von log„ n/2 Bits. Der Inhalt des binären Zählers 401 stellt die Adresse dar, in welcher die Α-Größe gespeichert werden soll. Die Adresse, in welcher die B-Größe gespeichert werden soll, wird gebildet durch Addi-
zur Bitposition tion einer Eins von der Schaltung 4021, welche um 1 höher ist wie die größtmögliche Adresse vom binären Zähler 402. Der Generator 402 erzeugt ein Signal, welches einer logischen "1" entspricht. Der Überlauf des Zählers 401 erzeugt einen Rücksillimpuls, welcher als Rückstellpuls
909821/0960
1 bezeichnet wird und den binären Zahler 403 und das Register 405 zurückstellt. Der Inhalt des binären Zählers 401 wird um 1 erhöht für jeden Taktpuls vom Generator 407.
Der Taktpuls vom Generator 407 wird auch den Zählern 409 und 403 zugeführt. Gesteuert vom Überlaufpuls vom Zähler 401 erzeugt die Kippschaltung 411 ein Auswahlsignal für den gerade nicht gebrauchten Speicher. Der Überlaufpuls vom Zähler 401 verschiebt außerdem das Register 413 um eine Stelle, nämlich von links nach rechts. Der Inhalt des Schieberegisters 413 wird als binäre Zahl vom Vergleicher 415, vom Addierer 417 und vom Addierer 419 gelesen. Die Bitschaltung 421 empfängt das Bit, welches vom rechten Ende des Schieberegisters 413 herausgeschoben wurde und schiebt dieses Bit beim nächsten Rückstellimpuls 1 in den links gelegenen Eingang des Schieberegisters 413. Das Bit in der Bitschaltung 421 wird nicht als Bit hoher Ordnung der binären Zahl registriert, welche als im Schieberegister 413 gespeichert betrachtet wird, d.h. wenn die Bitschaltung 421 die binäre "1" enthält, wird die als im Schieberegister 413 gespeicherte binäre Zahl als 11O" betrachtet. Durchwegs fühlt der Addierer 417 das in der Bitschaltung 421 enthaltene Bit ab, d.h. wenn in der Bitschaltung 421 das binäre Bit gespeichert ist, sieht der Addierer 417 eine1!!" im höchsten Bit der Kombination von (1 + log n/2) Bits vor.
Der Inhalt des Zählers 409 erhöht sich also um 1 bei jedem Taktpuls vom Generator 407. Die im Zähler 409 enthaltene Zahl wird mit der im Schie-
909821/0960
be register 413 enthaltenen Zahl durch den Vergleicher 415 verglichen. Wenn die beiden Nummern übereinstimmen, erzeugt der Vergleicher 415 einen Rückstellpuls, den Rückstellpuls 2. Dieser Rückstellpuls 2 stellt den Zähler 409 zurück und steuert die Tor schaltungen 423 und 424.
Der Zähler 403 erzeugt die Speicheradresse, von welcher die C-Information ausgelesen wird. Die im Zähler 403 enthaltene Zahl wird dem Addierer 417 zugeführt, der auch die im Schieberegister 413 enthaltene Zahl empfängt. Die Summe dieser beiden Zahlen stellt die Adresse dar, von welcher die D-Information gelesen wird. Wenn ein Rück stellpuls 2 vom Vergleicher 415 erzeugt wird, wird die Torschaltung 423 geöffnet und auf diese Weise die vom Addierer 417 erzeugte Summe im Zähler 403 gespeichert.
Das Register 405 erzeugt die Adresse, von welcher die W -Konstante ge-
lesen wird. Der InHaIt des Registers 405 und des Schieberegisters 413 werden durch den Addierer 419 addiert. Wenn ein Rückstellpuls 2 erzeugt wird, wird der Inhalt des Registers 405 durch die vom Addierer 419 erzeugte Summe ersetzt.
Beispiel
Die Arbeitsweise des Adressengenerators wird nun im Zusammenhang mit den Fig. 4 und 6 an einem Beispiel illustriert. Fig. 6 zeigt den Inhalt der verschiedenen Register und Zähler in einer vollständigen Berechnung
909821/0960
einer Achtpunktserie nach dem. Danielson-Lanczos-Algorithmus.
Da n=8 ist, enthält der binäre Zähler 401 zwei Bits, und der Zähler '403 vier Bits; das Schieberegister 413 enthält zwei Bits und auch der binäre Zähler 409 enthält zwei Bits. Es wird angenommen, daß sich die genannten Zähler und das Schieberegister in dem in der ersten Zeile in Fig. 6 gezeigten Zustand befinden, -d.h. Zähler 401 enthält eine 0, Zähler 403 enthält auch eine 0, Schieberegister 413 enthält das gesetzte Bit in der Bitschaltung 421, das-Null angibt, und der binäre Zähler enthält eine 0.
Die Adresse, von welcher die C-Information gelesen werden soll, wird dur-ch den Zähler 403, d.h. 0, angegeben. Da sowohl das Schieberegister 413 als auch die Bitschaltung 421 eine 4 enthalten, ist die D-Adresse 4, d.h. der Inhalt des Schieberegisters 413 wird zum Inhalt des Zählers addiert. Die Adresse der Α-Größe ist 0 und die Adresse der B-Größe ist 4. Die WT,.-Adresse wird vom Register 405 angegeben, ist also 0.
Der Taktpuls generator 407 erzeugt einen Impuls, welcher eine 1 in den Zählern 401, 403 und 409 speichert. Die C- und die D-Adresse sind also 1 und 5 und die A- und B-Adressen sind 1 und 5. Da weder der Zähler 401 überläuft, noch der Vergleicher 415 ein GIeichheitssignal erzeugt, wird kein Rück Stellimpuls erzeugt. Auf ähnliche Art erhöht sich in den folgenden drei Schritten, wie in Fig. 6 gezeigt, der Inhalt der Zähler 401, 403 und 409» Die im vierten Berechnungsschritt gültigen Adressen lauten
909821/0960
wie folgt: C-Adresse 3, D-Adresse 7, A-Adresse 3, B-Adresse 7. Die Konstante W ist noch immer an der Adresse 0 gespeichert, wie durch das Register 405 angezeigt wird.
Beim, nächsten vom Generator 407 erzeugten Taktimpuls erhöht sich der Inhalt des Zählers 401 auf vier und erzeugt der Zähler also einen Überlaufpuls, wodurch sein Inhalt auf Null zurückgestellt wird. Der vom Zähler 401 erzeugte Rückstellpuls 1 stellt das Register 405 zurück, (der Inhalt des Registers bleibt also Null) das Schieberegister 413 wird um ein Bit nach rechts verschoben und speichert somit eine 2, und der binäre Zähler 304 wird auf Null zurückgestellt. Während dieses Adressen-Erzeugung sSchrittes wurden also die verschiedenen Zähler und Register zurückgestellt, so daß die nun darin enthaltenen Adressen die während des zweiten Be re chnungs zyklus notwendigen Adressen darstellen. Der nächste Rück Stellimpuls wird nach der nächsten Berechnung erzeugt. Der Taktpuls gibt eine 1 in den Zähler 409, wodurch der Inhalt des Zählers 409 und des Schieberegisters 413 auf 2 kommt. Der Vergleicher 415 zeigt Gleichheit an und erzeugt einen Rückstellpuls 2. Der Rückstellpuls 2 stellt den Zähler 409 auf 0 zurück und überträgt die vom Addierer 417 erzeugte Summe in den binären Zähle? 403. Eine 4 wird also auf den Zähler 403 gegeben, welches die Summe ist des vorhergehenden Inhalts (eine Zwei) des Zählers 403 nach dem letzten Taktpuls und des Inhaltes des Schieberegisters 413 (zwei). Ebenso wird die vom Addierer 419 erzeugte Summe (eine zwei im Register 405 gespeichert.
909821/0960
Auf ähnliche Weise durchläuft der Adressengenerator 2 alle für den D-L-Algorithmus notwendigen Adressen. Für eine korrekte Arbeitsweise ist es nur notwendig, daß der Rückstellpuls 1 Priorität hat vor dem Rückstell puls 2 und auch die anderen bereits genannten Notwendigkeiten beachtet werden. Wenn also Rückstellpuls 1 und Rückstellpuls 2 zugleich erzeugt werden, soll der Zähler 403 auf Null zurückgestellt werden und nicht die vom Addierer 417 erzeugte Summe übernehmen.
Die Adressengeneratoren, welche für den D-T- und D-L-Algorithmus notwendig sind, unterscheiden sich nur in geringem Maße,, Wie bereits erwähnt, werden beim Cooley-Tuckey-Algorithmus die an einer Speicherstelle gespeicherten Größen durch die neu berechneten Größen ersetzt (siehe Fig. 2b). Es ist also nur nowendig, die C- und D-Adressen, welche vom Zähler 403 und vom Addierer 417 erzeugt werden, sowohl zu Lese- als auch zu Einschreiboperationen zu benützen. Der Eingang zum Addierer 419 muß vom Schieberegister 413 losgetrennt werden. Als Ersatz hierfür erhält dieser Eingang eine, logische 11I". Ferner muß das Register 405 umgekehrt gelesen werden, d.h. das höchstwertige Bit muß als niederstes Bit gelesen werden und umgekehrt. Diese binäre Zahl mit Umwechslung des Stellenwertes der Bits stellt die W -Adresse dar.
Mit den oben angegebenen Modifikationen erfüllt der in Fig. 5 dargestellte Adressengenerator den in Fig. 6 dargestellten Funktionsablauf und erzeugt die für den C-D-Algorithmus benötigten Speicherstellen-Adressen. In
909821/0960
Fig. 5 wurden ähnliche Bezugszeichen verwendet wie in Fig. 4. Der Zusammenhang zwischen den in Fig. 4 und den in Fig. 5 verwendeten Bezugszeichen ist ohne weiteres deutlich.
Es wird nun Bezug genommen auf Fig. 6, Spalte C-T, Berechnung von W . Die Berechnung der Einspeicher- und Ausleseadresse ist gleich der Berechnung der Einspeicheradresse nach dem D-L-Algorithmus wie oben f
beschrieben. Als Beispibl der Berechnung der W.^-Konstante wird auf die Tabelle, Zeile 9, Fig. 6 verwiesen. Zu diesem Zeitpunkt enthält der binäre Zähler 501 0, der binäre Zähler 503 ebenfalls 0 und das Register 505 auch 0. Nach Erscheinen des Taktpulses werden die Zähler 501, 503 und 509 auf 1 erhöht. Da der Inhalt des Schieberegisters 513 und des Zählers 509 gleich sind, erscheint ein Rückstellpuls 2. Hierdurch wird die Summe des Inhaltes des Registers 505 (eine 0) und der logischen 1 im Register 505 gespeichert. Gleichzeitig wird der Inhalt des Zählers 503 j auf 2 verändert und der Inhalt des Zählers 509 auf 0. Die durch den Adressengenerator nunmehr angegebenen Speicherstellenadressen stehen in Zeile 10 der Tabelle der Fig. 6.
Fig. 7 zeigt ein Schaltungsdiagramm der Vorzeichenlogik 413. Die Vorzeichenbits des Registers 305 sind mit der Nicht-Exklusiven-Oder-Schaltung 705 und 707 verbunden; das Vorzeichenbit des Registers 307 ist verbunden mit. den Nicht-Exklusiven-Oder-Gliedern 701 und 703; das Vorzeichenbit des Registers 309 ist verbunden mit den Nicht-Exklusive η-Oder-
90982170960
Gliedern 703 und 707; schließlich ist das Vorzeichenbit des Registers .3-11-.-verbunden mit den Nicht-Exklusiven-Oder-Gliedern 701 und 705. Das Ausgangssignal der Nicht-Exklusiven-Oder-Glieder 701, 703, 705 und 707 ist verbunden mit den Invertern 709, 711, 713 und 715. Die Ausgangs signale der Inverter 709, 711, 713 und 715 sind verbunden mit den Eingängen der Komplementierer 313, 319, 315 und 317. Die Arbeitsweise der Fig. 7 ist aus dem Schaltungsdiagramm, ohne weiteres verständlich.
Fig. 8 zeigt eine bevorzugte Ausführungsform der modifizierten Zweier komplementierer 341 und 343. Im einzelnen ist der Komplementierer 341 in Fig. 8 gezeigt. Die 11 höchsten signifikanten Bits*""vom Register 303 werden dem Addierer 801 zugeführt. Hierzu wird das Signal, welches von der Vorzeichenlogik 312 zum Komplementierer 313 gesendet wird, addiert und das invertierte Signal, welches zum Komplementierer 317 gesandt wird (dieses Signal wird durch den Invertierer 803 invertiert).
Addierer 805 addiert das Komplement des Inhaltes des Registers 303, das Signal, welches von der Vorzeichenlogik 312 zum Komplementierer 313 gesandt wird und das invertierte Signal, welches von der Vorzeichenlogik 312 zum Komplementierer 317 gesandt wird. In der bevorzugten Ausführungsform werden Register verwendet, welche sowohl ein Ausgangs signal für den wahren als auch den komplementierten Inhalt abgeben. Der Ausgang des. Addierers 801 ist mit dem Eingang von Nicht-Und-Schaltungen 807 und 809 verbunden. Der Ausgang des Addierers 805 ist mit den
909821/0960
Nicht-Und-Gliedern 811 und 813 verbunden. Das Vorzeichenbit des Registers 303 wird den Nicht-Und-Schaltungen 813 und 809 zugeleitet. Schließlich wird das invertierte Vorzeichenbit des Registers 303 den Nicht-Und-' Gliedern 807 und 809 zugeleitet. Die Ausgänge der Ni cht-Und-Glieder 807 und 813 sind mit dem Ni cht-Und-Glied 318 verbunden; die Ausgänge der Ni cht-Und-Glieder 809, 811 sind mit dem Ni cht-Und-Glied 817 verbunden. Schließlich bildet der Ausgang des Ni cht-Und-Gliedes 817 einen Eingang zum Addierer 347. Die Arbeitsweise des modifizierten Zweierkomplementiere rs ist aus Fig. 8 ohne weiteres deutlich. Es soll jedoch noch ein Beispiel beschrieben werden.
Es wird angenommen, daß die Vorzeichenbits in den Registern 305, 307, 309 und 311 die Werte 0110 haben; "1" entspricht dem Vorzeichen + und "0" entspricht minus. Aus Fig. 7 ist ersichtlich, daß die Nicht-Exklusive-Oder-Schaltung 701 eine Null am Eingang empfängt und der Inverter 709 i
eine Eins am Ausgang abgibt; die Nicht-Exklusive-Oder-Schaltung 70 7 hat eine Null am Ausgang und der Inverter 715 hat eine Eins an seinem Ausgang. Angenommen, daß das Vorzeichenbit des Registers 303 eine Eins ist (positive Zahl in den signifikanten Bits), ist aus Fig. 8 ersichtlich, daß der Addierer 801 die signifikante Zahl in den Registern 303 plus einer Eins (der Ausgang des Inverters 709 plus dem invertierten Ausgang des Inverters 715) angibt. Das Vorzeichenbit desRegisters 303 bewirkt eine Vorbereitung der Ni cht-Und-Schaltung 813 und 809. Dadurch erscheint
schließlich das Aus gangs signal des Addierers 801 am Ausgang der Nicht-Und-Schaltung 817.
909821/0960

Claims (7)

- 26 - Böblingen, 7. Okt. 1968 Iw -hn PATENTANSPRÜCHE
1. Digitaler Echtzeit-Fourieranalysator mit einem Speicher und einem
Rechenwerk zur Berechnung der diskreten Fouriertransformation nach der Danielson-Lanczos- und der Cooley-Tuckey-Methode, gekennzeichnet durch Rechenwerks-Eingangsregister (301 bis 311) zur Aufnahme zweier Operanden und einer Konstanten, durch Multiplizierer (321, 323, 333 bis 339) zur Bildung des Produktes der Konstanten mit einem der beiden Operanden, durch Addierer (345 bis 351), welche Teilprodukte von den Multiplizierern zu Teilen des zweiten Operanden addieren und durch Adressengeneratoren (2, Fig. 1; Fig. 4, Fig. 5) zur Erzeugung der Auslese- und Einspeicheradressen der Rechengrößen im Speicher(3, Fig. 1).
2. Digitales Rechenwerk nach Anspruch 1 zur Berechnung der Gleichung 2A = C + D · W, worin A, C, D und W komplexe Größen sind, gekennzeichnet durch Vormultiplizierer (321, 323, Fig. 3a) zur Bildung von Partialprodukten der Größe W, durch Auswahlschaltungen (325 bis 331), welche die Bits der Größe D in Teilgruppen aufspalten und je nach numerischer Größe einer Teilgruppe von D das betreffende Partialprodukt von W Nachmultiplizierern (333 bis 339) zuführen, die die Teilprodukte mit dem richtigen binären Gewicht versehen und zu Endprodukten kombinieren und durch Addierer (345 bis 351, Fig. 3b), welche zum Produkt D . W die Größe C addieren.
909821/0960
3. Rechenwerk nach Anspruch 2, gekennzeichnet durch eine Vorzeichenschaltung (312), welche die Vorzeichen der Größe D und W berücksichtigt und modifizierte Zweierkomplementierer (341, 343) steuert, welche zur Größe C eine Korrekturzahl addieren, durch Komplementierer (313 - 319)* welche die Na chmultipli zierer (333 bis 339) mit den Addierern (345 bis 351) verbinden und durch Zweierkomplementierer (353 bis 359), welche die Addierer (345 "
bis 351) mit Rechenwerks-Ausgangsregistern (361 bis 367) verbinden.
4. Modifizierter Zweie rkomplementierer nach Anspruch 3, gekennzeichnet durch zwei Addierer (801, 805, Fig. 8), welche jeweils mit dem wahren und dem einerkomplementierten Ausgang des Registers (303) verbunden sind, durch Eingänge von der Vorzeichenlogik (312), welche direkt und über einen Inverter (803) mit dem | Addierer (801) und einem Volladdierer (804) verbunden sind, wobei der Volladdierer (804) mit dem Addierer (805) verbunden ist, und durch Torschaltungen (807 bis 818), welche die Addierer (801, 805) mit den Addierern (345, 347) verbinden.
5. Rechenwerk nach Anspruch 4, gekennzeichnet durch eine Skalenbestimmungsschaltung (375, Fig. 3d und Fig. 9), welche die zwei werthöchsten Bits in den Registern (361 bis 367) prüft und bei negativem Resultat, d.h. beide Bits sind Null, Verschiebesteue-
909 821/0960
rungs-Schaltungen (369 bis 374) so steuert, daß die in den Registern (361 bis 367) gespeicherten Zahlen vor der Rückspeiche rung in den Speicher (3, Fig. 1) um eine Stelle nach links verschoben werden.
6. Skalenbestimmnngsschaltung nach Anspruch S,. gekennzeichnet durch einen Zähler (995), welcher die Anzahl der Verschiebungen zählt und damit den numerischen Wert der berechneten Fourierkoeffizienten definiert.
7. Adressenienerator nach Anspruch 2, gekennzeichnet durch einen
ersten Zähler (401, Fig. 4) mit einer Kapazität von log» n/2 Bits,
ist ' L
wobei η gleich\der Anzahl der diskreten Amplituden des zu analysierenden Signals, durch einen zweiten Zähler (403), welcher die Adresse der Größere angibt und durch einen Über lauf puls des ersten. Zählers (401) zurückgestellt wird, durch einen dritten binären Zähler (409), durch ein Schieberegister (413) mit einer Stellenanzahl von 1 + log n/2 Bits, welches durch einen Überlaufpuls des Zählers (401) um eine Stelle weiterverschoben wird·, durch einen ersten Addierer (417), welcher den Inhalt des Schieberegisters (413) als binäre Zahl empfängt und zu dem Inhalt des zweiten binären Zählers (403) addiert, und so die D-Adresse erzeugt, durch einen Vergleicher (415), welcher den Inhalt des dritten Zählers (409) mit ,den niedersten log n/2 Bits des S>hie-
90982 1/0960
WA 9-67-02
beregisters (413) vergleicht und einen Ausgangsimpuls erzeugt, wenn Gleichheit vorliegt, durch Torschaltungen (423), welche beim Vorliegen dieses Gleichheitsimpulses den Inhalt des Addierers (417) in den zweiten Zähler (403) übertragen, und durch einen Taktpuls generator (407), welcher die binären Zähler um eine Stelle weite rs ehaltet.
8. Adressengenerator nach Anspruch 7, gekennzeichnet durch ein Register (405), welches vom ersten Zähler (401) zurückgestellt wird und die Adresse der Größe "W angibt, durch einen zweiten Addierer (419), welcher den Inhalt des Registers (405) zu den niedersten log n/2 Bits des Schieberegisters (413) addiert und durch weitere Torschaltungen (425), welche bei Vorliegen eines Gleichheitsimpulses vom Vergleicher (415) die vom Addierer (419) gebildete Summe in das Register (405) übertragen, wobei der erste Zähler (401) die Α-Adresse und diese durch einen Generator (402) um "1" erhöhte Adresse die B-Adresse angibt.
9. Adressengenerator nach Anspruch 7, gekennzeichnet durch ein Register (505, Fig. 5), welches vom ersten Zähler (501) zurückgestellt wird, durch eine Schaltung zur Erzeugung einer logischen
"1" (527), durch eine Addierschaltung (519), welche das Ausgangssignal des Generators (527) zum Inhalt des Registers addiert und durch Torschaltungen (525), welche die vom Addierer (519)
9098 21/0960
gebildete Summe in das Register (505) übertragen, wenn der Vergleicher (515) einen GIe ichhe it simpulsyer zeugt, wobei der Inhalt des Registers (505) mit umgekehrter Stellenwert-Reihenfolge die W-Adresse angibt und der Addierer (517) und der Zähler (503) bzw. die B-Adresse und die Α-Adresse angeben.
909821/0960
DE19681801725 1967-10-09 1968-10-08 Digitaler Fourier-Analysator Expired DE1801725C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US67388167A 1967-10-09 1967-10-09

Publications (3)

Publication Number Publication Date
DE1801725A1 true DE1801725A1 (de) 1969-05-22
DE1801725B2 DE1801725B2 (de) 1978-03-09
DE1801725C3 DE1801725C3 (de) 1978-11-02

Family

ID=24704469

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19681801725 Expired DE1801725C3 (de) 1967-10-09 1968-10-08 Digitaler Fourier-Analysator

Country Status (3)

Country Link
DE (1) DE1801725C3 (de)
FR (1) FR1579356A (de)
GB (1) GB1218967A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2113883A1 (de) * 1971-03-23 1972-09-28 Licentia Gmbh Peilverfahren

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3017797A1 (de) * 1980-05-09 1981-11-12 Fried. Krupp Gmbh, 4300 Essen Verfahren zum bestimmen der einfallsrichtungen

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2113883A1 (de) * 1971-03-23 1972-09-28 Licentia Gmbh Peilverfahren

Also Published As

Publication number Publication date
FR1579356A (de) 1969-08-22
DE1801725B2 (de) 1978-03-09
GB1218967A (en) 1971-01-13
DE1801725C3 (de) 1978-11-02

Similar Documents

Publication Publication Date Title
DE69821408T2 (de) Multiplikationsverfahren und -vorrichtung
DE2934971A1 (de) Datenverarbeitungssystem
DE1956209C3 (de) Multipliziervorrichtung
DE1549584C3 (de) Datenverarbeitungsanlage
DE19758079A1 (de) Verfahren und Vorrichtung zur Galoisfeld-Multiplikation
DE2658248C2 (de)
DE2803425A1 (de) Digitaleinrichtung zur ermittlung des wertes von komplexen arithmetischen ausdruecken
DE2135590A1 (de) Vorrichtung und Verfahren zur Er zeugung trigonometrischer und anderer Funktionen
DE2311220A1 (de) Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung
DE2457612A1 (de) Mikroprogrammier-steuersystem
DE2018452A1 (de) Arithmetische Einrichtung
DE2946846A1 (de) Rundungs-korrekturlogik fuer multiplizierer fuer modifizierten booth-algorithmus
DE69025182T2 (de) Digitaler prozessor für zweierkomplementberechnungen
DE3689356T2 (de) Verfahren und Schaltung zum Generieren von binären Signalen und modifizierter Bitfolge.
DE1549508C3 (de) Anordnung zur Übertragsberechnung mit kurzer Signallaufzeit
DE2729912A1 (de) Digitale signalverarbeitungsanordnung
DE3852576T2 (de) Einrichtung und Verfahren für eine erweiterte Arithmetik-Logik-Einheit zur Beschleunigung der ausgewählten Operationen.
DE2730918A1 (de) Anordnung zum multiplizieren von binaerzahlen
EP0265555B1 (de) Verfahren und Schaltungsanordnung zur Addition von Gleitkommazahlen
DE2746355A1 (de) Einrichtung und verfahren zur wahlweisen multiplikation oder division zweier als binaerzahlen vorliegender operanden
DE3340362C2 (de)
DE3434777A1 (de) Verfahren und vorrichtung zur vorzeichenerzeugung fuer einen uebertragsicherstellungsaddierer
DE69230241T2 (de) Verfahren und Anordnung zur Negierung eines Multiplikationsoperanden
DE1801725A1 (de) Digitaler Echtzeit-Fourier-Analysator
DE2712582C2 (de) DDA-Rechner (Digital-Differential-Analysator)

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee