DD235743A1 - Anordnung zur orthogonalisierung von ternaervektorlisten - Google Patents

Anordnung zur orthogonalisierung von ternaervektorlisten Download PDF

Info

Publication number
DD235743A1
DD235743A1 DD27436685A DD27436685A DD235743A1 DD 235743 A1 DD235743 A1 DD 235743A1 DD 27436685 A DD27436685 A DD 27436685A DD 27436685 A DD27436685 A DD 27436685A DD 235743 A1 DD235743 A1 DD 235743A1
Authority
DD
German Democratic Republic
Prior art keywords
memory
vector
address
lines
output lines
Prior art date
Application number
DD27436685A
Other languages
English (en)
Inventor
Wolfgang Matthes
Dieter Bochmann
Bernd Steinbach
Original Assignee
Robotron Elektronik
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 Robotron Elektronik filed Critical Robotron Elektronik
Priority to DD27436685A priority Critical patent/DD235743A1/de
Priority to DE19863603319 priority patent/DE3603319A1/de
Publication of DD235743A1 publication Critical patent/DD235743A1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8053Vector processors
    • G06F15/8076Details on data register access
    • G06F15/8084Special arrangements thereof, e.g. mask or switch

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)

Abstract

Die Erfindung betrifft eine Anordnung zur Orthogonalisierung von Ternaervektorlisten, die zum Anschluss an ein Mikrorechnersystem geeignet ist. Ziel ist es, die Orthogonalisierungsablaeufe wesentlich zu beschleunigen, und es wird die Aufgabe geloest, in jedem Zugriff zu dem Speicher des Mikrorechners eine Nutzoperation auszufuehren. Die Anordnung enthaelt neben einem Zweitoperanden- und einem Maskenoperandenspeicher einen Maskierungsvektorspeicher, dem ein Indexzuordner nachgeschaltet ist. Letzterem ist ein erster und zweiter Eingangszuordner und ein Rueckfuehrungszuordner nachgeordnet, die ihrerseits ueber Auswahlschaltungen mit dem Arbeits-, dem Zweitoperanden- und dem Markierungsvektorspeicher verbunden sind. Weitere Merkmale betreffen einen Adressengenerator und dessen Verbindungen ueber Auswahlschaltungen mit den genannten Speichern. Fig. 1

Description

Charakteristik der bekannten technischen Lösungen
Operationen mit Ternärvektorlisten (einschließlich der Orthogonalisierung) wurden bisher durch Programme auf Universalrechnern realisiert. Ein Überblick über die Algorithmen istz. B. in Posthoff/Steinbach: Binäre Gleichungen Algorithmen und Programme (Wissenschaftliche Schriftenreihe der Technischen Hochschule Karl-Marx-Stadt, Ausgabe 1/1979) zu finden. Des weiteren wurde bereits vorgeschlagen, eine Anordnung zur Verarbeitung von Ternärvektorlisten zu schaffen, die an einen Universalrechner angeschlossen wird, um typische Abläufe mit wesentlich höherer Geschwindigkeit auszuführen. Mit einer solchen Anordnung kann ein Universalrechner zwar den Markierungsvektor für die Orthogonalisierung ohne eigene Verknüpfungsoperationen erhalten (es handelt sich dabei um einen Binärvektor, der die Variablenpositionen kennzeichnet, die bei der eigentlichen Orthogonalisierung zu modifizieren sind), für die Orthogonalisierung selbst sind aber umfangreiche Rechenoperationen auszuführen. Da zur Orthogonalisierung eines Temärvektors bezüglich einer Zeile einer Ternärvektorliste an die Ternärvektorliste η Zeilen angefügt werden müssen, wenn der Markierungsvektor η Einsen enthält, ergibt sich eine beträchtliche Verarbeitungszeit.
Ziel der Erfindung
DasZiel der Erfindung besteht darin, die Ausführungszeit für die eigentlichen Orthogonalisierungsabläufe deutlich zu verringern.
Wesen der Erfindung
Die Aufgabe der Erfindung besteht darin, eine Anordnung anzugeben, die in Verbindung mit einem Universalrechner bzw. mit anderen Einrichtungen zur Verarbeitung von Ternärvektorlisten Orthogonalisierungsabläufe mit hoher Geschwindigkeit ausführt, so daß in jedem Zugriff zu den Speichermitteln der gegebenen Verarbeitungseinrichtung während der betreffenden Abläufe stets eine Nutz-Operation ausgeführt wird.
Der Nachteil der vorhandenen bzw. vorgeschlagenen Einrichtungen besteht darin, daß diese nicht über spezifische Schaltmittel verfügen, so daß die Orthogonalisierung komplexere Abläufe (durch Programme, Mikroprogramme bzw. sequentielle Steuerung) erfordert.
Erfindungsgemäß wird die Aufgabe durch die in den Patentansprüchen genannten Schaltungsanordnungen gelöst.
Ausführungsbeispiel
Im nachstehenden Ausführungsbeispiel zeigen:
Fig. 1: das Blockschaltbild der erfindungsgemäßen Anordnung,
Fig.2: eine Darstellung von Ternärvariabien in einem Maschinenwort,
Fig.3: eine Ausgestaltung des Indexzuordners,
Fig. 4: eine weitere Ausgestaltung des Indexzuordners,
Fig. 5: eine Ausgestaltung desRückführungszuordnersdes Markierungsvektorspeichers, Fig. 6: eine Ausgestaltung des Eingangszuordners des Arbeitsspeichers,
Fig.7: eine Ausgestaltung des Eingangszuordners des Zweitoperandenspeichers, Fig. 8: eine Struktur der Adressengeneratorschaltung,
Fig.9,10: Details der Steuerschaltungen,
Fig. 11: das zugehörige Impulsdiagramm,
Fig. 12: eine Ausgestaltung der Auswahlschaltung für die RAM-Adresse,
Fig. 13: die Einordnung in eine Rechnerkonfiguration mit universellem Bussystem.
Fig. 1 zeigt das Blockschaltbild der erfindungsgemäßen Anordnung. Es sind ein Arbeitsspeicher 1 (im folgenden als RAM 1 bezeichnet), ein Zweitoperandenspeicher 2 (SECOND OPERAND MEMORY SOM), ein Maskenoperandenspeicher 3 (MASK OPERAND MEMORY MOM) und ein Markierungsvektorspeicher 4 (TAG VECTOR MEMORY TVM) vorgesehen, wobei jedem der Speicher 1-4 eines der Halteregister 5-8 nachgeordnet ist. Diese sind ihrerseits über Koppelstufen 9-12 an auswärtsführende Datenleitungen 13 angeschlossen. Den Speichern 1, 2,4 sind Datenauswahlschaltungen 14,15,16 vorgeordnet. Diese sind mit eingangsseitigen Datenleitungen 17 verbunden, die weiterhin direkt an den Maskenoperandenspeicher 3 angeschlossen sind. Der Auswahlschaltung 14 des RAM 1 ist weiterhin ein erster Eingangszuordner 18 vorgeordnet. Die Auswahlschaltung 15 des Zweitoperandenspeichers 2 ist mit einem zweiten Eingangszuordner 19 verbunden und die Auswahlschaltung 16 des
-з- 743 66
Markierungsvektorspeichers 4 mit einem Rückführungszuordner20. Alle Zuordner 18,19, 20 sind einem Indexzuordner21 nachgeordnet, der an die Datenausgänge dese Markierungsvektorspeichers 4 (über das Halteregister 8) angeschlossen ist. Der Rückführungszuordner 20 ist weiterhin mit den Ausgangsleitungen des Markierungsvektorspeichers 4 (über das Halteregister 8) direkt beschaltet.
Der Eingangszuordner 19 ist über das Halteregister 6 weiterhin an den Zweitoperandenspeicher 2 und über das Halteregister 5 an den RAM 1 angeschlossen. Der Eingangszuordner 18 ist darüber hinaus noch mit dem Maskenoperandenspeicher3 (über das Halteregister 7) verbunden.
Den Adresseneingängen des RAM 1 sind über eine Auswahlschaltung 22 Adressenbusleitungen 23 sowie erste Adressenleitungen 24 und zweite Adressenleitungen 25 einer Adressengeneratorschaltung 26 vorgeordnet. Der Adressenleitungen 27 und eine Auswahlschaltung 28, die zusätzlich an die Adressenbusleitungen 23 angeschlossen ist, die Adresseneingänge des Zweitoperandenspeichers 2, des Maskenoperandenspeichers 3 sowie des Markierungsvektorspeichers 4 nachgeschaltet. An die Adressengeneratorschaltung 26 sind die ein-und ausgangsseitigen Datenleitungen 13,17, die Adressenbusleitungen 23 sowie Steuerleitungen 37 angeschlossen.
Die gesamte Anordnung ist vorzugsweise mit einem Universalrechner verbunden (über die Datenleitungen 13,17, die Adressenbusleitungen 23 und die Steuerleitungen 37). Dies ist dann besonders unproblematisch, wenn es sich bei dem Universalrechner um einen Mikroprozessor oder Minicomputer handelt, der ein reguläres Bussystem hat.
Die Anordnung kann dann auf einfache Weise gekoppelt werden. Beispielsweise bereitetes keine Schwierigkeiten, die ein- und ausgangsseitigen Datenleitungen 13,17 zu einem bidirektionalen Datenbus zusammenzufassen.
Der RAM 1 ist vorzugsweise der eigentliche Arbeitsspeicher des Universalrechners. Die weiteren Speicher 2,3,4 sind ebenfalls für den Universalrechner zugänglich. Weiterhin können Schaltmittel in der Adressengeneratorschaltung 26 auf diese Weise gesetzt bzw. abgefragt werden. Dazu werden im Ruhezustand der Anordnung über die Auswahlschaltungen 14,15,16 die eingangsseitigen Datenleitungen 17 zu den Dateneingängen der Speicher 1,2,4 durchgesteuert. Die Auswahlschaltungen 22,28 steuern Adressenbusleitungen 23 zu den Adresseneingängen der Speicher 1—4 durch. Die vom Universalrechner gelieferte Adresse wird durch nicht näher beschriebene (in der Digitaltechnik allgemein übliche) Schaltmittel so decodiert, daß bei Schreibzugriffen Schreibimpulse zum jeweils ausgewählten Speicher oder zu den ausgewählten Schaltmitteln der Adressengeneratorschaltung 26 geschickt werden und daß bei Lesezugriffen die jeweils ausgewählte Koppelstufe (z.B. 9,10,11 oder 12) aktiviert wird, wobei weiterhin ein Übernahmeimpuls für die Halteregister 5-8 ausgelöst wird.
Damit kann der Universalrechner beliebige Datentransporte zwischen den Speichern 1—4 ausführen.
Die Auswahlschaltungen 14-16,22,28 können sowohl mit Multiplexerschaltkreisen als auch auf Basis von „tri state"- bzw. „open collector"-Elementen realisiert sein.
Im besonderen kann die erfindungsgemäße Anordnung auch die Einrichtung ergänzen, die in der WP-Anmeldung „Anordnung zur Verarbeitung vonTernärvektorlisten" vorgeschlagen wurde. RAM 1, Zweitoperandenspeicher 2 und Maskenopera η denspeicher 3 sind dabei bereits vorhanden. Sie müssen zusätzlich mit den Auswahl schaltun gen 14,15,16 beschaltet werden.
Die Verarbeitungsbreite des angeschlossenen Universalrechners betrage z.B. 16 Bit. Dann können gemäß Fig.2 in einem Maschinenwort acht Ternärvariable zu zwei Bit gespeichert werden.
Eine bewährte Codierung ist z. B. folgende:
E V Wert
00 —
0 1 frei
1 00 1 1 1
Die erste Bitposition wird als Erlaubnisbit E bezeichnet („ENABLE"). Sie repräsentiert praktisch die Unterscheidung zwischen einer „don't car"-Belegung („—" bzw. neutrales Element, im folgenden als N-Element bezeichnet) und einer Belegung mit definiertem Wert (0 bis 1). Das zweite Bit repräsentiert diesen Wert und wird deshalb als Wertbit V bezeichnet („VALUE"). Die Länge eines einzelnen Ternärvektors ist im Beispiel auf 4096 Ternärvariable begrenzt, das entspricht 512 Worten zu acht Ternärvariablen. Der Zweitoperandenspeicher 2 hat somit eine Speicherkapazität von 512 Worten. Die Speicher 3, 4 enthalten Binärvektoren (ein Bit je Variablenposition). Ihre Speicherkapazität beträgt somit jeweils 512 Bytes (zu acht Bit). Der Maskenoperandenspeicher 3 enthält einen Maskenvektor, mit dem Variablenpositionen von der Bearbeitung angeschlossen werden. Für jede Position, die bearbeitet werden soll, muß der Maskenvektor eine 1 enthalten (er wird in der Literatur gelegentlich als Vorhandenvektor bezeichnet). Der Markierungsvektorspeicher 4 enthält einen Markierungsvektor, der die Variablenpositionen kennzeichnet, die bei der Orthogonalisierung modifiziert werden müssen. Wesentlich dabei ist, daß jeweils nur eine Position verarbeitet wird. Dazu zeigt Fig. 3 den Aufbau des Indexzuordners 21. Seine Aufgabe besteht darin, im aktuellen Teil (acht Bit) des Markierungsvektors die aktuell niedrigstwertige Eins zu kennzeichnen.
Beispiele:
a) Markierungsvektor 0001 1010 Indexvektor 00000010
b) Markierungsvektor 0001 1000 Indexvektor 00001000
Bei einem Markierungsvektor von acht Bit gibt es 256 Möglichkeiten, einen Indexvektor zu bilden. Die entsprechenden Booleschen Gleichungen lauten
10 = rn0
11 = m, Vi0
12 = m2 Vi0 7ii
13 = m3 Vi0 Vi1 Vi2 usw.
-4- 743 66
Dies läßt sich zweckmäßigerweise mit einem ROM-Schaltkreis realisieren, dessen Ausgängen UND-Gatter nachgeordnet sind, die gemeinsam mit einer Erlaubnisleitung (INDEX ENABLE) beschaltet sind. Der Zweck dieser Erlaubnisleitung besteht darin, den Indexvektor nur dann zu belegen, wenn der betreffende 8-Bit-Teilvektor aus dem Markierungsvektorspeicher 4 gelesen wird.
Bei größeren Verarbeitungsbreiten (z.B. 16oder32Ternärvariable entsprechend 16 oder 32 Bit des Markierungsvektors) ist ein ROM als Indexzuordner nicht mehr praktikabel.
Dazu zeigt Fig.4 eine Ausgestaltung aus zwei ROMs, wobei der niedere und der höhere Teil der Ausgangsleitungen des Markierungsvektorspeichers 4 jeweils an einen der ROMs angeschlossen ist. Jede Ausgangsleitung des Indexzuordners 21 ist weiterhin einem UND-Gatter nachgeordnet, das mit der Erlaubnisleitung beschaltet ist. Zusätzlich sind die dem oberen ROM nachgeordneten UND-Gatter gemeinsam mit einem NOR-Gatter verbunden, das an alle Ausgangsleitungen des unteren ROM angeschlossen ist.
Jeder der ROMs enthält die Indexzuordnung für beispielsweise 8 Bit. Dabei dürfen die höherwertigen acht Ausgänge nur dann zur Wirkung kommen, wenn die niederwertigen acht Ausgänge sämtlich „0" sind. Dies wird durch das NOR-Gatter erreicht. Die Anordnung ist auf mehr als zwei ROMs erweiterbar. Dabei muß jedem ROM bis auf den, an den die höchstwertigen Leitungen angeschlossen sind, ein NOR-Gatter nachgeschaltet werden. Die einem ROM nachgeordneten UND-Gatter sind dann mit allen NOR-Gattern der niederen ROMs zu beschälten.
Damit ist gewährleistet, daß alle ROM-Schaltkreise gleichzeitig betrieben werden. Die Indexsignale müssen dann lediglich noch zwei Gatter-Ebenen durchlaufen. Gegenüber einer Kaskadierung vom ROM-(oder auch PLA-)Schaltkreisen tritt somit bei zunehmender Verarbeitungsbreite kein Laufzeitverlust ein. Statt der ROMs können auch RAM-Schaltkreise (die vor Betriebsbeginn geladen werden müssen) eingesetzt werden.
Fig.5 zeigt die Struktur des Rückführungszuordners 20. Die Ausgangsleitungen des Markierungsvektorspeichers 4 sind über UND-Gatter mit dessen Eingangsleitungen verbunden, die an die Auswahlschaltung 16 angeschlossen sind. An jedes der UND-Gatter ist die korrespondierende Ausgangsleitung des Indexzuordners 21 invertiert angeschlossen.
Dies bewirkt, daß die vom aktuellen Indexvektor markierte Bitposition beim Schreiben in den Markierungsvektorspeicher 4 auf Null gesetzt wird. Die übrigen Bitpositionen werden unverändert wieder eingeschrieben.
Der erste Eingangszuordner 18 soll während der Orthogonalisierung die resultierenden Ternärvektoren zur Speicherung im RAM 1 liefern. Dazu muß er die jeweils korrespondierende Belegung des Zweitoperandenspeichers 2 zur Auswahlschaltung 14 durchsteuern, bis auf die Position, die durch eine Eins im Indexvektor gekennzeichnet ist. In dieser Position wird das Erlaubnisbit stets aktiviert und das invertierte Wertbit des RAM 1 (gemäß der Belegung des Halteregisters 5) durchgesteuert. Der Markierungsvektor wird derart bereitgestellt, daß Einsen nur mit Variablenpositionen in der Ternärvektorliste korrespondieren, die einen definierten Wert haben (in denen also das Erlaubnisbit von vornherein gesetzt ist).
Theoretisch besteht die Wirkung des ersten Eingangszuordners 18 darin, einen Resultatvektor zu erzeugen, der dem Zweitoperanden entspricht und an der Position, die durch den Indexvektor markiert ist, die invertierte Belegung der entsprechenden Position der Zeile der Ternärvektorliste enthält. Fig. 6 zeigt den Aufbau für eine Variablenposition. Sowohl für die Erlaubnis- als auch die Wertbitposition der Eingangsleitungen des RAM 1 ist eine Auswahlschaltung vorgesehen, deren Auswahleingänge mit der korrespondierenden Ausgangsleitung des Indexzuordners 21 beschaltet sind. An alle Eingänge ist die jeweilige Ausgangsleitung des Maskenoperandenspeichers 3 (MASK · i) angeschlossen.
Die Auswahlschaltung der Wertbitposition (Vi) ist direkt mit der jeweiligen Ausgangsleitung des Zweitoperandenspeichers 2 (SOM · Vi) und invertiert mit der des RAM 1 (RAM · Vi) beschaltet.
Die Auswahlschaltung der Erlaubnisbitposition (Ei) ist der jeweiligen Ausgangsleitung des Zweitoperandenspeichers 2 (SOM -Ei) nachgeschaltet.
Dies veranlaßt die gewünschte Wirkung. Weiterhin wird in maskierte Variablenpositionen (MASK · i = 0) ein N-Element eingetragen (Belegung 0, 0).
Der zweite Eingangszuordner 19 soll während der Orthogonalisierung den Zweitoperanden derart modifizieren, daß an der Position, die durch den Indexvektor markiert ist, die korrespondierende Variable aus der Zeile der Ternärvektorliste (aus RAM 1) eingetragen wird.
Dazu zeigt Fig.7 den Aufbau für eine Variablenposition, wobei für die Erlaubnis- und die Wertbitposition der Eingangsleitungen des Zweitoperandenspeichers 2 jeweils eine Auswahlschaltung vorgesehen ist, deren Auswahleingang mit der korrespondierenden Ausgangsleitung (INDEX · i) des Indexzuordners 21 verbunden ist. Die Eingänge sind jeweils sinngemäß an die Ausgangsleitungen des Zweitoperandenspeichers 2 sowie des RAM 1 angeschlossen.
Ist INDEX · i inaktiv, so wird der Inhalt des Zweitoperandenspeichers 2 zurückgeschrieben, ist INDEX · i aktiv („1"), so wird statt dessen die gelesene Belegung aus dem RAM 1 eingetragen.
Sind dieTernärvariablen auf andere Weise codiert, so ändert sich die Realisierung des zweiten Eingangszuordners 19 im Prinzip nicht, da es sich lediglich darum handelt, die zur Codierung benutzten binären Signale entsprechend durchzuschalten. Der erste Eingangszuordner 18 muß hingegen so modifiziert werden, daß er bei INDEX · i = 0 die jeweiligen Signale durchschaltet und bei INDEX · i = 1 den Code für „0" abgibt, wenn aus dem RAM der Code für „1" geliefert wird und umgekehrt.
Fig.8 zeigt eine Ausgestaltung der Adressengeneratorschaltung 26. Die ersten Adressenleitungen 24 sind einem TVL-Adressenzähler 29 nachgeschaltet, der seinerseits einem TVL-Adressenregister 30 nachgeordnet ist. Die zweiten Adressenleitungen 25 sind an einen Bereichsadressenzähler 31 angeschlossen.
Die dritten Adressenleitungen 27 sind einem Variablenadressenzähler 32 nachgeordnet und an einen Vergleicher 33 angeschlossen, dem weiterhin ein Variablenanzahlregister 34 vorgeschaltet ist.
Die einwärtsführenden Datenleitungen 17 sind mit dem TVL-Adressenregister 30, dem Bereichsadressenzähler 31, dem Variablenanzahlregister 34 und mit einem Vektoranzahlzähler 35 verbunden.
Die genannten Schaltmittel 30, 31, 34,35 sind vom angeschlossenen Universalrechner 1 aus selektiv ladbar. Dazu werden bestimmte Belegungen der Adressenbusleitungen 23 mit nicht näher beschriebenen Decoderschaltungen so decodiert, daß Schreibsignale der Steuerleitungen 37 die Erregung der betreffenden Schreibimpulsleitungen veranlassen (WRITE TVL ADRS, WRITE AREAADRS, WRITE VAR COUNT, WRITE VECTOR COUNT).
-5- 743 66
Die Voraussetzungen für einen Orthogonalisierungsablauf sind folgende:
a) Gegeben sind:
ein Ternärvektor
eine Zeile einer Ternärvektorliste (im folgenden mit TVL abgekürzt)
• der dazugehörige Maskenvektor
• ein Markierungsvektor.
b) Der Ternärvektor ist bezüglich derTVL-Zeilezu orthogonalisieren. Dabei entstehen so viele Ternärvektoren, wieder Markierungsvektor Einsen hat. Diese werden an die Ausgangs-TVL angehängt.
c) Vor Ausführung der Orthogonalisierung gewährleistet der angeschlossene Universalrechner, daß der Ternärvektor im Zweitoperandenspeicher 2, der Maskenvektor im Maskenoperandenspeicher 3 und der Markierungsvektor im Markierungsvektorspeicher 4 bereitstehen.
Die TVL befindet sich im RAM 1. Dort werden auch die resultierenden Ternärvektoren abgespeichert, und der Universalrechner hat den benötigten Speicherplatz lokalisiert und reserviert.
d) Der Universalrechner lädt die erforderliche Information in die Adressengeneratorschaltung 26, und zwar
die Anfangsadresse der TVL-ZeMe in das TVL-Adressenregister 30
• die Anfangsadresse des Speicherbereichs für die resultierenden Ternärvektoren in den Bereichsadressenzähler 31
• die Variablenanzahl der Vektoren in das Variablenanzahlregister 34
• die Anzahl der Einsen des Markierungsvektors (gleichbedeutend mit der Anzahl der zu erzeugenden Resultatvektoren) in den Vektoranzahlzähler 35.
e) Der Universalrechner startet den Ablauf und wartet auf die Fertigmeldung.
Dabei wird zunächst der TVL-Adressenzähler 29 mit dem Inhalt des TVL-Adressenregisters 30 geladen, und der Variablenadressenzähler 32 wird zurückgesetzt.
Alle drei Adressenleitungen 24, 25, 27 adressieren nun jeweils den ersten Abschnitt (zu beispielsweise acht Variablenpositionen) aller zu verarbeitenden Vektoren. Die Auswahlschaltung 22 steuert die ersten Adressenleitungen 24 zu den Adresseneingängen des RAM 1 durch. Die entsprechenden Belegungen werden aus den Speicher 1-4 in die Halteregister 5-8 übernommen und stehen somit zur Verarbeitung bereit. Im folgenden Zyklus werden die Resultate der Zuordner 18,19, 20 in den RAM 1, den Zweitoperandenspeicher 2 und in den Markierungsvektorspeicher 4 zurückgeschrieben. Dabei steuert die Auswahlschaltung 22 die zweiten Adressenleitungen 25 zu den Adresseneingängen des RAM 1 durch, so daß der erste Abschnitt des ersten Resultatvektors eingeschrieben wird. Am Ende des Schreibzyklus werden die Adressenzähler 29,31,32 um 1 erhöht. Das Zählen des TVL-Adressenzählers 29 und des Variablenadressenzählers 32 erfolgt nur dann, wenn das Ausgangssignal (VAR ADRS COMPARE) des Vergleichers 33 inaktiv ist. In diesem Fall sind noch weitere Abschnitte zu bearbeiten, und es wird der nächste Lesezyklus ausgeführt. Daran schließt sich der nächste Schreibzyklus an usw.
Ist das Ausgangssignal des Vergleichers 33 aktiv, so zeigt dies an, daß alle Abschnitte des Vektors verarbeitet wurden. Somit wurde ein Resultatvektor erzeugt, und die betreffende Bitposition im Markierungsvektorspeicher 4, die im aktuellen Indexvektor aktiv war, wurde über den Rückführungszuordner 20 gelöscht.
Damit wird der Vektoranzahlzähler 35 um 1 vermindert. Wird der Inhalt dieses Zählers zu Null (VEKTOR COUNT ZERO aktiv), so wurden alle Resultatvektoren erzeugt, und der Orthogonalisierungsablauf wird beendet.
Andernfalls beginnt die Erzeugung des folgenden Resultatvektors damit, daß der TVL-Adressenzähler 29 mit dem Inhalt des TVL-Adressenregisters 30 geladen wird, so daß die TVL-Zeile erneut verarbeitet werden kann. Weiterhin wird der Variablenadressenzähler 32 zurückgesetzt, und der Verknüpfungsablauf beginnt von neuem.
Der gewünschte Ablauf kann z. B. dadurch erreicht werden, daß die Steuersignale für die Anordnung in Fig. 8 von einem geeigneten Steuerautomaten geliefert werden. Das kann ein übliches Mikroprogrammsteuerwerk sein, aber auch ein Sequencer auf PLA-Basis oder dergleichen.
Eine sehr einfache Steuerschaltung ist in den Fig. 9,10 dargestellt. Fig. 11 zeigt das zugehörige Impulsdiagramm.
Die zugrunde liegenden Taktimpulse T1 ...T4 werden gemäß Fig.9 mit einem rückgekoppelten Schieberegister erzeugt.
Der Ruhezustand der Anordnung wird durch ein Flipflop IDLE repräsentiert. In diesem Ruhezustand (IDLE = 1) werden die Auswahlschaltungen 14,15,16, 22,28 so gesteuert, daß allgemeine Zugriffe des angeschlossenen Universalrechners zu den Speichermitteln der Anordnung möglich sind.
Um den Orthogonalisierungsablauf zu starten, muß der Universalrechner einen Startimpuls INITIATIVE veranlassen, der IDLE ausschaltet. Damit läuft die interne Taktimpulserzeugung an, und die Auswahlschaltungen 14,15,16, 22, 28 werden so umgesteuert, daß interne Zugriffe möglich sind.
Der IDLE-Zustand muß vom angeschlossenen Universalrechner aus abfragbar sein, dort einen Interrupt auslösen können o.a., so daß der Universalrechner darüber informiert wird, daß der Orthogonalisierungsablauf beendet ist. Eine Möglichkeit dazu ist gemäß Fig. 9 die Kopplung auf eine der auswärtsführenden Datenleitungen 13 zwecks programmtechnischer Abfrage.
Über ein weiteres Flipflop wird veranlaßt, daß zyklisch nacheinander Lesezugriffe (READ SLOT) und Schreibzugriffe (WRITE SLOT) ausgeführt werden.
Die Bildung weiterer Steuersignale ist in Fig. 10 dargestellt. READ PULSE veranlaßt bei internen Zugriffen das Laden der Halteregister 5-8, WRITE PULSE ist das Schreibtaktsignal für die Speicher 1, 2,4.
Alle Adressenänderungen erfolgen am Ende der Schreibzyklen. AREA COUNT veranlaßt das ständige Erhöhen der Bereichsadresse für das Speichern der Resultatvektoren.
Wurde ein Vektor vollständig erzeugt, so wird das Ausgangssignal des Vergleichers 33 aktiv (VAR ADRS COMPARE = 1). Dies wird mit einem Flipflop für die Dauer eines Taktzyklus gehalten. Daraufhin wird die TVL-Adresse erneut geladen, und die Variablenadresse wird zurückgesetzt (ADRS LOAD). Weiterhin wird ein Zählimpuls für den Vektoranzahlzähler 35 abgegeben (VECTOR COUNT).
Ansonsten werden Zählimpulse für den TVL-Adressenzähler 29 und den Variablenadressenzähler 32 geliefert (ADRS COUNT).
Fig. 9 zeigt weiterhin die Beschallung der Erlaubnisleitung INDEX ENABLE des Indexzuordners 21. Es ist ein Flipflop vorgesehen, das mit einer disjunktiven Verknüpfung aller Ausgangssignale des Markierungsvektorspeichers 4 beschaltet ist. Das Flipflop wird zu Beginn der Verarbeitung eines Vektors zurückgesetzt (ADRS LOAD). Mit dem ersten verarbeiteten Abschnitt des Markierungsvektors, der Einsen enthält, wird das Flipflop am Ende des Schreibzyklus (also nach dem Schreiben) gesetzt (ADRS
-6- 743 66
COUNT). Damit wird die an den invertierten Ausgang angeschlossene Erlaubnisleitung inaktiv. Das Flipflop ist selbsthaltend ausgeführt, so daß dieser Zustand bis zum Ende der Bearbeitung des Vektors anhält. Die Verarbeitung beginnt stets vom niedrigstwertigen Abschnitt an. Der gültige Indexvektor repräsentiert die aktuell niedrigstwertige Eins des Markierungsvektors.
Durch den Rückführungszuordner 20 wird diese Eins jeweils gelöscht. Der Markierungsvektor kann aber in höherwertigen Positionen noch Einsen enthalten, die bei der Erzeugung des aktuellen Resultatvektors weder zur Wirkung kommen noch gelöscht werden dürfen. Dies wird dadurch gewährleistet, daß INDEX ENABLE nach der Verarbeitung des niedrigstwertigen Abschnittes, bei dem der Markierungsvektor Einsen enthält, bis zum Ende des Vektors inaktiv wird, so daß in allen folgenden Abschnitten der Indexvektor nur Nullen enthält (s. Fig.3,4).
Die Anzahl der Variablen in den Vektoren muß im Beispiel stets ein Vielfaches von acht betragen. Die Variablen müssen „rechtsbündig" den Positionen zugeordnet werden. Nicht belegte Positionen sind im Maskenvektor mit Nullen zu kennzeichnen.
Die Resultatvektoren enthalten an diesen Stellen N-Elemente. Auch der Markierungsvektor muß so aufbereitet sein, daß er an den betreffenden Stellen Nullen enthält.
Es ist weiterhin möglich, durch eine zusätzliche Beschallung der Ausgangsleitungen des Maskenoperandenspeichers 3 in Verbindung mit einem Zuordner, der dem Variablenanzahlregister 34 nachgeschaltet ist, nicht belegte Restpositionen im jeweils letzten Abschnitt automatisch zu maskieren. Dies ist in der WP-Anmeldung „Anordnung zur Verarbeitung von Ternärvektorlisten" im Detail dargestellt.
Wird diese Möglichkeit benutzt, so muß für maximal 4096 Variable das Variablenanzahlregister 34 zwölf Bit umfassen. Der Variablenadressenzähler 32 und der Vergleicher 33 umfassen neun Bit (bei 512 Abschnitten zu acht Variablen).
Ansonsten ist eine Breite von neun Bit auch für das Variablenanzahlregister 34 ausreichend, und es ist die um 1 verminderte Anzahl der Abschnitte zu laden.
Fig. 12 veranschaulicht eine Bitposition der Auswahlschaltung 22. Es ist ersichtlich, daß es sich um eine gesteuerte Torschaltung handelt, wobei
• im Ruhezustand (IDLE) die jeweilige der Adressenbusleitungen 23 (ADRS · i),
• bei internen Lesezugriffen (READ SLOT) die jeweilige der Adressenleitungen 24 (TVL ADRS · i) und
• bei internen Schreibzugriffen (WRITE SLOT) die jeweilige der Adressenleitungen 25 (AREAADRS · i) zum Adresseneingang des RAM 1 (RAM ADRS · i) durchgeschaltet werden.
Äquivalent ist eine Ausbildung mit „tri state"- bzw. „open collector"-Schaltkreisen möglich.
Auf dieser Basis läßt sich die erfindungsgemäße Anordnung vorteilhaft in ein System einbeziehen, das auf einem Universalrechner basiert, dem weitere Einrichtungen, so auch der RAM 1, über ein reguläres Bussystem nachgeordnet sind, das für den „Multi-Master-Betrieb" eingerichtet ist, wie dies in Fig. 13 veranschaulicht ist.
Der Universalrechner, der RAM 1 und das verbindene Bussystem sind beispielsweise kommerziell verfügbare Baugruppen (etwa Bestandteile eines Mikroprozessorsystems).
Die erfindungsgemäße Anordnung 36 wird nun einfach als weitere Funktionseinheit an das Bussystem angeschlossen. Die nicht näher dargestellten internen Details entsprechen Fig. 1, die Datenleitungen des Bussystems sind an die bidirektional gekoppelten Datenleitungen 13,17 angeschlossen. Im Ruhezustand der Anordnung 36 hat der Universalrechner die Busherrschaft, d.h. er belegt als Master das Bussystem und kann sowohl zum RAM 1 als auch zu den Speichermitteln der Anordnung 36 ungehindert zugreifen. Geht die Anordnung 36 in den Arbeitszustand über, so fordert sie die Busherrschaft an. Damit belegt sie über die Auswahlschaltung 22 (die aus Buskoppelschaltungen für die Adressenleitungen 24, 25 besteht) die Adressenleitungen des Bussystems. Bei Lesezyklen wird der RAM 1 als Slave adressiert, wobei die ersten Adressenleitungen 24 aufgeschaltet sind. Die gelesene Information gelangt in das Halteregister 5. Bei Schreibzyklen wird der RAM 1 als Slave adressiert, wobei die zweiten Adressenleitungen 25 aufgeschaltet sind. Die Ausgangssignale des ersten Eingangszuordners 18 werden dabei auf den Datenbus gelegt (dies bedeutet faktisch, daß die Auswahlschaltung 14 als Buskoppelschaltung ausgebildet sein muß).
Der Ablauf der Orthogonalisierung sei an einem Beispiel erläutert:
1. Ausgangswerte: 0-0-1-01
TVL-Zeite: 00-1-0-
Ternärvektor: 00101001
Markierungsvektor:
Somit sind drei Resultatvektoren zu erzeugen
2. Erzeugung des ersten Resultatvektors: 00000001 (s.Fig.3)
Indexvektor: 00-1--00(s. Fig. 6)
Resultatvektor: 00-1-01 (s.Fig.7)
neuer Ternärvektor: 00101000 (s. Fig. 5)
neuer Markierungsvektor:
3. Erzeugung des zweiten Resultatvektors: 00001000
Indexvektor: 00-10-01
Resultatvektor: 00-11-01
neuer Ternärvektor: 00100000
neuer Markierungsvektor:
4. Erzeugung des dritten Resultatvektors: 00100000
Indexvektor: 00111-01
Resultatvektor: 00011-01
neuer Ternärvektor:
Der verbleibende neue Ternärvektor ist der Durchschnitt aus TVL-ZeMe und dem ursprünglichen Ternärvektor.
Die Vorteile der erfindungsgemäßen Anordnung können wie folgt zusammengefaßt werden:
• Im Rahmen der Aufrufbreite und Zykluszeit des Arbeitsspeichers wird beim Orthogonalisierungsablauf in jedem Zyklus eine Nutzoperation (Lesen oder Schreiben) ausgeführt, so daß in zwei Zyklen beispielsweise acht Variablenpositionen eines Resultatvektors erzeugt werden können. Bei einer Zykluszeit von 500 ns bedeutet dies, daß 8 Variable/^s verarbeitet werden.
-7- 743 66
Hingegen muß bei einer Softwarelösung eine Vielzahl von Befehlen durchlaufen werden (Schätzung: 50 Befehle zu 2/xs; dies bedeutet, daß für acht Resultatvariable 100μ-s benötigt werden, so daß sich etwa eine einhundertfache Beschleunigung ergibt).
Die Adressierungs- und Verknüpfungsschaltungen sind sehr einfach, im besonderen werden Verknüpfungen stets variablenweise parallel und unabhängig voneinander ausgeführt, so daß eine Verarbeitungsbreite von 16, 32 oder 64 Variablenpositionen im Rahmen entsprechender Rechnerkonfigurationen ohne Schwierigkeiten, besonders ohne Zwang zur Verlängerung der Zykluszeiten, realisierbar ist. Dies betrifft auch die Bildung des Indexvektors, die mit üblichen Schaltmitteln (ROM, Gatter) auch für größere Verarbeitungsbreiten ohne Kaskadierung ausführbar ist. Damit werden die erreichbaren Zykluszeiten im wesentlichen durch den RAM 1 bestimmt.
Die Anordnung läßt sich gut in eine Rechnerkonfiguration einfügen, die auf einem Universalbussystem mit Multi-Master-Eigenschaften beruht. Dabei kann der RAM 1 eine Speichereinrichtung des vorhandenen Systems sein. Des weiteren können die erfindungsgemäßen Schaltmittel mit anderen bereits vorgeschlagenen kombiniert werden. Somit ist die Grundlage gegeben, existierende Rechnerkonfigurationen systematisch (je nach den Leistungserfordernissen) um Beschleunigungseinrichtungen für TVL-Operationen zu ergänzen. Damit können z. B. kostengünstige Mikrorechner in die Lage versetzt werden, komplexe Boolesche Probleme (Schaltungsentwurf, Testdatenberechnungen, Untersuchungen von Graphen usw.) mit hoher Effektivität auszuführen. Die ergänzenden Schaltmittel sind ohne weiteres auf 1-3 Leiterplatten unterzubringen.

Claims (2)

1. Anordnung zur Orthogonalisierung von Ternärvektorlisten, die einen Arbeitsspeicher, einen Zweitoperandenspeicher sowie einen Maskenoperandenspeicher enthält und die einem Universalrechner oder einer anderen Einrichtung zur Verarbeitung von Ternärvektorlisten beigeordnet wird, dadurch gekennzeichnet, daß neben dem Arbeitsspeicher (1), dem Zweitoperandenspeicher (2) und dem Maskenoperandenspeicher (3) ein Markierungsvektorspeicher (4) vorgesehen ist, dem ein Indexzuordner (21) nachgeschaltet ist, daß diesem Indexzuordner (21) ein erster Eingangszuordner (18), ein zweiter Eingangszuordner(19)undein Rückführungszuordner(20) nachgeordnet sind, daß der erste Eingangszuordner (18) weiterhin mit den Ausgangsleitungen des Zweitoperandenspeichers (2), des Maskenoperandenspeichers (3) und des Arbeitsspeichers (1) beschaltet und über eine Auswahlschaltung (14) eingangsseitig an den Arbeitsspeicher (1) angeschlossen ist, daß der zweite Eingangszuordner (19) weiterhin mit den Ausgangsleitungen des Arbeitsspeichers (1) sowie des Zweitoperandenspeichers (2) beschaltet und über eine Auswahlschaltung (15) diesem eingangsseitig vorgeordnet ist, daß der Rückführungszuordner (20) weiterhin mit den Ausgangsleitungen des Markierungsvektorspeichers (4) beschaltet und eingangsseitig über eine Auswahlschaltung (16) an diesen angeschlossen ist, daß die Ausgangsleitungen aller Speicher (2-4) an Halteregister (5-8) angeschlossen sind, die den Datenausgängen dieser Speicher (2^4) nachgeordnet sind, daß den Adresseneingängen des Arbeitsspeichers (1) über eine Auswahlschaltung (22) erste Adressenleitungen (24) und zweite Adressenleitungen (25) einer Adressengeneratorschaltung (26) vorgeordnet sind und daß die Adresseneingänge der weiteren Speicher (2,3,4) gemeinsam über eine Auswahlschaltung (28) an dritte Adressenleitungen (27) der Adressengeneratorschaltung (26) angeschlossen sind.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der Indexzuordner (21) so ausgebildet ist, daß die Ausgangsleitungen des Markierungsvektorspeichers (4) an die Adresseneingänge eines wahlfrei adressierbaren Speichers angeschlossen sind, der so viele Ausgangsleitungen hat wie der zu bildende Abschnitt des Indexvektors Bitpositionen umfaßt, daß jeder dieser Ausgangsleitungen ein UND-Gatter nachgeordnet ist und daß alle UND-Gatter gemeinsam an eine Erlaubnisleitung angeschlossen sind.
3. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der Indexzuordner (21) so ausgebildet ist, daß mehrere adressierbare Speicher vorgesehen sind, die insgesamt so viele Adresseneingänge haben, wie Ausgangsleitungen des Markierungsvektorspeichers (4) vorhanden sind und so viele Ausgangsleitungen, wie der zu bildende Abschnitt des Indexvektors Bitpositionen umfaßt, daß die Ausgangsleitungen des Markierungsvektorspeichers (4) in geordneter Folge von den niedrigstwertigen Positionen an gruppenweise an die Adresseneingänge der besagten Speicher angeschlossen sind, deren Ausgangsleitungen jeweils ein UND-Gatter nachgeordnet ist, wobei alle UND-Gatter gemeinsam an eine Erlaubnisleitung angeschlossen sind, daß die Ausgangsleitungen jedes Speichers mit Ausnahme dessen, der für die höchstwertigen Positionen vorgesehen ist, jeweils alle an ein NOR-Gatter angeschlossen sind und daß alle besagten UND-Gatter aller höherwertigen Positionen jeweils mit sämtlichen Ausgängen der NOR-Gatter aller dazu niedrigwertigen Positionen beschaltet sind.
4. Anordnung nach Anspruch 2 öder 3, dadurch gekennzeichnet, daß die Erlaubnisleitung an den invertierten Ausgang eines Flipflop angeschlossen ist, das selbsthaltend ausgeführt und mit der disjunktiven Verknüpfung aller Ausgangssignale des Markierungsvektorspeichers (4) beschaltet ist.
5. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der Rückführungszuordner (20) aus UND-Gatter aufgebaut ist, die einzeln mit der jeweiligen Ausgangsleitung des Markierungsvektorspeichers (4) direkt und des Indexzuordners (21) invertiert beschaltet sind.
6. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der erste Eingangszuordner (18) aus Auswahlschaltungen aufgebaut ist, die einzeln unter konjunktiver Verknüpfung mit den Ausgangsleitungen des Maskenoperandenspeichers (3) einerseits mit den Ausgangsleitungen des Zweitoperandenspeichers (2) direkt und andererseits mit den Ausgangsleitungen des Arbeitsspeichers (1) invertiert beschaltet sind, wobei der Auswahlsteuereingang der jeweiligen Ausgangsleitung des Indexzuordners (21) nachgeordnet ist.
7. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der zweite Eingangszuordner (19) aus Auswahlschaltungen aufgebaut ist, die einzeln einerseits mit den Ausgangsleitungen des Zweitoperandenspeichers (2) und andererseits mit den Ausgangsleitungen des Arbeitsspeichers (1) beschaltet sind, wobei der Auswahlsteuereingang der jeweiligen Ausgangsleitung des Indexzuordners (21) nachgeordnet ist.
8. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Adressengeneratorschaltung (26) so ausgebildet ist, daß die ersten Adressenleitungen (24) einem TVL-Adressenzähler (29) nachgeordnet sind, dem ein TVL-Adressenregister (30) vorgeordnet ist, daß die zweiten Adressenleitungen (25) an einen Bereichsadressenzähler (31) angeschlossen sind, daß die dritten Adressenleitungen (27) einem Variablenadressenzähler (32) nachgeschaltet und mit einem Vergleicher (33) verbunden sind, dem seinerseits weiterhin ein Variablenanzahlregister (34) vorgeschaltet ist und daß ein Vektoranzahlzähler (35) vorgesehen ist.
9. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Verbindungen zwischen dem Arbeitsspeicher (1) und den verbleibenden Schaltmitteln der Anordnung (36) als universelles Bussystem mit Multi-Master-Eigenschaften ausgebildet ist, wobei die Auswahlschaltung (22) der RAM-Adresse aus Buskoppelschaltungen sowohl für die ersten als auch für die zweiten Adressenleitungen (24, 25) aufgebaut ist und wobei die Auswahlschaltung (14) der Eingangsleitungen des Arbeitsspeichers (1) als Buskoppelschaltung der Ausgangsleitungen des ersten Eingangszuordners (18) ausgebildet ist.
Hierzu 10 Seiten Zeichnungen
-1- 743 66
Patentansprüche:
-2- 743 66
Anwendungsgebiet der Erfindung
Die Erfindung betrifft eine Anordnung zur Orthogonalisierung von Ternärvektorlisten, die einen Arbeitsspeicher (RAM), einen Zweitoperandenspeicher sowie einen Maskenoperandenspeicher enthält und die einem Universalrechner oder einer anderen Einrichtung zur Verarbeitung von Ternärvektorlisten beigeordnet wird, um den Ablauf der Orthogonalisierung zu beschleunigen. OrthogonaleTernärvektorlisten sind Listen von Vektoren, die ihrerseits aus Ternärvariablen bestehen. Jede solche Variable kann nur jeweils einen von drei Werten annehmen (0,1,—). EineTernärvektorliste heißt orthogonal, wenn bei jedem Paar ihrer Vektoren wenigstens einmal die Kombination 1,0 bzw. 0,1 auftritt. Orthogenalisierung bedeutet, aus einer beliebigen Ternärvektorliste eine orthogonale zu erzeugen. Derartige Ternärvektorlisten eignen sich gut als rechentechnische Basis für die Berechnung von Testdaten für digitale Schaltungen, zur Analyse von Graphen usw.
DD27436685A 1985-03-25 1985-03-25 Anordnung zur orthogonalisierung von ternaervektorlisten DD235743A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DD27436685A DD235743A1 (de) 1985-03-25 1985-03-25 Anordnung zur orthogonalisierung von ternaervektorlisten
DE19863603319 DE3603319A1 (de) 1985-03-25 1986-02-04 Anordnung zur orthogonalisierung von ternaervektorlisten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DD27436685A DD235743A1 (de) 1985-03-25 1985-03-25 Anordnung zur orthogonalisierung von ternaervektorlisten

Publications (1)

Publication Number Publication Date
DD235743A1 true DD235743A1 (de) 1986-05-14

Family

ID=5566221

Family Applications (1)

Application Number Title Priority Date Filing Date
DD27436685A DD235743A1 (de) 1985-03-25 1985-03-25 Anordnung zur orthogonalisierung von ternaervektorlisten

Country Status (2)

Country Link
DD (1) DD235743A1 (de)
DE (1) DE3603319A1 (de)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4150434A (en) * 1976-05-08 1979-04-17 Tokyo Shibaura Electric Co., Ltd. Matrix arithmetic apparatus
DD235744A1 (de) * 1985-03-25 1986-05-14 Robotron Elektronik Anordnung zur verarbeitung von ternaervektorlisten

Also Published As

Publication number Publication date
DE3603319A1 (de) 1986-07-10
DE3603319C2 (de) 1988-09-15

Similar Documents

Publication Publication Date Title
DE1915818C3 (de) Steuerschaltung für ein elektronisches Datenverarbeitungssystem
DE2145120A1 (de) Digitales Datenverarbeitungsgerat
DE3606650A1 (de) Hardware logik-simulator
DE2322674B2 (de) Mikroprogramm-Steuereinrichtung
DE2854782C2 (de) Datenverarbeitungssystem und Verfahren zum Ersetzen eines Datenblocks in einem Schnellspeicher
DE2019444A1 (de) Datenverarbeitungsanlage
DE2164793A1 (de) Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/ Ausgabe-Einheiten mittels eine Zentraleinheit
DE3854212T2 (de) Signalgenerator für die Umlaufadressierung.
DE3788617T2 (de) Vektordatenverarbeitungssystem mit einer E/A-Steuerung für jeden Vektordatenprozessor und einer anderen E/A-Steuerung für mindestens einen anderen Vektordatenprozessor.
DE2900586C2 (de) Anordnung zum Decodieren von Codewörtern variabler Länge
DE1191145B (de) Elektronische Zifferrechenmaschine
DE1524181B2 (de) Auswahlvorrichtung fuer ein und ausgabegeraete einer daten verarbeitungsanlage
DE1499191B2 (de) Elektronische einrichtung fuer eine datenverarbeitungsanlage
DE2403669C3 (de) SpezialComputer
DE69122001T2 (de) Integrierte Schaltung mit einer Standardzelle, einer Anwendungszelle und einer Prüfzelle
EP0009625A2 (de) Datentransferschalter mit assoziativer Adressauswahl in einem virtuellen Speicher
DE2459476A1 (de) Schaltungsanordnung fuer nichtzyklische datenpermutationen
DD235743A1 (de) Anordnung zur orthogonalisierung von ternaervektorlisten
DE2362117C3 (de)
EP0217232B1 (de) Schaltungsanordnung zur Generierung von Splitting-Adressen
DE2419837B2 (de) Schaltungsanordnung zur adressierung eines mikroprogramms in datenverarbeitungseinrichtungen und verfahren zur durchfuehrung von sprungbefehlen
DE2150292A1 (de) Mikroprogrammgesteuerte Datenverarbeitungsanlage mit ueberlagerter Ausfuehrung und Entnahme von Befehlen
DE1449567C3 (de) Digitales Datenverarbeitungssystem
DE3216905A1 (de) Assoziativer subprozessor in einer busorientierten datenverarbeitungsanlage
DE3603320C2 (de)

Legal Events

Date Code Title Description
ENJ Ceased due to non-payment of renewal fee