DE3603319C2 - - Google Patents
Info
- Publication number
- DE3603319C2 DE3603319C2 DE19863603319 DE3603319A DE3603319C2 DE 3603319 C2 DE3603319 C2 DE 3603319C2 DE 19863603319 DE19863603319 DE 19863603319 DE 3603319 A DE3603319 A DE 3603319A DE 3603319 C2 DE3603319 C2 DE 3603319C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- address
- vector
- lines
- allocator
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8053—Vector processors
- G06F15/8076—Details on data register access
- G06F15/8084—Special 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)
Description
Die Erfindung betrifft eine Anordnung zur Orthogonalisierung
von Ternärvektorlisten, die einen Arbeitsspeicher (RAM), einen
Zweitoperandenspeicher sowie einen Maskenoperandenspeicher
enthält und die an einen Universalrechner oder eine andere Ein
richtung zur Verarbeitung von Ternärvektorlisten anschließbar
ist.
Orthogonale Ternärvektorlisten sind Listen von Vektoren, die
ihrerseits aus Ternärvariablen bestehen. Jede solche Variable
kann nur jeweils einen von drei Werten annehmen (0, 1, -).
Eine Ternärvektorliste heißt orthogonal, wenn bei jedem Paar
ihrer Vektoren wenigstens einmal die Kombination 1, 0 bzw. 0,
1 auftritt. Orthogonalisierung bedeutet, aus einer beliebigen
Ternärvektorliste eine orthogonale zu erzeugen. Derartige Ter
närvektorlisten eignen sich gut als rechentechnische Basis für
die Berechnung von Testdaten für digitale Schaltungen, zur
Analyse von Graphen usw.
Es sind Anordnungen zur Berechnung von Matrizen bekannt, bei
denen ein spezielles Rechenwerk, das aus Speichern, einer
Multiplizier- und einer Addiereinrichtung besteht, über einen
Speicherbus mit dem Hauptspeicher und einen Wirtsrechner ver
bunden ist (GB 15 82 274). Diese Anordnungen sind nicht ge
eignet, die vorliegende Aufgabenstellung zu lösen.
Operationen mit Ternärvektorlisten (einschließlich der Ortho
gonalisierung) wurden bisher durch Programme auf Universal
rechnern realisiert. Ein Überblick über die Algorithmen ist
z. 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 (DD-WP 235 744).
Mit einer solchen Anordnung kann ein Universalrechner zwar den
Markierungsvektor für die Orthogonalisierung ohne eigene Ver
knü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 Rechen
operationen auszuführen. Da zur Orthogonaliserung eines Ter
närvektors bezüglich einer Zeile einer Ternärvektorliste an
die Ternärvektorliste n Zeilen angefügt werden müssen, wenn
der Markierungsvektor n Einsen enthält, ergibt sich eine
beträchtliche Verarbeitungszeit.
Die Aufgabe der Erfindung besteht darin, eine Anordnung anzu
geben, 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.
Erfindungsgemäß wird die Aufgabe durch die Merkmale des Patent
anspruches 1 gelöst. Vorteilhafte Weiterbildungen der Erfindung
sind in den Unteransprüchen angegeben.
Im nachstehenden Ausführungsbeispiel zeigt
Fig. 1 das Blockschaltbild der erfindungsgemäßen Anordnung,
Fig. 2 eine Darstellung von Ternärvariablen in einem Maschi
nenwort,
Fig. 3 eine Ausgestaltung des Indexzuordners,
Fig. 4 eine weitere Ausgestaltung des Indexzuordners,
Fig. 5 eine Ausgestaltung des Rückführungszuordners des Mar
kierungsvektorspeichers,
Fig. 6 eine Ausgestaltung des Eingangszuordners des Arbeits
speichers,
Fig. 7 eine Ausgestaltung des Eingangszuordners des Zweit
operandenspeichers,
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 uni
versellem Bussystem.
Fig. 1 zeigt das Blockschaltbild der erfindungsgemäßen Anord
nung. 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 Speicher 1-4 eines
der Halteregister 5-8 nachgeordnet ist. Diese sind ihrer
seits über Koppelstufen 9-12 an auswärtsführende Datenlei
tungen 13 angeschlossen. Den Speichern 1, 2, 4 sind Daten
auswahlschaltungen 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 Eingangszuord
ner 19 verbunden und die Auswahlschaltung 16 des Markierungs
vektorspeichers 4 mit einem Rückführungszuordner 20. Alle
Zuordner 18, 19, 20 sind einem Indexzuordner 21 nachgeordnet,
der an die Datenausgänge des Markierungsvektorspeichers 4
(über das Halteregister 8) angeschlossen ist. Der Rückfüh
rungszuordner 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 Maskenoperandenspeicher 3 (ü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 Adressengenerator
schaltung 26 vorgeordnet. Der Adressengeneratorschaltung 26
sind weiterhin über dritte Adressenleitungen 27 und eine
Auswahlschaltung 28, die zusätzlich an die Adressenbusleitungen
23 angeschlossen ist, die Adresseneingänge des Zweit
operandenspeichers 2, des Maskenoperandenspeichers 3 sowie des
Markierungsvektorspeichers 4 nachgeschaltet. An die Adressen
generatorschaltung 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
Adressenleitungen 23 und die Steuerleitungen 37). Dies ist
dann besonders unproblematisch, wenn es sich bei dem Univer
salrechner um einen Mikroprozessor oder Minicomputer handelt,
der ein reguläres Bussystem hat.
Die Anordnung kann dann auf einfache Weise gekoppelt werden.
Beispielsweise bereitet es 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 eben
falls 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 Digital
technik allgemein übliche) Schaltmittel so decodiert, daß bei
Schreibzugriffen Schreibimpulse zum jeweils ausgewählten
Speicher oder zu den ausgewählten Schaltmitteln der Adressen
generatorschaltung 26 geschickt werden und daß bei Lesezu
griffen 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 zeitranggleichen Anmeldung
"Anordnung zur Verarbeitung von Ternärvektorlisten" (DE 36 03 320
A 1) vorgeschlagen wurde. RAM 1, Zweitoperandenspeicher 2 und
Maskenoperandenspeicher 3 sind dabei bereits vorhanden. Sie
müssen zusätzlich mit den Auswahlschaltungen 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:
Die erste Bitposition wird als Erlaubnisbit E bezeichnet
("ENABLE"). Sie repräsentiert praktisch die Unterscheidung
zwischen einer "don′t care"-Belegung ("-" bzw. neutrales
Element, im folgenden als N-Element bezeichnet) und einer
Belegung mit definiertem Wert (0 oder 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 ent
spricht 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 ausgeschlossen 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 kennzeichent,
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 kennzeichenen.
Bei einem Markierungsvektor von acht Bit gibt es 256
Möglichkeiten, einen Indexvektor zu bilden. Die entsprechenden
Booleschen Gleichungen lauten
i₀ = m₀
i₁ = m₁ · /i₀
i₂ = m₂ · /i₀ · /i₁
i₃ = m₃ · /i₀ · /i₁ · /i₂
usw.
i₁ = m₁ · /i₀
i₂ = m₂ · /i₀ · /i₁
i₃ = m₃ · /i₀ · /i₁ · /i₂
usw.
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. 16 oder 32 Ternär
variable 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 Mar
kierungsvektorspeichers 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 beschalten.
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 von ROM-(oder auch PLA-)Schaltkreisen tritt somit
bei zunehmender Verarbeitungsbreite kein Laufzeitverlust ein.
Statt der ROMs können auch RAM-Schaltkreise (die vor Betriebs
beginn 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 Bit
position beim Schreiben in den Markierungsvektorspeicher 4 auf
Null gesetzt wird. Die übrige 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 durch
steuern, 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 Zweit
operanden entspricht und an der Position, die durch den Index
vektor markiert ist, die invertierte Belegung der entsprechenden
Position der Zelle der Ternärvektorliste enthält.
Fig. 6 zeigt den Aufbau für eine Variablenposition. Sowohl
für die Erlaubnis- als auch die Wertbitposition der Eingangs
leitungen 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 Erlaubnisposition (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 korres
pondierende 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 stattdessen die gelesene Belegung aus dem RAM 1 einge
tragen.
Sind die Ternärvariablen auf andere Weise codiert, so ändert
sich die Realisierung des zweiten Eingangzuordners 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 umge
kehrt.
Fig. 8 zeigt eine Ausgestaltung der Adressengeneratorschaltung
26. Die ersten Adressenleitungen 24 sind einem TVL-Adressen
zähler 29 nachgeschaltet, der seinerseits einem TVL-Adressen
register 30 nachgeordnet ist. Die zweiten Adressenleitungen 25
sind an einen Bereichsadressenzähler 31 angeschlossen.
Die dritten Adressenleitungen 27 sind einem Variablenadressen
zä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 betref
fenden Schreibimpulsleitungen veranlassen (WRITE TVL ADRS,
WRITE AREA ADRS, WRITE VAR COUNT, WRITE VECTOR COUNT).
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 der TVL-Zeile zu orthogona lisieren. Dabei entstehen so viele Ternärvektoren, wie der Markierungvektor 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 resul tierenden Ternärvektoren abgespeichert, und der Universal rechner 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-Zeile in das TVL-Adressenregister 30
- - die Anfangsadresse des Speicherbereichs für die resul tierenden Ternärvektoren in den Bereichsadressenzähler 31
- - die Variablenanzahl der Vektoren in das Variablenanzahl register 34
- - die Anzahl der Einsen des Markierungsvektors (gleichbe deutend 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 Variab lenpositionen) aller zu verarbeitenden Vektoren. Die Aus wahlschaltung 22 steuert die ersten Adressenleitungen 24 zu den Adresseneingängen des RAM 1 durch. Die entsprechenden Belegungen werden aus den Speichern 1-4 in die Haltere gister 5-8 übernommen und stehen somit zur Verarbeitung bereit. Im folgenden Zyklus werden die Resultate der Zuord ner 18, 19, 20 in den RAM 1, den Zweitoperandenspeicher 2 und in den Markierungsvektorspeicher 4 zurückgeschrieben. Dabei steuert die Auswahlschaltung 22 die zweiten Adressen leitungen 25 zu den Adresseneingängen des RAM 1 durch, so daß der erste Abschnitt des ersten Resultatvektors einge schrieben 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ück führungszuordner 20 gelöscht. Damit wird der Vektoranzahlzähler 35 um 1 vermindert. Wird der Inhalt dieses Zählers zu Null (VECTOR COUNT ZERO aktiv), so wurden alle Resultatsvektoren erzeugt, und der Orthogonalisierungsablauf wird beendet. Andernfalls beginnt die Erzeugung des folgenden Resultat vektors 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 Ver knü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 dar
gestellt. Fig. 11 zeigt das zugehörige Impulsdiagramm.
Die zugrunde liegenden Taktimpulse T 1 ... T 4 werden gemäß Fig. 9
mit einem rückgekoppelten Schieberegister erzeugt.
Der Ruhezustand der Anordnung wird durch ein Flipflop IDLE re
repräsentiert. In diesem Ruhezustand (IDLE=1) werden die Aus
wahlschaltungen 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 Univer
salrechner einen Startimpuls INITIATE 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. ä., 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 nach
einander 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 Ausgangs
signal 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 Beschaltung 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 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 saß 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 Beschaltung
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ärvek
torlisten" 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 (AREA ADRS.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 Univer
salrechner 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 verbindende 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 ge
koppelten 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 Arbeitszu
stand ü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:
TVL-Zeile:0-0-1-01
Ternärvektor:00-1--0-
Markierungsvektor:00101001
Somit sind drei Resultatvektoren zu erzeugen.
Indexvektor:00000001 (s.Fig. 3)
Resultatvektor:00-1--00 (s. Fig. 6)
neuer Ternärvektor:00-1--01 (s. Fig. 7)
neuer Markierungsvektor:00101000 (s. Fig. 5)
Indexvektor:00001000
Resultatvektor:00-10-01
neuer Ternärvektor:00-11-01
neuer Markierungsvektor:00100000
Indexvektor:00100000
Resultatvektor:00111-01
neuer Ternärvektor:00011-01
Der verbleibende neue Ternärvektor ist der Durchschnitt aus
TVL-Zeile 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. Hingegen muß bei einer Softwarelösung eine Vielzahl von Befehlen durchlaufen werden (Schätzung: 50 Befehle zu 2 µs; 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 ausge führt, so daß eine Verarbeitungsbreite von 16, 32, oder 64 Variablenpositionen im Rahmen entsprechender Rechnerkon figurationen 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 Ver arbeitungsbreiten 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 Speicherein richtung 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 Beschleunigungsein richtungen 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 (9)
1. Anordnung zur Orthogonalisierung von Ternärvektorlisten,
die einen Arbeitsspeicher, einen Zweitoperandenspeicher
sowie einen Maskenoperandenspeicher enthält und die an einen
Universalrechner oder eine andere Einrichtung zur Verarbeitung
von Ternärvektorlisten anschließbar ist, 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) und ein Rückführungszuordner
(20) nachgeordnet sind, daß der erste Eingangszuordner
(18) weiterhin jeweils über Halteregister (5, 6, 7) 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 jeweils
über ein Halteregister (5, 6) mit den Ausgangsleitungen
des Arbeitsspeichers (1) sowie des Zweitoperandenspeichers
(2) beschaltet und über eine Auswahlschaltung (15)
diesem eingangsseitig vorgeordnet ist, daß der Rückfüh
rungszuordner (20) weiterhin über das Halteregister (8) mit
den Ausgangsleitungen des Markierungsvektorspeichers (4)
beschaltet und eingangsseitig über eine Auswahlschaltung
(16) an diesen angeschlossen ist, daß die Ausgangsleitungen
aller Speicher (1-4) an Halteregister (5-8)
angeschlossen sind, die den Datenausgängen dieser
Speicher (1-4) nachgeordnet sind, daß den Adresseneingängen
des Arbeitsspeichers (1) über eine Auswahlschaltung
(22) erste Adressenleitungen (24) und zweite Adres
senleitungen (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 Adressengenera
torschaltung (26) angeschlossen sind.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der
Indexzuordner (21) so ausgebildet ist, daß die Ausgangs
leitungen des Markierungsvektorspeichers (4) an die Adres
seneingänge eines wahlfrei adressierbaren Speichers ange
schlossen sind (über das Halteregister (8)), der so viele Aus
gangsleitungen hat wie der zu bildende Abschnitt des In
dexvektors Bitpositionen umfaßt, daß jeder dieser Ausgangslei
tungen ein UND-Gatter nachgeordnet ist und daß alle UND-Gatter
gemeinsam an eine Freigabeleitung angeschlossen sind.
3. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der
Indexzuordner (21) so ausgebildet ist, daß mehrere adres
sierbare Speicher vorgesehen sind, die insgesamt so viele
Adresseneingänge haben, wie Ausgangsleitungen des Markie
rungsvektorspeichers (4) vorhanden sind und so viele
Ausgangsleitungen, wie der zu bildende Abschnitt des Index
vektors Bitpositionen umfaßt, daß die Ausgangsleitungen des
Markierungsvektorspeichers (4) über das Halteregister (8) 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 Aus
gangsleitungen 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 Aus
gängen der NOR-Gatter aller dazu niedrigwertigen Positionen be
schaltet sind.
4. Anordnung nach Anspruch 2 oder 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-Gattern aufgebaut ist,
die einzeln mit der jeweiligen Ausgangsleitung des
Markierungsvektorspeichers (4) direkt und des Indexzuord
ners (21) invertiert beschaltet sind.
6. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der
erste Eingangszuordner (18) aus Auswahlschaltungen aufge
baut 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 Ausgangs
leitungen des Arbeitsspeichers (1) invertiert beschaltet
sind, wobei der Auswahlsteuereingang der jeweiligen Aus
gangsleitung des Indexzuordners (21) nachgeordnet ist.
7. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der
zweite Eingangszuordner (19) aus Auswahlschaltungen aufge
baut 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) vor
geordnet ist, daß die zweiten Adressenleitungen (25) an
einen Bereichsadressenzähler (31) angeschlossen sind, daß
die dritten Adressenleitungen (27) einem Variablenadressen
zähler (32) nachgeschaltet und mit einem Vergleicher (33)
verbunden sind, dem seinerseits weiterhin ein Variablenan
zahlregister (34) vorgeschaltet ist und daß ein Vektor
anzahlzähler (35) vorgesehen ist.
9. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die
Verbindung zwischen dem Arbeitsspeicher (1) und den
verbleibenden Schaltmitteln einer Anordnung (36) als uni
verselles Bussystem mit Multi-Master-Eigenschaften ausge
bildet 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 Ausgangs
leitungen des ersten Eingangszuordners (18) ausgebildet
ist.
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 (2)
Publication Number | Publication Date |
---|---|
DE3603319A1 DE3603319A1 (de) | 1986-07-10 |
DE3603319C2 true DE3603319C2 (de) | 1988-09-15 |
Family
ID=5566221
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19863603319 Granted DE3603319A1 (de) | 1985-03-25 | 1986-02-04 | Anordnung zur orthogonalisierung von ternaervektorlisten |
Country Status (2)
Country | Link |
---|---|
DD (1) | DD235743A1 (de) |
DE (1) | DE3603319A1 (de) |
Family Cites Families (2)
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 |
-
1985
- 1985-03-25 DD DD27436685A patent/DD235743A1/de not_active IP Right Cessation
-
1986
- 1986-02-04 DE DE19863603319 patent/DE3603319A1/de active Granted
Also Published As
Publication number | Publication date |
---|---|
DE3603319A1 (de) | 1986-07-10 |
DD235743A1 (de) | 1986-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2716369C2 (de) | ||
DE2714805C2 (de) | ||
DE3586603T2 (de) | Datenprozessor fuer interpretierende und kompilierte sprache. | |
DE1931966C3 (de) | Datenverarbeitungsanlage mit Assoziativspeichern | |
EP0097725B1 (de) | Einrichtung im Befehlswerk eines mikroprogrammgesteuerten Prozessors zur direkten hardwaregesteuerten Ausführung bestimmter Instruktionen | |
DE1549523B2 (de) | Datenverarbeitungsanlage | |
DE1499722B1 (de) | Einrichtung zur modifizierung von informationswoertern | |
DE2555963A1 (de) | Einrichtung zur funktionsmodifizierung | |
DE2322674A1 (de) | Mikroprogramm-steuereinrichtung | |
DE68929080T2 (de) | Anordnung zum Speichern von Informationen für einen Datenanbieterprozessor | |
DE2339636A1 (de) | Programmsteuereinrichtung | |
DE3114921C2 (de) | Mikroprogramm-Speicheranordnung | |
EP0010185A1 (de) | Virtuell-Adressiervorrichtung für einen Computer | |
DE2164793A1 (de) | Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/ Ausgabe-Einheiten mittels eine Zentraleinheit | |
DE2533737A1 (de) | Datenprozessor | |
DE2548720C2 (de) | Mikroprogramm-Steuerwerk | |
DE2725614C2 (de) | ||
DE2948442C2 (de) | Digitalrechenanlage | |
DE2245284A1 (de) | Datenverarbeitungsanlage | |
DE2747304A1 (de) | Einrichtung zur mikrobefehlssteuerung | |
DE3410497A1 (de) | Rechneranordnung | |
DE3603319C2 (de) | ||
DE1524211C3 (de) | Datenverarbeitungsanlage | |
DE1549446A1 (de) | Digitalrechner | |
DE3687739T2 (de) | Speicheranordnung mit mehrfachem lese-schreibzugriff. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OAV | Applicant agreed to the publication of the unexamined application as to paragraph 31 lit. 2 z1 | ||
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 |