DE2523860C3 - Vorrichtung zur digitalen, linearen Interpolation einer fabulierten Funktion - Google Patents
Vorrichtung zur digitalen, linearen Interpolation einer fabulierten FunktionInfo
- Publication number
- DE2523860C3 DE2523860C3 DE2523860A DE2523860A DE2523860C3 DE 2523860 C3 DE2523860 C3 DE 2523860C3 DE 2523860 A DE2523860 A DE 2523860A DE 2523860 A DE2523860 A DE 2523860A DE 2523860 C3 DE2523860 C3 DE 2523860C3
- Authority
- DE
- Germany
- Prior art keywords
- output
- input
- counter
- memory
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/62—Performing operations exclusively by counting total number of pulses ; Multiplication, division or derived operations using combined denominational and incremental processing by counters, i.e. without column shift
-
- 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/17—Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Algebra (AREA)
- Computing Systems (AREA)
- Complex Calculations (AREA)
- Numerical Control (AREA)
Description
erfolgt, mit einem Zähler, einem Akkumulator, einer
Speicherschaltung und einer Steuerschaltung, die einen Taktgenerator enthält, dadurch gekennzeichnet, daß der Zähler (100) auf den Wert des
Arguments (Xj), dessen zugehöriger Funktionswert (/(X3)) ermittelt werden soll, voreinstellbar ist, daß
ein Takteingang (130) des Zählers mit dem Taktgenerator verbunden ist und der Zählerstand
durch die dem Zähler zugeführten Taktimpulse schrittweise erhöht oder erniedrigt wird, daß der
programmierte Speicher (200) mit dem Zählerausgang (121 bis 124) verbunden ist, von diesem
adressiert wird und einen vom Zählerstand abhängigen Funktionswert an seinen Ausgangsanschlüssen
(201 bis 208) abgibt, der unverändert bleibt, solange der Zählerstand zwischen den beiden Argumenten
(Xi und X2) liegt, daß mit den Ausgangsanschlüssen
des programmierten Speichers der Akkumulator « (300) verbunden ist, der außerdem mit dem
Taktgenerator verbunden ist und bei jedem Taktimpuls seinen Inhalt um den vom programmierten
Speicher angelegten Funktionswert erhöht, so daß der Inhalt des Akkumulators nach einer durch die
Summe m+n bestimmten Anzahl von Taktimpulsen die Summe
η · /(X1) + m · /(X2)
ist, daß die Speicherschaltung (400) mit den Ausgangsanschlüssen (311 bis 318) des Akkumulators verbunden ist und nach Auftreten der
bestimmten Anzahl von Taktimpulsen die N-te und alle höheren Ziffernstellen des Akkumulatorausgangswerts speichert und an Ausgangsanschlüssen
(401 bis 408) als gesuchten Funktionswert ausgibt, und daß der Zähler und der Akkumulator nach
Auftreten der bestimmten Anzahl von Taktimpulsen von der Steuerschaltung zurückstellbar sind.
2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der Akkumulator (300) einen Paralleladdierer (310, 320, 330) und eine Akkumulatorspeicherschaltung (340, 350, 360) enthält, daß die
Eingangsanschlüsse des Paralleladdierers mit den Ausgangsanschlüssen des programmierten Speichers (200) einerseits und den Ausgangsanschlüssen
der Akkumulatorspeicherschaltung andererseits verbunden sind und daß die Akkumulatorspeicherschaltung einen mit dem Takteingang (130) des
Zählers verbundenen Takteingang aufweist und bei jedem Taktimpuls vom Taktgenerator den an den
Ausgangsanschlüssen des Paralleladdierers gerade anstehenden Wert speichert.
3. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Ausgangsanschlüsse des Akkumulators (300) mit den Ausgangsanschlüssen des bzw
mehrerer Paralleladdierer (320,330) des Akkumulators verbunden sind und daß die von der Summe
m+n bestimmte Anzahl von Taktimpulsen gleich m+n—I ist
4. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Ausgangsanschlüsse des Akkumulators (300) mit den Ausgangsanschlüssen der bzw.
mehrerer Akkumulatorspeicherschaltungen (350, 360) verbunden sind und daß die durch die Summe
m+n bestimmte Anzahl von Taktimpulsen gleich m+n ist
5. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß der vom
programmierten Speicher (400) an dessen Ausgangsanschlüssen (201 bis 208) abgegebene Funktionswert
der Funktionswert /(Xi) ist solange der Zählerstand des Zählers (100) größer als oder gleich dem
Argument Xi und kleiner als das Argument X2 ist
bzw. der Funktionswert /(X2) ist, sobald der
Zählerstand gleich oder größer als das Argument X2
wird, und daß der Zähler ein den Zählerstand mit jedem zugeführten Taktimpuls erhöhender Aufwärtszähler ist
6. Vorrichtung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß der vom programmierten Speicher (400) an dessen Ausgangsanschlüssen
(201 bis 208) abgegebene Funktionswert gleich /(X2) ist solange der Zählerstand des Zählers (100) gleich
oder kleiner als das Argument X2 ist und /(Xi) ist,
sobald der Zählerstand gleich oder kleiner als das Argument Xi wird, und daß der Zähler ein den
Zählerstand mit jedem Taktimpuls erniedrigender Abwärtszähler ist.
Die Erfindung betrifft eine Vorrichtung nach dem Oberbegriff des Patentanspruchs 1.
Es ist bekannt (D. D. Mc C r a c k e η, »Digital
Computer Programming«, 1957, S. 81—84) Universalrechenmaschinen zur Durchführung von Interpolationsaufgaben einzusetzen. Dabei kann vorausgesetzt werden, daß solch eine Universalrechenmaschine einen
Speicher, einen Zähler, einen Akkumulator und eine Steuerschaltung mit einem Taktgenerator enthält. Wo
es jedoch allein auf Interpolationsaufgaben ankommt, wird sich im allgemeinen der Einsatz einer Universalrechenmaschine nicht lohnen.
Aus der US-PS 37 48 447 ist eine Anordnung bekannt, mit der eine schnelle und genaue Interpolation
ausgeführt werden kann. Hierzu dient ein elektronischer Schaltkreis, dessen Funktion des eines üblichen
elektronischen Rechners ähnlich ist.
Gegenüber diesem Stand der Technik liegt die Aufgabe der Erfindung darin, eine Vorrichtung zu
schaffen, die auf einfache Weise und ausschließlich eine Interpolation nach der im Oberbegriff des Patentanspruchs 1 angegebenen Formel ausführen kann.
Diese Aufgabe wird erfindungsgemäß durch die Merkmale im Patentanspruch 1 gelöst. Die mit der
Erfindung geschaffene Vorrichtung eignet sich ausschließlich für die Durchführung einer bestimmten
Interpolationsrechnung, führt diese jedoch schnell und mit vergleichsweise sehr einfachen Mitteln zuverlässig
aus.
Bei der erfindungsgemäßen Vorrichtung ist im
programmierten Speicher eine beliebig« Funktion in tabulierter Form gespeichert, d. h. für ganz bestimmte
Argumente Xi, Xi,... enthält de; programmierte
Speicher die zugehörigen Funktionswerte /(Xi), /(X2)
etc. Wird an den Eingang dieses programmierten Speichers ein Wert angelegt, der beispielsweise das
Argument Xj darstellt, dann gibt der programmierte
Speicher an seinem Ausgang den Funktionswert /(X2) ab.
Diesem programmierten Speicher ist erfindungsgemäß ein voreinstellbarer Zähler vorgeschaltet, dessen
Ausgang den programmierten Speicher adressiert. Wird dieser Zähler beispielsweise auf den Wert des
Arguments X2 voreingestellt, dann würde der programmierte Speicher den zugehörigen Funktionswert /(X2)
abgeben. Wird der Zähler jedoch auf einen Wert voreingestellt, der ein Argument zwischen den tabulierten Argumenten Xi und Xi darstellt, dann gibt der
programmierte Speicher den Funktionswert /(Xi) für das Argument Xi oder bei einer anderen Ausführungsform der Erfindung den Funktionswert /(X2) für das
Argument X2 aus. Im ersteren Fall wird der Zählerinhalt
dann mit jedem Taktimpuls um ein bestimmtes Inkrement erhöht, so daß sich der Zählerstand dem
größeren Argument X2 annähert (im zweiteren Fall würde der Zählerinhalt mit jedem Taktimpuls erniedrigt
werden, so daß sich der Zählerstand dem kleineren Argument Xi annähert). Nach einer bestimmten Anzahl
von Taktimpulsen hat der Zählerstand den Wert des Arguments X2 erreicht, so daß nunmehr der programmierte Speicher so lange den Funktionswert f(Xi)
ausgibt, bis der Zählerstand den Wert des Arguments erreicht, dessen zugehöriger Funktionswert als nächster
gespeichert ist, es sei denn daß vorher eine Rückstellung erfolgt, wie es beim Anmeldungsgegenstand der Fall ist
Die vom programmierten Speicher ausgehenden Funktionswerte werden in den nachgeschalteten Akkumulator eingegeben. Dieser wird ebenfalls mit den
Taktimpulsen beaufschlagt und addiert mit jedem Taktimpuls zu seinem Inhalt den an seinem Eingang
anstehenden Wert vom programmierten Speicher hinzu. Bei der nachfolgend anhand der Figuren
erfolgenden Erläuterung dieses Vorgangs wird davon ausgegangen, daß im Dualcode gearbeitet wird, daß also
/4 = 2 ist. Ferner ist für diese Erläuterung willkürlich angenommen, daß
N= 4,d.h.AN = 17+ m= 16.
Unter dieser Voraussetzung wird der Zählerstand im voreingestellten Zähler (im Fall des Aufwärtszählers)
durch fünfzehn Taktimpulse erhöht und anschließend zurückgestellt. Nach Voreinstellung des Zählers auf das
Argument X3, dessen zugehöriger Funktionswert gesucht wird, und anschließend vom ersten bis zum
(n — 1 )-ten Taktimpuls gibt der programmierte Speicher
den Funktionswert für das Argument Xi aus, so daß am
Ausgang des Akkumulators nach dem (n-l)-ten Taktimpuls der mit η multiplizierte Funktionswert des
Arguments Xi erscheint Mit dem n-ten Taktimpuls
erreicht der Zählerstand den Wert des Arguments X2, so
daß der programmierte Speicher nunmehr den Funktionswert für das Argument Xi ausgibt Nach diesem
n-ten Taktimpuls beläuft sich der Inhalt des Akkumulators daher auf
Während der nun folgenden m Taktimpulse steigt der
Zählerstand des voreingestellten Zählers weiter an, ohne daß sich der Ausgang des programmierten
Speichers ändert Der Inhalt des Akkumulators wird jedoch mit jedem Taktimpuls um den Funktionswert für
das Argument X2 erhöht Nach insgesamt n+m— 1
Taktimpulsen enthält der Akkumulator daher die Summe
π - /(X1) + m ■ /(X2)-
Der nächste, d.h. der (n+m)-te Impuls führt zu einer
Rückstellung der Schaltung. Vor dieser Rückstellung wird der Inhalt des Akkumulators in die Speicherschaltung 400 übernommen. Dabei werden jedoch nur die
N-te und alle höherwertigen Ziffernstellen des Ausgangswerts des Akkumulators übernommen. Dies ist '
gleichbedeutend mit einer Division des Akkumulatorausgangswerts durch die Summe (n+m). Bei einer
später erläuterten anderen Ausführungsform der Erfindung erfolgt die Rückstellung erst nach dem
(n+m+ l)-ten Taktimpuls.
Die Erfindung wird nachstehend anhand eines Ausführungsbeispiels unter Bezugnahme auf die Zeichnung näher erläutert
F i g. 1 ist ein Blockschaltbild einer Ausführungsform der Gesamtanordnung der erfindungsgemäßen Vorrichtung;
F i g. 2 ist ein Blockschaltbild eines bei der in F i g. 1 dargestellten Vorrichtung verwendeten voreinstellbaren Zählers;
F i g. 3 ist ein Blockschaltbild einer Ausführungsform eines bei der in F i g. 1 dargestellten Vorrichtung
verwendeten Akkumulators;
F i g. 4 ist ein Blockschaltbild einer Ausführungsform einer bei der in F i g. 1 dargestellten Vorrichtung
verwendeten Speicherschaltung;
F i g. 5 ist ein Schaltbild einer Ausführungsform einer bei der in F i g. 1 dargestellten Vorrichtung verwendeten Steuerschaltung;
F i g. 6 zeigt Signalkurvenformen zur Darstellung der Funktion der in F i g. 5 dargestellten Steuerschaltung;
Fig. 7 zeigt eine Eingangs-Ausgangs-Kennlinie zur
Erläuterung der Funktion der in F i g. 1 dargestellten Vorrichtung.
In der ein Ausführungsbeispiel der erfindungsgemäßen Vorrichtung darstellenden F i g. 1 ist mit 100 ein
voreinstellbarer 8-Bit-Zähler bezeichnet, dessen Schaltungsaufbau in Fi g. 2 dargestellt ist, in der mit 110 und
120 voreinstellbare Zähler bezeichnet sind (bei dem dargestellten Ausführungsbeispiel integrierte Schaltungen). Ein Takteingang CPdes Zählers 110 ist mit einem
Eingangsanschluß 130 verbunden, während ein Übertragsausgangsanschluß Ca des Zählers 110 mit einem
Takteingang CP des Zählers 120 verbunden ist. Die Voreinstellfreigabeanschlüsse Pder Zähler 110 und 120
sind gemeinsam an einen Eingangsanschluß 131 angeschlossen. Die Dateneingangsanschlüsse P0, P\, Pi
und Pi des Zählers 110 und die Dateneingangsanschlüsse P4. P%, Pi und Pi des Zählers 120 sind jeweils mit den
Eingangsanschlüssen 101, 102, 103 und 104 bzw. den Eingangsanschlüssen 105, 106, 107 und 108 verbunden.
Der Zähler 110 enthält ferner Ausgangsanschlüsse Qa, Qb, Qc und Qa während der Zähler 120 Ausgangsanschlüsse Q'a, Q'b, Q'c und Q'd besitzt, die an die
jeweiligen Ausgangsanschlüsse 121, 122, 123 bzw. 124
angeschlossen sind. Die an den Dateneingangsanschlüssen P0, P1, Pi, Pi, P4, Pi, Pb und P7 und den
Ausgangsanschlüssen QA, Qb, Qc, Qd. Q'a. Q'b, Q'c und
Q'd auftretenden Signale weisen alle Dualcode-Form auf, wobei QA die Stelle mit dem niedrigsten Wert
darstellt und die Stellenwerte der Dualziffern in der Reihenfolge Qb, Qc, Qa Q'a, Q'b, Qc, Q'd ansteigen. Mit
200 ist ein programmierter Speicher mit vier Dualzifferneingängen und acht Dualziffernausgängen bezeichnet,
der bei dem dargestellten Ausführungsbeispiel aus zwei Festspeichern besteht. Die vier Eingangsanschlüsse
für vier Dualziffern sind jeweils mit den Anschlüssen 121, 122, 123 und 124 verbunden. Das
Ausgangssignal des einen Festspeichers wird aufeinanderfolgend aus den Ausgangsanschlüssen 201, 202, 203
und 204 in aufsteigendem Ziffemstellenrang ausgegeben, während das Ausgangssignal des anderen Festspeichers
aufeinanderfolgend aus den Ausgangsanschlüssen 205,206,207 und 208 in aufsteigender Ziffernstellenordnung
ausgegeben wird. 300 bezeichnet einen Akkumulator, dessen Schaltungsaufbau in F i g. 3 dargestellt ist, in
der mit 310, 320 und 330 Parallel-Binäraddierer bezeichnet sind, die bei dem dargestellten Ausführungsbeispiel integrierte Schaltungen sind. Ein Übertragseingang
Ci des Addierers 310 ist geerdet, während dessen Übertragsausgang Co an einen Übertragseingang Ci
des Addierers 320 angeschlossen ist und ein Übertragsausgang Co des Addierers 320 mit einem Übertragseingang
Ci des Addierers 330 verbunden ist. Einer der bit-parallelen Eingänge des Addierers 310 liegt an den
Eingangsanschlüssen Μι, XA2, l/4j und ΙΛ4 in aufsteigender
Ziffernstellenordnung an, während der andere Eingang an die Eingangsanschlüsse 1 ß,, 1B2,1B3 und 1B4
in ansteigender Ziffernstellenordnung angelegt ist. Ein Summenausgang der zwei parallelen Eingänge wird an
den Ausgangsanschlüssen So, Si, S2 und S3 in aufsteigender
Ziffernstellenordnung ausgegeben. Auf gleiche Weise liegt bei dem Addierer 320 einer der parallelen
Eingänge an den Eingangsanschlüssen 2A1,2A2,2A3 und
2Aa an, während der andere Eingang an die Eingangsan-Schlüsse 2Bi, 282, 2S3 und 2S4 angelegt ist und der
Summenausgang der zwei Paralleleingänge an den Ausgangsanschlüssen S4, Ss, 5, und Sj ausgegeben wird.
Ebenso liegt be dem Addierer 330 einer der parallelen Eingänge an den Eingangsanschlüssen 3AU 3A2,3A3 und
3Λ4 an, während der andere Eingang an die Eingangsanschlüsse
3Si, 3S2, 3S3 und 3S4 gelegt ist und ein
Summenausgang der zwei parallelen Eingänge an den Ausgangsanschlüssen Ss, Sq, S10 und Sm ausgegeben
wird. Da die Eingangsanschlüsse 3A1, 3A2, 3Ai und 3At
geerdet sind, ist deren Eingangssignal gleich Null. Mit 340, 350 und 360 sind Speicherschaltungen zum
Speichern der jeweils eingegebenen Eingänge im Ansprechen auf den Anstieg eines an einen Anschluß
322 angelegten Taktimpulses bezeichnet Die jeweiligen vier Eingangsanschlüsse der Speicherschaltungen sind
mit den entsprechenden Ausgängen der Addierer 310, 320 bzw. 330 verbunden. Das heißt, der Ausgangsanschluß
So des Addierers 310 ist an einen Eingangsanschluß D0 der Speicherschaltung 340 angeschlossen, der
Ausgangsanschluß Si an einen Eingangsanschluß Di, der
Ausgangsanschluß S2 an einen Eingangsanschluß D2 und
der Ausgangsanschluß S3 an einen Eingangsanschluß Dr, der Ausgangsanschluß S4 des Addierers 320 ist an einen
Eingangsanschluß D4 der Speicherschaltung 350, der Ausgangsanschluß sSs an einen Eingangsanschluß D%
der Ausgangsanschluß S& an einen Eingangsanschluß Dt,
und der Ausgangsanschluß S7 an einen EingangsanSchluß Dj angeschlossen; ferner ist der Ausgangsanschluß
Se des Addierers 330 mit einem Eingangsanschluß Dg der Speicherschaltung 360, der Ausgangsanschluß
Sä mit einem Eingangsanschluß Dg, der Ausgangsanschluß
Si ο mit einem Eingangsanschluß Di ο und
der Ausgangsanschluß Sn mit einem Eingangsanschluß Dn verbunden. Die Löscheingänge C und die Takteingänge
CPder Speicherschaltungen 340,350 und 360 sind jeweils gemeinsam mit den Eingangsanschlüssen 321
ίο bzw. 322 verbunden. Die Speicherschaltungen 340, 350
und 360 besitzen Ausgangsanschlüsse Qo bis <?u, die den jeweiligen Eingangsanschlüssen Do bis Dn entsprechen.
Die Ausgangsanschlüsse Q0, Q\, Q2 und Q1 der
Speicherschaltung 340, die Ausgangsanschlüsse Q4, Q5,
Qi und Qj der Speicherschaltung 350 und die Ausgangsanschlüsse
Qg, Qa, <?iound Qu der Speicherschaltung 360
sind jeweils an die Eingangsanschlüsse 1 Si, 1B2,1S3 und
IS4 des Addierers 310, die Eingangsanschlüsse 2Si, 2Bi,
2B3 und 2B4 des Addierers 320 und die Eingangsan-Schlüsse
3ßi, 3B2, 3B3 und 3B4 des Addierers 330
angeschlossen. Die Eingangsanschlüsse D4, D5, D6, dj,
D8, D9, Dio und Di ι der Speicherschaltungen 350 und 360
sind mit den Ausgangsanschlüssen 311, 312, 313, 314, 315,316,317 und 318 verbunden. Bei dem dargestellten
Ausführungsbeispiel bestehen die Speicherschaltungen 340, 350 und 360 jeweils aus einer integrierten
Schaltung.
Mit 400 ist eine Speicherschaltung mit 8-Bit-Eingang und 8-Bit-Ausgang bezeichnet die auf gleichartige
Weise aufgebaut ist wie die Speicherschaltung in dem Akkumulator 300. Sie weist gemäß der Darstellung in
Fig.4 zwei Speicherschaltungen 410 und 420 auf, die jeweils aus einer integrierten Schaltung bestehen. Die
Eingangsanschlüsse D'o, D\, D'2 und D3 der Speicherschaltung
410 sind jeweils mit den Ausgangsanschlüssen 311,312,313 bzw. 314 des Akkumulators 300 verbunden.
Die Eingangsanschlüsse D4, D's, D'b und D'j der
Speicherschaltung 420 sind auf gleiche Weise mit den Ausgangsanschlüssen 315, 316, 317 und 318 des
Akkumulators 300 verbunden. Die Eingangsanschlüsse DO bis D'j entsprechen den jeweiligen Ausgangsanschlüssen
QO bis Q'j, die ihrerseits mit den Ausgangsanschlüssen
401 bis 408 verbunden sind. Die Takteingangsanschlüsse CPder Speicherschaltungen 410 und 420 sind
gemeinsam an einen Eingangsanschluß 409 angeschlossen, während ihre Löschanschlüsse C geerdet sind. Mit
500 ist eine Steuerschaltung bezeichnet, die dem voreinstellbaren Zähler 100, dem Akkumulator 300 und
der Speicherschaltung 400 Steuersignale zuführt; ihr Schaltungsaufbau ist in F i g. 5 dargestellt in der mit 510
ein 4-Bit-Binärzähler bezeichnet ist der bei dem beschriebenen Ausführungsbeispiel aus einer integrierten
Schaltung besteht; sein Löschanschluß Cist geerdet während sein Übertragsausgangsanschluß Ca mit
seinem Ladeanschluß L verbunden ist Die Ausgangsanschlüsse sind in ansteigender Ziffernstellenordnung mit
Qa, Qb, Qc und Qo bezeichnet Mit 520 ist ein
NOR-Glied für vier Bits bezeichnet das die Ausgangsanschlüsse Qa, Qb, Qc und QD des Zählers 510 durch
μ NOR-Verknüpfung miteinander verbindet 530 bezeichnet
ein UND-Glied, das einen Eingangsanschluß 501, an dem ein Taktimpuls angelegt ist, und den Ausgang des
NOR-Glieds 520 durch eine UND-Verknüpfung verbindet 540 bezeichnet einen Inverter, der ein Übertragsausgangssignal
des Zählers 510 invertiert Bei dem vorstehend beschriebenen Schaltungsaufbau wirkt die
Steuerschaltung 500 wie folgt: Wenn der Eingangsanschluß 501 der Steuerschaltung 500 einen in Fig.6(A)
dargestellten Taktimpulszug aufnimmt, erzeugt der Binärzähler 510 an seinem Übertragsausgangsanschluß
Ca zwischen dem fünfzehnten und dem sechzehnten Taktimpuls nach Zählbeginn des Zählers 510 einen
Impuls gemäß der Darstellung in Fig.6(B). Das heißt,
der Zähler 510 erzeugt jedesmal einen Übertragsausgang, wenn sechzehn Taktimpulse gezählt sind, so daß
er daher wie ein Hexadezimalzähler arbeitet. Die Ausgangssignale an den Ausgangsanschlüssen Qa, Qb,
Qcund Qobilden Kurvenformen gemäß den Darstellungen
in Fig.6(QA). (QB). (QC)und (QD). während das
Ausgangssignal des NOR-Glieds 520 eine Kurvenform entsprechend der Darstellung in Fig.6(C) erzeugt.
Durch das Anlegen des Signals mit der Kurvenform gemäß Fig.6(C) und des Taktimpulszugs an das
UND-Glied 530 entsteht am Ausgang des UND-Glieds 530 eine Ausgangskurvenform gemäß Fig.6(D). Ein
Übertragsausgang des Zählers 510 wird dem Inverter 540 zugeführt, um so eine Kurvenform gemäß der
Darstellung in Fig.6(E) zu erhalten. Die Ausgangsan-Schlüsse
502, 503 und 504 der Steuerschaltung 500 sind jeweils mit dem Eingangsanschluß 501, dem Ausgangsanschluß des Inverters 540 bzw. dem Ausgangsanschluß
des UND-Glieds 530 verbunden. Der Ausgangsanschluß 502 der Steuerschaltung 500 ist mit dem Eingangsanschluß
130 des voreinstellbaren Zählers 100 und dem Eingangsanschluß 322 des Akkumulators 300 verbunden,
während der Ausgangsanschluß 503 der Steuerschaltung 500 mit dem Eingangsanschluß 131 des
voreinstellbaren Zählers 100 und dem Eingangsanschluß jo
321 des Akkumulators 300 verbunden ist und der Ausgangsarschluß 504 der Steuerschaltung 500 an den
Eingangsanschluß 409 der Speicherschaltung 400 angeschlossen ist
Nunmehr wird die Funktionsweise der auf diese Weise aufgebauten Einrichtung beschrieben. Wenn zu
einem in F i g. 6 dargestellten Zeitpunkt a der voreinstellbare Zähler 100 an seinem Eingangsanschluß 131
ein in Fig.6(D) dargestelltes Voreinstellsignal aufnimmt,
liest er die Dualcodewerte an den Eingangsan-Schlüssen 101 bis 108 ein. Danach beginnt zu dem in
Fig.6 dargestellten Zeitpunkt b der voreinstellbare
Zähler 100 den in Fig.6(A) dargestellten, an dem Eingangsanschluß 501 bzw. 130 anliegenden Taktimpulszug
von dem eingelesenen Wert anfangend zu zählen. Wenn für die Erläuterung der einzulesende Wert
X als Codeausdruck »10111001« angenommen wird, steigt das AusgangssigTia! des voreinsteübarer. Zählers
100 nach Zählbeginn gleichmäßig mit jedem Taktimpuls bis auf den Wert
»10111001 + 15 (Dezimal) = 11001000«
an und wird durch das in Fig.6(D)dargestellte Signal
gelöscht, bis der nächste Wert eingelesen wird. Betrachtet man nun den Ausgang des programmierten
Speichers 200, dessen Eingangsadresse durch die vier höchstwertigen Digitalstellen des Ausgangs des voreinstellbaren
Zählers 100 gegeben ist, so ist die Eingabeadresse zu dem in F i g. 6 gezeigten Zeitpunkt a
gleich »1011«; da sich diese vier Digitalstellen des
Ausgangs des voreinstellbaren Zählers 100 während sechs Taktimpulsen nicht verändern, wobei der Ausgang
zur Zeit nach der Eingabe der sechs Taktimpulse den Wert »10111111« annimmt, bleibt die Adressiereingabe
an dem programmierten Speicher 200 gleich »1011«. Bei
dem Auftreten des siebenten Taktimpulses wechselt der Ausgang des voreinstellbaren Zählers 100 auf
»11000000«, so daß die Adressiereingabe an den programmierten Speicher 200 um I auf »1100« erhöht
wird. Da eine Gesamtsumme von 15 Taktimpulsen angelegt wird, wechselt der Ausgang des voreinstellbaren
Zählers 100 schließlich auf »11001000«, wobei die Adressiereingabe an den programmierten Speicher 200
für die nach dem siebenten Taktimpuls angelegten zusätzlichen acht Taktimpulse bei »1100« bleibt. Nimmt
man an, daß die Einrichtung so programmiert ist, daß der programmierte Speicher 200 für eine Adresseneingabe
»1011« einen Ausgang f(X\) und für eine Adresseneingabe »1100« einen Ausgang /(X2) erzeugt,
so erzeugt der programmierte Speicher 200 im Dualcode für die Taktimpulse Null bis sechs den
Ausgang /(Xi) und für die Taktimpulse sieben bis fünfzehn den Ausgang /(X2).
Wenn in dem Akkumulator 300 die Eingangswerte an den Eingangsanschlüssen 301 bis 308 der Addierer 310
und 320 gleich A und die Ausgänge der Speicherschaltungen 340, 350 und 360 gleich B sind, so sind die
Ausgänge der Addierer 310, 320 und 330 durch A + B gegeben. Unter der Annahme, daß der Eingang A
konstant ist, werden die Speicherschaltungen 340, 350 und 360 alle durch das Signal mit der Kurvenform
gemäß Fig.6(D) gelöscht, so daß deren Ausgänge
gleich »0« sind. Da die Ausgänge der Speicherschaltungen 340 und 350 »0« sind, wenn nach dem Löschen der
Speicherschaltungen kein Taktimpuls an den Eingangsanschluß 322 angelegt wurde, sind die Ausgänge der
Addierer 310, 320 und 330 gleich A + 0. Wenn an den Eingangsanschluß 322 ein Taktimpuls angelegt wird,
bilden die Ausgänge der Addierer 310,320 und 330 den
Wert A + A+Q = 2A. weil die Speicherschaltungen 340, 350 und 360 beim Anstieg des Taktimpulses den Wert
/4 + 0 speichern und diesen gespeicherten Wert ausgeben. Bei dem zweiten Taktimpuls wechseln die
Ausgänge der Addierer 310, 320 und 330 auf /4 + 2Λ = 3Α Wenn fünfzehn Taktimpulse aufgenommen
wurden, wechseln auf diese Weise die Ausgänge der Addierer 310, 320 und 330 auf A + \5A = \6A.
Betrachtet man nun die Beziehungen zwischen dem Ausgang des programmierten Speichers 200, dem
Eingang des Akkumulators und den Taktimpulsen, so wird an den Eingang des Akkumulators 300 und damit
an die Eingänge der Addierer 310,320 und 330 der Wert
/(Xi) angelegt, bis sechs Taktimpulse angelegt worden
sind, während mit dem Anlegen des siebenten Taktimpulses für die Dauer von neun Taktimpulsen an
die genannten Eingänge der Wert /(Xz) angelegt wird, so daß auf diese Weise die Eingangsanschlüsse Do bis
Du der Speicherschaltungen 340,350 und 360 zu dem in
F i g. 6 gezeigten Zeitpunkt cden Wert
7 χ /(X1) + 9 χ /(X2)
annehmen. Danach speichert die Speicherschaltung 400 beim Anstieg der Kurve nach F i g. 6(E), d h. zu dem in
F i g. 6 dargestellten Zeitpunkt c den Wert an den den höherwertigen Ziffernstellen zugeordneten Eingangsanschlüssen
A bis Dn der Eingangsanschlüsse Do bis D\ \
der Speicherschaltungen 340,350 und 360 und gibt den
gespeicherten Wert an den Ausgangsanschlüssen 401 bis 408 aus. Da das Wählen der diesen Ziffernstellen
zugeordneten Ausgangsanschlüsse A bis Dn der
Speicherschaltungen 340,350 und 360 äquivalent einer
Division der einen Dualcode darstellenden Ausgänge Db
bis Du durch sechzehn ist, folgt daraus, daß der Ausgang
der Speicherschaltung 400 den Wert
7 χ /(X1) + 9 χ /(X2)
darstellt. Die Beziehung zwischen dem Eingangswert X des voreinstellbaren Zählers 100 und dem Ausgang f(X)
des programmierten Speichers 200 ist in Fig. 7 dargestellt, in der die Abszisse den Wert X und die
Ordinate den Wert f(X) darstellen, wobei für A"= X1 = »10110000« f (X)= f (Χ,) und für
X= X2 = »11000000« f(X)= f(X2) ist. Der Abstand
zwischen X2 und Xi beträgt
11000000-10110000=1000=16 (Dezimal), während
der Abstand zwischen A3 und X\ gleich 10111001 -10110000= 1001 =9 (Dezimal) ist. Den Wert
/(X3) erhält man unter Anwendung des Proportionaldivisionsverfahrens aus den zwei bekannten Werten f(X\)
und /(X2) durch die Gleichung
/(X3) =
Dadurch ergibt sich folgender Ausdruck:
/(X2)-/(X1)
x 9 + /(X1)
9 χ /(X2) + 7 χ /(X1)
16
16
Dieser Ausdruck entspricht dem Wert des Ausgangs der Speicherschaltung 400. Bei einem algebraischen
Verfahren ist unter der Annahme, daß mit X ein Punkt zwischen X\ und Xi bezeichnet ist, der den Abstand
zwischen diesen Werten im Verhältnis m: η teilt und
daß m und η durch X2-Xi = m+n definiert sind, der
Wert /(XJfür λ"gegeben durch
f(X) =
m + n
+ m/(X2)
m + n
U)
Andererseits erzeugt bei der vorliegenden Einrichtung die Steuerschaltung 500 (m+n-\) Taktimpulse,
die von dem voreinstellbaren Zähler 100 von X beginnend einer nach dem anderen auf den Zählstand
X+m+n-\ gezählt werden. Zur gleichen Zeit wird in dem mit dem Ausgangsanschluß des programmierten
Speichers 200 verbundenen Akkumulator 3öö der
Ausgang des programmierten Speichers 200 bei jedem Taktimpuls zur Erzeugung der Sammelsumme
(m+n— 1) angesammelt, wobei von den Binärzahlen
nur diejenigen an der JV-ten und höherwertigen Ziffernstelle verarbeitet werden. Dabei ist m+n=AN
mit A als Basiszahl des verwendeten Zahlensystems; bei Binärzahlen ist also A—2. Auf diese Weise wird die
folgende Rechenoperation ausgeführt:
bis f(X+n-\) den Wert /(X,), während er für die m
Taktimpulse von /(X+n) bis f(X+m+n-\)den Wert
/(X2) erzeugt. Somit kann die Gleichung (2) durch
h/(X) + m/(X2)
U(X)+
+flX+n-l)
+ n)+f(X
(2)
In der Gleichung (2) hat der Ausgang des programmierten
Speichers 200 für die π Taktimpulse von f{X)
m + n
dargestellt werden, was mit der Gleichung (1) identisch ist. Dementsprechend kann bei der vorliegenden
Schaltungsanordnung bei gegebenem X=Xj zwischen
λ", und X2 der Wert /(X3) für X3 durch Addieren der
Ausgänge des programmierten Speichers für die Zählung (Xj+ /n +n-1) und Entnehmen der Binärzahlen
an und über der /V-ten Ziffernstelle erhalten werden. Auf diese Weise brauchen m und η nicht einzeln
bestimmt zu werden. Wenn man Λ=10 und m + π zu 10
oder 100 in dezimaler Form bzw. /4 = 2 und m + η=2N in
binärer Form wählt, kann die Interpolation durch Verarbeitung nur der N höchstwertigen Stellen des
Akkumulatorausgangs erheblich vereinfacht werden.
Wenn der voreinstellbare Zähler 100 durch einen herkömmlichen nicht voreinstellbaren Zähler ersetzt
wird, der zum Zählen externer Steuersignale eingerichtet ist und dessen Zählstand als Adresseneingabe an den
programmierten Speicher 200 angelegt wird, kann die Interpolation dadurch ausgeführt werden, daß die
externen Steuersignale für ein gegebenes Intervall unterbrochen werden und während dieses Intervalls
(m+n—1) Taktimpulse zugeführt werden, um so den
Ausgang des Zählers um (m + η -1) zu erhöhen.
Obgleich bei dem genannten Ausführungsbeispiel nur ein Aufwärtszählen der (m+n— 1)-Impulse beschrieben
wurde, ist es aus dem vorliegenden Schaltungsaufbau ersichtlich, daß die Interpolation ebenso durch Abwärtszählen
durchgeführt werden kann. Um auf gleiche Weise die Interpolation durch Abwärtszählen auszuführen,
muß durch geringfügige Änderung dafür gesorgt werden, daß der programmierte Speicher 200 bei
Eingabe von X; X2>X>Xi, den Funktionswert /(X2)
und bei Xi > Xden Funktionswert /(Xi) ausgibt
Bei dem beschriebenen Ausführungsbeispiel wurde als programmierter Speicher 200 ein Festspeicher
verwendet; es kann jedoch als programmierter Speicher eine beliebige andersartige Speicherschaltung verwendet
werden, die das Einprogrammieren gegebener Werte erlaubt
Während bei dem vorstehend beschriebener. Ausführungsbeispiel als Ausgangsanschlüsse des Akkumulators
300 die Eingangsanschlüsse Di, bis Du der Speicherschaltungen
350 und 360 verwendet werden, können die Ausgänge Qt bis Q11 der Speicherschaltungen 350 und
380 direkt als Ausgar.gsanschlüsse 311 bis 318 des
Akkumulators 300 benützt werden, wenn die Anordnung
der in F i g. 5 dargestellten Steuerschaltung 500 so
S5 geändert wird, daß Impulsformen gemäß der Darstellung
in Fig.S(D') und (D") erzeugt werden, deren
Dauer kurzer ist als die der in Fig.S(D) dargestellten
Impulsform, und wenn diese Impulsformen an den Eingangsanschluß 409 der in Fig.4 dargestellten
Speicherschaltungen 410 und 420 und an den Eingangsanschluß 321 der Speicherschaltungen 340,350 und 360
angelegt werden. Da in diesem Fall nach dem Löschen der Speicherschaltungen 340, 350 und 360 mittels des
Signals gemäß Fig.6 (D") sechzehn Taktimpulse
£5 angelegt werden, ist die Arbeitsweise derart, daß die
^vorstehend genannte Gleichung (1) mit Hilfe von m+n
Taktimpulsen erfüllt ist
Hierzu 4 Blatt Zeichnungen
Claims (1)
1. Vorrichtung zur digitalen, linearen Interpolation
einer fabulierten Funktion f(X) zum Ermitteln des Funktionswertes f{Xi) für ein beliebiges Argument
Xj mit einem programmierten Speicher, der die Funktionswerte /(Xi) und /(Xj) enthält, wobei
vorausgesetzt ist, daß X\<Xi<Xi und Xj-Xi = m,
X2-X3=Ti und m+n=AN und wobei /V eine
beliebige ganze Zahl und A die Basiszahl des bei der digitalen Interpolation verwendeten Codes ist und
die Interpolation nach der Formel
io
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7293974A JPS5434579B2 (de) | 1974-06-25 | 1974-06-25 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2523860A1 DE2523860A1 (de) | 1976-01-15 |
DE2523860B2 DE2523860B2 (de) | 1979-03-08 |
DE2523860C3 true DE2523860C3 (de) | 1979-10-31 |
Family
ID=13503826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2523860A Expired DE2523860C3 (de) | 1974-06-25 | 1975-05-30 | Vorrichtung zur digitalen, linearen Interpolation einer fabulierten Funktion |
Country Status (3)
Country | Link |
---|---|
US (1) | US4001565A (de) |
JP (1) | JPS5434579B2 (de) |
DE (1) | DE2523860C3 (de) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS52144579A (en) * | 1976-05-26 | 1977-12-01 | Kubota Ltd | Automatic program system for error action preventing circuit |
JPS5345775U (de) * | 1976-09-24 | 1978-04-19 | ||
JPS5481095A (en) * | 1977-12-12 | 1979-06-28 | Toshiba Corp | Computer tomography device |
US4335275A (en) * | 1978-04-28 | 1982-06-15 | Texas Instruments Incorporated | Synchronous method and apparatus for speech synthesis circuit |
JPS54159139A (en) * | 1978-06-05 | 1979-12-15 | Arekuseeeuna Zoorina Nadezuda | Digital computer |
JPS5640932A (en) * | 1979-09-13 | 1981-04-17 | Nec Corp | Function value generator |
JPS5640931A (en) * | 1979-09-13 | 1981-04-17 | Nec Corp | Function value generator |
JPS5640930A (en) * | 1979-09-13 | 1981-04-17 | Nec Corp | Function value generator |
JPS581275A (ja) * | 1982-06-14 | 1983-01-06 | Hitachi Ltd | 画像のぼかし処理装置 |
US4511882A (en) * | 1982-07-02 | 1985-04-16 | The Babcock & Wilcox Company | Function generator |
DE3225395A1 (de) * | 1982-07-07 | 1984-01-12 | Fried. Krupp Gmbh, 4300 Essen | Digitaler ballistikrechner fuer ein feuerleitsystem einer rohrwaffe |
JPS609512U (ja) * | 1983-06-29 | 1985-01-23 | 株式会社クボタ | ケ−キ搬送装置 |
JPS60142738A (ja) * | 1983-12-30 | 1985-07-27 | Hitachi Ltd | 内挿近似を使用する除算装置 |
JPH0631990B2 (ja) * | 1984-01-07 | 1994-04-27 | カシオ計算機株式会社 | 波形の補間装置 |
JPS6279379A (ja) * | 1985-10-02 | 1987-04-11 | Ando Electric Co Ltd | タイミング信号発生装置 |
US5167018A (en) * | 1986-09-24 | 1992-11-24 | Daikin Industries, Ltd. | Polygon-filling apparatus |
FR2622320B1 (fr) * | 1987-10-27 | 1990-11-30 | Thomson Semiconducteurs | Operateur d'interpolation lineaire |
USRE38427E1 (en) * | 1987-10-27 | 2004-02-10 | Stmicroelectronics S.A. | Linear interpolation operator |
JPH0330798Y2 (de) * | 1988-03-31 | 1991-06-28 | ||
US5170475A (en) * | 1989-03-06 | 1992-12-08 | Motorola, Inc. | Data processor having instructions for interpolating between memory-resident data values respectively |
US6735607B2 (en) | 2001-06-02 | 2004-05-11 | Lockheed Martin Corporation | Transparent data access and interpolation apparatus and method therefor |
US8859844B2 (en) * | 2004-06-30 | 2014-10-14 | Diao Paper Corporation | Sanitary napkin with a tow fiber assembly |
EP1774940B1 (de) | 2004-06-30 | 2013-09-11 | Daio Paper Corporation | Humor-aufsaugender gegenstand |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1574604A1 (de) * | 1968-01-27 | 1971-12-16 | Saba Gmbh | Rechenanlage zur naeherungsweisen Vorausberechnung einer stetigen Funktion fuer die nahe Zukunft |
GB1363073A (en) * | 1970-07-17 | 1974-08-14 | Solartron Electronic Group | Generation of trigonometrical and other functions by interpolation between point values |
US3676655A (en) * | 1970-07-31 | 1972-07-11 | Chandler Evans Inc | Digital function generator for two independent variables with interpolation |
US3748447A (en) * | 1971-11-18 | 1973-07-24 | Sperry Rand Corp | Apparatus for performing a linear interpolation algorithm |
DE2201690A1 (de) * | 1972-01-14 | 1973-07-19 | Bosch Gmbh Robert | Verfahren und vorrichtung zur elektrischen nachbildung von funktionen |
JPS549257B2 (de) * | 1972-02-21 | 1979-04-23 | ||
US3813529A (en) * | 1972-10-25 | 1974-05-28 | Singer Co | Digital high order interpolator |
DE2303182A1 (de) * | 1973-01-23 | 1974-07-25 | Siemens Ag | Einrichtung zum steuern einer verbrennungskraftmaschine |
-
1974
- 1974-06-25 JP JP7293974A patent/JPS5434579B2/ja not_active Expired
-
1975
- 1975-05-20 US US05/579,159 patent/US4001565A/en not_active Expired - Lifetime
- 1975-05-30 DE DE2523860A patent/DE2523860C3/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2523860B2 (de) | 1979-03-08 |
JPS5434579B2 (de) | 1979-10-27 |
US4001565A (en) | 1977-01-04 |
DE2523860A1 (de) | 1976-01-15 |
JPS513143A (de) | 1976-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2523860C3 (de) | Vorrichtung zur digitalen, linearen Interpolation einer fabulierten Funktion | |
DE2246968C2 (de) | Einrichtung zur Multiplikation zweier Gleitkommazahlen | |
DE2311220A1 (de) | Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung | |
DE3213801C2 (de) | ||
DE2712224A1 (de) | Datenverarbeitungsanlage | |
DE2357654C2 (de) | Assoziativspeicher | |
DE3303269C2 (de) | ||
DE3440680C2 (de) | ||
DE2743575A1 (de) | Verfahren und einrichtung zur multiplikation einer ersten zahl mit einer zweiten zahl | |
DE1078353B (de) | Verfahren und Vorrichtung zum Rechnen und zur numerischen Integration | |
DE3340362C2 (de) | ||
DE2046685A1 (de) | Einrichtung zum Konvertieren einer Dezimalzahl in eine Binarzahl | |
DE3302013C2 (de) | ||
DE3545433C2 (de) | ||
DE3302885A1 (de) | Verfahren und vorrichtung zur multiplikation | |
DE2435529A1 (de) | Digitalrechner | |
DE2426253B2 (de) | Vorrichtung zum ziehen der quadratwurzel aus einer binaeren zahl | |
DE2636028A1 (de) | Digitaler multiplizierer | |
DE1234055B (de) | Anordnung zur Addition oder Subtraktion | |
DE2142636A1 (de) | Rechenwerk fuer die durchfuehrung digitaler multiplikationen | |
DE1524156B2 (de) | Digitale elektronische recheneinrichtung | |
DE1801725C3 (de) | Digitaler Fourier-Analysator | |
DE2507526C3 (de) | Zähler mit zeitmultiplexem Datenausgang | |
DE2426648A1 (de) | Verfahren und schaltungsanordnung zur erzeugung von interpolationsimpulsen | |
DE1240928B (de) | Gleichstromgekoppelter elektronischer Binaerzaehler |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
8339 | Ceased/non-payment of the annual fee |