DE1801725A1 - Digitaler Echtzeit-Fourier-Analysator - Google Patents
Digitaler Echtzeit-Fourier-AnalysatorInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/141—Discrete Fourier transforms
- G06F17/142—Fast 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:
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.
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)
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
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2113883A1 (de) * | 1971-03-23 | 1972-09-28 | Licentia Gmbh | Peilverfahren |
Families Citing this family (1)
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 |
-
1968
- 1968-09-03 FR FR1579356D patent/FR1579356A/fr not_active Expired
- 1968-09-26 GB GB4566668A patent/GB1218967A/en not_active Expired
- 1968-10-08 DE DE19681801725 patent/DE1801725C3/de not_active Expired
Cited By (1)
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 |