DE4121106A1 - Verfahren fuer datenverarbeitungsanlagen zur radix-division eines dividenden und eines divisors von jeweils beliebiger laenge und schaltungsanordnung zur durchfuehrung des verfahrens - Google Patents

Verfahren fuer datenverarbeitungsanlagen zur radix-division eines dividenden und eines divisors von jeweils beliebiger laenge und schaltungsanordnung zur durchfuehrung des verfahrens

Info

Publication number
DE4121106A1
DE4121106A1 DE19914121106 DE4121106A DE4121106A1 DE 4121106 A1 DE4121106 A1 DE 4121106A1 DE 19914121106 DE19914121106 DE 19914121106 DE 4121106 A DE4121106 A DE 4121106A DE 4121106 A1 DE4121106 A1 DE 4121106A1
Authority
DE
Germany
Prior art keywords
divisor
partial
shortened
division
comparison
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19914121106
Other languages
English (en)
Other versions
DE4121106C2 (de
Inventor
Ludwig Dr Schubert
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.)
Wincor Nixdorf International GmbH
Original Assignee
Wincor Nixdorf International GmbH
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 Wincor Nixdorf International GmbH filed Critical Wincor Nixdorf International GmbH
Priority to DE19914121106 priority Critical patent/DE4121106A1/de
Publication of DE4121106A1 publication Critical patent/DE4121106A1/de
Application granted granted Critical
Publication of DE4121106C2 publication Critical patent/DE4121106C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/535Dividing only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/491Computations with decimal numbers radix 12 or 20.
    • G06F7/4915Multiplying; Dividing
    • G06F7/4917Dividing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/535Dividing only
    • G06F7/537Reduction of the number of iteration steps or stages, e.g. using the Sweeny-Robertson-Tocher [SRT] algorithm
    • G06F7/5375Non restoring calculation, where each digit is either negative, zero or positive, e.g. SRT

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Executing Machine-Instructions (AREA)

Description

Verfahren für Datenverarbeitungsanlagen zur Radix-Division eines Dividenden und eines Divisors von jeweils beliebiger Länge und Schaltungsanordnung zur Durchführung des Verfahrens.
Die Erfindung betrifft ein Verfahren und eine Schaltungsan­ ordnung für Datenverarbeitungsanlagen zur Radix-Division eines Dividenden und eines Divisors von jeweils beliebiger Länge ge­ mäß dem Oberbegriff des Patenanspruches 1 bzw. des Patentan­ spruches 7.
In Datenverarbeitungsanlagen sind zur Division von Operanden üblicherweise eigene Divisionswerke vorhanden. Sie arbeiten nach unterschiedlichen Divisionsverfahren, die sich im Laufe der Zeit von einfachen und langsamen zu immer schnelleren Ver­ fahren entwickelt haben. Ein Beispiel für ein schnelles Divi­ sionsverfahren stellt das High-Radix-Divisionsverfahren dar, bei dem in jedem Divisionszyklus mehr als ein Quotientenbit für den Quotienten aus Dividend und Divisor bereitgestellt wird.
Die Anzahl der bei jedem Divisionsschritt erzeugbaren Quotien­ tenbits eines Teilquotienten ist abhängig von einer Radixzahl r. Bei der Division der Operanden gemäß einem High-Radix-Divi­ sionsverfahren mit höheren Radixzahlen, beispielsweise bei einer dezimalen (r=10) oder hexadezimalen Division (r=16), können Teilquotienten ermittelt werden, bestehend aus einem Digit mit jeweils vier Quotientenbits.
Das High-Radix-Divisionsverfahren genügt dabei der rekursiven Grundgleichung
p(i) = rp(i-1) - q(i)D (1),
wobei i den Rekursivindex, p(i) den im i-ten Divisionsschritt gebildeten Teilrest, r die Radixzahl, q(i) den im i-ten Divi­ sionsschritt ermittelten Teilquotienten und D den Divisor be­ zeichnen. Das pro Divisionsschritt zu subtrahierende Divisor­ vielfache (q(i)D) kann abhängig vom Vorzeichen des zuletzt er­ mittelten Teilrests (rp(i-1)D) einen positiven oder negativen Wert annehmen (Non-Restoring-Verfahren). In gleicher Weise be­ steht auch der im jeweiligen Divisorvielfachen enthaltene Teilquotient (q(i)) aus einem positiven oder negativen Wert - siehe K.G. Tan, "The Theory and Implementations of High-Ra­ dix-Division", Proceedings of 4th IEEE Symposium on Computer Arithmetic, October 1978, pages 154-163.
Die Fig. 1a, 1b auf Seite 155 der genannten Veröffentli­ chung zeigen jeweils eine graphische Darstellung der Gleichung (1) abhängig von der vorgegebenen Radixzahl r und einer Redun­ danzkonstanten k. Durch die Redundanzkonstante werden Überlap­ pungsbereiche festgelegt, in denen von zwei benachbarten Teil­ quotientenwerten einer als korrekter Teilquotient ausgewählt werden kann. Die Teilquotientenauswahl ist für die Implemen­ tierung schneller Divisionsverfahren in Datenverarbeitungsan­ lagen von großer Bedeutung.
Beim Divisionswerk gemäß der Fig. 6 auf Seite 160 sind zwei Addiereinrichtungen angeordnet, von denen die eine die in je­ dem Divisionsschritt erforderliche Addition bzw. Subtraktion mit voller Genauigkeit durchführt, während ein verkürzter Teilrest jeweils parallel in der anderen Addiereinrichtung mit verringerter Genauigkeit gebildet wird. Die Auswahl des Teil­ quotienten für den jeweils nächstfolgenden Divisionsschritt erfolgt schließlich anhand des verschobenen verkürzten Addi­ tionsergebnisses und des verkürzten Divisors.
Ein modifiziertes High-Radix-Divisionsverfahren ist aus "Transformed High-Radix Division for High Performance Compu­ ters", K.G. Tan, IBM Technical Disclosure Bulletin, Vol. 24, No. 118, April 1982, pages 5812-5819, bekannt. Dabei wird eine schnelle Multiplikationsschaltung in der Weise ausge­ nutzt, daß aus dem Divisor durch Multiplikation mit einer Kon­ stanten ein transformierter Divisor entsteht. Die Auswahl der einzelnen Teilquotienten abhängig vom jeweils erzielten Teil­ rest erfolgt anhand von Tabellen, die auf Seite 5816 für un­ terschiedliche Radixzahlen (r=4,r=16) beispielhaft angegeben sind.
Eine Divisionseinrichtung zur Verminderung des Zeit- und Schaltungsaufwands für die Vorhersage des Teilquotienten in jedem Divisionsschritt ist in der EP-A30 158 530 enthalten. Sie weist zwei Vorhersageeinheiten, von denen jeweils ein Teilquotient erzeugt wird, sowie eine Einheit zur Auswahl eines der beiden gebildeten Teilquotienten auf. Eine Vorher­ sageeinheit ermittelt den Wert des Teilquotienten anhand einer Tabelle, für die als Eingänge üblicherweise das aus dem zu­ letzt berechneten Teilrest und einem ausgewählten Divisorviel­ fachen gebildete Additionsergebnis sowie der auf wenige Bit­ stellen verkürzte Divisor vorgesehen sind.
Die Verwendung dieser Tabelle für ein schnelles Divisionsver­ fahren ist wegen ihrer Vielzahl von Einträgen ungeeignet, so daß eine abgewandelte Tabelle mit weniger Einträgen erstellt wird, die als Eingänge jeweils das Additionsergebnis und ein Divisorvielfaches aufweist. Für die Vorhersage der Teilquo­ tienten anhand der modifizierten Tabelle (Table Look Up) wird die abhängig von der Radixzahl festgelegte Gesamtanzahl der Divisorvielfache, die jeweils den Teilquotienten enthalten, benötigt.
Aus der europäischen Patentanmeldung ist gemäß der Fig. 3 auch eine Schaltungsanordnung zur Vorhersage des Teilquotien­ ten bekannt, bei der das auf höherwertige Bitstellen begrenzte Additionsergebnis als Adresse an einen in mehrere Abschnitte aufgeteilten Speicher angelegt wird. Die Anzahl der Speicher­ abschnitte entspricht dabei der maximalen Anzahl der auszuwäh­ lenden Divisorvielfache. In jedem Speicherabschnitt ist eine Bitkombination gespeichert, die in parallel geschalteten Ver­ gleichern jeweils mit dem verkürzten Divisor verglichen wird. Die Ausgangssignale der Vergleicher bilden die Eingangssignale einer Suchschaltung, die als Ausgangssignal den Teilquotienten liefert.
Der Zeitaufwand für die Ansteuerung derartiger Tabellen (Table Look Up) oder Speicher wirkt sich wegen der Berücksichtigung sämtlicher Divisorvielfache bzw. Teilquotienten nachteilig auf die Verarbeitungszeit für die Vorhersage eines Teilquotienten in jedem Divisionsschritt aus. Bei Verwendung einer Tabelle für die Quotientenvorhersage in High-Radix-Divisionsverfahren erfordert der Wechsel der Radixzahl eine Anderung der Tabelle. Ebenso kann auch die aus der europäischen Patentanmeldung be­ kannte Schaltungsanordnung zur Vorhersage der Teilquotienten in einer Divisionseinrichtung nicht einheitlich für alle Ra­ dix-Divisionen eingesetzt werden.
Die Verwendung einer Anzahl von Divisorvielfachen entsprechend einer maximalen Redundanz bewirkt insbesondere für Divisions­ verfahren mit höheren Radixzahlen einen beträchtlichen Schal­ tungsaufwand, während bei Fehlen jeglicher Redundanz die Ope­ randen jeweils mit ihrer gesamten Operandenlänge zur Erzielung eines Additionsergebnisses maximaler Genauigkeit berücksich­ tigt werden müssen. Letztgenannter Fall ist für das Erreichen einer möglichst kurzen Ausführungszeit pro Divisionszyklus nicht geeignet.
Daher liegt der Erfindung die Aufgabe zugrunde, ein Verfahren und eine Schaltungsanordnung zur Radix-Division von Operanden zu schaffen, durch die die Teilquotienten für alle Radixzahlen in gleicher Weise vorhergesagt und die Zeit für die Vorhersage verringert werden kann.
Diese Aufgabe wird hinsichtlich des Verfahrens durch die kenn­ zeichnenden Merkmale des Patentanspruches 1 gelöst.
Für die Vorhersage der Teilquotienten werden nicht alle Divi­ sorvielfache einer Radix-Division verwendet, sondern die An­ zahl wird so groß gewählt, daß eine Redundanz entsteht, durch die lediglich verkürzte Operanden berücksichtigt zu werden brauchen. Die damit erzielbaren schaltungstechnischen und zeitlichen Einsparungen wirken sich für die Vorhersage beson­ ders vorteilhaft aus, wenn die Divisorvielfache selbst unmit­ telbar für die Auswahl eines Teilquotienten verwendet werden, indem sie ebenfalls als verkürzte Operanden bereitgestellt und mit dem verkürzten Dividenden bzw. dem jeweils zuletzt ermit­ telten Teilrest verglichen werden.
Die Vergleichsoperationen erfolgen gleichzeitig, d. h., daß je­ des bereitgestellte Divisorvielfache mit dem Dividenden bzw. Teilrest verglichen wird, und führen zu Ergebnissen, aus de­ nen durch nachfolgende, parallel durchgeführte Verknüpfungen einfachster Art genau ein korrekter Teilquotient ableitbar ist.
Während die Verknüpfung für die Bestimmung des kleinsten Teil­ quotienten ganz entfällt und die für die Erzeugung des größ­ ten Teilquotienten lediglich in einer Negation eines Ver­ gleichsergebnisses besteht, können die übrigen Teilquotienten aus der Verknüpfung von jeweils zwei Ergebnissen gewonnen wer­ den, die aus Vergleichsoperationen mit benachbarte Werte an­ nehmenden Divisorvielfachen folgen.
Die Parallelität der einzelnen Verfahrensschritte in Kombina­ tion mit der Verwendung verkürzter Operanden und einer mög­ lichst geringen Anzahl von Divisorvielfachen ermöglicht eine sehr schnelle Vorhersage eines Teilquotienten in jedem Divi­ sionsschritt. Insbesondere bei Divisionen mit höheren Radix­ zahlen wirkt sich das erfindungsgemäße Verfahren vorteilhaft aus, da hier da Arbeiten mit Tabellen oder Verfahren, bei de­ nen der Teilquotient mit einer auf ein Minimum begrenzten An­ zahl von Divisorvielfachen iterativ ermittelt wird, zu mehr Zeitaufwand führt.
Ein weiterer Vorteil des erfindungsgemäßen Verfahrens liegt in der einheitlichen Anwendung für alle Radix-Divisionen. Ledig­ lich die Anzahl und Größe der Divisorvielfache und damit der Teilquotienten sowie die Anzahl der parallel durchzuführenden Operationen ist beim Wechsel der Radixzahlen anzupassen.
Gemäß einer Weiterbildung der Erfindung wird für die Ermitt­ lung der Teilquotienten von den aus benachbarten Divisorviel­ fachwerten abgeleiteten Vergleichsergebnissen in einfacher Weise das aus dem größeren Vielfachen gewonnene Vergleichser­ gebnis jeweils mit dem aus dem kleineren Vielfachen erzeugten und invertierten Vergleichsergebnis verknüpft.
Andere Weiterbildungen der Erfindung betreffen die Möglichkeit einer Fehlermeldung gleichzeitig zur Quotientenvorhersage, so­ wie die dezimale Division, bei der anstelle ganzzahliger ge­ brochene Teilquotienten vorhergesagt werden. Dabei können die Vielfache mit einem Multiplikator, der kleiner als Eins ist, modifiziert werden, dessen Wert abhängig vom Wert des Divisors einstellbar ist. Damit läßt sich der Wertebereich der Divisor­ vielfache für die Vorhersagelogik wesentlich verringern.
Eine weitere vorteilhafte Ausgestaltung des dezimalen Verfah­ rens besteht darin, den Wertebereich in Abschnitte zu unter­ teilen, für die jeweils ein zugehöriger Multiplikator auswähl­ bar ist.
Die Merkmale zur Lösung der Aufgabe bezüglich der Schaltungs­ anordnung sind im kennzeichnenden Teil des Patentenspruchs 7 enthalten.
Es ist eine Vorhersagelogik vorgesehen, die parallel angeord­ nete Vergleichseinrichtungen sowie Vergleichsregister zur Speicherung von verkürzten Divisorvielfachen aufweist. Jede Vergleichseinrichtung ist mit einem Vergleichsregister verbun­ den und liefert aus dem Vergleich des verkürzten Teilrests mit dem gespeicherten Divisorvielfachen ein Vorzeichensignal. Aus den auf diese einfache und schnelle Weise gebildeten Vorzei­ chensignalen lassen sich Signale zur Auswahl der Teilquotien­ ten ableiten, von denen pro Divisionsschritt immer nur eines aktiv ist.
Weiterbildungen der Erfindung beziehen sich auf die Art und Weise der Verknüpfung der Vorzeichensignale unter Verwendung von Schaltgliedern zur Erzeugung der Auswahlsignale und eines Fehlersignals, sowie auf vorteilhafte Ausbildungen der Vorher­ sagelogik bezüglich des Schaltungsaufwands.
Die Erfindung wird anhand eines in der Zeichnung dargestellten Ausführungsbeispiels näher erläutert. Im einzelnen zeigt
Fig. 1 das Blockschaltbild eines Divisionswerks zur Bereitstel­ lung eines Quotienten mit der erfindungsgemäßen Vorher­ sagelogik,
Fig. 2 das Blockschaltbild einer Ausführungsform der Vorhersa­ gelogik,
Fig. 3 das Blockschaltbild einer weiteren Ausführungsform der Vorhersagelogik,
Fig. 4 bis Fig. 6 Divisionsbeispiele mit erfindungsgemäßer Vor­ hersage der Teilquotienten in jedem Divisions­ schritt.
Das Blockschaltbild gemäß Fig. 1 zeigt ein Divisionswerk zur Bereitstellung eines Quotienten aus einem Dividend DIV und einem Divisor DOR. Die beiden Operanden, von denen mindestens der Divisor normalisiert bereitgestellt wird, weisen variable Operandenlänge auf. Das Divisionswerk arbeitet nach dem be­ kannten High-Radix-Divisionsverfahren, bei dem pro Divisions­ zyklus mehr als ein Quotientenbit erzeugt wird. Die Anzahl der bei jedem Divisionsschritt ableitbaren Quotientenbits eines Teilquotienten ist abhängig von der Radixzahl r. So besteht beispielsweise der Teilquotient bei einer dezimalen (r=10) oder hexadezimalen (r=16) Division aus einem Digit mit jeweils vier Quotientenbits.
Das Divisionswerk weist parallel geschaltete Addiereinrichtun­ gen MAD, TAD auf, von denen die eine Addiereinrichtung MAD die Addition von Eingangsoperanden über deren Gesamtlänge durch­ führt, während die andere Addiereinrichtung TAD die Summe aus den jeweils verkürzten Operanden bildet. Die dem Radix-Divi­ sionsverfahren zugrundeliegende rekursive Gleichung (1) stellt dabei die Grundlage für die einzelnen Additionsvorgänge dar. - siehe K.G. Tan, "The Theory and Implementations of High-Ra­ dix Division", Proceedings of 4th IEEE Symposium on Computer Arithmetic, October 1978, pages 154-163.
Der Dividend DIV und der Divisor DOR werden in einem Operan­ denregister DDR gespeichert. Dem Operandenregister DDR ist ein Auswahlschalter AWS vorgeschaltet, durch den in einem Initia­ lisierungsschritt der Divisor DOR, der Dividend DIV und vor Beginn jedes nachfolgenden Divisionsschritts (i=1, 2,...) der zuletzt ermittelte Teilrest rp(i) zum Operandenregister DDR durchgeschaltet werden. Das Operandenregister DDR ist an beide Addiereinrichtungen MAD, TAD angeschlossen, wobei der gesamte Registerinhalt rp(i-1) der Addiereinrichtung MAD und ein ver­ kürzter Teil rp(i-1)t des gespeicherten Operanden der Addier­ einrichtung TAD zugeführt werden.
Das Operandenregister DDR ist außerdem mit einer Einrichtung DORM verbunden, die Datenregister zur Speicherung von Vielfa­ chen des Divisors DOR aufweist. Die Erzeugung der einzelnen Divisorvielfachwerte aus dem bereitgestellten Divisor DOR er­ folgt beispielsweise mit Hilfe der Addiereinrichtung MAD. Die Datenregister der Einrichtung DORM können dann mit den im Ope­ rendenregister DDR gespeicherten Werten geladen werden. Da es sich beim High-Radix-Divisionsverfahren um ein Non-Restoring- Verfahren handelt, werden von der Einrichtung DORM sowohl po­ sitive Divisorvielfache moD...mnD bzw. (joD)t...(jnD)t als auch negative Divisorvielfache -mnD...moD bzw. (-joD)t... (-jnD)t zur Verfügung gestellt.
Die Anzahl der zur Verfügung stehenden Divisorvielfache ist abhängig von einer gewählten Redundanzkonstante k, die durch die Gleichung
k = n/(r-1) (2)
definiert ist. Sie liegt im Wertebereich 0.5 ≦ ≦. Für den Fall, daß Redundanz vorliegt (k < 0.5), kann für die Bestim­ mung eines korrekten Teilquotienten q(i) innerhalb bestimmter Werte des Teilrests wahlweise von zwei Quotienten einer ausge­ wählt werden. Somit brauchen für die Festlegung der Teilquo­ tienten q(i) lediglich verkürzte Divisorvielfache (joD)t... (jnD)t, (-joD)t...(-jinD)t berücksichtigt zu werden.
Die Datenregister der Einrichtung DORM, die die unverkürzten Divisiorvielfache -mnD...moD...mnD speichern, sind beispiels­ weise mit einer Multiplexeinrichtung MUX verbunden, von der die Datenausgänge eines der Register durchgeschaltet werden. Das Steuersignal für die Multiplexeinrichtung MUX wird vom je­ weils festgelegten Teilquotienten q(i) gebildet. Ausgangssei­ tig ist die Multiplexeinrichtung MUX mit den beiden Addierein­ richtungen MAD, TAD gekoppelt, von denen die Addiereinrichtung MAD die gesamte Operandenlänge des durchgeschalteten Divisor­ vielfachs q(i)D empfängt, während der Addiereinrichtung TAD nur eine Teillänge als verkürzter Operand q(i)Dt zugeführt wird.
Die Datenregister der Einrichtung DORM, die die verkürzten Di­ visorvielfache (joD)t...(jnD)t, (-joD)t...(-jnD)t enthalten, sind mit einer Auswahlschaltung QSEL verbunden, von der je­ weils der Teilquotient q(i) mit Beginn des i-ten Divisions­ schritts bereitgestellt wird. Dazu ist die Auswahlschaltung QSEL mit der zur Verarbeitung verkürzter Operanden vorgesehe­ nen Addiereinrichtung TAD gekoppelt, von der das jeweils ermittelte verkürzte Additionsergebnis rp(i)t an die Auswahl­ schaltung übergeben wird.
Die Auswahlschaltung QSEL umfaßt eine Vorhersagelogik QPRE, die im Initialisierungsschritt (i = 0) und jedem darauffolgen­ den Divisionsschritt (i=1,2...) eines von mehreren Auswahlsi­ gnalen qn(i+1)...q-n(i+1) aktiviert. An die Vorhersagelogik QPRE ist eine Registerbank QL angeschlossen, bestehend aus ei­ ner der Anzahl der Auswahlsignale entsprechenden Anzahl von Registern, in denen die Teilquotienten q(i) gespeichert sind. Durch die Aktivierung eines der Auswahlsignale qn(i+1)...q-n(i+1) wird genau ein Teilquotient q(i) ausgelesen. Die Register kön­ nen dabei aus Latches aufgebaut sein, so daß beim Auslesen der gespeicherten Inhalte so gut wie kein Zeitverzug entsteht.
Dadurch, daß das Divisionswerk bevorzugt gemäß einer Pipeline­ struktur betrieben wird, bei der die Bildung des Teilrests rp(i) im i-ten Divisionsschritt überlappend zur Vorhersage des Teilquotienten q(i) für den (i+1)-ten Divisionsschritt erfolgt, wird im Initialisierungsschritt (i=O) der Teilquo­ tient q(i)=O voreingestellt. Als Folge dieser Einstellung wird das Vielfache q(i)D=O bzw. q(i)Dt=0 an die Addiereinrichtungen MAD, TAD durchgeschaltet.
Der Dividend DIV ist im Operandenregister DDR mit führenden Nullen für das höchstwertige Digit eingetragen, so daß nach Addition des Operanden q(i)D=O zum ausgelesenen Registerinhalt und nach Multiplikation des Additionsergebnisses p(i) mit der Radixzahl r der normalisierte Dividend rp(i-1) für den ersten Divisionsschritt (i=1) vorliegt.
Parallel dazu findet die Addition der genannten Operanden über deren verkürzte Länge sowie die Multiplikation statt, die z. B. mit einer Verschiebung des Additionsergebnisses erreicht wer­ den kann. Aus dem auf diese Weise gewonnenen verkürzten Ergeb­ nis rp(i)t wird von der Auswahlschaltung QSEL bereits der Teil­ quotient q(i) für den nachfolgenden ersten Divisionsschritt (i=1) abgeleitet.
Mit Beginn des ersten Divisionsschritts (i=1) wird in der Ad­ diereinrichtung MAD das ausgewählte, unverkürzte Divisorviel­ fache q(i)D vom unverkürzten Dividend rp(i-1) subtrahiert. Je­ de Subtraktion wird beispielsweise durch Addition des Komple­ ments durchgeführt. Das Additionsergebnis p(i) wird anschlie­ ßend mit der Radixzahl r in einer mit der Addiereinrichtung MAD gekoppelten Einheit SH multipliziert. Die höchstwertige Stelle des Additionsergebnisses p(i) muß dabei den Wert Null annehmen. Die Multiplikation kann beispielsweise in einfacher Weise durch Verschiebung des Additionsergebnisses p(i) um eine Dezimalstelle (r=10) oder mehrere Binärstellen (r=16) erreicht werden. Das verschobene Additionsergebnis bildet den ersten Teilrest rp(i) der Division, der für den nächstfolgenden Divi­ sionsschritt (i=2) in das Dividendenregister DIVR eingetragen wird.
Gleichzeitig zur Verarbeitung der Operanden q(i)D, rp(i-1) mit voller Länge erfolgt die Subtraktion der verkürzten Operanden q(i)Dt rp(i-1)t in der Addiereinrichtung TAD. Das Ergebnis wird ebenfalls verschoben und als verkürzter Teilrest rp(i)t der Vorhersagelogik QPRE übergeben. Die Auswahlschaltung QSEL liefert in gleicher Weise wie im Initialisierungsschritt (i=0) einen Teilquotient q(i), der die Auswahl eines Divisorvielfa­ chen für den zweiten Divisionsschritt (i=2) steuert.
Der im Divisionsschritt (i=l) zuvor jeweils ausgelesene Teil­ quotient q(i) wird nach Steuerung der Divisorvielfachenauswahl in einer Korrektureinrichtung QC zwischengespeichert. Abhängig vom Vorzeichen c(i) des im zugehörigen i-ten Divisionsschritt mit voller Genauigkeit erzielten Additionsergebnisses p(i) findet in der Einheit QC eine Modifikation des gespeicherten Teilquotienten q(i) statt. Der somit endgültig festgelegte Teilquotient q′(i) wird an eine Einrichtung QGEN für die Auf­ bereitung des gesamten Quotienten aus den einzelnen Teilquo­ tienten und zum Ausweisen eines Rests, falls erforderlich, übertragen.
In gleicher Weise wie im ersten Divisionsschritt (i=1) erfolgt in jedem weiteren Divisionsschritt (i=2, 3,...) die Bereitstel­ lung eines weiteren Teilquotienten q(i), durch den abhängig vom Vorzeichen des zuletzt ermittelten Teilrests rp(i), ein negatives oder ein positives Divisorvielfach zu den Addierein­ richtungen durchgeschaltet wird.
Auf die Addiereinrichtung TAD zur Verarbeitung der verkürzten Operanden kann auch verzichtet werden, wenn das Divisionswerk nicht gemäß einer Pipelinestruktur betrieben wird. Der für die Quotientenvorhersage bereitzustellende verkürzte Teilrest rp(i)t wird in diesem Fall am Ausgang der Einheit SH abgegrif­ fen, indem vom unverkürzten Teilrest rp(i) eine verringerte Anzahl von Operandenstellen an die Vorhersagelogik QPRE über­ geben wird.
Durch Wegfall der zeitlich überlappend zur Bildung des unver­ kürzten Teilrests rp(i) durchgeführten Vorhersage des Teilquo­ tienten q(i) für den (i+1)-ten Divisionsschritt wird ein Divi­ sionszyklus um die Laufzeit für die Quotientenvorhersage ver­ längert. Jedoch kann die für die Vorhersage erforderliche Stellenanzahl des verkürzten Teilrests rp(i)t gegenüber der bei Pipeline-Betrieb verkleinert werden.
Für den Aufbau eines möglichst schnellen, nach dem High-Radix- Divisionsverfahren betriebenen Divisionswerkes ist die in je­ dem Divisionsschritt erforderliche Vorhersage eines korrekten Teilquotienten von grundlegender Bedeutung. Durch die in Fig. 2 bzw. Fig. 3 dargestellte erfindungsgemäße Vorhersagelogik QPRE läßt sich die Verarbeitungsgeschwindigkeit bei der Division mit höheren Radices, insbesondere bei der dezimalen Division, gegenüber bekannten iterativen Verfahren (siehe K.G. Tan "High-Speed Decimal Division", IBM Technical Disclosure Bulle­ tin, Vol. 25, No. 1, June 1982, pages 77-83) oder im Ver­ gleich zur Verwendung von Tabellen (Table Look Up), die in Speichern (ROM, RAM) hinterlegt sind, wesentlich steigern.
Eine Möglichkeit der schaltungstechnischen Realisierung einer besonders schnellen Quotientenvorhersage bei ausreichender Ge­ nauigkeit zeigt Fig. 2. Die dargestellte Vorhersagelogik QPRE ist für die Dezimaldivision (r=10) und einen Redundanzfaktor von k=2/3 ausgelegt, so daß gemäß Gleichung (2) die Anzahl n der Divisorvielfachen zu nmax=6 festgelegt wird. Die Divisor­ vielfache (joD)t...(jnD)t, (-joD)t...(-jnD)t, die der Vorher­ sagelogik QPRE von der Einrichtung DORM gemäß Fig. 1 zur Verfü­ gung gestellt werden, resultieren aus der Multiplikation des Divisors D mit Vielfachenfaktoren ±jn, wobei diese beispiels­ weise die Gleichung
jn = n + 0,5 0≦ n ≦ nmax-1
erfüllen.
Der Divisor bleibt während des gesamten Divisionsvorgangs un­ verändert, so daß parallel angeordnete Vergleichsregister DMR mit den gemäß dem Beispiel gewählten verkürzten Divisorvielfa­ chen (5,5D)t...(-5, 5D)t vor Beginn der Division geladen wer­ den. Die Logik QPRE weist eine Kaskade von 2nmax parallel ge­ schalteten Vergleichseinrichtungen CU identischen Aufbaus auf, denen jeweils als Vergleichsoperand A der zuletzt ermittelte verkürzte Teilrest rp(i)t und als Vergleichsoperand B der In­ halt eines Vergleichsregisters DMR zugeführt werden.
Somit kann durch gleichzeitigen Vergleich der Operanden A und B in allen Vergleichseinrichtungen CU mehrere Vorzeichensigna­ le V5...V-5 erzeugt werden. Die Vorzeichensignale zweier be­ nachbarter, parallel geschalteter Vergleichseinrichtungen CU, beispielsweise die Vorzeichensignale V5 und V4, werden jeweils in einem nachgeschalteten Schaltglied, z. B. einem UND-Glied U5, verknüpft. Die Verknüpfung erfolgt in der Weise, daß das aus dem Vergleich des größeren Divisorvielfachen resultierende Vorzeichensignal, z. B. das Signal V5, auf einen nicht inver­ tierten Signaleingang und das aus dem Vergleich des kleineren Divisorvielfachen ermittelte Vorzeichensignal, z. B. das Signal V4, auf einen invertierten Signaleingang desselben Schaltglie­ des geführt werden.
Die Ausgangssignale aller UND-Glieder U5...U-5 bilden die Aus­ wahlsignale q5...q-5, während das Auswahlsignal q6 durch In­ vertierung des mit dem größten Divisorvielfachen (5, 5D)t gene­ rierten Vorzeichensignals V5 in einem Negationsglied N sowie das Auswahlsignal q-6 direkt von dem mit dem kleinsten Divi­ sorvielfachen (-5,5D)t erzeugten Vorzeichensignal V- 5 gebildet werden. Von den parallel generierten Auswahlsignalen q6...q-6 ist immer nur ein Signal aktiv, das dann das Auslesen genau eines Teilquotienten aus einem Register der Registerbank QL gemäß Fig. 1 bewirkt. Beim gewählten Ausführungsbeispiel mit dezimaler Division liefern die Auswahlsignale q6...q-6 für die Teilquotienten die Dezimalwerte 6 bis -6, die jeweils als ein aus vier Quotientenbits bestehendes Digit zusätzlich dem Vor­ zeichen in den einzelnen Registern gespeichert sind.
Die Vorhersagelogik QPRE ermöglicht eine im Vergleich zu be­ kannten Vorhersagemethoden schnellere und dennoch zuverlässige Vorhersage der Teilquotienten zum einen dadurch, daß die An­ zahl der Divisorvielfache so gewählt wird, daß sie zwischen der für eine maximal redundante und der für eine redundanzlose Division vorgesehenen Anzahl liegt. Somit brauchen nur ver­ kürzte Operanden für die Kaskadenschaltung berücksichtigt zu werden, was zu Einsparungen bei der Ausführungszeit pro Divi­ sionszyklus führt. Zum anderen ist durch die Kaskadenschaltung gewährleistet, daß der Teilquotient durch gleichzeitigen Ver­ gleich des zuletzt ermittelten verkürzten Teilrests rp(i)t mit jeweils zwei benachbarten verkürzten Divisorvielfachen auf einfache Weise herausgefiltert wird.
Für den Fall, daß der Wert des verkürzten Teilrests rp(i)t beispielsweise zwischen den verkürzten Divisorvielfachen (3,5D)t und (2,5D)t liegt, ergibt sich durch Vergleich der Operanden A und B für das Vorzeichensignal V3 ein negativer Signalzustand (binärer Wert 1) und für das Vorzeichensignal V2 ein positiver Signalzustand (binärer Wert 0). Durch die ein­ fach aufgebaute Kaskadenschaltung wird somit aus allen Aus­ wahlsignalen q6...q-6 als einziges Signal das Auswahlsignal q3 zum Auslesen des entsprechenden Teilquotienten mit dem Dezi­ malwert 3 aktiviert.
Gerade bei der dezimalen Division, die durch einen gegenüber der binären Division wesentlich größeren Wertebereich für den normalisierten Divisor gekennzeichnet ist, bietet eine Vorher­ sagelogik gemäß der Erfindung Geschwindigkeitsvorteile gegen­ über Speicherzugriffen oder iterativen Verfahren für die Aus­ wahl eines Teilquotienten.
Beim Vergleich zweier verkürzter Operanden A und B in der Ver­ gleichseinrichtung CU kennzeichnet ein Schaltpunkt die Ände­ rung des Signalzustandes, beispielsweise vom negativen zum po­ sitiven Zustand des Vorzeichensignals. Dieser Schaltpunkt muß dabei innerhalb eines Überlappungsbereiches liegen, in dem je­ weils von zwei Teilquotienten q(i) mit benachbarten Werten, z. B. den dezimalen Werten 3 und 2, wahlweise ein Quotient se­ lektiert werden darf. Die Größe des Überlappungsbereichs ü ist durch die Grenzen
rp(i-1)max = ( k + q(i)-1) · D
rp(i-1)min = ( -k + q(i)-1) · D
festgelegt (siehe Tan: "The Theory and Implementations of High-Radix-Division", Seiten 154 und 155) und ergibt sich für das gewählte Ausführungsbeispiel zu ü=⁺-(1/6)D.
Die Anzahl der beim Vergleich zu berücksichtigenden Operanden­ stellen der verkürzten Divisorvielfache wird daher so groß ge­ wählt, daß alle Schaltpunkte die Forderung erfüllen. Der durch die Verkürzung auftretende größtmögliche Fehler beträgt abso­ lut 0,1. Um diesen Betrag werden die Schaltpunkte maximal ver­ lagert. Da jedoch diese Verschiebung im Wertebereich für den kleinstmöglichen normalisierten Divisor (D=1) liegt (ümin= ±1/6), genügen für die Vorhersagelogik QPRE Divisorvielfache mit drei Digits zusätzlich dem Vorzeichen. Für den zu verglei­ chenden Teilrest sind ebenfalls drei Digits ausreichend.
Soll der Überlappungsbereich ü besser ausgenutzt werden, so kann man den Wertebereich des normalisierten Divisors erhöhen, beispielsweise auf 1,5≦ D< 15. Eine andere Möglichkeit besteht darin, für die verkürzten Vielfache anstelle von 12 Bitstel­ len (3 Digits) lediglich 9 Bitstellen vorzusehen. Der Wertebe­ reich des Divisors wird dadurch zu 0,3≦D< 3 festgelegt, so daß der maximale Überlappungsbereich bei verringerter Anzahl von zu berücksichtigenden Operandenstellen genutzt werden kann. Die Vergleichsregister werden dabei abweichend vom Bei­ spiel in Fig. 2 mit den Divisorvielfachen (5,5D+0,05)t... (-5,5D+0,05)t geladen.
Der Aufwand für die Bereitstellung der Teilquotienten kann weiter reduziert werden, indem für die Vorhersagelogik QPRE eine Schaltungsanordnung gemäß Fig. 3 verwendet wird. Sie weist in gleicher Weise wie die Vorhersageloqik QPRE gemäß Fig. 2 Vergleichsregister DMR zur Speicherung der jeweiligen Divisor­ vielfache und Vergleichseinrichtungen CU mit nachgeschalte­ ten Schaltgliedern auf.
Im Gegensatz zur Kaskadenschaltung gemäß Fig. 2, bei der jeder Vergleichseinrichtung CU positive oder negative Vergleichsope­ randen A, B zugeführt werden, liegen die Operanden A, B hier immer als positive Werte vor. Dies wird durch Einführung einer Komplementiereinrichtung KU erreicht, die in den Ausgangspfad der Addiereinrichtung TAD gemäß Fig. 1 geschaltet ist. Dabei braucht beim Komplementiervorgang ebenfalls lediglich die ver­ ringerte Anzahl von Operandenstellen des Teilrests berücksich­ tigt zu werden.
Abhängig vom Vorzeichen s(i) des jeweils zuletzt ermittelten verkürzten Teilrests rp(i)t wird von einem mit den Ausgängen der Addiereinrichtung TAD gemäß Fig. 1 und den Ausgängen der Komplementiereinrichtung KU verbundenen Auswahlschalter PAWS ein positiver verkürzter Teilrest als Operand C an eine weite­ re Addiereinrichtung FAD durchgeschaltet. In diesem Fall wer­ den an die Vorhersagelogik QPRE nur positive Divisorvielfache übergeben, die mit den von der Einrichtung DORM gemäß Fig. 1 bereitgestellten Divisorvielfachen moD...mnD übereinstimmen und mit Vielfachenfaktoren mn aus dem Divisor D gebildet wer­ den können. Dabei genügen die Faktoren der Gleichung
mn = n 0≦ n ≦ nmax-1.
Der Vergleichsoperand B für die einzelnen Vergleichseinrich­ tungen CU wird somit vom gespeicherten ganzzahligen, verkürz­ ten Divisorvielfachen gebildet, während der Vergleichsoperand A durch Addition des positiven Operanden C mit einem ebenfalls positiven verkürzten Divisorvielfachen (0,5D)t in der Addier­ einrichtung FAD entsteht. Somit ist gewährleistet, daß der be­ reitgestellte Teilquotient aus dem Vergleich von jeweils zwei benachbarten verkürzten Vielfachen mit einem modifizierten Teilrest ermittelt wird. Eine derartige Anordnung benötigt we­ niger Ladezyklen als die von Fig. 2 und einen modifizierten Teilrest. Darüber hinaus können die für die Vorhersagelogik bereitzustellenden verkürzten Divisorvielfache in einfacher Weise aus den für die Additionsvorgänge durchschaltbaren un­ verkürzten Divisorvielfachen abgeleitet werden.
Die Erzeugung der Vorzeichensignale V5...V0 sowie deren Ver­ knüpfung in den Schaltgliedern N, U5...U1 zu den Auswahlsigna­ len q6...q0 erfolgt in gleicher Weise wie bei der Vorhersage­ logik QPRE gemäß Fig. 2 beschrieben. Das Additionsergebnis am Ausgang der zusätzlichen Addiereinrichtung FAD wird mit einem Grenzwert in einer weiteren Vergleichseinrichtung CU vergli­ chen, der in gleicher Weise wie die verkürzten Divisorvielfa­ che (5D)t...0 in einem Vergleichsregister DMP gespeichert ist. Dieser Grenzwert setzt sich aus dem Betrag des mit dem größten vorhersagbaren Teilquotienten gebildeten, verkürzten Divisor­ vielfachen und einem änderbaren Einstellwert E zusammen. Im gewählten Ausführungsbeispiel nimmt der Grenzwert somit den Betrag (6D)t+E an, wobei für die Festlegung des Einstellwertes E gilt:
6D < (6D)t + E ≦ (6 1/6)D.
Überschreitet das Additionsergebnis A den Grenzwert B, so lie­ fert das Vorzeichen V6 am Ausgang der zusätzlich angeordneten Vergleichseinrichtung CU einen positiven Signalzustand (binä­ rer Wert 0). Ein nachgeschaltetes Negationsglied NO invertiert den ermittelten Signalzustand und bewirkt an seinem Ausgang eine Fehlermeldung DER, anhand der ein Hardwarefehler im Divi­ sionswerk erkennbar ist.
Die in Fig. 3 dargestellte Vorhersagelogik OPRE kann auch in der Weise abgewandelt werden, daß die Vergleichsregister DMR mit den in Fig. 2 angegebenen positiven verkürzten Divisorviel­ fachen geladen werden. Die zusätzlich vorhandene Addierein­ richtung FAD entfällt, so daß die Ausgänge des vorgeschalteten Auswahlschalters PAWS unmittelbar mit den Eingängen der Ver­ gleichseinrichtungen CU verbunden sind.
Unabhängig vom Aufbau der Vorhersagelogik QPRE gemäß Fig. 2 oder gemäß Fig. 3 kann eine zusätzliche Erhöhung des Wirkungs­ grades bei dezimaler Division dadurch erreicht werden, daß ge­ brochene Teilquotienten pro Divisionsschritt abhängig vom Wert des Divisors vorhergesagt werden. Bei Verwendung einer Vorher­ sagelogik QPRE gemäß Fig. 2 haben die von den Auswahlsignalen q6...q-6 angesteuerten Teilquotienten die Werte v (±1, ±2,... ±6), wobei der Multiplikator v, der der Ungleichung 0,1=v=1 genügt, abhängig vom Wert des Divisors jeweils einzustellen ist. Damit läßt sich der Wertebereich der Divisorvielfache für die Vorhersagelogik wesentlich einschränken.
Die von der Einrichtunq MULT gemäß Fig. 1 bereitgestellten Di­ visorvielfachen ergeben sich aus modifizierten Vielfachenfak­ toren ±jn bzw. ±mn, die die Gleichungen
jn = (n + 0,5) · v 0,1 ≦ v ≦ 1
mn = n · v
erfüllen.
Eine Aufteilung des Divisorwertebereichs in mehrere Abschnitte mit zugehörigen Multiplikatoren erfolgt derart, deß die zuge­ hörigen minimalen Überlappungsbereiche ümin möglichst gut aus­ genutzt werden. Ein Beispiel hierfür spiegelt folgende Tabelle wider:
Die Berechnung des endgültigen Quotienten aus den in den ein­ zelnen Divisionsschritten sich ergebenden, gebrochenen Teil­ quotienten veranlaßt analog zu den nicht gebrochenen Teilquo­ tienten die Einrichtung QC. Für die Ermittlung des gesamten Quotienten und eines Restes ist unter Umständen ein Schlußkor­ rekturschritt ähnlich dem bei der Non-Restoring-Division (v=1) notwendig, wobei hier allerdings eine auf wenige Stellen be­ schränkte Korrektur des Quotienten vorgenommen wird.
Anhand von Divisionsbeispielen gemäß den Fig. 4 bis 6 soll das erfindungsgemäße Divisionsverfahren mit optimierter Quotien­ tenvorhersage pro Divisionsschritt verdeutlicht werden.
Das in Fig. 4 gezeigte Divisionsbeispiel betrifft gemäß Zeile eine dezimale Division (r=10) mit einem Redundanzfaktor k=2/3, bei der ganzzahlige Teilquotienten (v=1) pro Divisionsschritt bereitgestellt werden. In den Zeilen 2 und 3 sind der Dividend DIV und der Divisor D mit den Dezimalwerten 4,5200 und 1,51 angegeben.
Im Initialisierungsschritt (i=0) wird der Teilquotient q(1) für den ersten Divisionsschritt (i=1) gemäß den Zeilen 4a bis 4d ermittelt. Wie bereits erwähnt, wird dabei der Dividend mit führenden Nullen im höchstwertigen Digit zu einem voreinge­ stellten Divisorvielfachen q(0)D=0 addiert und das Additions­ ergebnis anschließend mit der Radixzahl r multipliziert. Gemäß der Zeile 4a ist das Ergebnis ein Teilrest rp(0), dessen zu 4,5200 berechneter Wert mit dem Dividenden übereinstimmt.
Der in Zeile 4b erscheinende, unter Berücksichtigung lediglich verkürzter Operandenlängen ermittelte Wert rp(0)t nimmt den Wert 4,52 an. Die Anzahl der berücksichtigten Operandenstellen beträgt dabei ein Bit für das Vorzeichen und jeweils zwei Di­ gits vor und nach der Kommastelle.
Der verkürzte Teilrest rp(0)t bildet eines der Eingangssiqnale für die Vorhersagelogik QPRE gemäß Fig. 2, in der er mit einer Reihe von zuvor bereitgestellten Divisorvielfachen verglichen wird. Die Zeile 4c zeigt einen Ausschnitt aus den Vergleichs­ operationen, die für die Ableitung des einzig aktivierten Aus­ wahlsignals bestimmend sind. Neben den verkürzten Divisorviel­ fachen werden auch die für die Schaltpunkte maßgebenden Über­ lappungsbereiche beispielhaft angegeben. Die angegebenen Werte weisen zur Vorhersage eines korrekten Teilquotienten eine Ge­ nauigkeit von einem Digit nach der Kommastelle auf.
Der zu vergleichende Teilrest rp(0)t liegt zwischen dem ver­ kürzten Divisorvielfachen 3,5Dt=5,2 und dem verkürzten Divi­ sorvielfachen 2,5Dt=3,7. Die aus den Vergleichen resultieren­ den Vorzeichensignale V3, V2 nehmen folglich die binären Zu­ stände V3=1, V2=0 an. Aus der Verknüpfung aller auf diese Weise gebildeten Vorzeichensignale liefert die in Fig. 2 darge­ stellte Vorhersagelogik als einzig aktiviertes Auswahlsignal gemäß der Zeile 4d das Signal q3, das zum Auslesen des dezima­ len Teilquotienten q(1)=3 für den ersten Divisionsschritt (i=1) führt.
Im ersten Divisionsschritt (i=1) wird der Teilquotient q(2) für den nächstfolgenden Divisionsschritt (i=2) gemäß den Zei­ len 5a bis 5d bereitgestellt. In Zeile 5a wird das auf Grund des vorhergesagten Teilquotienten q(1) ausgewählte Divisor­ vielfache q(l)D vom unverkürzten Teilrest rp(0) subtrahiert, indem das Komplement des Divisorvielfachen addiert wird. Das Komplement vom Dreifachen des Divisors beträgt 5,4700, so daß sich ein negatives Ergebnis p(1)=9,9900 ergibt. Ebenso ergibt der Subtraktionsvorgang mit den jeweils verkürzten Operanden ein negatives verkürztes Ergebnis p(1)t, das gemäß Zeile 5b zum ersten verkürzten Teilrest rp(1)t=99,90 führt.
Aus den wiederum durch Vergleichsoperationen erzeugten und in Zeile 5c enthaltenen Vorzeichensignalen Vo, V-1 mit den Werten Vo=1, V-1=0 resultiert die Auswahl des Signals qo, das gemäß der Zeile 5d die Bereitstellung des Teilquotienten q(2)=0 für den zweiten Divisionsschritt (i=2) bewirkt.
In diesem zweiten Divisionsschritt (i=2) ergeben sich aus den parallel durchgeführten Additionsvorgängen gemäß den Zeilen 6a und 6b das unverkürzte Additionsergebnis p(2) mit dem Wert 99,9000 sowie der zweite verkürzte Teilrest rp(2)t mit dem Wert 99,00. Bei Vergleich des letztgenannten Wertes mit allen Divisorvielfachen werden von der Vorhersagelogik gemäß der Zeile 6c die Vorzeichensignale V-1=1 sowie V 2=0 gebildet, und somit gemäß der Zeile 6d das Auswahlsignal q-1 aktiviert. Es veranlaßt, daß der Teilquotient q(3) für den dritten Divisions­ schritt zu -1 ausgewählt wird.
Im dritten Divisionsschritt (i=3) gemäß der Zeile 7 wird das negative Divisorvielfache -q(3)D zum zuletzt berechneten Teil­ rest rp(2) addiert, was gleichbedeutend ist mit der Addition des einfachen Divisors. Der positive Wert 00,5100 des Addi­ tionsergebnisses p(3) stellt in dem gewählten Beispiel die letzte Summenbildung dar. Zur Erzielung eines genaueren Quo­ tienten aus Dividend und Divisor können in gleicher Weise wie in den vorausgegangenen Divisionsschritten weitere Additions­ und Vorhersagezyklen durchgeführt werden.
Wie bereits erwähnt, erfolgt unter Umständen eine Korrektur des vorhergesagten Teilquotienten, abhängig vom Vorzeichen des im zugehörigen Divisionsschritt erzielten Additionsergebnisses bzw. Teilrests. Der endgültige Teilquotient q′(i) nimmt die Werte gemäß folgender Tabelle A ein:
Tabelle A
Zeile 8a gibt den Teilquotienten q(1) und das Vorzeichen des zugehörigen unverkürzten Additionsergebnisses p(1) für den er­ sten Divisionsschritt an. Der ermittelte Dezimalwert q(1)=3 wird um eins erniedrigt und somit zum endgültigen Teilquotien­ ten q′(1)=2 festgelegt, da das Ergebnis der zugehörigen Addi­ tion negativ ist (p(1)<0).
Gemäß der Zeile 8b resultiert der endgültige Teilquotient q′(2) für den zweiten Divisionsschritt aus dem ermittelten Teilquotient q(2)=0 und aus der zugehörigen negativen Summe (p(2) 0) zum Wert -1, aus dem durch Komplementbildung der De­ zimalwert 9 entsteht. In Zeile 8c ist der endgültige Teilquo­ tient q′(3) für den dritten Divisionsschritt angegeben. Der Wert beträgt -1 und bleibt gegenüber dem Wert des ausgewähl­ ten Teilquotienten q(3) unverändert, da das zugehörige Addi­ tionsergebnis p(3) positiv (p(3)<0) ist.
Durch die Vorabkorrektur der Teilquotienten q(i) gemäß der Ta­ belle A kann die abschließende stellenrichtige Addition der Teilquotienten durch Aneinanderreihung der korrigierten Teil­ quotienten q′(i) in einem Schieberegister in jedem Divisions­ schritt ersetzt werden. Der gesamte Quotient QU ergibt sich somit gemäß der Zeile 9a zu 2,99. Den Wert für den endgültigen Rest R des Divisionsvorgangs bildet das im dritten Divisions­ schritt (i=3) ermittelte Additionsergebnis p(3) gemäß der Zei­ le 7, das dann um den Wert 10-(i-1) verschoben wird. Da der letzte Rest positiv ist, entfällt eine Abschlußkorrektur des Restes. Gemäß der Zeile 9b ergibt sich für den Rest R der Wert 0,0051.
Das in Fig. 5 dargestellte Divisionsbeispiel betrifft gemäß der Zeile 1 ebenfalls eine dezimale Division (r=10) mit einem Re­ dundanzfaktor k=2/3. Im Gegensatz zu dem in Fig. 4 qewählten Beispiel werden jetzt pro Divisionsschritt gebrochene Teilquo­ tienten vorhergesagt. Der Multiplikator v beträgt 0,5. In den Zeilen 2 und 3 sind der Dividend DIV und der Divisor D mit den Werten 3,2507 und 1,51 angegeben.
Im Initialisierungsschritt (i=0) werden gemäß den Zeilen 4a und 4b der mit dem Dividend identische, unverkürzte Teilrest rp(0) zu 3,2507 und der verkürzte Teilrest rp(0)t zu 3,25 festgelegt. Die Einführung eines Multiplikators v bewirkt nicht nur die Änderung der Quotientenvorhersage von ganzzahli­ gen zu gebrochenen Werten, sondern auch eine Verschiebung der Wertebereiche, die die Divisorvielfache annehmen.
In Zeile 4c sind die auf Grund des Multiplikators v sich erqe­ benden Divisorvielfachen 3,5 vDt und 4,5 vDt mit ihren jeweils zugehörigen, entsprechend angepaßten Überlappungsbereichen an­ gegeben. Der Wert des verkürzten Teilrests rp(0)t liegt zwi­ schen den Werten 2,6 und 3,3, so daß sich für die Vorzeichen­ signale V3 und V4 die binären Zuständen V3=0, V4=1 ergeben. Damit wird das Auswahlsignal q4 aktiviert, das zum Auslesen des gebrochenen Teilquotienten q(1) gemäß der Zeile 4d führt. Der Wert 2,0 ergibt sich aus der Multiplikation des Multipli­ kators v mit dem Dezimalwert 4.
Im ersten Divisionsschritt (i=1) wird das ausgewählte Divi­ sorvielfache q(1)D vom zuletzt ermittelten Teilrest rp(0) sub­ trahiert, indem das vom zweifachen Divisor gebildete Komple­ ment 6,9800 zum Wert 3,2507 addiert wird. Die Addition liefert ein positives Ergebnis p(1)=0,2307. Ebenso wird bei der Erzeu­ gung des verkürzten Teilrests rp(1)t in Zeile 5b verfahren, der schließlich den Wert 2,30 aufweist.
Aus allen, von der Vorhersagelogik gelieferten Vorzeichensi­ gnalen bestimmt das Signalpaar V2, V3 mit den Werten V2=0, V3=1 gemäß der Zeile 5c das Auswahlsignal, das gemäß der Zeile 5d den gebrochenen Teilquotienten q(3) zu 1,5 festlegt.
Im zweiten Divisionsschritt (i=2) erfolgen wiederum die Addi­ tionen der unverkürzten und verkürzten Operanden zeitlich überlappend zueinander, die gemäß den Zeilen 6a und 6b zu ei­ nem positiven Ergebnis p(2)=0,0420 sowie zu einem positiven Teilrest rp(2)t=0,42 führen. Aus den in Zeile 6c angegebenen Vorzeichensignalen V 1, V0 mit den Werten V 1=0, V =1 wird des Auswahlsignal q0 gemäß der Zeile 6d herausgefiltert, durch das der gebrochene Teilquotient q(3)=v 0 ausgelesen wird.
Auch im dritten Divisionsschrit (i=3) resultieren aus den Ad­ ditionen über die unverkürzten bzw. verkürzten Operandenlängen positive Werte gemäß den Zeilen 7a und 7b, wobei aus dem ver­ kürzten Teilrest rp(3)t=4,20 durch Vergleich mit allen Divi­ sorvielfachen von der Vorhersagelogik die Vorzeichensignale V5, V4 mit den Werten V5=I, V4=D entsprechend der Zeile 7c das Signal q5 aktiviert wird. Durch das Auswahlsignal q5 wird ge­ Zeile 7d der gebrochene Teilquotient q(4) zu V 5 = 2,5 bestimmt.
Im vierten Divisionsschritt (i=4) gemäß der Zeile 8 wird vom zuletzt ermittelten unverkürzten Teilrest rp(3) das ausgewähl­ te Divisorvielfache q(4)D subtrahiert, indem das vom zweiein­ halbfachen Divisor gebildete Komplement 6,2250 zum Wert 4,2000 addiert wird. Das Ergebnis p(4) dient zur Berechnung des Rest­ werts R des Divisionsvorgangs. Beim gewählten Ausführungsbei­ spiel nehmen die in jedem Divisionsschritt ermittelten gebro­ chenen Teilquotienten sowie die zugehörigen Additionsergebnis­ se nur positive Werte an, so daß Korrekturschritte nicht er­ forderlich sind. Die zugehörige Tabelle B enthält folgende Werte:
Tabelle B
Der gesamte Quotient QU aus Dividend und Divisor ist in Zeile 9a angegeben. Anstelle der ganzzahligen Teilquotienten beim Divisionsbeispiel gemäß Fig. 4, werden die gebrochenen Teilquo­ tienten q(1) bis q(4) stellenrichtig addiert. Die Vorabkorrek­ tur nach der Tabelle 8 ermöglicht diese Addition durch eine stellenrichtige Ein-Digit-Addition des jeweils zuletzt ermit­ telten Teilquotienten q′(i) mit dem bis auf die letzte Stelle endgültig berechneten Quotienten zu ersetzen. Die letzte Quo­ tientenstelle q′m(i) des Quotienten QU und der Rest R des Di­ visionsverfahrens werden gemäß folgender Korrekturtabelle ge­ bildet:
Folglich wird der für den vierten Divisionsschritt (i=4) vor­ hergesagte Teilquotient q′(4)=2,5 um 0,5 erniedrigt, da das zugehörige Additionsergebnis p(4) einen positiven Wert an­ nimmt. Die letzte Quotientenstelle q′m(4) beträgt somit 2,0 so daß der Wert des Quotienten QU aus Dividend und Divisor für das gewählte Ausführungsbeispiel zu 2,152 festgelegt wird.
Ergänzend ist in Zeile 9b der Wert des Rests R des Divisions­ vorgangs ausgewiesen, der aus dem Additionsergebnis im vierten Divisionsschritt (i=4) gemäß der Zeile 8 ableitbar ist. Gemäß obiger Tabelle erfolgt die Addition des halben Divisors D zum Ergebnis p(4). Der genaue Wert des Rests R beträgt nach einer entsprechenden Stellenverschiebung 0,00118.
In Fig. 6 ist ein Divisionsbeispiel für eine hexadezimale Divi­ sion (r=16) mit dem Redundanzfaktor k=2/3 dargestellt, so daß gemäß der Zeile 1 die Anzahl nmax der Divisorvielfache zu zehn festgelegt ist. Bei der Wahl der in den Zeilen 2 und 3 angege­ benen, hexadezimalen Werte B090 für den Dividenden DIV und 6 für den Divisor D ist darauf geachtet worden, möglichst einfa­ che Zahlen zu verwenden. Das Divisionsverfahren gemäß der Er­ findung ermöglicht die Division von hexadezimalen Operanden größerer Länge, insbesondere auch die Verwendung eines Divi­ sors mit mehreren Digits.
Der Dividend wird, wie zuvor beschrieben, in das zugehörige Dividendenregister geladen, wobei führende Nullen in die höchstwertigen Speicherstellen eingetragen werden. Für den Fall, daß sich die höchstwertigen Digits des Dividenden außer­ halb der Wertebereiche der auswählbaren Divisorvielfachen be­ finden, werden für die Bildung des ersten Teilrests rp(0) zu­ sätzliche Nullen vor dem ersten, von Null verschiedenen Digit des Dividenden berücksichtigt.
Daher beträgt der Wert des unverkürzten ersten Teilrests im Initialisierungsschritt gemäß der Zeile 4a 0B090, von dem als verkürzter Teilrest rp(0)t gemäß der Zeile 4b der hexadezima­ le Wert 0B für die Vorhersage verwendet wird. Der verkürzte Teilrest rp(0)t bildet eines der Eingangssignale für die Vor­ hersagelogik QPRE gemäß Fig. 2, in der er mit einer Reihe von zuvor bereitgestellten Divisorvielfachen verglichen wird.
Die Zeile 4c zeigt wiederum einen Ausschnitt aus den Ver­ gleichsoperationen, anhand der das einzig aktivierte Auswahl­ signal zur Vorhersage eines Teilquotienten für den ersten Di­ visionsschritt (i=1) bestimmt wird. Dabei sind die verkürzten Divisorvielfache einschließlich ihrer "Überlappungsbereiche in Vorzeichen/Betrags-Darstellung angegeben.
Der zu vergleichende Teilrest rp(0)t liegt zwischen dem ver­ kürzten Divisorvielfachen 2,5Dt=0F und dem verkürzten Divi­ sorvielfachen 1,5Dt=09. Daraus resultieren die Vorzeichensi­ gnale V2, V1 mit den binären Werten V2=1, V1=0. Durch Verknüp­ fung aller auf diese Weise gebildeten Vorzeichensignale lie­ fert die Vorhersagelogik als einzig aktiviertes Auswahlsiqnal gemäß der Zeile 4d das Signal q2, mit dem der hexadezimale Teilquotient q(1)=2 für den ersten Divisionsschritt (i=1) ausgelesen wird.
Im ersten Divisionsschritt (i=1) wird das aufgrund des vor­ hergesagten Teilquotienten q(1) ausgewählte Divisorvielfache q(1)D vom unverkürzten Teilrest rp(0) subtrahiert, indem das Komplement des Divisorvielfachen addiert wird. Das Komplement vom zweifachen des Divisors beträgt F4, so daß sich als Er­ gebnis p(1) der Subtraktion über die vollen Operandenlängen gemäß der Zeile 5a der hexadezimale Wert FF090 ergibt, der ei­ nen negativen Wert -0F70 darstellt.
Der parallel ausgeführt Subtraktionsvorgang mit den auf drei Digits verkürzten Operanden rp(0)t, q(1)Dt führt gemäß der Zeile 5b zu einem negativen verkürzten Ergebnis p(1)t, aus dem durch Verschiebung der verkürzte Teilrest rp(1)t=F0 entsteht.
Der Vergleich des negativen verkürzten Teilrests rp(1)t mit allen verkürzten Divisorvielfachen liefert für die Vorzeichen­ signale V-3 V-2 die binären Werte V-3=0, V-2=1. Diese bei­ den Signale sind bestimmend für die Auswahl des Signals q -3, das gemäß der Zeile 5d die Bereitstellung des Teilquotienten q(2)=-3 für den zweiten Divisionsschritt (i=2) bewirkt.
In diesem zweiten Divisionsschritt (i=2) wird zum Teilrest rp(1)=F0900 das Komplement des zuvor ausgewählten Divisorviel­ fachen q(2)D=12000 addiert, woraus ein positiver Wert 02900 gemäß der Zeile 6a resultiert. Die in der Zeile 6b angegebene Summenbildung der jeweils verkürzten Operanden rp(1)t=F09, -q(2)Dt=120 ergibt den hexadezimalen Wert 029, der nach Multi­ plikation mit der Radixzahl r den verkürzten Teilrest rp(2)t=29 für die Vorhersage des nächstfolgenden Teilquotienten bildet.
Bei Vergleich des letztgenannten Wertes mit allen Divisorviel­ fachen werden von der Vorhersagelogik gemäß der Zeile 6c die Vorzeichensignale V7=1, V6=0 gebildet, und somit gemäß der Zeile 6d das Auswahlsignal q7 aktiviert. Es veranlaßt, daß der Teilquotient q(3) für den dritten Divisionsschritt (i=3) zu -7 ausgewählt wird.
Im dritten Divisionsschritt (i=3) erfolgen die Additionen der unverkürzten und verkürzten Operanden ebenfalls zeitlich über­ lappend zueinander, wobei gemäß den Zeilen 7a und 7b das Kom­ plement des ausgewählten Divisorvielfachen über die volle Länge und über einen drei Digits umfassenden Teil der Operan­ denlänge zum unverkürzten Teilrest rp(2) und zum verkürzten Teilrest rp(2)t addiert wird. Durch Verschiebung des verkürz­ ten, den hexadezimalen Wert FF0 annehmenden Additionsergebnis­ ses ergibt sich der verkürzte Teilrest rp(3)t=F0, der zur Vor­ hersage des Teilquotienten für den vierten Divisionsschritt (i=4) verwendet wird.
Aus den in Zeile 7c angegebenen Vorzeichensignalen V-3, V -2, mit den Werten V-3=0, V -2=1 wird das Auswahlsignal q -3 gemäß der Zeile 7d von der Vorhersagelogik herausgefiltert, durch das der Teilquotient q(4) mit dem hexadezimalen Wert -3 ausge­ lesen wird.
Im vierten Divisionsschritt (i=4) gemäß der Zeile 8 wird vom zuletzt ermittelten unverkürzten Teilrest rp(3) das ausge­ wählte Divisorvielfache q(4)D in bekannter Weise subtrahiert bzw. addiert. Das daraus resultierende Ergebnis p(4) liefert den Restwert des Divisionsvorgangs. Die Korrektur der in den einzelnen Schritten vorhergesagten Teilquotienten erfolgt nach folgenden Beziehungen:
a) für q(i) ≧ 0, p(i) ≧ 0: q′(i) = q(i), ansonsten q′(i) = q(i)-1;
b) für q(i) < 0, p(i) ≧ 0,: q′(i) = r + q(i), ansonsten q′(i) = r + q(i)-1.
Demnach wird gemäß der Zeile 9a der ermittelte Hexadezimal­ wert q(1)=2 um 1 erniedrigt und somit zum endgültigen hexa­ dezimalen Teilquotienten q′(1)=1 festgelegt, da das Ergebnis der zugehörigen Addition negativ ist (p(1) 0). Bei den ge­ mäß den Zeilen 9b und 9d vorhergesagten negativen Teilquo­ tienten q(2) und q(4) und ihren jeweils zugehörigen positiven Additionsergebnissen p (2) und p (4) ergeben sich für die end­ gültigen Teilquotienten q′ (2) und q′ (4) die hexadezimalen Werte D. Der in Zeile 8c aufgeführte endgültige Teilquotient q′ (3) für den dritten Divisionsschritt resultiert aus der Subtraktion einer 1 vom vorhergesagten Teilquotienten q(3), da das entsprechende Additionsergebnis p (3) negativ ist (p (3) 0).
Die Zeile 10 weist wiederum den gesamten Quotienten QU aus, wobei die abschließende Addition der Teilquotienten q(i) unter Berücksichtigung ihrer jeweiligen Stellenverschiebung durch eine Aneinanderreihung der korrigierten Teilquotienten q′ (i) ersetzt werden kann. Der hexadezimale Wert für den Quotienten QU beträgt folglich 1D6D. Der Wert des Rests R qemäß der Zeile 10b ist identisch mit dem im vierten Divisionsschritt (i=4) erzeugten Additionsergebnis p (4).

Claims (15)

1. Verfahren für Datenverarbeitungsanlagen zur Radix-Division eines Dividenden (DIV) und eines Divisors (DOR) von jeweils beliebiger Länge, bei dem im ersten-Divisionsschritt durch Subtraktion eines Divisorvielfachen (q(i)D) vom Dividenden (DIV) ein erster Teilrest (rp(i)) gebildet und in jedem weite­ ren Divisionsschritt abhängig vom Vorzeichen (c(i)) des je­ weils zuletzt ermittelten Teilrests ein Divisorvielfaches zu diesem addiert oder von diesem subtrahiert wird (Non-Resto­ ring-Verfahren) und bei dem pro Divisionsschritt eine abhängig von einer Radixzahl (r) festgelegte Anzahl von Bitstellen eines Teilquotienten (q(i)) aus Dividend bzw. Teilrest und Di­ visor vorhergesagt wird, wobei für die Vorhersage des Teil­ quotienten ein verkürzter Dividend bzw. verkürzter Teilrest verwendet wird, dadurch gekennzeich­ net,
  • - daß die Anzahl der Divisorvielfache entsprechend einer An­ zahl gewählt wird, die größer als die für eine redundanzlose und kleiner als die für eine maximal redundante Division maßgebende Anzahl ist,
  • - daß für die Vorhersage des Teilquotienten (q(i)) alle Divi­ sorvielfache (z. B. (jnD)t...(joD)t, (joD)t...(jnD)t) ver­ kürzt bereitgestellt und im ersten Divisionsschritt mit dem verkürzten Dividenden sowie in jedem weiteren Divisions­ schritt mit dem jeweils zuletzt erzielten, verkürzten Teil­ rest (rp(i)t) gleichzeitig verglichen werden, und
  • - daß der Teilquotient (q(i)) durch Verknüpfung von jeweils zwei Vergleichsergebnissen (z. B. V5, V4), die aus benachbar­ te Werte annehmenden Divisorvielfachen (z. B. 5,5Dt, 4,5Dt) abgeleitet werden, ermittelt wird, wobei der größte Teilquo­ tient (z. B. q6) durch Negation des aus dem größten Divisor­ vielfachen (z. B. 5,5Dt) gewonnenen Vergleichsergebnisses (z. B. V5) erzeugt wird, während der kleinste Teilquotient (z. B. q -6) unmittelbar von dem aus dem kleinsten Divisor­ vielfachen (z. B. -5,5Dt) abgeleiteten Vergleichsergebnis (z. B. V -5) gebildet wird.
2. Verfahren nach Anspruch 1, dadurch gekenn­ zeichnet, daß von den beiden, aus benachbarten Divi­ sorvielfachwerten (z. B. 5,5Dt, 4,5Dt) abgeleiteten Vergleichs­ ergebnissen (z. B. V5, V4) das jeweils aus dem kleineren Divi­ sorvielfachen (z. B. 4,5Dt) erzeugte Vergleichsergebnis (z. B. V4) invertiert und mit dem jeweils aus dem größeren Divisor­ vielfachen (z. B. 5,5Dt) gewonnenen Vergleichsergebnis (z. B. V5) verknüpft wird.
3. Verfahren nach Anspruch 1 oder 2, dadurch ge­ kennzeichnet, daß gleichzeitig zur Vorhersage des Teilquotienten (q(i)) pro Divisionsschritt der Betrag des ver­ kürzten Teilrests (rp(i)t) mit einem maximal zulässigen Grenz­ wert verglichen wird und daß bei Überschreitung des Grenzwer­ tes eine Fehlermeldung (DER) erzeugt wird.
4. Verfahren nach Anspruch 3, dadurch ge­ kennzeichnet, daß der Grenzwert von dem mit dem größten vorhersagbaren Teilquotienten (z. B. q6) erzeugten ver­ kürzten Divisorvielfachen (z. B. 6Dt) und von einem änderbaren Einstellwert (E) gebildet wird.
5. Verfahren nach einem der Ansprüche 1 bis 4, da­ durch gekennzeichnet, daß bei dezimaler Division gebrochene Teilquotienten (z. B. q6...q-6) in jedem Divisionsschritt vorhergesagt werden.
6. Verfahren nach Anspruch 5, dadurch ge­ kennzeichnet, daß zur Vorhersage der gebrochenen Teilquotienten (z. B. q6...q-6) alle Divisorvielfache (z. B. 5,5Dt...-5,5Dt) mit einem Multiplikator (v) multipliziert wer­ den, dessen gebrochenzahlige Werte zwischen den Werten 0,1 und 1 liegen.
7. Verfahren nach Anspruch 6, dadurch gekenn­ zeichnet, daß der Wert des Multiplikators (v) ab­ hängig vom Wert des der Division zugrundeliegenden Divisors (DOR) eingestellt wird.
8. Verfahren nach Anspruch 7 dadurch gekenn­ zeichnet, daß der Wertebereich des Divisors (DOR) in mehrere Abschnitte unterteilt wird, für die jeweils ein zuge­ höriger Multiplikator ausgewählt wird.
9. Schaltungsanordnung zur Durchführung des Verfahrens nach Anspruch 1 mit einem Operandenregister (DDR) zur Speicherung eines Divisors (DOR), eines Dividenden (DIV) bzw. eines in je­ dem Divisionsschritt erzeugten Teilrests (rp(i)), einer Ein­ richtung (DORM) zur Bereitstellung von Divisorvielfachen (-mnD...moD...mnD,(jnD)t...(joD)t,(-joD)t...(-jnD)t), sowie mit parallel angeordneten Addiereinrichtungen (MAD,TAD), von denen die eine Einrichtung (MAD) den Teilrest (rp(i)) durch Addition des Operandenregisterinhalts (rp(i-1)) mit einem Di­ visorvielfachen (q(i)D) über deren jeweilige Gesamtlänge be­ rechnet, während die andere Einrichtung (TAD) einen verkürzten Teilrest (rp(i)t) durch Addition der jeweils verkürzten Ope­ randen (q(i)Dt, rp(i-1)t) an ihren Ausgängen führt, da­ durch gekennzeichnet,
  • - daß eine Vorhersagelogik (QPRE) vorgesehen ist, die an die Einrichtung (DORM) zur Bereitstellung der Divisorvielfache (z. B. jnD)t...(joD)t, (-joD)t...(-jnD)t) und an die Ausgänge der den verkürzten Teilrest (rp(i)t) liefernden Addierein­ richtung (TAD) angeschlossen ist,
  • - daß die Vorhersagelogik (QPRE) parallel geschaltete Ver­ gleichseinrichtungen (CU) zur Erzeugung von Vorzeichensigna­ len (z. B. V5...V-5) aufweist, deren Eingänge mit den Ausgän­ gen von Vergleichsregistern (DMR), in denen bereitgestellte verkürzte Divisorvielfache (z. B. 5,5Dt...-5,5Dt) gespeichert sind, verbunden sind, und
  • - daß der kleinste Teilquotient (z. B. q-6) unmittelbar durch das aus dem kleinsten gespeicherten Divisorvielfachen (z. B. -5,5Dt) abgeleitete Vorzeichensignal (z. B. V-5) auswählbar ist, während die anderen Vorzeichensignale (z. B. V5...V-4) die Eingangssignale von Schaltgliedern (z. B. N,U5...U-5) zur Bildung von Auswählsignalen für die übrigen Teilquotienten (z. B. q6...q-5) bilden.
10. Schaltungsanordnung nach Anspruch 9, dadurch gekennzeichnet, daß das aus dem größten ge­ speicherten Divisorvielfachen (z. B. 5,5Dt) abgeleitete Vorzei­ chensignal (z. B. V5) das Eingangssignal eines Negationsgliedes (N) bildet, und daß von den Vorzeichensignalen (z. B. V5, V4) zweier benachbarter Vergleichseinrichtungen (CU) jeweils das aus dem kleineren gespeicherten Divisorvielfachen (z. B. 4,5Dt gewonnene Vorzeichensignal (z. B. V4) auf den invertierten Ein­ gang eines UND-Gliedes (z. B. U5) und das aus dem größeren ge­ speicherten Divisorvielfachen (z. B. 5,5Dt) erzeugte Vorzei­ chensignal (z. B. V5) auf den nicht invertierten Eingang des UND-Gliedes (z. B. U5) geführt sind.
11. Schaltungsanordnung nach Anspruch 9 oder 10, da­ durch gekennzeichnet, daß in einem der Vergleichsregister (DMR) ein maximal zulässiger Grenzwert als Vergleichsoperand gespeichert ist, und daß das aus dem Betrag des Grenzwertes jeweils abgeleitete Vorzeichensignal (z. B. V6) das Eingangssignal eines Negationsgliedes (NO) zur Erzeugung eines Fehlersignals (DER) bildet.
12. Schaltungsanordnung nach einem der Ansprüche 9 bis 11, dadurch gekennzeichnet, daß die Vor­ hersagelogik (QPRE) Vergleichsregister (DMR) aufweist, in de­ nen jeweils ein positives verkürztes Divisorvielfaches (z. B. 4,5Dt) und das entsprechende negative verkürzte Divisorvielfa­ che (z. B. -4,5Dt) als Vergleichsoperanden für die Vergleichs­ einrichtungen (CU) gespeichert sind.
13. Schaltungsanordnung nach einem der Ansprüche 9 bis 11, dadurch gekennzeichnet,
  • - daß die Vorhersagelogik (QPRE) Vergleichsregister (DMR) auf­ weist, in denen nur positive verkürzte Divisorvielfache (z. B. 5Dt...0) als Vergleichsoperanden für die Vergleichs­ einrichtungen (CU) gespeichert sind,
  • - daß an die Addiereinrichtunq (TAD) eine Einrichtung (KU) an­ geschlossen ist, durch die das Komplement des verkürzten Teilrests (rp(i)t) erzeugbar ist, und
  • - daß ein Auswahlschalter (PAWS) vorgesehen ist, durch den ab­ hängig vom Vorzeichen (s(i)) des ermittelten verkürzten Teilrests (rp(i)t) die Ausgänge der Addiereinrichtung (TAD) oder die der Komplementiereinrichtung (KU) durchschaltbar sind.
14. Schaltungsanordnung nach Anspruch 13, dadurch gekennzeichnet, daß der Auswahlschalter (PAWS) mit den Vergleichseinrichtungen (CU) verbunden ist.
15. Schaltungsanordnung nach Anspruch 13, dadurch gekennzeichnet, daß an den Auswahlschalter (PAWS) eine weitere Addiereinrichtung (FAD) angeschlossen ist, durch die ein verkürztes Divisorvielfach (z. B. 0,5Dt) zu den durchgeschalteten Ausgängen jeweils addierbar und das Addi­ tionsergebnis den Vergleichseinrichtungen (CU) zuführbar ist.
DE19914121106 1991-06-26 1991-06-26 Verfahren fuer datenverarbeitungsanlagen zur radix-division eines dividenden und eines divisors von jeweils beliebiger laenge und schaltungsanordnung zur durchfuehrung des verfahrens Granted DE4121106A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19914121106 DE4121106A1 (de) 1991-06-26 1991-06-26 Verfahren fuer datenverarbeitungsanlagen zur radix-division eines dividenden und eines divisors von jeweils beliebiger laenge und schaltungsanordnung zur durchfuehrung des verfahrens

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19914121106 DE4121106A1 (de) 1991-06-26 1991-06-26 Verfahren fuer datenverarbeitungsanlagen zur radix-division eines dividenden und eines divisors von jeweils beliebiger laenge und schaltungsanordnung zur durchfuehrung des verfahrens

Publications (2)

Publication Number Publication Date
DE4121106A1 true DE4121106A1 (de) 1993-01-07
DE4121106C2 DE4121106C2 (de) 1993-09-02

Family

ID=6434790

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19914121106 Granted DE4121106A1 (de) 1991-06-26 1991-06-26 Verfahren fuer datenverarbeitungsanlagen zur radix-division eines dividenden und eines divisors von jeweils beliebiger laenge und schaltungsanordnung zur durchfuehrung des verfahrens

Country Status (1)

Country Link
DE (1) DE4121106A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4447781B4 (de) * 1993-03-22 2004-01-08 Mitsubishi Denki K.K. Divisionsschaltung

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0158530A2 (de) * 1984-04-09 1985-10-16 Fujitsu Limited Dividierer ohne Rückstellung
DE3303269C2 (de) * 1982-02-16 1988-08-25 Hitachi, Ltd., Tokio/Tokyo, Jp
DE3340362C2 (de) * 1982-11-09 1988-12-01 Hitachi, Ltd., Tokio/Tokyo, Jp
WO1990009630A1 (en) * 1989-02-17 1990-08-23 Digital Equipment Corporation Optimized division circuit
EP0256455B1 (de) * 1986-08-11 1991-05-02 Siemens Aktiengesellschaft Verfahren zur schnellen Division langer Operanden in Datenverarbeitungsanlagen und Schaltungsanordnung zur Durchführung des Verfahrens

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3303269C2 (de) * 1982-02-16 1988-08-25 Hitachi, Ltd., Tokio/Tokyo, Jp
DE3340362C2 (de) * 1982-11-09 1988-12-01 Hitachi, Ltd., Tokio/Tokyo, Jp
EP0158530A2 (de) * 1984-04-09 1985-10-16 Fujitsu Limited Dividierer ohne Rückstellung
EP0256455B1 (de) * 1986-08-11 1991-05-02 Siemens Aktiengesellschaft Verfahren zur schnellen Division langer Operanden in Datenverarbeitungsanlagen und Schaltungsanordnung zur Durchführung des Verfahrens
WO1990009630A1 (en) * 1989-02-17 1990-08-23 Digital Equipment Corporation Optimized division circuit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4447781B4 (de) * 1993-03-22 2004-01-08 Mitsubishi Denki K.K. Divisionsschaltung

Also Published As

Publication number Publication date
DE4121106C2 (de) 1993-09-02

Similar Documents

Publication Publication Date Title
DE3306084C2 (de)
EP0079471B1 (de) Schaltungsanordnung und Verfahren zur Bildung von Skalarprodukten und Summen von Gleitkommazahlen mit maximaler Genauigkeit
DE1956209C3 (de) Multipliziervorrichtung
DE2246968A1 (de) Einrichtung zur kombination, insbesondere multiplikation, zweier gleitkommazahlen
DE2658248C2 (de)
DE68924386T2 (de) Verfahren und Gerät zur Radix-2**n-Division mit überlappender Quotientenbitauswahl und gleichzeitiger Rundung und Korrektur des Quotienten.
DE1549477B1 (de) Einrichtung zur schnellen akkumulation einer anzahl mehr stelliger binaerer operanden
DE2814078A1 (de) Addierschaltung mit zeitweiliger zwischenspeicherung des uebertrags
EP1543408B1 (de) Vorrichtung und verfahren zum berechnen einer multiplikation mit einer verschiebung des multiplikanden
DE69227348T2 (de) DIVIDIERSCHALTUNG FüR GLEITKOMMAZAHLEN
DE2816711A1 (de) Divisionseinrichtung mit uebertrags- rettungsaddierwerk und nicht ausfuehrender vorausschau
DE2221693B2 (de) Schaltungsanordnung zur Ausführung einer Multiplikation zwischen zwei Binärzahlen
DE1549508C3 (de) Anordnung zur Übertragsberechnung mit kurzer Signallaufzeit
DE19781794C2 (de) Verfahren und Einrichtung zur Division von Gleitkomma- oder ganzen Zahlen
DE1549478B1 (de) Gleitkomma-Rechenwerk zur schnellen Addition oder Subtraktion binaerer Operanden
DE2222197B2 (de) Anordnung zum Auf- bzw. Abrunden von Binärzahlen
DE3303269C2 (de)
DE3447634C2 (de)
DE3440680C2 (de)
WO2004059515A2 (de) Modulare multiplikation mit paralleler berechnung der vorausschau-parameter
EP0130397B1 (de) Digitales Rechenwerk
DE2039228A1 (de) Verfahren und Vorrichtung zum Konvertieren und Stellenwert-Verschieben von Zahlsignalen unterschiedlicher Codes in einer Datenverarbeitungsanlage
DE4121106C2 (de)
DE1774675A1 (de) Elektronisches Rechengeraet
DE1774771B2 (de) Anordnung, um wechselweise eine addition oder eine aus einer anzahl logischer funktionen zwischen den stellenwerten zweier binaerwoerter durchzufuehren

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee