-
"Funktionsgenerator'9 Die Erfindung bezieht sich auf eine Schaltungsanordnung,
die. aus einer Folge mit Zahlen identifizierter Signale eine Folge mit anderen:
Zahlen identifizierter Signale bildet, derart daß die erstere Zahlenfolge die erste
Differenzfolge der letzteren Zahlenfolge ist.
-
Das Bedürfnis nach einem derartigen Funktionsgenerator besteht u.a.
dann, wenn eine periodische Funktion mit Periode T -durch eine Fourierreihe dargestellt
werden soll. Für die Koeffizienten an und bn dieser Reihenentwicklung gelten die
Formeln:
und
.wObei i. die Folge der natürlichen Zahlen 0, I , 2 9 3, durchläuft.: Eine-gute-Annäherung
an die Koeffizienten an und. bn ergibt eich-dhdurch, daß die Summen der nachstehenden
Reihen_
und
genommen wird, wobei
und
ist. Die für die Berechnung dieser Summe erforderlichen-Hilfsfunktionen sind durch
ihre Argumentwerte
bestimmt.
-
Dabei ist n einer der Werte 0, 1, 2, 3: ..und durchläuft i die Werte
0, 1, 2, ..... N. Die Erfindung bezweckt, einen Funktionsgenerator zu schaffen,
mit dem u.a. mit vorstehenden Argumentwerten identifizierte Signale erzeugt werden
können und der dadurch gekennzeichnet ist, daß er die folgenden Teile enthält: einen
Taktimpulsgenerator, einen Impulsteiler, einen Addierer, ein erstes Register zum
Speichern der Zahlen der ersten Folge und ein zweites Register zum Speichern der
Zahlen der zweiten Folge, welche Teile derart geschaltet sind, daB die vom Taktimpulsgenerator
gelieferten Taktimpulse dem Addierer und dem Impulsteiler zugeführt werden, während
die vom Impulsteiler gelieferten Impulse dem ,zweiten Register zugeführt werden,
wobei der Impulsteiler derart ausgebildet ist, daB keiner der von ihm gelieferten
Impulse mit einem Taktimpuls zusammenfällt, wobei der Addierer dadurch auf den Empfang
eines Taktimpulses anspricht, daB er die Summe der anfangs in den-beiden-Registern
gespeicherten Zahlen bildet und dann die anfangs im zweiten Register gespeicherte
Zahl durch diese Summe ersetzt,, während .sich das erste Register dabei in einem
Zustand befindet:, in dem es eine neue Zahl aufnehmen kann, und wobei-das zweite-Register-dadurch
auf den -Empfang eines Impulses des=Impulsteilers anspricht, daß es in: einen bestimmten
Sand springt. _ -Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt
und wird im folgenden näher beschrieben. Es zeigen. -_ Fig.. 1 das: Blockschaltbild
eines ersten Beispiels eines
Funktionsgenerators gemäß der Erfindüng. |
Fig. 2 und -3 Diagramme zur Erläuterung der Wirkungsreise
des |
Funktionsgenerators nach Fig. 1, |
Fig: 4 das Blockschaltbild eines zweiten Beispieles eines |
erfindungsgemäßen Funktionsgenerators, |
Fig. ein Diagramm zur Erläuterung der Wirkungsweise des |
Funktionsgenerators nach Fig. 4. |
Es sei weiter bemerkt, daß,-wenn m eine natürliche Zahl ist, |
unter _m.(mod. N) der Rest der Divi=sion von m durch N verstan-, |
den -wird. -Ist z:;B. N = 16, so ist 19.(.mod 16) _ 3, 37.,(möd
16) |
5, usw: |
In Fig. 1 bezeichnet 1 einen Taktimpulsgenerator, 2 einen Im |
Pulsteiler, 3 ein erstes Register, 4 einen Addierer und 5 |
ein zweites Register. Diese Teile sind in der mit-Hilfe aus- |
gezogener Linien angegebenen Weise miteinander verbunden. Wie |
aus der Figur ersichtlich ist, werden die vom Taktimpulsgene- |
rator 1 gelieferten Impulse dem Impulsteiler zugeführt; der
nur |
ei=nen festen Bruchteil der vom Taktimpulsgenerator geliefer= |
ten Impulse durahläßt. Die vom Taktinpulsgenerator gelier |
ferten Impulse werden auch als Steuerimpulse der -Addier- . |
schalturig 4 zugeführt. Die vom Impulsteiler 2 gelieferten |
Impulse werden als Rücksetzimpulse dem Register 5 zugeführt. |
Wenn der Addier'er 4;einen Impuls empfängt, bildet er die |
Summe der im Register 3 und im Register 5 gespeicherten Zah- |
len und überträgt ein mit dieser Summe identifiziertes Signal |
in das Register 5, wodurch die ärfangs im Register gespeicher- |
te Zahl durch diese Summe ersetzt wird, Das Register 5 rea- |
.giert dadurch auf dem Empfang eines Impulses, daB'es.in eine |
-:bestimmte,. vorzugsweiss. einstellbare Ausgangsstellung zu- |
rückspringt, Weil. der Addierer 4 die Summe der im Register
3 |
und im Register 5 gespeicherten Zahlen bilden und diese: Summe
auch in das Register 5 übertragen können"muß, muß zwischen den drei Teilen 3, 4
und 5 ein Signaltransport stattfinden können. In der Figur ist dieser durch die
mit Pfeilen versehenen Linien zwischen den erwähnten drei Teilen angegeben. Im übrigen
kann der ganze Komplex 1, 2, 3, 4 und 5 aus in der Rechenmaschinentechnik bekannten
Teilen aufgebaut werden.
-
Piga 2 zeigt, was geschieht, wenn das erste Register 3 als Zählschaltung
ausgebildet ist und die vom Impulsteiler 2 gelieferten Impulse als Zählimpulse empfängt.
Der Signaltransport zwischen- dem Impulsteiler 2 und dem Zähler 3 erfolgt dabei
über die in Fig. 1 gezeichnete unterbrochene Linie b. Weiter ist in diesem Beispiel
der Impulsteiler 2 ein Fünfteiler und springt das Register 5 beim Empfang eines
Impulses des Impulsteilers in die Lage 0 zurück. Hinter dem Buchstaben a in Fig.
2 ist eine .graphische Darstellung gezeichnet, welche die vom Taktimpulsgenerator
1 gelieferten Impulse angibt, und hinter dem Buchstaben b eine graphische Darstellung,
welche die vom Impulsteiler 2 aus diesen Impulsen abgeleitete Impulsfolge angibt.
Diese letztere Impulsfolge enthält somit einen Impuls auf jede fünf Impulse der
vom Taktimpulsgenerator gelieferten Impulsfolge. Außerdem ist der Impulsteiler so
ausgebildet, daß jeder der vom Impulsteiler gelieferten Impulse zwischen zwei aufeinanderfolgenden
Impulsen der vom Taktimpulsgenerator 1 gelieferten Impulsfolge fällt.
-
Hinter dem Buchstaben c sind die Stände des Zählers 3 angegeben. Dieser
springt aus einem in den anderen Stand zu den Zeitpunkten, zu denen der Impulsteiler
2 einen Impuls liefert. Hach Erreichen des Standes 15 springt der Zähler beim Empfang
des nächsten Impulses in den Stand 0 zurück. Der
`w 'i1@ e.i" is v .somit -ein m'odulQ-16--Zahler. - |
-.: In=der oberen Hälfte der hinter dem Buchstaben d gezeicä- |
neten=Figur sind die Stände des Registers 5 angegeben. Dieses |
Register ändert seinen Sand sowohl. zu den Zeitpunkten, zu |
denen der Taktimgulsgenerator 1 einer Impuls liefert, als |
auch -'zu den Zeitpunkten, su, denen der Impulsteiler 2 einen |
Impuls liefert. Zu der ersteren Zeitpunkten wird die anfangs |
im Register gespeicherte Zahl. um die zu diesem Zeitpunkt im |
Zähler gespeicherte Zahl vermehrt. Zia jedem der letzteren |
Zeitpunkte springt das Register in den Stand 0 zurück. Weiter |
speichert das Register-jede Zahl mo'dulo 16. |
In der unteren Hälfte der hinter dem Buchstaben d gezeich- |
neten Fi,;:ur sind ie'Zeitintervalle zwischen je zwei aufein- |
enderfolgenden vom Taktimpulsgenerator gelieferten Impulsen |
durch c:uadratische Felder angegeben. Die Felder, die den |
Zeitintervallen entsprechen, in denen der Impulsteiler 2 einen |
Impuls liefert und. das Register somit in den Stand 0 zurück- |
springt, sind durch ein Kreuz markiert. Die Felder zwischen. |
zwei aufeinander folgenden mit einem Kreuz markierten Feldern |
sind durch die Buchstaben f:X und 6 angegeben: Diese |
Zeitintervalle werden als Phasen bezeichnet. |
Aus der 'Figur geht hervor, aaß das Register während der Pha- |
V.( |
se o( nacheinander die Werte s -- 0, 19 2,. 39 4 |
9 109 1112) 'l#, 1.4, .15e 0" während der Phase
ß die werte |
s °: 0q 2, .4,= 69 81, 10, 12$ 14, 0, 24,
6, 8, 10', 12, 14, 0e |
wahrend der Phase die Werte s =- 0, 3,, 69, 9,
12, 159 21, 5, 8, |
119 -14, 1 i 4f 7,-::I 10`t 13 p 0 und während der Phase
4i'#'die Werte |
03 49 8, 49 8t 12, 0, 4, 89 12, 0 angibt: Esc |
stellt sch somit heraus, daß das Register 5 während der Pha- |
een o(.. s uriü d.e Werte |
n(mod 16)#2 n (md 16), 3 n (mod 16) und 4 n (mod -16)
liefert, |
wobei n
die Werte 0, 1, 2,. ...a.o.s..,
15 durchlauft.
Es darauf hingewiesen, daß das Verhalten der im Register 5 gespeicherten Zahlen
in den Phasen cc , f3
, j' und: C als Funktion der Zeit dem Verhalten der
Argumente der Funktionen:
als Funktion der Zeit entspricht.
-
Fig. 3 zeigt, was geschieht, wenn das erste Register 3 als Zählschaltung
ausgebildet ist und die vom Zeitimpulsgenerator 1 gelieferten Impulse als Zählimpulse
empfängt. Der Signaltranspört zwischen dem Taktimpulsgenerator 1 und dem Zähler
3 erfolgt jetzt über die strichpunktierte Linie a in Fig. 1.
-
Das Register 5 springt beim Empfang eines Impulses des Impulsteilers
in den Stand 16, während der Zähler 3 beim Empfang eines Impulses des Impulsteilers
in den Stand 3 springt. Weiter ist in diesem Beispiel der Zähler ein modulo-32-Zähler,
während das Register 5 jede Zahl modulo 32 registriert.
-
Hinter dem Buchstaben a in Fig.:3 ist eine graphische Darstellung
gezeichnet, welche die vom Täktimpulsgenerator 1 gelieferten Impulse angibt,.wobei
auf der waagerechten: Achse die Rangnummer n der Taktimpulse abgetragen ist. Hinter
dem Buchstaben b in Fig,. 3 ist eine graphische Darstellung gezeichnet, welche die
vom Impulsteiler 2 aus den Taktimpulsen ab" -geleitete Impulsfolge angibt. Diese
letzte Impulsfolge enthält somit einen Impuls auf -jede vierzehn Impulse der vom
Taktimpulsgenerator_gelieferten Impulsfolge. Außerdem ist der Impulsteiler 2 so
ausgebildet, ciaß jeder der vom Impulsteiler geliefert-eil:Impülse zwischen zwei
aufeinanderfolgenden Impulsen.der-.vom-Taktimpulsgerierator 1 gelieferten lmpulefolge
fällt.
Hinter dem Buchstaben c in Fig. 3 sind die Stände
des Zählers 3 angegeben. Dieser springt in den Stand 3 zu den Zeitpunkten,
zu denen der Impulsteiler 2 einen Impuls liefert. 7,'u den Zeitpunkten, zu denen
der Taktimpulsgenerator 1 einen Impuls liefert, springt der Zähler 3 in den um 2
höheren Stand: Hinter dem Buchstaben d in Fig. 3 sind die Stände des Registers 5
angegeben: Dieses Register ändert seinen Stand -sowohl zu den Zeitpunkten, zu denen
der Taktimpulsgenerator 1. einen Impuls liefert, als auch zu den Zeitpunkten, zu
denen der Impulsteiler 2 einen Impuls liefert. Zu den ersteren Zeitpunkten wird.
die anfangs im Register gespeicherte Zahl um die zu diesem Zeitpunkt im Zähler gespeicherte
Zahl vermehrt. Zu ,jedem der letzteren Zeitpunkte springt das Register in den Stand
16 zurück.
-
Aus der Figur ist ersichtlich, daß der Zähler 3 zwischen dem ersten
und den: vierzehnten Taktimpuls nacheinander die Werte s = 5, 7, 9, 11, 13, 15,
17, 19, 21, 23, 25, 27, 2.9 angibt, während das Register 5 zu den gleichen Zeitpunkten
die werte r = 21, 28, 5, 16, 29, 12, 16, 5; 2;8, 21, 16, 13
angibt. Es stellt sich.somit heraus, daß der Zähler 3 zu den erwähnten Zeitpunkten
den Wert s = (2 n + 3) . mod 32 liefert, wobei n nacheinander die Werte 1, 2, 3,
`4, 5, 6, 7,: 8, 9, 10, 11, 12, 13, 14 durchläuft. Das Register 5 liefert zu den
erwähnten Zeitpunkten den Wert . r = (n2 + 4 n + 16) # mod 32 Im allgemeinen kann
di-e Schaltung dadurch auf die Lieferung nes Polynoms zweiten Grades r - (n2 + b
n + c) eingestellt
werden, daß man den Zähler 3 und das Register 5 nach Empfang.` eines Impulses des
Impulsteilers 2 in den Stand .(b - 1) bzw.
-
c zurückspringen.läßt, während der Zähler 3 und-das Register 5 die
Zahlen mod -(o@ c) registrieren, wobei « eine natijX..liche Zahl ist.
Es
sei bereits hier darauf hingewiesen, däß das Verhalten der im Register 5 gespeicherten
Zahlen als Funktion der Zeit dem Verhalten des Arguments der Funktion
als Funktion der Zeit entspricht.
-
In Fig. 4 ist 1 ein Taktimpulsgenerator, 2 ein Impulsteiler, ein erster
Addierer, 7 ein zweiter Addierer, 4 ein Zähler, 3 ein erstes-Register und 5 ein
zweites Register. Diese Teile sind in der mit ausgezogenen Linien angegebenen Weise
miteinander verbunden. Wie aus der Figur ersichtlich ist, werden die vom Taktimpulsgenerator
1 gelieferten Impulse dem Impulsteiler zugeführt, der nur einen festen Bruchteil
dieser Impulse durchläßt. Sie werden auch als Steuerimpulse den Addierern 4 und
7 und als Zählimpulse dem Zähler 6 zugeführt. Die vom Impulsteiler 2 gelieferten
Impulse werden als Rücksetzimpulse den Registern 3 und 5 und dem Zähler 6 zugeführt.
Wenn der Addierer 7 einen Impuls empfängt, bildet er die Summe der im Zähler 6 und
im Register 3 gespeicherten Zahlen und überträgt ein mit dieser Summe -identifiziertes
Signal in das Register 3, wodurch die anfangs im Register 3 gespeicherte Zahl durch
diese Summe ersetzt wird. Wenn der Addieren 4 einen Impuls empfängt, bildet er die
Summe der in den Registern 3 und 5 gespeicherten Zahlen und überträgt ein mit dieser
Summe identifiziertes Signal in das Register 5, wodurch die anfangs im Register
5 gespeicherte Zahl durch diese Summe ersetzt wird. "D er Zähler 6 und die Register
3 und 5 sprechen dadurch auf den Empfang eines Impulses des Impulsteilers 2 an,
daß sie in einen bestimmten, vorzugsweise einstellbaren Ausgangss.tand springen.
Der Zähler 6 spricht dadurch auf den Empfang eines Impulses des Taktimpulsgenerators
1 an, daß er in einen um_6 höheren Stand springt. Weil der Addieren 7
die
Summe der im Register 3 und im Zähler 6 gespeicherter Za.hlen und der Addierer 4
die Summe der im Register 3 und im Register 5 gespeicherten Zahlen bilden müssen,
muß zwischen den erwähnten Teilen 69 7, 3, 4 und 5 ein Signaltransport stattfinden
können. In der Figur ist dies durch die mit Pfeilen versehenen Linien zwischen diesen
Teilen angegeben. 1^#feiter kann der ganze Kömpleir 19 29 3, 4, 5, 6 und 7 aus in
der Rechenanlagetechnik bekannten Teilen aufgebaut werden. fig. 5 zeigt, was geschieht,
wenn der Impulsteiler 2 ein Sechzehnteiler und der Teiler .6 ein modulo-32-Zähl.er
ist, während die beiden Register 3 und 5 die Zahlen modulo 32 speichern. Hinter
dem Buchstaben a in Fig. 5 ist eine graphische Darstellung gezeichnet,: welche die
vom Taktimpulsgenerator 1 gelieferten Impulse angibt, und hinter dem Buchstaben
b eine graphische Darstellung, welche die vom Impulsteiler 2 aus diesen Impulsen
abgeleitete Impulsfolge angibt. Die letztere Impulsfolge enthält somit einen Impuls
auf jede sechzehn Impulse der vom Taktimpulsgenerator gelieferten Impulsfolge. Außerdem
ist der Impulsteiler so ausgebildet, daß jeder der vom Impulsteiler gelieferten
Impulse zwischen zwei aufeinanderfolgenden Impulsen der vom Taktimpulsgenerator
1 gelieferten Impulsfolge fällt: Weiter ist der Addierer 4 so ausgebildet, daß-
er beim-Empfang eines. Taktimpulses des Generators 1 die Summe der in den- Registern
-3 und 5 gespeicherten Zahlen bildet,-.nachdem der Addierer 7 beim Empfang des gleichen
Taktim-Pulses die Summe der im. Zähler 6 und im Register 3 gespeicherte tau Zahlen
gebildet hat.
-
Hinter dem Buchstaben c sind die Stände des Zählers 6 argegeben. Diese
springt in den Stand 2 zu den Zeitpunkten, zu denender Impulsteiler 2 einen Impuls
liefert. Zu den Zeitpunktenf. zu denen der Taktimpulsgenerator 1 eine Impuls lieferte
springt der Zähler 6 in den um 6 höheren Stand. Hinter y Buchstaben d sind di:e
Stände des Registers 3 angegeben.
Dieses Register ändert seinen
Stand sowohl zu den Zei ten, zu denen der Taktimpulsgenerator 1 einen Impuls la.e
f c@. als auch zu den Zeitpunkten, zu denen der Impulsteiler 2 einen Impuls liefert.
Zu den ersteren Zeitpunkten wird die anfangs im Register gespeicherte Zahl um die
zu diesem Zeitpunkt im Zähler 6 gespeicherte Zahl vermehrt. Zu jedem der letzteren
Zeitpunkte springt das Register 3 in den Stand 1 zurück. Hinter dem Buchstaben e
sind die Stände des Registers angegeben. Dieses Register ändert seinen Stand sowohl
zu den Zeitpunkten, zu denen der Taktimpulsgenerator 1 einen Impuls liefert, als
auch zu den Zeitpunkten, zu denen der Impulsteiler 2 einen Impuls liefert. Zu den
ersteren Zeitpunkten wird die anfangs im Register gespeicherte-Zahl um die zu diesem
Punkt im Register 3 gespeicherte Zahl vermehrt. Zu jedem der letzteren Zeitpunkte
springt das Register in den Stand 16 zurück.
-
Aus der Figur ist ersichtlich, daB der Zähler 6 zwischen dem ersten
und dem sechzehnten Taktimpuls nacheinander die Werte s = 8, 14, 20,-26, 0, 6, 12,
18, 24, 30, 4, 10, 16, 22
und 28 angibt. Der Zähler 6 gibt zu den erwähnten
Zeitpunkten den Wert - S - (6-n + 2) # möd 32 an, wobei n -nacheinander die Werte
1, 2, 3' 4, 5, ......., 16 durchläuft. Das Register 3 liefert zu den erwähnten
Zeitpunkten den Wert -. r = (3 n2 + 5 n + 1) # mod 32.
-
Das Register 5 liefert zu den erwähnten Zeitpunkten den Wert t-= (n3
+ 4 n2 + 4 n + 16) mod 32.
Im allgemeinen läßt sich die Schaltungsanordnung nach Fig.
4 |
dadurch auf die Lieferung eines Polynoms dritten Grades |
t = n3 + b n2 + c n + d |
einstellen, daß man den Zähler 6, das erste Register 3 und |
das zweite Register 5 nach Empfang eines Impulses des Impuls- |
teilers 2 in die Stände (2 b - 6)(1 - b + c) bzw. d zurück- |
sprngen läßt, während-der Zähler 6 und die beiden Register
3 |
und 5 die Zahlen mod (-@ d) registrieren, wobei, eine na- |
türliche Zahl ist: |