DE2606981A1 - Verfahren zur erzeugung von werten mathematischer funktionen - Google Patents

Verfahren zur erzeugung von werten mathematischer funktionen

Info

Publication number
DE2606981A1
DE2606981A1 DE19762606981 DE2606981A DE2606981A1 DE 2606981 A1 DE2606981 A1 DE 2606981A1 DE 19762606981 DE19762606981 DE 19762606981 DE 2606981 A DE2606981 A DE 2606981A DE 2606981 A1 DE2606981 A1 DE 2606981A1
Authority
DE
Germany
Prior art keywords
order
value
expression
correction
digital
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.)
Withdrawn
Application number
DE19762606981
Other languages
English (en)
Inventor
Reginald Catherall
Susan Knowles
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Pitney Bowes Document Messaging Technologies Ltd
Original Assignee
Pitney Bowes Document Messaging Technologies Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Pitney Bowes Document Messaging Technologies Ltd filed Critical Pitney Bowes Document Messaging Technologies Ltd
Publication of DE2606981A1 publication Critical patent/DE2606981A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function 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)
  • Data Mining & Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Error Detection And Correction (AREA)

Description

Verfahren zur Erzeugung von Werten mathematischer Funktionen
Die Erfindung betrifft ein Verfahren zum Erzeugen von Werten mathematischer Funktionen unter Verwendung iterativer Interpolationsverfahren.
Es gibt eine Reihe von Datenverarbeitungssituationen, bei welchen es erforderlich ist, den viert einer funktion y = f (x) für irgendeinen Wert von χ innerhalb eines gegebenen Bereiches verfügbar zu haben. Eine Möglichkeit, dieser Anforderung bei Datenverarbeitungssystemen gerecht zu werden, besteht darin, in einem Speicher die Werte der abhängigen Veränderlichen y für gegebene Werte der unabhängigen Veränderlichen χ zu speichern und dann den Speicher abzufragen, um den Wert von y für einen gegebenen Wert von χ zu erhalten. Ein Kachteil einer derartigen Anordnung besteht darin, daß es nur möglich ist, lediglich diskrete Werte von χ zu speichern. Wenn es erforderlich ist, eine große Anzahl dieser Werte zu speichern, so können die Kosten des\jSpe'ichers sehr hoch werden.
-2-
$09036/0609
In der Beschreibung des britischen Patents 1 36:5 O7~ (Uo-Fztent IJr. 3 7--;9 203) ist das sogenannte inter-alia-Ver- _;:.:■ fen, eil· Verfahren zur Interpolation eines Wertes der abhängigen Veränderlichen y für einen gegebenen viert der unabhängigen Veränderlichen χ einer· Funktion y = f (χ), und ein Gerät zur Durchführung dieses Verfahrens beschrieben. Die Funktion y = f (x) ist ein lineares Polynom in x. Das Verfahren erfordert eine iterative Interpolationstechnik, die als eine Interpolation durch wiederholte Zweiteilung eines Segments des Betriebsbereiches der unabhängigen Veränderlichen χ betrachtet werden kann, wobei ein Anfangssegment, welches sich an zwei Punktwerte der Funktion an den Enden des Bereiches anschließt, zweigeteilt wird, um zwei neue Segmente zu formen. Eines der zwei neuen Segmente enthält den gegebenen Wert von x, für welchen der Wert der abhängigen Veränderlichen y gefordert wird, und dies ist das neue interessierende Segment. Das neue interessierende Segment kann dann in der gleichen Weise zweigeteilt werden und so weiter, so daß dann die Länge jedes Segments progressiv halbiert wird und auf den gegebenen Wert von χ zukonvergiert. In einer Hinsicht besteht das Verfahren aus den Schritten einer linearen Interpolation zwischen den zwei Punktwerten, die ein interessierendes Segment definieren, um dadurch einen Mittelpunktswert zu erhalten und um den Mittelpunktswert durch Zufügen eines Korrekturwertes oder "Restbedarfs" (residual need) zu korrigieren. Der korrigierte Mittelpunktswert wird dann für einen der zwei früheren Punktwerte substituiert, um ein neues interessierendes Segment zu bestimmen, und es wird dann der Interpolationsschritt und die Korrektur des neuen Mittelpunktswertes mit einem neuen Korrekturwert wieder iterativ .ermittelt,
-3-
803833/0809
BAD ORIGJNAL
bis der Wert von y für einen gegebenen Wert von χ erhalten ist. Die Korrekturwerte können von dem Ausdruck zweiter Ordnung einer polynomischen Reihe oder einer Korabination des Ausdrucks zweiter Ordnung mit einem progressiv in der Ordnung höheren Term oder Termen der Reihe abgeleitet
werden. Die bei diesem Verfahren verwendete Reihe wird
binäre polynomische Reihe genannt.
Die zuvor erläuterten Verfahren sind dafür geeignet, bei einem geeignet programmierten Computer realisiert zu werden oder mit Hilfe eines anderen Gerätes (hardware), welches für diesen Zweck ausgelegt ist.
Das binäre polynomische Interpolationsverfahren besitzt die Eigenschaft, daß man durch dieses interpolierte Werte von y an den Endpunkten des interessierenden Anfangssegments und für eine binäre Folge der Werte von χ erhalten kann. Die Länge der Folge, für welche genaue Werte von y erhalten werden, hängt von der Ordnung der interpolierten Polynoms ab, so daß beispielsweise für ein Polynom vierter Ordnung, welches über einen normierten . x-Bereich von Werten von 0 bis 1 interpoliert wird, der so erhaltene Wert von y genau ist bei x-Werten von 0, 1/4, 1/2, 3/4
und 1. Ähnlich ergibt sich für ein polynomisches Verfahren achter Ordnung für den interpolierten Wert von y ein genauer Wert bei x-Werten von 0, 1/8, 1/4, 3/8, 1/2, 5/8, 3/4, 7/8 und 1. Bei den zuvor erwähnten Verfahren wurde allgemein festgestellt, daß die Zahl der Punkte, einer
genauen Entsprechung (exact fit) in der Folge um 1 mehr beträgt als die OrdnungVdes interpolierten Polynoms. Es sei hervorgehoben, daß allgemein die Genauigkeit der Interpolation dadurch erhöht werden kann, indem man die Ord-
-4-
609833/0609
nung des Polynoms erhöht, was jedoch durch eine gleichlaufende Erhöhung der Komplexität der Geräteschaft erreicht wird.
Durch die vorliegende Erfindung wird ein Verfahren geschaffen, um einen Wert einer ersten Veränderlichen y und einer zweiten Veränderlichen χ für einen gegebenen Wert der anderen Veränderlichen zu erhalten, wobei y eine Funktion von χ ist und durch eine polynomische Reihe der Form y = dQ BQ + d,j B1 + d2 B2 + d^ B^ + .... beschrieben ist, in welcher Bn ein linearer polynomischer Ausdruck in χ der η'ten Ordnung und dn der relevanten Koeffizient ist. Das Verfahren besteht aus den folgenden Schritten:
Es werden digitale Größen, welche zwei ein Anfangssegment einer unabhängigen Veränderlichen definierende Punktwerte wiedergeben, gespeichert und es werden vorbestimmte Werte eines Korrekturterms von wenigstens einer zweiten Ordnung, einer dritten und einer vierten Ordnung gespeichert;
Es wird zwischen den zwei gespeicherten Punktwerten eine lineare Interpolation durchgeführt, um einen digitalen Mittelpunktswert zu erhalten und um zwei neue Segmente zu erzeugen, von denen das eine gegenüber dem Mittelpunktswert UP ist und das andere DOWN ist, es wird der digitale Mittelpunktswert durch Hinzufügen eines Kompensierwertes kompensiert, der aus dem Korrekturterm der zweiten Ordnung besteht, um dadurch einen kompensierten digitalen Mittelpunktswert zu bilden;
es wird dann festgestellt, ob das neue interessierende Segment für die nächste Stufe des Verfahrens relativ zum kompensierten Mittelpunktswert UP oder DOWN ist;
-5-
809838/0*09
es wird die ermittelte UP/DOWN-Information dazu verwendet, ein Ersetzen einer der ersten und zweiten digitalen Größen, welche kennzeichnend für die zwei gespeicherten Punktwerte sind, durch das genannte kompensierte digitale Mittelpunktssignal zu bewirken, um ein neues Segment zu erzeugen, welches den korrigierten Wert der unabhängigen Veränderlichen enthält;
es wird dann das Kompensier-Signal modifiziert, indem der den Korrekturterm zweiter Ordnung wiedergebende Digitalwert durch vier geteilt wird, weiter wird unter Verwendung der UP/DOWN-Information eine Addition oder Subtraktion zu bzw. von dem geteilten Wert des Korrekturterms zweiter Ordnung des Wertes bewirkt, der den Korrekturterm dritter Ordnung wiedergibt, und zwar in Abhängigkeit davon, ob das neue Segment UP oder DOWN ist, und es wird der Korrekturterm vierter Ordnung addiert, um einen neuen Korrekturterm zu bilden;
weiter wird der den Korrekturterm dritter Ordnung wiedergebende digitale Wert abgeändert, indem dieser durch acht geteilt wird;
weiter wird die UP/DOWN-Information dazu verwendet, eine Addition zu oder eine Subtraktion von dem Ausdruck dritter Ordnung des halben Wertes des Ausdrucks vierter Ordnung in Abhängigkeit davon zu bewirken, ob das neue Segment UP oder DOWN ist;
es wird dann der den Ausdruck vierter Ordnung wiedergebende digitale Wert modifiziert, indem er durch sechzehn geteilt wird;
es werden dann die Schritte der linearen Interpolation wiederholt, ebenso die Kompensation, Bestimmung und das Ersetzen und die Modifizierung, um dadurch neue digitale Größen zu erzeugen, die sukzessive kleinere Segmente mit Endpunkten bestimmen, die zum richtigen Wert der unabhängigen Veränderlichen hin konvergieren.
809838/0009
Wenn das Verfahren so weit fortgeschritten ist, um den Wert der abhängigen Veränderlichen y für einen gegebenen Wert der unabhängigen Veränderlichen χ zu erhalten, so wird es zweckmäßig derart weiter ausgeführt, daß der Wert der unabhängigen Veränderlichen χ in binärer Form gespeichert wird und die Bits geprüft werden, wobei mit dem höchstwertigen Bit begonnen wird und dann bestimmt wird, ob das neue Segment UP oder DOa7I1T für die (p. + 1)-te Stufe des Verfahrens ist, wobei aas n-te Bit der unabhängigen Veränderlichen geprüft wird, um in Einklang mit dem Wert des genannten η-ten Bits zu bestimmen, ob das neue Segment UP oder DOWiI ist.
Das Verfahren nach der vorliegenden Erfindung kann dadurch realisiert werden, indem man einen Computer so programmiert, um automatisch den Wert der erforderlichen Veränderlichen zu berechnen, oder mit Hilfe eines Datenverarbeitungsgerätes, welches für diesen Zweck ausgelegt ist.
Die Erfindung betrifft auch"einen Computer oder ein Datenverarbeitungsgerät, um das Verfahren nach der Erfindung durchzuführen.
-7-
609838/0609
Erfindungsgemäß wird das erfindungsgemäße Verfahren in Form eines Programms in physikalischer Form gespeichert, wie beispielsweise in einem programmierten Read Only Memory.
Im folgenden wird die Erfindung anhand eines Ausführungsbeispiels unter Hinweis auf die Zeichnungen näher erläutert. Es zeigt:
Fig. 1 bis 5 graphische Darstellungen polynomischer Ausdrükke von der O'ten bis zur vierten Ordnung;
Fig. 6 graphische Darstellungen von y = sin χ und y = χ über einen x-Bereich O bis 90° normalisiert auf einen Bereich 0 bis 1, die Auftragung der Unterschiede zwischen den Werten y = sin χ und y = χ und eine graphische Darstellung einer Parabel der in Fig. 3 gezeigten Form, multipliziert mit einem Koeffizienten, wodurch deren Größe gleich ist mit derjenigen der Differenzkurve bei χ = 1/2;
Fig. 7 eine Auftragung der Differenzen zwischen der Kurve y = sin χ und der Kurve eines Ausdrucks y = i/2(b+a) + 1/2(b-a)«2(x-i/2) + K4x(1-x), das heißt ein Polynom zwiter Ordnung, zusammen mit einer Kurve der in Fig. 4 gezeigten Form, multipliziert mit einem Koeffizienten, wodurch die Differenz zwischen den zwei Kurven reduiert wird, und zwar bei χ = 1/4 und 3/4, auf Werte, die hinsichtlich der Amplitude und dem Vorzeichen identisch sind; und
Fig. 8 ein vereinfachtes Blockschaltbild eines Gerätes zur Realisierung des Verfahrens nach der Erfindung.
-8-
Die Ableitung der binären Polynome und des Verfahrens und des Gerätes zur Realisierung der Polynome ist in Einzelheiten in den vorerwähnten Patentbeschreibungen dargelegt. Eine grundlegende Erläuterung dieser Ableitung kann jedoch für ein besseres Verständnis des Verfahrens nach der Erfindung von Nutzen sein.
Wenn eine polynomische Annäherung dazu verwendet wird, um Werte von y als eine Funktion von χ zu interpolieren, so ist es allgemein üblich, das Problem auf einen günstigen x-Bereich zu normalisieren, wie beispielsweise -1 bis +1 oder O bis 1. Bei der folgenden Erläuterung wird angenommen, daß der x-Bereich auf 0 bis 1 normalisiert ist und daß die Algorithmen unter Verwendung eines zweiten komplementären Binärkodes ausgeführt werden, es sei jedoch hervorgehoben, daß dies keine Einschränkung des Verfahrens darstellt.
Wie bereits erwähnt wurde, gelangt das iterative Interpolationsverfahren unter Verwendung einer binären polynomischen Reihe an dem geforderten x-Wert, für Vielehen der Wert von y bestimmt werden soll, dadurch an, indem wiederholt der x-Bereich zweigeteilt wird, d.h. y wird in einer Serie von Stufen interpoliert, wodurch eine binäre Serie von x-Werten erhalten wird, so daß
bei der ersten Stufe (n=1) y erhalten wird bei x/2 bei der zweiten Stufe (n=2) y erhalten wird am ungeraden
Viertelwert von χ in dem Segment, welches den geforderten x-Wert enthält
bei der dritten Stufe (n=3) y erhalten wird an den ungeraden
achten Werten von χ in dein Segment, welches den geforderten x-Wert enthält.
-9-
609838/QC09
Wie bereits erwähnt wurde, besitzt das binäre polynomische iterative Interpolationsverfahren die Eigenschaft, daß durch dieses interpolierte Werte von y für eine binäre Folge von x-Werten erhalten wird.
Eine binäre polynomische Reihe vierter Ordnung der folgenden Formel:
y = do Bo + d1 B1 + d2 B2 + d3 B3 + d4 B4
worin dr den Koeffizienten n'ter Ordnung und B ein lineares Polynom von χ der η'ten Ordnung ist, soll nun anhand eines Beispiels abgeleitet werden, und zwar unter Verwendung einer gut bekannten Funktion y = sin χ über einen Bereich von O bis 90 normiert auf einen x-Bereich 0 bis 1.
Gemäß Fig. 6 ist eine Kurve 10 der Funktion y = sin χ über einen x-Bereich 0 bis 90° normiert auf einen x-Bereich 0 bis 1 gezeigt und es soll in der üblichen Weise der Wert von y bei irgendeinem gegebenen Wert χ in dem Bereich vorausgegriffen sein als Yzn) = sin X/n"\> d.h. y(0) = sin ° = °» y(i/2) = Sin X(i/2) = sin 45 = 0,70711 ... usw.
Es wurden zwei spezifische Endpunktwerte a, b auf der Kurve bestimmt. Der Punkt "a" ist der Wert von J(q\ am Ursprung, das ist der Wert des x-Schnittpunktes, und der Punkt "b" ist der Wert von y/.v. Die Gleichung einer Linie, die zwischen den Punkten a und b gezogen ist, kann in der Form y = 1/2(a+b) + 1/2(b-a)·2(χ-1/2) = a + (b-a)x ausgedrückt werden. Eine Lösung dieses Ausdrucks führt lediglich zu Werten y = x, d.h. eine gerade Linie 12. Eine lineare Interpolation zwischen diesen zwei Punktwerten
-10-
2506981
würde einen Wert von y bei χ = 1/2 von
ergeben. Für eine zweite Interpolation sind zwei Möglichkeiten vorhanden, d.h. nach UP oder DOWN zu schreiten, d.h. zu interpolieren,
y(1/4)oder
oder y(3/4) = [y(1/2)
und weiter würde die Entscheidung,y/. ,,> oder Υ(Ύ/ι,\ zu interpolieren, durch den gegebenen x-Wert bestimmt werden, für welchen der Wert von y gefordert wird.
Es ist offensichtlich, daß eine lineare Interpolation zwischen den zwei Endpunkten Antworten liefert, und zwar im Einklang mit dem polynomischen Ausdruck y = mx + b (die Gleichung für eine gerade Linie), jedoch im Falle einer nicht-linearen Funktion, wie beispielsweise y = sin x, nicht angemessen sein würde.
In Fig. 6 stellt eine Kurve 14 die Auftragung der Differenzen zwischen den Kurven 10 und 12 dar und kann als Restbedürfniskurve betrachtet werden; d.h. bei irgendeinem gegebenen Wert von y = f(x) ist diese der Wert (oder Restbedürfnis), der zu dem Wert addiert werden muß, welcher durch lineare Interpolation von y = f(x) zwischen zv/ei Punktwerten erhalten wurde, die dem gegebenen Wert von χ einschließen. Es läßt sich zeigen, daß dies zu einer Annäherung an eine Parabel führt, die-ein Polynom zweiter Ordnung der Form B1 = K4x (1-x) darstellt, wobei
-11-
K einen Koeffizienten bildet und das Polynom zweiter Ordnung x(1-x) mit einem Maßstabfaktor vier multipliziert wird, der einen Wert der Einheit für den Ausdruck liefert, wenn χ = 1/2.
Wenn somit ein Ausdruck, der eine Parabel multipliziert mit einem Koeffizienten K beschreibt, zu den linearen Ausdrücken, die zuvor beschrieben wurden, addiert wird, so wird dies dazu führen, daß der gesamte Ausdruck dichter an die gewünschte Sinusfunktion angenähert wurde.
Wenn die Differenz zwischen den zwei Werten bei χ = 1/2 mit K bezeichnet wird, dann muß Κ4χ·(1-χ) gleich sein der Differenz zwischen y = sin χ und y = χ bei χ = 1/2, d.h. (0,70711 - 0,5) = 0,20711. K kann als Restbedarf bei χ = 1/2 bezeichnet werden. Für einen polynomischen Ausdruck, um den richtigen Wert von y für sin χ vorzusehen, wenn χ = 1/2, muß der quadratische Term einen Wert liefern, der gleich ist mit K, und es kann die polynomische Reihe geschrieben werden:
y = i/2(b+a) + i/2(b-a)·2(χ-ΐ/2) + K'4x(i-x) -
und es läßt sich erkennen, daß für die Funktion χ = sin χ y bei x-Werten von 0, 1 und 1/2 richtig ist. Für eine zweite Interpolation bei χ = 1/4 oder 3/4 führt die Interpolation zu
DOWN Yf^/i±\ = i/2[a + Jr^/2) ] + (ein Korrekturfaktor zweiter Ordnung) oder
UP y(3/4) = 1/^[y(λ/9) + k] + (ein Korrekturfaktor zweiter Ordnung),
und es kann gezeigt werden, daß der neue Korrekturfaktor gleich ist K/4. Für eine dritte Interpolation bei χ = 1/8
-12-
609838/0609
260698
oder 3/8 oder 5/8 oder 7/8, wie gefordert, beträgt der Korrekturausdruck K/16 und so weiter.
Es ist daher möglich, dies als einen Algorithmus der Form
y. = i/2(8l
n + bn) +
aufzuschreiben, wobei η die Stufe in dem Algorithmus ist, so daß bei der η'ten Stufe:
up DOWN an =
UP oder DOWIi
Eine Interpolation des polynomischen Ausdrucks der Form y = 1/2(b+a) + i/2(b-a)·2(χ-1/2) + K'4x(1-x)
führt somit zu einer sehr viel besseren Annäherung für die Funktion y = sin χ als eine lineare Interpolation zwischen zwei Endpunkten, es sei jedoch erwähnt, daß drei Werte erforderlich sind, nämlich die Werte von y bei χ = 0 und 1, und der Wert von K, um die Interpolation durchzuführen, und es sind allgemein (n+1)-Größen erforderlich, um eine Interpolation n'ter Ordnung durchzuführen.
Es wurde erwähnt, daß die Kurve 14 keine echte Parabel darstellt. Fig. 3 zeigt eine Parabel der Form y = 4x(1-x) und die Kurve 16 der Fig. 6 zeigt eine Parabel der Form K4x (1-x), wobei K = 0,20711 .... Die Differenz zwischen den zwei Kurven 14 und 16 ist bei der Kurve 18 in Fig. gezeigt und es wird sich noch ergeben, daß diese ähnlich mit derjenigen einer kubischen Kurve (dritter Ordnung) ist.
-13-
;38/0609
Die Differenzkurve 18 stellt den Fehler zwischen der Sinusfunktion und dem obengenannten Polynomausdruck mit dem quadratischen Term dar. Die reduzierten Maßstabswerte für die Ordinate y zeigen die relativen Größen in den Fehlern, die durch die Kurven 14 und M herausgegriffen sind.
Das Hinzufügen eines kubischen Terms zu de:a Polynomausdruck führt daher zu einer weiteren beträchtlichen Reduzierung der Größe dieser Differenz. Die Kurve 18 ist nicht zur x-Achse symmetrisch, so daß daher zur Reduzierung des Fehlers der kubische Ausdruck dritter Ordnung die folgende Form haben sollte:
B, = ίψ (1-x)Cx-1/2)
wie dies in Fig. 4 gezeigt wird. Bei diesem Ausdruck ist 64/3 der Maßstabkoeffizient, der Ausdruck x(1-x) ist ähnlich dem parabelförmigen Ausdruck zweiter Ordnung und der Faktor (x-1/2) wird dazu verwendet sicherzustellen, daß der Ausdruck den Beitrag von null bei χ = 1/2 liefert, wäh rend das negative Vorzeichen die erforderliche Polaritätsumkehrung bewirkt. Der Polynomausdruck kann nunmehr geschrieben werden als:
y = 1/2(b+a) + i/2(b-a) ·2(χ-ΐ/2) + Κ·4χ(1-χ) + C'~ (1
wobei der Wert des Koeffizienten C so ausgewählt wird, um die Differenz zwischen den Kurven 18 und 20 bei χ = 1/4 und χ = 3/4 auf Werte zu reduzieren, die in der Amplitude und dem Vorzeichen identisch sind.
Die Differenz zwischen der echten Sinusfunktion und einer Funktion, die durch Interpolation des Polynomausdrucks abgeleitet wurde und das Polynom dritter Ordnung umfaßt,
-14-
€03833/0803
- 14 60638
ist als Kurve 22 in Fig. 7 dargestellt und es sei hervorgehoben, daß diese ähnlich ist derjenigen einer Kurve vierten Grades (vierter Ordnung) (wie in Fig. 5 gezeigt), bei welcher die Fehler bei χ = 0, 1/2 und 1 gleich null betragen- und nunmehr beträchtlich reduziert sind, jedoch bei χ = 1/4 und χ = 3/4 nicht null sind.
Eine Grundregel der binären Polynomreihen besteht darin, daß, wenn jeder Punkt einer genauen Entsprechung (exact fit) festgestellt wird, alle nachfolgenden Polynome diese Entsprechung bewahren müssen. Dies bedeutet, daß bei einer Anwendung einer binären polynomischen Annäherung mit einem Ausdruck zweiter Ordnung eine genaue Entsprechung für χ = 0, χ =1/2 und χ = 1 aufgestellt werden kann. Das Polynom B-* dritter Ordnung und alle nachfolgenden Polynome müssen daher den Ausdruck χ (1-x)(x-i/2) enthalten. Um mit der Erläuterung . der Regel der genauen Entsprechung weiterzufahren, so fordert die Regel, daß das Polynom B^ vierter Ordnung bzw. vierten Grades auch das Polynom x(1-x)(x-1/2) enthalten muß, da die aufgestellten Punkte der genauen Entsprechung weiterhin χ = 0, 1/2 und 1 sind. Jedoch muß Βλ vierter Ordnung sein und bei diesem Ausführungsbeispiel wird die geforderte Form dadurch erhalten, daß man einen zweiten Faktor (x-1/2) addiert. Demnach enthält B/, den
2
Ausdruck x(1-x)(x-1/2) und Fig. 5 zeigt eine Kurve eines Polynoms vierter Ordnung der Form:
% = 236.x.(1-x).(x-1/2)2,
2"56
wobei ~— den Maßstabsfaktor darstellt.
Die Addition eines Terms vierter Ordnung der Form:
-15-
eO9333/OSO9
Q.256.X.(1-x).(x-1/2)2,
3
wobei der Wert des Koeffizienten Q so gewählt ist, daß eine exakte Entsprechlang bei den Werten von y für χ = 1/4 und χ = 3/4 erhalten wird, führt zu einer noch v/eiteren Reduzierung des Fehlers.
Es läßt sich somit das binäre Polynom vierter Ordnung
y = do B0 + d1 B1 + d2 B2 + d3 B3 + d4 B4 in folgender Weise schreiben:
y ='i/2(b+a) + i/2(b-a).2x + K.4x(1-x) +
C. 64 χ (1-x) (x-1/2) + 3
Q. 256 χ (1-x)(x-1/2)2
Der Algorithmus kann somit geschrieben werden als: yn= i/2(an+bn) +Kn
wobei Kn = 1/4Kn-1 [+J] Cn + Qn
]8Qn
n-1 n
Qn =
Jeder der Polaritätsoperatoren [+U] und [+U ] bedeutet, daß
η n-1
der von diesem Ausdruck qualifizierte Koeffizient abgezogen wird, wenn die Interpolation DOWN ist, die für ein niedrigeres Segment von χ beim η'ten oder (n-1)'ten Schritt je nach Fall durchgeführt wird, und addiert wird, wenn diese- UP ist, die für ein höheres Segment von χ durchge-
-16-
809838/0809
führt wird. Es ist somit erforderlich, Informationen darüber verfügbar zu haben, ob der Interpolationsschritt UP oder DO¥N bei zwei Stufen des Algorithmus, nämlich bei der η'ten Stufe und der (n-1)'ten Stufe, ist.
Um den Algorithmus bis hinauf zum Polynom vierter Ordnung aufzustellen, ist es erforderlich,die Werte der Koeffizienten a, b, K, C und Q zu kennen, die bequemerweise von einer Kenntnis von fünf Punktwerten von y bei spezifischen vierten von x, nämlich bei
χ = O, 1/4, 1/2, 3/4, 1,
abgeleitet werden.
Die genannten Polynomreihen können bis ins Unendliche erweitert werden, eine bequeme Progression besteht jedoch darin, die Reihe bis zur achten Ordnung zu erweitern und Maßnahmen zu treffen, daß die Koeffizienten dn bis do für die Polynome B1- bis BQ der fünften bis achten Ordnung in Kombination genaue Entsprechungen für die Funktion für die ungeraden 1/8-Werte von χ erhalten. Um eine Interpolation eines Polynoms achter Ordnung zu erreichen, ist es erforderlich, neun spezifische Größen zu kennen, wie die neun Punktwerte von y bei spezifischen Werten von x, und zwar bei χ = 0, 1/8, 1/4, 3/8, 1/2, 5/8, 3/4, 7/8, 1.
Die Koeffizienten d , d^, K, C und Q der binären Polynome sind als solche Koeffizienten definiert, die zu einer genauen Entsprechung an den Endpunkten χ = 0, 1 und der binären Folge von x-Werten bei 1/2, 1/4 und 3/4 führen. Es ist angenommen, daß die fünf Punktwerte Υ(0\, y(^/L·) usw· der zu nähernden Funktion bekannt sind. Die Werte der Koef-
-17-
809838/0809
fizienten d ,
-0, Xj, K, C und Q können dann unmittelbar auf einer einfachen algebraischen Grundlage bestimmt werden, wie dies in den zuvor erwähnten Patentschriften genauer erläutert ist.
Verfahren unter Verwendung von Flußkarten und einem Gerät für die Interpolation solcher Polynome mit einem Polynom vierter Ordnung sind vollständig in den erwähnten Patentschriften beschrieben, der Übersichtlichkeit halber wird jedoch in der folgenden Tabelle 1(a) die Aufstellung eines binären Polynomalgorithmus vierter Ordnung mit Hilfe eines Verfahrens, wie es in den erwähnten Patentschriften beschrieben ist, veranschaulicht:
Tabelle 1(a)
Register
Anfangsbedingungen
gehalten beim η'ten Stufenstart
Algorithmus-Aufstellung »n»-te Stufe, Folge wie Reihenfolge
Q
C
O bei n=1 Q bei n=2
O bei n=1 C bei n=2
K bei n=1
«b« b bei n=1
•af a bei n=1
keine
'n-1
Jn-1
Qn-1
Qn = ^TT1
Cn =
bn =
an β
]8Qn
c + ο
Λ , wenn UP bei "n". n-1 ter
_ Λ , wenn DOWN bei η— ι H^, ti
n"-
z er
γ 1, wenn UP bei"n"-
""*' ter
an-1♦ wenn D0WN Dei
1/2(a
bn)
ter
Kn
-18-
609838/0609
Ein Blick auf die Tabelle i(a) zeigt, daß dann, wenn der Algorithmus so erweitert wird, daß er Polynome mit Ausdrücken dritter und höherer Ordnung enthält, eine Reihe von Komplikationen entstehen, wie beispielsweise:
(i) Obwohl a, b und K bei der ersten Stufe (n = 1) des Algorithmus eingeführt bzw. eingetragen werden, ist es erforderlich, den Eintrag von C und Q (für ein Polynom vierter Ordnung) bis zur zweiten Stufe (n = 2) des Algorithmus zu verzögern, was bei einer Algorithmus-Behandlungsweise unerwünscht ist, und wenn es bevorzugt wird, daß alle Stufen des Algorithmus identisch sind.
(ii) Wenn K auf den neuesten Stand gebracht wird, ist es erforderlich zu bestimmen, ob die Interpolation UP oder DOWN bei der η'ten Stufe ist, um festzustellen, ob Cn von 1/4K1 subtrahiert oder addiert werden soll. Weiter ist es, um C auf den neuesten Stand zu bringen, erforderlich zu bestimmen, ob die Interpolation bei der (n-1)'ten Stufe UP oder DOWN war, um zu bestimmen, ob 8Qn von Cn_«./8 subtrahiert oder addiert werden soll. Es ist somit erforderlich, für zwei aufeinanderfolgende Stufen des Algorithmus die UP/DOWN-Entscheidungen zu speichern. Auch dies ist nicht wünschenswert.
(iii) Qn_-i» Cn_i vn-d- ^n.-i müssen aufeinanderfolgend auf den neuesten Stand gebracht werden, wobei mit dem Koeffizienten höchster Ordnung begonnen wird, d.h. Qn muß zunächst auf den neuesten Stand gebracht werden (oder· teilweise auf den neuesten Stand gebracht werden als 8Q = 1/2Q 1), um Cn zu erhalten, und weiter müssen Cn-1 und Q1 auf den neusten Stand auf Cn und Qn gebracht werden, und zwar jeweils bevor K1 auf den neusten Stand gebracht werden kann.
-19-
609838/0609
der vorliegenden Erfindung wurde das Verfahren der Aufstellung des Algorithmus in der Weise abgeändert, daß die zuvor erläuterten Komplikationen vermieden werden,
ohne daß dadurch weitere oder andere Nachteile auftreten.
Tabelle 2 zeigt eine Aufstellung eines bevorzugten Algorithmus vierter Ordnung nach der vorliegenden Erfindung.
Tabelle
Register Anfangs- gehalten beim Algorithmus "n"-te Stufe, bedin- "nn-ten Stu- in der Folge wie die Reigungen fenstart henfolge
keine
'τ,-Λ
a bei n=1 a„ b bei n=1 b.
K bei n=1
C \ C bei n=1 C.
Q bei n=1 CL
yn =
bn)
y , wenn UP bei (n+1)-
a„, wenn DOWN bei (n+1)-n ter
bn, wenn UP bei (n+1V y , wenn DOWN bei (n+1)-
XX ι
ter
C„ -D
= TE
-20-
609838/0609
Bei der Aufstellung des bestimmten zu beschreibenden Algorithmus sind bestimmte Annahmen gemacht, um dadurch eine bevorzugte Realisierung des Verfahrens für einen bestimmten Anwendungsfall vorzusehen, und es sind bestimmte Entscheidungen getroffen, diese Annahmen und Entscheidungen sollen jedoch nicht als Einschränkungen des Gegenstandes der Erfindung betrachtet werden. Einige dieser Annahmen und Entscheidungen sind wie folgt:
1. Punktwerte wiedergebende digitale Größen, wobei diese Werte ein Segment definieren, und Korrekturausdrükke werden in Form eines zweiten Komplementkodes in fester Punktschreibweise vorgesehen.
2. Feststellungen sind innerhalb einer Zone gültig, die durch den O-bis 1-Bereich von sowohl χ als auch y eingegrenzt ist. Es sei erwähnt, daß bipolare Koeffizienten und Ausdrücke auftreten trotz der zuvor genannten unipolaren Einschränkungen.
3. Ein "idealer" Algorithmus erzeugt direkt irgendeine Funktion vierter Ordnung bzw. vierten Grades, die in die Zone gezogen werden kann, die durch den 0- bis 1-Bereich von χ und y eingegrenzt ist, vorausgesetzt, daß zwischen den x-Bereichsgrenzen die Funktion keine der Linien y = 0 oder y = 1 schneidet.
Eckschnittpunkte (d.h. bei χ = 0 oder χ = 1) und tangentiale Berührungspunkte (d.h. von y = 0 oder y = 1 Linien) sind beide erlaubt.
Es sei eine Funktion von χ betrachtet, die durch einen allgemeinen polynomischen Ausdruck wiedergegeben werden
-21-
603838/0809
y = d0 B0 + d,, B1 + d2 B£ + d3 B3 + d4 B4
worin B ein linearer Polynomausdruck in χ von der n-ten Ordnung und dn die den relevanten adressierten Koeffizienten spezifizierende Amplitude ist.
Wie zuvor erwähnt, erfordert das Konzept der "binären Polynome", daß Punkte genauer Entsprechung (fit) aufgestellt werden und in einer binären Folge vom x-Wert festgehalten werden, beispielsweise die folgende bevorzugte Folge:
Polynomgruppe Ergebnisse in exakten Ent
sprechungen bei den x-Werten
B0 und B1 O und 1
B2 1/2
B3 und B4 1/4 und 3/4
B5, B6, B7 und B8 1/8, 3/8, 5/8 und 7/8
Bq bis B^ginklusive (ungerade 1/16-Brüche) -
1/16 bis 15/16 inklusiv
Jede polynomische Gruppe erreicht die exakte Entsprechung bei der nächsten Gruppe von x-Werten in der binären SubDivision.
Die algebraischen Faktoren jedes Polynoms werden entweder einheitlich bestimmt oder geführt durch die Anforderungen der genauen Entsprechung (exact fit). Ein numerischer Maßstabsfaktor wird in jedem Fall so gewählt, daß ein
-22-
609838/0609
polynomischer Spitzenwert so nah wie möglich bei der Einheit erhalten werden kann; diese Wahl ist folgerichtig bei der Realisierung der Interpolation in einer vorteilhaften add-shift-Organisation, bei welcher beispielsweise digitale Werte in Schieberegistern gehalten werden und eine Teilung durch eine Zweierpotenz dadurch erreicht wird, indem die digitale Zahl um die geeignete Anzahl von Stellen in ihrem Register verschoben wird.
Verschiedene Entscheidungen(options) sind für die algebraischen Faktoren eines gegebenen binären Polynoms verfügbar. Die ersten Entscheidungen entstehen für das B- und IL-Paar der Polynome. Es wäre möglich gewesen, das Polynom B zu verwenden, um eine exakte Entsprechung bei χ = O zu erreichen, und das Polynom B^ zu verwenden, um eine exakte Entsprechung bei χ = 1 zu erreichen. Die Entscheidung war jedoch so, diesem Lauf nicht zu folgen, sondern das B- und B^-Paar gleichzeitig zu verwenden, um genaue Entsprechungen bei χ = 0 und χ = 1 zu erhalten. Eine ähnliche Situation ergibt sich für das B,- und B^-Paar der Polynome. Immer zunehmende Zahlen von Entscheidungen ergeben sich für jede Gruppe höherer Ordnung durch die Möglichkeiten der Entsprechung als eine kollektive polynomische Gruppe, als Paare von Polynomen, als einzelne Polynome und in unterschiedlicher Entsprechungsfolge.
Es wird angenommen, daß ein allgemeiner Vorteil dadurch erzielt werden kann, indem man für jedes Polynom die Bedingung der ungeraden oder geraden Symmetrie um das x-» Hauptzentrum festhält, d.h. das Anfangssegment von χ (siehe die binären polynomischen graphischen Formen in den Figuren 1 bis 5, bei welchen das Anfangssegment sich
-23-
609838/0609
-25- 2606381
von x=O bis χ = 1 erstreckt und das x-Bereichszentrum bei χ = 1/2 liegt).
Diese Entscheidung, diese Symmetrie festzuhalten, beseitigt die Entscheidungen von den BQ/B>.- und B^/BA-Paaren. Eine Reduzierung der Entscheidungen resultiert auch innerhalb jeder Gruppe höherer Ordnung.
Das Polynom y = dQ BQ + d^ B^ + d2 B2 + d^ B^ läßt sich daher gemäß der folgenden Tabelle 3 darstellen:
-24-
609838/0609
- 2M- -
Polynomordnung
Tabelle 3
Koeffizienten- Binäres Polynom (B ) Bezeichnung (d )
0 i/2(b + a) Bo = 2(x-1/2)
■ 1 1/2(b - a) B1 = 4x(1-x)
2 K B2 = |^c(i-x)(x-i/2)
3 C B3 = 2I^x(I-X) (x-1/2);
4 Q 4
Die bezeichneten Koeffizienten für die Annäherung vierter Ordnung können unmittelbar von den fünf Funktionsproben abgeleitet werden, die im x-Bereich gleichen Abstand besitzen:
x-Wert
1/4
1/2
y-Wert
y = a yi/4 -
3/4K - C + Q
« i/2(a + b) + K
609838/0609
-25-
3/4 J3^ = 1/4a + 3/4b + 3/4K + C + Q
1 Y1 = b
Die resultierenden Annäherungen vierter Ordnung sind dann: y = i/2(b+a)-Bo + i/2(b-a)·:^ +K-B2 + C-B3 + Q-B4
Allgemein schreitet der Algorithmus von Stufe zu Stufe voran, es werden die gespeicherte Funktion bei einer Folge von x-Werten interpoliert, die aufeinanderfolgenden Zweiteilungen des x-Bereiches darstellen. Der Algorithmus startet sine Operations-Haitepunktewerte von y bei den x-Werten O und 1 und den Werten der Koeffizienten K, C, Q.
Die erste Algorithmusstufe (n = 1) interpoliert immer die gespeicherte Funktion bei χ = 1/2 (y wird bestimmt bei χ = 1/2).
Die zweite Algorithmusstufe (n = 2) interpoliert y bei dem x-Wert 1/4 oder 3/4, was davon abhängt, ob die Stufe DOWN (x = 1/4) oder UP (χ = 3/4) läuft.
Die dritte Algorithmusstufe (n = 3) interpoliert ähnlich y bei einem x-Wert I/8, 3/8, 5/8 oder 7/8, was davon abhängt, ob die Stufe DOWN oder UP von dem interpolierten Wert bei χ => 1/4 oder 3/4 läuft usw.
Die eingeschlagene DOWN- oder UP-Richtung bei einer gegebenen Algorithmusstufe muß daher bestimmt werden. Wenn der Wert von y für einen gegebenen Wert von χ berechnet wird, so wird dies durch Betrachtung des O- oder 1-Zustandes jeweils durchgeführt, der für ein bestimmtes Bit
-26-
609838/0609
von χ auftritt. Das η1te Bruch-Bit von χ bestimmt die bei der (n+1)-ten Stufe des Algorithmus exngeschlagene
DCWN- oder UP-Richtung.
Im folgenden soll nun ein Beispiel gegeben werden, welches mit einem Register beginnt, das einen Wert von χ als eine zweite Komplement-Bruchzahl hält:
Polaritäts-Bit, welches für den O- bis 1-Bereich von χ 0 sein muß
-x-Register-
V /TBl
1. Bruch-Bit
η'tes Bruch-Bit
1 1 O 1 t
XL
n+i
S
\ T f -
2. -
I-
r , f
Γ
5
\ >
J I, ■?.
2
Eine einzelne Nach-Links-Verschiebung bewirkt das Entfernen des Redundanten-Polaritäts-Bits:
Einzel-x-Bit-Detektor
Bruch-Bits von χ
Bestimmen DOWN oder UP der Stufe
Eine einzelne Nach-Links-Verschiebung wird nach jeder Algorithmusstufe durchgeführt.
Bevor der Algorithmus von Tabelle 2 im einzelnen betrachtet wird, sei zunächst erläutert, daß, wie bereits unter Hinweis auf Tabelle 1 beschrieben wurde, bestimmte Ausdrücke in dem Algorithmus einen Polaritätsoperator erfordern, der eine Subtraktion oder Addition anzeigt, bevor der
-27-
609838/0609
Korrekturterm auf den neuesten Stand gebracht wird und möglicherweise ein anderer Term oder Terme. Es sei ein "n"-ter Stufen-Algorithmusterm betrachtet:
-D
[+U ]C
n+1
Dieser Ausdruck erfordert, daß der Wert von Cn bei der η-ten Algorithmusstufe subtrahiert oder addiert wird, wenn der Kompensierausdruck für die nächste Stufe (n +1) des Algorithmus auf den neuesten Stand gebracht wird, und zwar in Einklang mit dem "state" eines bestimmten x-Bits, d.h.
C wird addiert, wenn der Schritt c wird subtrahiert, wenn UP bei der (n+1)-ten Stufe lautet, der Schritt bei der (n+1)-die erfordert, daß das η-ten ten Stufe DOWN lautet, die Bruch-Bit χ = 1 ist. erfordert, daß das n-ten
Bruch-Bit von χ = O ist.
Wenn der Wert von χ für einen gegebenen Wert von y (d.h. inverse Interpolation) bestimmt werden soll, so wird der interpolierte Wert von y mit dem gegebenen Wert von y verglichen, um festzustellen, ob die nächste Stufe nach DOWN oder UP läuft, und es wird eine entsprechende O oder 1 in das x-Register eingelesen.
Bei dem Algorithmus gemäß Tabelle 2 werden die Punktwerte von a und b bei χ = O und χ = 1, welche das Anfangssegment von χ definieren, und die Werte der Koeffizienten K, C und Q der zweiten, dritten und vierten Ordnung je-
-28-
609838/0609
weils für die erste Stufe (n = 1) des Algorithmus gespeichert und es muß dann y für einen gegebenen Wert von χ bestimmt werden. Der Algorithmus schreitet dann Stufe um Stufe in folgender Weise voran:
Stufe 1, n=1
(i) y wird bei χ = 1/2 durch lineare Interpolation zwischen den Punktwerten a, b interpoliert, um einen Mittelpunktswert zu erhalten, und es wird dann der Mittelpunktswert durch Addition von K kompensiert, um Y(n«\ = 1/2(a+b) + K zu erhalten.
(ii) Das erste Bruch-Bit von χ wird, wie zuvor beschrieben, geprüft, um zu bestimmen, ob UP zum nächsten Segment zwischen χ = 1/2 und χ = 1 weitergeschritten werden soll oder DOWN zum Segment zwischen χ = O und χ = 1/2 bei der nächsten Stufe (n + 1) = 2.
(iii) Wenn die Entscheidung darin besteht, DOWN zu folgen (bei χ = 1/4 zu interpolieren), wird a festgehalten und y·/ .j\ wird für b substituiert. (Im allgemeinen kann dies festgestellt werden als Di&n+i = ^n und bn+4j = yn.) Wenn in ähnlicher Weise die Entscheidung darin besteht, nach UP zu laufen (bei χ = 3/4 zu interpolieren), so wird b festgehalten, jedoch wird y/n_,j\ für a substituiert (U:aQ+1 -
(iv) K wird (auf Kn+^ = K«) dadurch auf den neuesten Stand gebracht, indem K durch vier geteilt wird und indem C abgezogen wird, wenn die Entscheidung darin besteht, nach DOWN zu laufen9 jedoch wird C addiert, wenn
-29-
309833/9909
die Entscheidung darin besteht, nach UP zu laufen, es wird Q addiert, so daß
-D K2 = K/4 [+U]C + Q
Stufe und allgemein geschrieben:
(ν) C wird auf [Czn+1N = c(n_2)] dadurch auf den neuesten Stand gebracht, indem C durch acht geteilt wird und Q/2 subtrahiert wird, wenn die Entscheidung darin besteht, nach DOWN zu laufen, oder es wird Q/2 addiert, wenn die Entscheidung darin besteht, nach UP zu laufen, so daß
C/__ ο\ = C/8 Littj Q/2 \n=d) +UJ
Stufe
und allgemein ausgedrückt:
Cn -D Qn C(n+1) "υ" ^1-1F"
(vi) Q wird auf [Qfn+1) = Q(n-2)^ <3-adurcn auf den neuesten Stand gebracht, indem Q durch 2 geteilt wird für die Verwendung bei obigem (v) und weiter Q/2 durch 8 geteilt wird, um Qz^, o\ = Q/16 zu erhalten, was allgemein ausgedrückt lautet:
°n
-30-
103830/0109
- 30 - 260698
Stufe 2, η = 2
Abhängig von der Entscheidung, ob UP oder DOWN vorangegangen wird, wird y>n_2) bei x = 1/4 oder χ = 3/4 interpoliert, um zu erhalten: Ycn-2) = 1/2(a2 + bp) + K2 und es werden dann die Schritte (ii) bis (v) vor der Interpolation von V/ ,\ bei der Stufe 3 wiederholt. Dieser Prozeß wird wiederholt, wobei das Segment von χ sukzessive zweigeteilt wird derart, daß die Punktwerte a., ,w b/n+.N auf den gegebenen Wert von χ konvergiert werden, für welchen y bestimmt werden soll.
Die Figur 8 zeigt ein vereinfachtes Blockschaltbild eines Datenverarbeitungsgerätes mit den Merkmalen nach der Erfindung, um den Algorithmus ausführen zu können. Das Gerät 10 besteht aus einem Serial Random Access Memory (RAM) 12, welches in Form von vielfachen 20-Bit-Schieberegistern organisiert ist, wobei zwei 20-Bit-Schieberegister (SR) 14, 16 als SRA und SRB jeweils herausgegriffen sind und ein Volladdierer 18 vorhanden ist.
Der Speicher RAM 12 besitzt einen Eingang 12a, der mit einer Eingangs-Auswähleinrichtung 22 mit einem Schalter S1 gekoppelt ist, der als einfacher mechanischer Schalter mit einem beweglichen Kontakt S1a gezeigt ist, der selektiv mit einem von zwei festen Kontakten S1b und S1c verbindbar ist. Der Kontakt S1b ist mit einem Eingangsanschluß 24 gekoppelt, der im Betrieb die Punktwerte a und b und die Korrekturterme K, C und Q in Form von 20*- Bitworten in einem zweiten Komplement-Bruch-Binärkode empfängt. Die fünf Binärworte a, b, K, C und Q gelangen zu fünf 20-Bit-Registern des Speichers RAM 12, und zwar
-31-
in. Serienformat unter der Steuerimg eines Haupttaktimpulsgenerators 26. Die Verbindungen vom Generator 26 zu den verschiedenen Teilen der Schaltung 10, wie beispielsweise zum RAM und zu den Taktimpulseingangen der Schieberegister und zu anderen Steuerschaltungen, wurden weggelassen, da deren Aufgabe für den Konstrukteur logischer Schaltungen offensichtlich ist und deren Erläuterung nur die Beschreibung und das Verständnis erschweren würde. Der Kontakt S1c ist mit dem Ausgang 18c des Addierers 18 gekoppelt .
Eine Schieberegister-Eingangsauswähl-Schaltung 28 besitzt jeweils Ausgänge 28a und 28b, die mit den Eingängen 14a, 16a von zwei Schieberegistern 14 und 16 verbunden sind. Die Auswählschaltung 28 hat vier Eingänge 28c, d, e, f; der Eingang 28c ist mit dem Ausgang 12b des Speichers RAM 12 verbunden, 28d ist mit dem Ausgang 18c der Addierstufe 18, 28e mit dem Ausgang 14b des Schieberegisters 14 und 28f mit dem Ausgang 16b des Schieberegisters 16 verbunden. Irgendeiner der Eingänge 28c bis 28f kann selektiv mit einem der Ausgänge 28a und 28b gekoppelt werden.
Die Ausgänge 14b, 16b der Schieberegister 14, 16 sind über eine logische Addierschaltung 30 mit dem Addierer gekoppelt, die in Abhängigkeit von der UP/DOWN-BeStimmung gesteuert werden kann, um einen ausgewählten ihrer Eingänge von dem anderen zu subtrahieren oder zu dem anderen zu addieren.
Ein 16-Bit-Schieberegister 32, welches mit SRx bezeichnet ist, dient dazu, den gegebenen Wert von x, der durch eine x-Eingangsschaltung 34 eingestellt bzw. gesetzt wird,
-32-
009838/0609
zu speichern, für welchen Wert der Wert von y bestimmt werden soll. Der Wert der unabhängigen Veränderlichen χ wird in Form eines zweiten Komplementbruch-Binärkodes gespeichert. Ein UP/DOWN-Detektor 36 ist so gekoppelt, daß er das höchstwertige Bruch-Bit von χ empfängt und das Polaritätsbit ignoriert, und die logische Addierschaltung 30 entsprechend setzt, wenn die Korrekturausdrücke auf den neuesten Stand gebracht werden bzw. erneuert werden, wie dies beschrieben wurde.
Eine Vergleichsschaltung 38 besitzt Eingänge, die mit jeder Stufe des SRx-Registers 32 verbunden sind, und diese Schaltung ist so ausgelegt, daß sie feststellt, wann alle x-Bits null sind, um dann ein Ausgangssignal für die Beendigung der Interpolation zu erzeugen. Wie bereits erwähnt wurde, wird die Zahl in dem SRx-Register 32 um eine Stelle für jede Stufe in dem Algorithmus verschoben, so daß das erste Bit, welches abgefragt wird, das höchstwertige Bit ist, nach-dem das Polaritätsbit entfernt wurde.
Ein mit SRy bezeichnetes 16-Bit-rSchieberegister 40 ist mit dem Ausgang 18c des Addierers verbunden, um den interpolierten Wert von y zu empfangen.
Im Betrieb werden digitale Ziffern in dem bzw. aus dem Speicher RAM 12 eingeschrieben und ausgelesen und werden durch die Schieberegister unter der Steuerung der Taktimpulse aus dem Generator 26 verarbeitet. Das Teilen einer digitalen Zahl in einem Schieberegister durch eine Zweierpotenz wird dadurch erreicht, indem man die Zahl um die richtige Anzahl von Stellen verschiebt. Die digitalen Zahlen werden dem Speicher RAM und den Schiebe-
-33-
809638/0609
registern SRA, SUB und SRy als 20-Bitzahlen angeboten, obwohl das Endresultat, welches von SRy abgegriffen wird, auf eine 16-Bitzahl beschränkt sein kann. Dies dient dazu, der Erfordernis einer Korrektur von Rundungsfehlern während der Interpolation zu begegnen.
Es wird angenommen, daß die Operation der Schaltung 10,den Wert der abhängigen Veränderlichen y für einen gegebenen Wert der unabhängigen Veränderlichen χ zu interpolieren, besser durch eine Reihe von Entscheidungen bzw. Anweisungen (statements) beschrieben werden kann. Bei den Entscheidungen bzw. Anweisungen ist eine Kurzschrift unter Verwendung der Zeichen von Figur 8 angepaßt, und zwar immer, wo dies möglich ist, wobei bedeutet viz. "28c bis 28a", daß der Eingang 28c der Schieberegister-Auswählschaltung 28 mit dem Ausgang 28a verbunden ist.
Operation:
1. S1a bis S1b. Schreibe a, b, K, C, Q in RAM als eine Reihe von 5 χ 20-Bitworten ein.
Stufe 1, η = 1
2. 28c bis 28a - lese a von RAM und schreibe ein in SRA.
3. 28c bis 28b - lese b von RAM und schreibe ein in SRB.
4. Schiebe a 1-Bit in SRA = a/2.
5. Schiebe b 1-Bit in SRB = b/2.
6. Addierlogik 38a + 30b; 28d bis 28b.
7. Addiere Ausgang 18c = (a+b)/2 und schreibe in SRB ein.
8. 28c bis 28a - lese K von RAM und schreibe in SRA ein.
9. Addierlogik 30a + 30b; addiere Ausgang 18c =
(a+b)/2 + K = y1 = v(x-i/2) uoä S1a bis S1c schreibe y1 in RAM und in SRy ein.
-34-
803838/0809
Erneuerte Koeffizienten (update)
10. Frage zuerst das höchstwertige Bruch-Bit von χ ab, um zu bestimmen, ob die nächste Stufe des Algorithmus nach UP (interpoliere y bei χ = 3/4) oder nach 3X)WN läuft (interpoliere y bei χ = 1/4).
Wenn x-Bit = 1, gehe nach UP: Wenn x-Bit = 0, gehe nach DOWN.
Neueste Punktwerte a und b
11.(i) Wenn χ = 1, gehe nach UP bei der Stufe 2, halte b
in RAM fest und substituiere y für a; 11(ii) wenn χ = 0, gehe nach DOWN bei der Stufe 2; halte a in RAM fest und substituiere y für b.
Neuestes K (update)
12. 28c bis 28b - lese K von RAM und schreibe ein in SRB.
13. schiebe K-2-Bits in SRB = K/4.
14. 28c bis 28a - lese C von RAM und schreibe ein in SRA. 15.(i) Wenn χ = q., gehe nach UP bei der Stufe 2.
Addierlogik 30a + 30b, addiere Ausgang 18c = K/4 + C und 28d bis 28b schreibe (K/4 + C) vom Addierer 18 in SRB ein,
15(ü) Wenn χ = 0, gehe nach DOWN bei der Stufe 2.
Addierlogik 30b - 30a, Addier-Ausgang 18c = K/4 - C und 28d bis 28b schreibe (K/4 - C) vom Addierer 18 in SRB ein.
-35-
609838/0609
16. 28c bis 28a - lese Q und schreibe ein in SRA.
17. Addierlogik - 30a + 30b. Addiere Ausgang
-D 18c = K/4 [+U] C + Q = ^2
Stufe 2 und S1a bis S1c schreibe K^2 in RAM ein.
Neuestes C (update)
18. 28c bis 28b. Lese C von RAM und schreibe in SRB ein.
19. 28c bis 28a. Lese Q von RAM und schreibe in SRA ein.
20. Schiebe C-3-Bits in SRB = C/8.
21. Schiebe Q-1-Bit in SRA = Q/2.
22.(i) Wenn UP beim Schritt 10, Addierlogik 30a + 30b.
Addier-Ausgang 18c = C/8 + Q/2 = C2 und S1a bis S1c - schreibe C2 in RAM ein
und 28e bis 28a - Q/2 in SRA. ODER
22(ii) Wenn DOWN am Schritt 10, Addierlogik 30b - 30a Addier-Ausgang 18c = C/8 - Q/2 = C2.
und S1a bis S1c - schreibe C2 in RAM ein und 28e bis 28a - Q/2 in SRA.
Neuestes Q (update)
23. Schiebe Q/2 in SRA-3-Bit » Q/16 = Q2
24. Addierlogik 30a + 30b (null). Addier-Ausgang 18c
= Q/16 = Q2 und S1a bis S1c - schreibe Q/16 in RAM ein.
Stufe 2, η = 2 - Wiederhole Schritte 2 bis 24.
-36-
609838/0609
Die inverse Interpolation, bei welcher der Wert der unabhängigen Veränderlichen χ für einen gegebenen Wert der abhängigen Veränderlichen y gefunden werden kann, läßt sich in einer Weise realisieren ähnlich wie dies in der vorangegangenen Beschreibung erläutert wurde.
Es läßt sich somit erkennen, daß durch die vorliegende Erfindung ein iteratives Interpolationsverfahren geschaffen wird, bei welchem alle Algorithmusstufen identisch sind und jeder Koeffizient in das richtige Register eingegeben wird, und zwar einzeln (in singularity) beim Start des Algorithmus (d.h. keine Forderung nach einer verzögerten Eingabe), und es ist lediglich ein einzelnes x-Bit erforderlich, um jede Stufe des Algorithmus zu steuern.
Es wurde somit ein binäres Polynom vierter Ordnung und eine Algorithmus-Anweisung beschrieben, die für Anwendungsfälle geeignet sind, bei welchem eine Minimisierung des Steuerprogramms von hervorspringendem Interesse ist.
Die Polynome können natürlich erweitert werden und eine angebrachte Erweiterung erstreckt sich bis zur achten Ordnung, was nun beschrieben werden soll. Um nutzlose Wiederholungen in der folgenden Beschreibung zu vermeiden, werden alle weiteren Polynomausdrücke und Algorithmus-Anweisungen auf solche beschränkt, die sich aufgrund der Form der Betrachtungsweisen der fünften bis achten Ordnung ergeben und durch diese modifiziert werden.
In allen Fällen ist angenommen, daß die Polynome bis zur vierten Ordnung und die Algorithmus-Anweisungen bis zu zweiten Ordnung genauso sind, wie dies unter Hinweis auf die Tabellen 3 und 2 beschrieben wurde.
-37-
609333/0609
Bei der Erweiterung der binären Polynome von der vierten bis zur achten Ordnung bzw. Grades stehen verschiedene Angaben (φtions) zur Verfügung:
(i) Die Wahl der algebraischen (x abhängig) Faktoren wird von der relativ willkürlichen Wahl der numerischen Maßstabsfaktoren getrennt.
(ii) Die Annäherung vierter Ordnung führte zu einer exakten Entsprechung bei den x-Werten O, 1/4, 1/2, 3/4 und 1. Ein Festhalten der Null-Beiträge bei diesen x-Werten bestimmt die algebraischen Faktoren für das binäre Polynom fünfter Ordnung bzw. fünften Grades zu:
x(1-x) (x-1/2) (x-1 Ar) (x-3/4)
(iii) Ein Festhalten des Prinzips der ungeraden oder geraden Symmetrie um χ -· 1/2 bestimmt, daß das binäre Polynom sechster Ordnung den (x-1/2)-Ausdruck wiederenthalten muß und damit den algebraischen Faktor sechster Ordnung bestimmt als:
x(1-x)(x-1/2)2(x-1/4)(x-3/4)
(iv) Unter Verwendung der gleichen Begründung entstehen fünf Angaben (options) für das binäre Polynom siebter Ordnung und das relevante binäre Polynom achter Ordnung folgt aus dem unvermeidbaren Wiederauftreten von (x-1/2).
Die zuvor erwähnten Angaben sind alle in der folgenden Tabelle 4 aufgeführt und in jedem Fall ist der verwendete numerische Maßstabsfaktor derjenige, welcher eine Spitzenamplitude für das Polynom so nah wie möglich bei
-38-
609833/0809
- 38 - 260698
der Einheit liefert und der mit der optimalen add-shift-Organisation bei der Algorithmus-Aufstellung in Einklang steht.
Tabelle 4 Polynome fünfter und sechster Ordnung
912
B5 = fj-x(1-x) (x-1/2) (x-1/4) (x-3/4) B6 - I5- x(1-x)(x-i/2)2(x-i/4)(x-3/4)
Polynome siebenter und achter Ordnung
,18
Option 1: B7 = ^- x(1-x)(x-1/2)(x-1/4)(x-3/4)(x-1/8)(x-7/8) B8 = I5- x(1-x)(x-1/2)2(x-1/4)(x-3/4)(x-1/8)(x-7/8)
18
Option 2: B7 = 2^ »(!-χ)(^/2)(x-1/4)(x-3/4)(x-3/8)(x-5/8) B8 m TO χ(1-χ)(χ-1/2)2(χ-1/4)(χ-3/4)(χ-3/8Χχ-5/8)
Option 3: B7 = ^- x2(1-x)2(x-1/2)(x-i/4)(x-3/4)
^ x2(1-x)2(x-1/2)2(x-1/4) (x-3/4)
B8 =
Option 4: B7 = fy x(1-x) (x-1/2) (x-i/4)2(x-3/4)2 B8 - T5- x(1-x)(x-1/2)2(x-1/4)2(x-3/4)2
8 5
-39-
609833/0809
Option 5: B7 = —f^ x(1-x)(x-i/2)^(x-i/4)(x-3/4)
Die folgenden Algorithmus-Anweisungen (Tabellen 5 "bis 9) verwenden die Nomenklatur, wie zuvor definiert wurde, mit der folgenden Erweiterung hinauf bis zur achten Ordnung:
"I" das Register hält Korrekturausdrücke fünfter
Ordnung
"S" das Register hält Korrekturausdrücke sechster
Ordnung
"P" das Register hält Korrekturausdrücke siebter
Ordnung
"E" das Register hält Korrekturausdrücke achter Ordnung.
Die Ausdrücke für das Erneuern (updating) der Ausdrücke bis hinauf zum quadratischen Ausdruck (zweiten Grades bzw. zweiter Ordnung) sind mit den bereits beschriebenen identisch. Sie wurden daher aus den folgenden Anweisungen weggelassen und es sind lediglich die Erneuerung der kubischen (dritten Grades oder Ordnung) bis achten Grades (achter Ordnung) gezeigt. Bei jeder Aufstellung der Algorithmen müssen sie natürlich enthalten sein.
Für jede Angabe (option) sind die vierten Polynome (fünfter bis achter Ordnung) gezeigt. Die Polynome fünfter und sechster Ordnung und deren Erneuerungsausdrücke (updating) sind in allen fünf Fällen identisch.
-40-
Es wird angenommen, daß die Anweisungen in den Tabellen 5 bis 9 im Hinblick auf die vorangegangenen Beschreibungsteile offensichtlich sind, speziell in Verbindung mit den Tabellen 2 und 3, der Übersichtlichkeit halber wird bei der Erneuerungsanweisung für den kubischen Ausdruck C beispielsweise bei der η'ten Stufe vor der Interpolation bei (n+1) für die Stufe gefordert, daß:
5I1n -D Sn P_ -D E
Die diagonalen unterbrochenen Linien zeigen lediglich, welcher der verschiedenen Korrekturausdrücke höherer Ordnung zu einem Korrekturausdruck addiert wird, wenn bei der η'ten Stufe erneuert wird (updating), wenn der Algorithmus bei einer gegebenen Ordnung, niedriger als der achten, abgeschnitten ist. Wenn beispielsweise beim Beispiel der Tabelle 1 der Algorithmus bei der fünften Ordnung abgeschnitten ist, ergibt sich für den erneuerten kubischen Ausdruck
CL -D GL S
n fj-TT 1 " λ.
-41-
60333S/0SQ9
Tabelle 5
Option 1 Spitzen-Amplitude
(ungefähr) 212
0,90
B6 = 55-XO-X) (x-V2r(x-1/4)(x-3/4) 1,05
B7 = §^xM-x)(x-1/2)(x-1/4)(x-3/4) ' ^ (x-1/8)(x-7/8) 1,03
• B8 = |h-xM-x)(x71/2)2(x-1/4)(x-3/4)
ö 45 (x-i/8)(x-7/8) 0,96
Algorithmus-Anweisung "n"-ter Stufe in der Folge wie die Reihenfolge
Abschnitt-Ordnung
J.
+ ψ* [η n Pn /
[XS]
«hi- 2^ζ
Tabelle 6
Option 2 Spitzenamplitude
(ungefähr)
B5 = ^-χ(1-χ)(χ-1/2)(χ-1/4)(χ-3/4) 0,90
B6 = ^5~x(1-x)(x-i/2)£i(x-i/4)(x-3/4) 1,05
218
B8 = fö5x(1-x)(x-i/2)2(x-i/4)(x-3/4)(x-3/8)(x-5/8) 1,27
Ab s chnitt-Ordnung j Χ' V . 5V 6- 7.·-
. τ.. /a/ r / f::J ä * f t;
' 's ■ ■ '
S-..- Ot -r l«J^p. / + -^^En
-43-
609838/0609
Tabelle 7
Option 3 Spitzenamplitude
(ungefähr)
«12
B5 = ^x(1-x)(x-1/2)(x-1/4)(x-3/4) . 0,90
B6 = ^5X(I-X) (x-1 /2Γ(χ-1 /4) (x-3/4) 1,05
B7 = 2 15x2(1-x)2(x-1/2)(x-1/4)(x-3/4) 0,77
B8 = 2 l5x2(1-x)2(x-1/2)2(x-i/4)(x-3/4) 1,15
Abschnitt-Ordnung
· ■ ;'' ■ :Y\ 5V 6v·- 7-
V" · · ^ n+l
-44-Ε.» · .
609838/0809
BAD ORIGINAL
Tabelle 8
Option 4 Spitzenamplitude
(ungefähr)
«12
B5 = ^x(1-x)(x-i/2)(x-1/4)(x-3/4) 0,90
B6 = %x(1-x)(x-1/2)^(x-1/4)(x-3/4) 1,05
B7 = ^x(1-x)(x-1/2)(x-1/4)2(x-3/4)2 1,86
16
B8 = ^5X(I-X) (x-1/2)2(x-1/4)2(x-3/4)2 0,81
Abschnitt-Ordnung 3·. ' *.-- V 6
21 -j A
809838/0609
BAD X
2606381
Tabelle 9
Option 5 Spitzenanplitude
(ungefähr)
«12
B5 = 4Γ5-χ(1-χ)(χ-1/2)(χ-1/4)(χ-3/4)
B6 = ^5x(1-x)(x-1/2)2(x-1/4)(x-3/4) B7 = ^x(I-X) (x-i/2)3(x-1/4) (x-3/4)
B8 =
Abschnitt-Ordnung
O ,90
1 ,05
1 ,38
1 ,21
3 , -, —
>= 255"
809838/0609
BAD
Eine Festpunktausführung der binären Polynom-Algorithmen oberhalb der vierten Ordnung führt zu der Erfordernis, die numerischen Maßstabsfaktoren der Polynome höherer Ordnung bzw. Grades (oberhalb der vierten) in Einklang mit der Natur der Funktionsannäherungen auszuwählen, bei welchen sie angewendet werden sollen.
Der Bereich der Anwendungsfälle läßt sich am besten anhand von extremen Beispielen feststellen:
Kategorie (i)
Es wird eine beste Minimum-Maximum-Entsprechung (fit) einer gut verlaufenden Funktion gefordert. Die Ausdrücke niedrigerer Ordnung (bis zur vierten Ordnung) befriedigen vorherrschend die Annäherung der Funktion und die Ausdrücke höherer Ordnung werden dazu verwendet, die Genauigkeit zu verbessern; die Größe des Koeffizienten nimmt mit zunehmender Ordnung des Ausdrucks ab. Es wird somit eine ausreichende Auflösung bei den Koeffizienten höherer Ordnung gefordert, um dadurch eine maximale realisierbare Genauigkeit zu gewährleisten.
Diese Kategorie erfordert die nahen Einheitsspitzenamplituden-Polynome und die Auflösung der adressierten absoluten Amplitude ist dort, wo sie verwendet wird, virtuell äquivalent mit der Koeffizienten-Auflösung.
Kategorie (ii)
Eine Annäherung an eine Funktion wird gefordert, die einen merklichen Gehalt an Ausdrücken höheren Grades oder Ordnung
-47-
609833/0609
47 " 260698]
enthält und bei welcher die behandelten Polynome schlecht geeignet sind, um der bestimmten Funktion zu entsprechen. Die geforderten einzelnen Amplituden von zwei oder mehr Polynomen eskalieren aufgrund der Tatsache, daß die Entsprechung nur durch wechselseitige Beseitigung oder Auslöschung zwischen den verwendeten Polynomen möglich ist. Diese Kategorie erfordert, daß die behandelten Polynome höherer Ordnung erhöhte Spitzenamplituden besitzen. Dies reduziert seinerseits wieder entsprechend die absolute Auflösung der adressierten Amplitude aufgrund der Tatsache, daß die Koeffizienten feste Wortlängen besitzen. Der Konstrukteur wird daher mit einem Kompromiß zwischen Spitzenamplitude und Auflösung konfrontiert. Er muß in Abhängigkeit von&en Prioritäten der beabsichtigen Anwendung entscheiden.
Wenn die Spitzenamplituden der in Tabelle 4 aufgeführten Polynome um die Faktoren von 2, 4, 8 usw. erhöht werden, so besteht die maßstäbliche Veränderung der Algorithmus-Anweisungen in einer relativ übersichtlichen Aufgabe, Beispiele einer derartigen Maßstabserneuerung für Änderungen hinsichtlich eines einzelnen Polynoms und einer Gruppe von vier Polynomen werden auf den folgenden Seiten gegeben. Eine Maßstabsveränderung durch bestimmte andere Faktoren ist praktikabel, erhöht jedoch die add-shift-Komplexität der Algorithmus-Ausdrucke.
Beispiel 1
Es dient zur Veranschaulichung der Anforderungen bei einer erneuten Maßstabsveränderung, die sich aus der Modifikation des numerischen Maßstabsfaktors eines Polynoms ergibt.
-48-609838/0609
Das Polynom sechster Ordnung der Angabe (option) 1 wurde nach oben zu maßstabsmäßig um einen Faktor von 2 verändert. Die vier Polynome sind:
Spitzenamplitude (ungefähr)
5 21
= 1
^x(1-x)(x-i/2)(x-i/4)(x-3/4) O, 90
B6 = 21 5x(1-x)(x-1/2)2(x-1/4)(x-3/4) 2, 10
-21 8
B7 ^•x(1 -x) (x-1 /2) (x-1/4) (x-3/4) (x-1 /8) (x-7/8) 1, 03
B8 =
-x) (x-1/2)^(x-1/4) (x-3/4) (x-1/8) (x-7/8) 0,96
Abschnitt-Ordnung
- bu J
zeigt an, daß der Ausdruck erneut maßstabsmäßig verändert wurde.
-49-
609838/0609
BAD ORiGINAL
- 49 Beispiel 2
Es dient der Veranschaulichung der Anforderungen bei einer erneuten maßstabsmäßigen Veränderung, die sich aus der Modifikation der numerischen Maßstabsfaktoren von vier Polynomen gleichzeitig ergeben.
Die Polynome fünfter bis achter Ordnung der Angabe (option) 1 wurden nach oben zu maßstabsmäßig durch einen Faktor von 2 verändert. Die vier Polynome sind:
Spitzenamplitude (ungefähr)
13
1,80
B6 = Τ5χ(1-χ)(χ-1/2Γ(χ-1/4)(χ-3/4) 2,10
p19
B7 = ^x(1-x)(x-1/2)(x-1/4)(x-3/4)(x-1/8)(x-7/8) 2,06
P2O 0
B8 = ^χ(1-χ)(χ-1/2Γ(χ-1/4)(χ-3/4)(χ-1/8)(χ-7/8) 1,92
-49a-609838/0609
so
Abschnitt-Ordnung;
zeigt an, daß der Ausdruck erneut maßstabsmäßig verändert wurde
13.-.
609838/0609 -50-
Obwohl die Erfindung in Verbindung mit einem speziellen Anwendungsfall erläutert wurde, so sei darauf hingewiesen, daß sie nicht auf diesen Anwendungsfall beschränkt ist. Beispielsweise kann das Verfahren dadurch in die Praxis umgesetzt werden, indem man einen Rechner in geeigneter Weise programmiert oder ein Datenverarbeitungsgerät für diesen Zweck ausbildet. Ein Beispiel einer Ausführungsform eines solchen Gerätes wurde in Verbindung mit Figur 8 erläutert, es sind jedoch noch sehr viele andere Anordnungen möglich, was vom Anwendungsfall abhängig ist. Beispielsweise kann das Gerät so ausgelegt werden, daß es in Bit-Serienformat, Wort-Serienformatj Bit-Serienformat, Wort-Parallel-Format (Fig. 8); Bit-Parallelformat, Wort-Parallelformat oder in irgendeiner Kombination dieser Möglichkeiten arbeitet.
609838/0609

Claims (1)

  1. Patentansprüche
    1. Verfahren für die Ermittlung eines Viertes einer ersten Veränderlichen y und einer zweiten Veränderlichen χ für einen gegebenen Wert der anderen Veränderlichen, wobei y eine Funktion von χ ist und durch eine Polynomreihe der Form y = d B_ + d. IL + ö.o B0 + dx B^ + beschrieben ist und wobei Bn ein linearer Polynomausdruck in χ der η'ten Ordnung (Grad) und dn der relevante Koeffizient ist, gekennzeichnet durch die folgenden Verfahrensschritte:
    es werden zwei Punktwerte wiedergebende digitale Größen gespeichert, die ein Anfangssegment der unabhängigen Veränderlichen definieren, und ebenso vorbestimmte Werte von wenigstens einem Korrekturausdruck zweiter Ordnung, dritter Ordnung und vierter Ordnung; es wird dann eine lineare Interpolation zwischen den zwei gespeicherten Punktwerten durchgeführt, um einen digitalen Mittelpunktswert zu erhalten und um zwei neue Segmente zu erzeugen, von denen das eine UP hinsichtlich des Mittelwertes ~ist und von denen das andere DOWN hinsichtlich dieses Wertes ist, es wird der digitale Mittelpunktswert durch Addition eines Kompensationswertes kompensiert, der aus dem Korrekturausdruck zweiter Ordnung besteht, um einen kompensierten digitalen Mittelpunktswert zu bildenj es wird festgestellt, ob das neue interessierende Segment für die nächste Stufe des Verfahrens relativ zu dem kompensierten Mittelpunktswert UP oder DOWN ist;
    -52-
    609838/0609
    es wird die bestimmte UP/DOWi'I-Information dazu verwendet, eine der ersten und zweiten digitalen Gröi3en, die die zwei gespeicherten Punktwerte wiedergeben, durch das kompensierte digitale Mittelpunktssignal zu ersetzen, um ein neues, den richtigen Wert der unabhängigen Veränderlichen enthaltendes Segment zu erzeugen; es wird dann das Kompensationssignal dadurch modifiziert, indem der den Korrekturausdruck zweiter Ordnung wiedergebende digitale Wert durch 4 geteilt wird, und es wird die UP/DOWN-Information dazu verwendet, eine Addition des den Korrekturausdruck dritter Ordnung wie dergebenden Wertes zum geteilten Wert des Korrekturausdrucks zweiter Ordnung oder eine Subtraktion, davon zu bewirken, und zwar in Abhängigkeit davon, ob das neue Segment UP oder DOWII ist, und es wird der Korrekturausdruck vierter Ordnung (Grades) addiert, um einen neuen Korrekturausdruck zu bilden; es wird der den Korrekturausdruck dritter Ordnung wiedergebende digitale Wert durch Teilen durch 8 modifiziert und es wird die UP/DOWN-Information dazu verwendet, eine Addition des halben Wertes des Ausdrucks vierter Ordnung zum Ausdruck dritter Ordnung oder eine Subtraktion von diesem zu bewirken, in Abhängigkeit davon, ob das neue Segment UP oder DOWN ist; und es wird der den Ausdruck vierter Ordnung wiedergebende digitale Wert durch Teilen durch 16 modifiziert und es werden die Schritte der linearen Interpolation, Kompensation, Bestimmung und Ersetzen und Modifizieren zum Erzeugen neuer digitaler Größen wiederholt, die aufeinanderfolgend kleinere Segmente mit
    -53-
    SÖ9S2S/0S09
    Endpunkten definieren, die auf den gewünschten Wert der unabhängigen Veränderlichen hin konvergieren.
    2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Korrekturausdrücke einen Korrekturausdruck fünfter Ordnung (Grades) enthalten und daß der Verfahrensschritt der Modifizierung des digitalen Wertes, der den Korrekturausdruck dritter Ordnung wiedergibt, in der Addition von fünf Achtel des Wertes des Ausdrucks fünfter Ordnung besteht;
    daß zur Modifizierung des digitalen Wertes, der den Korrekturausdruck vierter Ordnung wiedergibt, die UP/DOWH-Information verwendet wird, um eine Addition eines Viertels des Wertes des Ausdrucks fünfter Ordnung zum Ausdruck vierter Ordnung oder eine Subtraktion von diesem Ausdruck in Abhängigkeit davon zu bewirken, ob das neue Segment UP oder DOWiJ ist; und daß dann der den Ausdruck fünfter Ordnung wiedergebende digitale Wert durch Teilen durch 32 modifiziert wird.
    3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die Korrekturausdrücke einen Korrekturausdruck sechster Ordnung (Grades) enthalten und daß zur Modifizierung des den Korrekturausdruck dritter Ordnung wiedergebenden digitalen Wertes die UP/DOWN-Information verwendet wird, um eine Addition einer Hälfte des Wertes des Ausdrucks sechster Ordnung zum Ausdruck dritter Ordnung oder eine Subtraktion von diesem Ausdruck dritter Ordnung in Abhängigkeit davon zu
    -54-
    €09838/0809
    2606381
    bewirken, ob das neue Segment UP oder DOIiN ist; daß zur Modifizierung des den Korrekturausdruck vierter Ordnung wiedergebenden digitalen Wertes drei Achtel des Wertes des Ausdrucks sechster Ordnung zum Ausdruck vierter Ordnung addiert werden und daß zur Modifizierung des den Ausdruck fünfter Ordnung wiedergebenden digitalen Wertes die UP/DOWN-Information dazu verwendet wird, um eine Addition von einem Achtel des Wertes des Ausdrucks sechster Ordnung zum Ausdruck fünfter Ordnung oder eine Subtraktio η von diesem Ausdruck fünfter Ordnung in Abhängigkeit davon zu bewirken, ob das neue Segment UP oder DOWN ist, und daß weiter der den Ausdruck sechster Ordnung wiedergebende digitale Wert durch Teilen durch 64 modifiziert wird.
    4. Verfahren nach Anspruch 3» dadurch gekennzeichnet, daß die Korrekturausdrücke einen Korrekturausdruck siebenter Ordnung (Grades) oder Korrekturausdrücke siebenter und achter Ordnung (Grades) enthalten und daß die den Ausdruck dritter Ordnung und die Ausdrükke progressiv höherer Ordnung wiedergebenden digitalen Werte gemäß den Angaben in Tabelle 5 modifiziert werden.
    5. Verfahren nach Anspruch 3» dadurch gekennzeichnet, daß die Korrekturausdrücke einen Korrekturausdruck siebenter Ordnung (Grades) oder Korrekturausdrücke siebenter und achter Ordnung (Grades) enthalten und daß die den Ausdruck dritter Ordnung und die Ausdrük-
    -55-
    603838/0609
    ke progressiv höherer Ordnung wiedergebenden digitalen ¥erte gemäß der Tabelle 6 modifiziert v/erden.
    6. Verfahren nach Anspruch 3» dadurch gekennzeichnet, daß die Korrekturausdrücke einen Korrekturausdruck siebenter Ordnung (Grades) oder Korrekturausdrücke siebenter und achter Ordnung (Grades) enthalten und daß die den Ausdruck dritter Ordnung und die Ausdrükke progressiv höherer Ordnung wiedergebenden digitalen Vierte gemäß Tabelle 7 modifiziert werden.
    7. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß die Korrekturausdrücke einen Korrekturausdruck siebenter Ordnung (Grades) oder Korrekturausdrücke siebenter und achter Ordnung (Grades) enthalten, wie dies in Tabelle S ausgeführt ist, und daß die den
    Ausdruck dritter Ordnung und die Ausdrücke progressiv höherer Ordnung wiedergebenden digitalen Werte gemäß Tabelle 8 modifiziert werden.
    3. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß die Korrekturausdrücke einen Korrekturausdruck siebenter Ordnung (Grades) oder Korrekturausdrücke siebenter und achter Ordnung (Grades) enthalten, wie dies in Tabelle 9 aufgeführt ist, und daß die den
    Ausdruck dritter Ordnung und die Ausdrücke progressiv höherer Ordnung wiedergebenden digitalen ¥erte gemäß Tabelle 9 modifiziert werden.
    9. Verfahren nach einem oder mehreren der vorangegangenen Ansprüche, dadurch gekennzeichnet, daß als Ii-
    -56-
    609838/0809
    neare Polynomreihe eine binäre Polynomreihe verwendet wird.
    10. Verfahren nach einem oder mehreren der vorangegangenen Ansprüche, dadurch gekennzeichnet, daß jeder Polynomausdruck so angeordnet wird, daß eine ungerade oder gerade Symmetrie um das x-Bereichszentrum entsteht.
    11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß sich das Anfangssegment der unabhängigen Veränderlichen von x=0 bis χ = 1 erstreckt und daß das x-Bereichszentrum gleich ist mit 1/2.
    12. Verfahren nach einem oder mehreren der vorangegangenen Ansprüche zur Herleitung des Wertes der abhängigen Veränderlichen y für einen gegebenen Wert der unabhängigen Veränderlichen x, dadurch gekennzeichnet, daß der Wert der unabhängigen Veränderlichen χ in binärer Form gespeichert wird und daß die Bits dieses Wertes überprüft werden, wobei mit dem höchstwertigen Bit begonnen wird, und daß dann der Verfahrensschritt der Bestimmung, ob das neue Segment für die (n + 1)'te Stufe des Verfahrens UP oder DOWTT ist, durch Prüfen des η"ten Bits der unabhängigen Veränderlichen durchgeführt wird, um in Abhängigkeit vom Wert des η'ten Bits zu bestimmen, ob das neue Segment UP oder DOWN ist.
    13. Verfahren nach einem oder mehreren der vorangegangenen Ansprüche, dadurch gekennzeichnet, daß das Ver-
    -57-
    Lliren durch Programmieren eines Computers oder eines Datenverarbeitungsgerätes automatisch zur Berechnung des viertes der geforderten Veränderlichen durchgeführt wird.
    14. Verfahren nach einem oder mehreren der vorangegangenen Ansprüche, dadurch gekennzeichnet, daß ein Programm in physikalischer Form zur Realisierung des Verfahrens gespeichert wird, wie beispielsweise in einem programmierten Read Only Speicher.
    15. Computer oder Datenverarbeitungsgerät, dadurch gekennzeichnet, daß es zur Durchführung des Verfahrens nach einem der vorangegangenen Ansprüche ausgelegt ist.
    .J Gerät für die Ermittlung eines Wertes einer ersten Ver änderlichen y und einer zweiten Veränderlichen χ für einen gegebenen Wert der anderen Veränderlichen, wobei y eine Funktion von χ ist und durch eine Polynomreihe der Form y = d B + d. EL + d2 B^ + cU B, + beschrieben ist, wobei Bn ein linearer polynomischer Ausdruck in χ der· η1ten Ordnung (Grades) und dn der relevante Koeffizient ist, gekennzeichnet durch die folgenden Einrichtungen und Merkmale: eine Speichereinrichtung zum Speichern der zwei Punktwerte wiedergebenden 'digitalen Größen, die ein Anfangssegment der unabhängigen Veränderlichen definieren, und zum Speichern vorbestimmter Werte von wenigstens einem Korrekturausdruck zweiter Ordnung, dritter Ordnung und vierter Ordnung (Grades);
    -58-
    509333/0609
    eine Einrichtung zur linearen Interpolation zwischen den gespeicherten Punktwerten, um dadurch einen digitalen Mittelpunktswert für die Bildung von zwei neuen Segmenten abzuleiten, von denen das eine UP hinsichtlich des Mittelpunktswertes ist und von denen das andere DOWN hinsichtlich dieses Wertes ist, eine Einrichtung zur Kompensation des digitalen Mittelpunktswertes durch Addition eines Kompensationswertes zu diesem Mittelpunktswert, der den Korrekturausdruck zweiter Ordnung enthält, um einen kompensierten digitalen Mittelpunktswert zu bilden; eine Einrichtung zur Bestimmung, ob das neue interessierende Segment für die nächste Stufe des Verfahrens hinsichtlich des kompensierten Mittelpunktswertes UP oder DOWN ist;
    eine auf die UP/DOWN-Information ansprechende Einrichtung, um eine der ersten und zweiten digitalen Größen, die die zwei gespeicherten Punktwerte wiedergeben, durch das kompensierte digitale Mittelpunktssignal zu ersetzen, so daß ein neues Segment mit dem gewünschten Wert der unabhängigen Veränderlichen geschaffen wird;
    eine Modifiziereinrichtung, um das kompensierte Signal bzw. das Kompensiersignal dadurch zu modifizieren, indem der den Korrekturausdruck zweiter Ordnung wiedergebende digitale Wert durch 4 geteilt wird und die UP/DOWN-Information verwendet wird, eine Addition des den Korrekturwert dritter Ordnung wiedergebenden Wertes zu' dem geteilten Wert zweiter Ordnung oder eine Subtraktion in Abhängigkeit davon zu
    -59-
    609838/0609
    bewirken, ob das neue Segment UP oder DOWH ist, und um den Korrekturausdruck vierter Ordnung zur Bildung eines neuen Korrekturausdruckes zu addieren und um den den Korrekturausdruck dritter Ordnung wiedergebenden digitalen Wert durch Teilen durch S zu modifizieren und um weiter unter Verwendung der UP/DOWN-Information eine Addition des Halbwertes des Ausdrucks vierter Ordnung zum Ausdruck dritter Ordnung oder Subtraktion von diesem Ausdruck dritter Ordnung in Abhängigkeit davon zu bewirken, ob das neue Segment UP oder DOWN ist;
    und um den den Ausdruck vierter Ordnung wiedergebenden digitalen Wert durch Teilen durch Λ G zu. modifizieren; und eine Steuereinrichtung für die Steuerung des Gerätes, um das Gerät iterativ zu veranlassen, neue digitale Größen zu erzeugen, die aufeinanderfolgend kleinere Segmente mit Endpunkten definieren, die auf den gewünschten Wert der unabhängigen Veränderlichen hin konvergieren.
    17. Gerät nach Anspruch 16, dadurch gekennzeichnet, daß die Speichereinrichtung so ausgebildet und angeordnet ist, daß sie einen vorbestimmten Wert des Korrekturausdrucks fünfter Ordnung speichert, und daß die Modifiziereinrichtung eine Modifizierung des den Korrekturausdruck dritter Ordnung wiedergebenden digitalen Wertes durch Addition von fünf Achtel des Wertes des Ausdrucks fünfter Ordnung zu dem Wert bewirkt ;
    ebenso eine Modifizierung des den Korrekturausdruck
    -60-
    609838/0609
    ORIGINAL INSPECTED
    ioi
    vierter Ordnung wiedergebenden digitalen Wertes durch Verwendung der UP/DOWN-Information durchführt, um eine Addition eines Vierteiis des Wertes des Ausdrucks fünfter Ordnung zum Ausdruck vierter Ordnung oder Subtraktion von diesem Ausdruck vierter Ordnung in Abhängigkeit davon zu bewirken, ob das neue Segment UP oder DOW ist,
    und eine Modifikation des den Ausdruck fünfter Ordnung wiedergebenden digitalen Viertes durch Teilen • durch 32 bewirkt.
    13. Gerät nach Anspruch 17, dadurch gekennzeichnet, daf3 die Speichereinrichtung für die Speicherung eines vorbestimmten Wertes eines Korrekturausdrucks sechster Ordnung (Grades) ausgebildet ist und daß die Modifiziereinrichtung eine Modifizierung des den Korrekturausdruck dritter Ordnung wiedergebenden digitalen Wertes durch Addition der Hälfte des Wertes des Ausdrucks sechster Ordnung zum Ausdruck dritter Ordnung oder durch Subtraktion von diesem Ausdruck dritter Ordnung in Abhängigkeit davon bewirkt, ob das neue Segment UP oder DOMi ist; weiter eine Modifikation des den Korrekturausdruck vierter Ordnung wiedergebenden digitalen Wertes durch Addition von drei Achtel des Wertes des Ausdrucks sechster Ordnung zum Ausdruck vierter Ordnung, ebenso eine Modifikation des den Ausdruck fünfter Ordnung wiedergebenden digitalen Wertes durch Verwendung der UP/DOWN-Information bewirkt, um eine Addition von einem Achtel des Wertes des Ausdrucks
    -61-
    609838/0809
    sechster Ordnung zum Ausdruck fünfter Ordnung oder eine Subtraktion von diesem Ausdruck fünfter Ordnung in Abhängigkeit davon zu bewirken, ob das neue Segment UP oder DOWN ist, und eine Modifikation des den Ausdruck sechster Ordnung wiedergebenden digitalen Wertes durch Teilen durch 64 bewirkt.
    19· Gerät nach Anspruch 1ö, dadurch gekennzeichnet, daß die Speichereinrichtung für die Speicherung eines vorbestimmten Wertes des Korrekturausdrucks siebenter Ordnung oder von Korrekturausdrücken siebenter und achter Ordnung ausgebildet ist, wie dies in Tabelle 5 aufgeführt ist, und daß die Modifiziereinrichtung eine Modifizierung der den Ausdruck dritter Ordnung und die Ausdrücke progressiv höherer Ordnung wiedergebenden digitalen Werte gemäß den Angaben in Tabelle 5 bewirkt.
    20. Gerät nach Anspruch 18, dadurch gekennzeichnet, daß die Speichereinrichtung für die Speicherung eines vorbestimmten Wertes des Korrekturausdrucks siebenter Ordnung oder von Korrekturausdrücken siebenter und achter Ordnung ausgebildet ist, wie dies in Tabelle 6 aufgeführt ist, und daß die Modifiziereinrichtung eine Modifizierung der den Ausdruck dritter Ordnung und die Ausdrücke progressiv höherer Ordnung wiedergebenden digitalen Werte gemäß den Angaben in Tabelle 6 bewirkt.
    21. Gerät nach Anspruch 18, dadurch gekennzeichnet, daß die Speichereinrichtung für die Speicherung eines
    -62-
    609833/0609
    ■ vorbestimmten Wertes des Korrekturausdrucks siebenter Ordnung oder von Korrekturausdrücken siebenter und achter Ordnung ausgebildet ist, wie dies in Tabelle 7 aufgeführt ist, und daß die Modifiziereinrichtung eine Modifizierung der den Ausdruck dritter Ordnung und die Ausdrücke progressiv höherer Ordnung wiedergebenden digitalen Werte gemäß den Angaben in Tabelle 7 bewirkt.
    22. Gerät nach Anspruch 18, dadurch gekennzeichnet, daß die Speichereinrichtung für die Speicherung eines vorbestimmten Wertes des Korrekturausdrucks siebenter Ordnung oder von Korrekturausdrücken siebenter und achter Ordnung ausgebildet ist, wie dies in Tabelle 8 aufgeführt ist, und daß die Modifiziereinrichtung eine Modifizierung der den Ausdruck dritter Ordnung und die Ausdrücke progressiv höherer Ordnung wiedergebenden digitalen Werte gemäß den Angaben in Tabelle 8 bewirkt.
    23. Gerät nach Anspruch 18, dadurch gekennzeichnet, daß die Speichereinrichtung für die Speicherung eines vorbestimmten Wertes des Korrekturausdrucks siebenter Ordnung oder von Korrekturausdrücken siebenter und achter Ordnung ausgebildet ist, wie dies in Tabelle 9 aufgeführt ist, und daß die Modifiziereinrichtung eine Modifizierung der den Ausdruck dritter Ordnung und die Ausdrücke progressiv höherer Ordnung wiedergebenden digitalen Werte gemäß den Angaben in Tabelle 9 bewirkt.
    -63-
    609833/0609
    -·*■?- 2606381
    24. Gerät nach einem der vorangegangenen Ansprüche 16 bis 23, dadurch gekennzeichnet, daß die lineare Polynomreihe aus einer binären Polynonreihe besteht.
    25. Gerät nach einem der Ansprüche 16 bis 24, dadurch gekennzeichnet, daß jeder Polynomausdruck so angeordnet ist, daß er eine gerade oder ungerade Symmetrie um das x-Bereichszentrum aufweist.
    26. Gerät nach Anspruch 25, dadurch gekennzeichnet, daß das Anfangssegment der unabhängigen Veränderlichen sich von χ = Q bis χ = 1 erstreckt und daß das x-Bereichszentrum gleich ist mit 1/2.
    27. Gerät nach einem der Ansprüche 16 bis 26 zur Herleitung des Wertes der abhängigen Veränderlichen y für einen gegebenen Wert der unabhängigen Veränderlichen x, gekennzeichnet durch eine Speichereinrichtung für die Speicherung des Wertes der unabhängigen Veränderlichen χ in binärer Form und durch eine Einrichtung für die Prüfung der Bits in einer Aufeinanderfolge, wobei mit dem höchstwertigen Bit begonnen wird, und daß weiter die Bestimmungseinrichtung zur Bestimmung, ob das neue Segment für die (n + i)fte Stufe des Verfahrens UP oder DOWN ist, zur Prüfung des η'ten Bits der unabhängigen Veränderlichen ausgebildet ist, um in Abhängigkeit vom Wert des η'ten Bits zu bestimmen, ob das neue Segment UP oder DOWN ist.
    28. Gerät nach einem der Ansprüche 16 bis 27, dadurch gekennzeichnet, daß die Speichereinrichtung mehrere
    -64-
    609838/0809
    tr
    Schieberegister enthält, die im Betrieb die genannten zwei Punktwerte wiedergebenden digitalen Werte und Anfangs- und modifizierten Korrekturausdrücke empfangen, und daß die Schieberegister durch Taktimpulse einer Steuereinrichtung steuerbar sind.
    29. Gerät nach einem der Ansprüche 16 bis 28, dadurch gekennzeichnet, daß die Einrichtung für die lineare Interpolation zweier Werte eine Addiereinrichtung enthält, um die zwei Werte zu addieren und um ein digitales Ausgangssignal zu erzeugen, welches die Hälfte der Summe der zwei Vierte wiedergibt.
    30. Gerät nach Anspruch 28 oder 29, dadurch gekennzeichnet, daß die Speichereinrichtung für die Speicherung des Wertes der unabhängigen Veränderlichen aus einem durch Taktimpulse von der Steuereinrichtung gesteuerten Schieberegister besteht, und daß die Einrichtung für die Prüfung der Bits der unabhängigen Veränderlichen aus einem Detektor besteht, der so ausgebildet ist, daß er das höchstwertige Teiloder Bruchbit in dem Schieberegister bei jeder Stufe der Operation erfaßt bzw. feststellt-.
    31. Gerät nach Anspruch 30, gekennzeichnet durch eine Einrichtung für die Bestimmung, wann alle Bits der unabhängigen Veränderlichen^dem Schieberegister null sind, und um ein Ausgangssignal für die Beendigung des Betriebes des Gerätes zu erzeugen.
    -65-
    €03838/0609
    32. Gerät nach einem oder mehreren der vorangegangenen Ansprüche, dadurch gekennzeichnet, daß es für die
    Ausführung des Algorithmus gemäß Tabelle 2 und Tabelle 3 oder gemäß Tabelle 2 und Tabelle 3 in Kombination mit irgendeiner der Tabellen 5 bis 9 ausgebildet ist.
    33. Verfahren zur Durchführung des Algorithmus gemäß
    Anspruch 32, dadurch gekennzeichnet, daß der Algorithmus der Tabelle 2 und der Tabelle 3 oder der Tabelle 2 und der Tabelle 5 in Kombination mit irgendeiner der Tabellen 5 bis 9 durchgeführt wird.
    €09838/0609
    Cl
    Leerseite
DE19762606981 1975-02-26 1976-02-20 Verfahren zur erzeugung von werten mathematischer funktionen Withdrawn DE2606981A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB804575A GB1536844A (en) 1975-02-26 1975-02-26 Generation of mathematical functions

Publications (1)

Publication Number Publication Date
DE2606981A1 true DE2606981A1 (de) 1976-09-16

Family

ID=9844732

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19762606981 Withdrawn DE2606981A1 (de) 1975-02-26 1976-02-20 Verfahren zur erzeugung von werten mathematischer funktionen

Country Status (2)

Country Link
DE (1) DE2606981A1 (de)
GB (1) GB1536844A (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4406300C2 (de) * 1994-02-26 1997-10-30 Itt Ind Gmbh Deutsche Lineares Interpolationsverfahren

Also Published As

Publication number Publication date
GB1536844A (en) 1978-12-20

Similar Documents

Publication Publication Date Title
DE3784617T2 (de) Digital-analog-wandler.
DE2135590C3 (de) Schaltungsanordnung zum Interpolieren des Wertes einer Funktion einer unabhängigen Veränderlichen
EP0069325B1 (de) Verfahren zur Wandlung der Zeilenzahl
DE2628473C3 (de) Digitales Faltungsfilter
DE2508706A1 (de) Codieren und decodieren mit einem code variierbarer wortlaenge und gegebenem bitzahlverhaeltnis
DE2606931A1 (de) Verfahren zur erzeugung von werten mathematischer funktionen
DE2231458A1 (de) Digitaler frequenzzusammensetzer
DE3202789C2 (de)
DE3324552A1 (de) Verfahren und vorrichtung zur erzeugung sowohl einer vertikalen als auch einer horizontalen glaettung von konvergenzkorrektursignalen in einem digitalen konvergenzsystem
DE2625973A1 (de) Verfahren und anordnung zur redundanzvermindernden transformation von bildern
EP0149785B1 (de) Verfahren und Schaltungsanordnung zur Digitalsignalverarbeitung nach Art eines vorzugsweise adaptiven Transversalfilters
DE3511890C2 (de)
DE2305201A1 (de) Schnellteiler zur iterativen division, insbesondere fuer digitalrechner
DE3026230A1 (de) Analog/digital-wandlervorrichtung mit ausgangsstabilisierschaltung
DE19744407C1 (de) Verfahren zur mehrdimensionalen, diskreten Wavelet-Transformation und Transformationseinheit zur Durchführung des Verfahrens
DE3032431A1 (de) Analoge speichereinrichtung
DE2711292A1 (de) Verzoegerungsleitung
DE2603791B2 (de) Verfahren und schaltungsanordnungen zur deltamodulationsuebertragung
DE2826454C3 (de) Faksimilesignal-Codiersystem
DE2606981A1 (de) Verfahren zur erzeugung von werten mathematischer funktionen
EP0530912B1 (de) Funkempfänger mit analoger Dynamikkompression und digitaler Expandierung
DE3112212A1 (de) Analog-digital- und digital-analogwandler und verfahren zur umwandlung eines analogen signales in ein nicht-binaeres digitales wort und eines nicht-binaeren digitalen worts in ein analoges signal
DE2223257C3 (de) Sichtanzeigeeinrichtung zum Ziehen von Linien auf einer Kathodenstrahlröhren-Sichtanzeigefläche
DE4022381C2 (de) Verwendung langer Digitalfilter bei Vorkommnis von Abrundungsfehlern
DE3586692T2 (de) Arithmetische konvolutionsschaltung fuer digitale signalverarbeitung.

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee