DE3603319A1 - Anordnung zur orthogonalisierung von ternaervektorlisten - Google Patents

Anordnung zur orthogonalisierung von ternaervektorlisten

Info

Publication number
DE3603319A1
DE3603319A1 DE19863603319 DE3603319A DE3603319A1 DE 3603319 A1 DE3603319 A1 DE 3603319A1 DE 19863603319 DE19863603319 DE 19863603319 DE 3603319 A DE3603319 A DE 3603319A DE 3603319 A1 DE3603319 A1 DE 3603319A1
Authority
DE
Germany
Prior art keywords
memory
vector
address
allocator
lines
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
DE19863603319
Other languages
English (en)
Other versions
DE3603319C2 (de
Inventor
Dieter Prof. Dr.sc.techn. DDR 9023 Karl-Marx-Stadt Bochmann
Wolfgang Dipl.-Ing. Matthes
Bernd Dr.sc.techn.. DDR 9026 Karl-Marx-Stadt Steinbach
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.)
Robotron VEB
Original Assignee
Robotron VEB
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 VEB filed Critical Robotron VEB
Publication of DE3603319A1 publication Critical patent/DE3603319A1/de
Application granted granted Critical
Publication of DE3603319C2 publication Critical patent/DE3603319C2/de
Granted legal-status Critical Current

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)

Description

  • Titel der Erfindung
  • Anordnung zur Orthogonalisierung von Ternärvektorlisten Anwendungsgebiet der Erfindung Die Erfindung betrifft eine Anordnung zur Orthogonalisierung von Ternärvektorlisten, die einen Arbeitsspeicher (RAM), einen Zweitoperandenspeicher sowie einen Maskenoperandenspe icher enthält und die einem Universalrechner oder einer anderen Einrichtung zur Verarbeitung von Ternärvektorlisten beigeordnet wird, um den Ablauf der Orthogonalisierung zu beschleunigen.
  • 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. O, 1 auftritt. Orthogonalisierung 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.
  • Charakteristik der bekannten technischen Lösungen Operationen mit Ternärvektorlisten (einschließlich der Ortilogonalisierung) wurden bisher durch Programme auf Universalrechnern realisiert. Ein Überblick über die Algorithmen ist 2.ß. in Posthoff/Steinbach: Binäre Gleichungen Algorithmen und Programme (Wissenschaftliche Schriftenreihe der Technischen llochschule 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 Recilenoperationen auszuführen. Da zur Orthogonalisierung eines Ternä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.
  • Ziel der Erfindung Das Ziel der Erfindung besteht darin, die Ausführungszeit für die eigentlichen Orthogonalisierungsabläufe deutlich zu verringen.
  • 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ärvariablen in einem Maschinenwort, Fig. 3 eine Ausgestaltung des Indexzuordners, Fig. 4 eine weitere Ausgestaltung des Indexzuordners, Fig. 5 eine Ausgestaltung des Rückführungszuordners des Markierungsvektorspeichers, Fig. G eine Ausgestaltung des Eingangszuordners des Arheitsspeichers, 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 RAUM 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 13 vorgeordnet. Die Auswahlschaltung 15 des Zweitoperandenspeichers 2 ist mit einem zweiten Eingangszuordner 19 verbunden und die Auswahlschaltung 16 des Markierungsvektorspeichers 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ührungszuordner 20 ist weiterhin mit den Ausgangsleitungen des Markierungsvektorspeichers 4 (über das Ilalteregister 8) direkt beschaltet.
  • Der Eingangszuordner 19 ist über das ilalteregister 6 weiterhin an den Zweitoperandenspeicher 2 und über das ilalteregister 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 Adressengeneratorschaltung 26 vorgeordnet. Der Adressengeneratorschaltung 26 sind weiterhin über dritte Adressenleitungen 27 und eine Auswahlschaltung 23, 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 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 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 Übernahme impuls für die Halteregister 5 - 3 ausgekjst wird.
  • Damit kann der Universalrechner beliebige Datentransporte zwischen den Speichern 1 - 4 ausführen.
  • Die Auswahlschaltungen 14 - 15, 22, 28 können sowohl mit Multlplexerschaltkreisen als auch auf Basis von tri state"-bzw. zonen collector"-Elementen realisiert sein.
  • Im besonderen kann die erfindungsgemäße Anordnung auch die Einrichtung ergänzen, die in der WP-Anmeldung Anordnung zur Verarbeitung von Ternärvektorlisten 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: E V Wert O O -0 1 frei 100 11 1 Die erste Bitposition wird als Erlaubnisbit E bezeichnet ("ENABLE"). Sie repräsentiert praktisch die Unterscheidung zwischen einer Zdon'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 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 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 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 0000 0010 b) Markierungsvektor 0001 1000 Indexvektor 0000 1000 Bei einem Markierungsvektor von acht Bit gibt es 256 Möglichkeiten, einen Indexvektor zu bilden. Die entsprechenden Booleschen Gleichungen lauten 1 mg i1 = m1./i0 i2 = 2 m2./i0./i1 3 = m3./i0./i1./i2 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ä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 hlarkierungsvektorspeichers 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 IZOM 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 ..
  • 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 P2OR-G3ttern der niederen ROMs zu beschalten.
  • Damit ist gewährleistet, daß alle R0M-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 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 Orthogonalislerung 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 1U 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 = O) ein N-Elerment eingetragen (Belegung O, 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 l) 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 Auswahlcingang 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 l 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 eingetragen.
  • Sind die Ternä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 INDES.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. 3 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 niversalrechner 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, I"JRITE 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 orthogonalisieren. Dabei entstehen so viele Ternärvektoren, wie der 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 G, und zwar die Anfangsadresse der TVL-Zeile 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 kesultatvektoren) in den Vektoranzahlzähler 35.
  • e) Der Universalrechner startet den Ablauf und wartet au-f- 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 jewells den ersten Abschnitt (zu beispielsweise acht Variablenpositionen) 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 Halteregister 5 - übernommen und stehen somit zur Verarbeitung bereit. Im folgenden Zyklus werden die Resultate der Zuordner 18, 19, 20 in den kAM 1, den Zweitoperandenspeicher 2 und in den Markierungsvektorspeicher 4 zurückgeschricben.
  • Dabei atenert die Auswahlschaltung 22 die zwciten Adressenleitungen 25 zu den Adresseneingängen des kAM 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 flesultatvektor erzeugt, und die betreffende Bitposition im Markierungsvektorspeicher 4, die im aktuellen Indexvektor aktiv ar, 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 (VECTOR 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. Q von einem geeigneten Steuerautomaten geliefert werden. Das kann ein übliches Mikroprogramrasteuerwerk 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 rcpräsentiert. In diesem Ruhezustand (IDLE = 1) werden die Auswahlschaltungen II, 15, 16, 22, 23 so gesteuert, daß allgemeine Zugriffe des angeschlossenen Universalrechners zu den Speichermitteln der Anordnung möglich sind.
  • Um den Orthogonalisierungsablauf zu starten, flluß der Universalrechner 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 programmteehnischer Abfrage.
  • Ober ein weiteres Flipflop wird veranlaßt, daß zyklisch nacheinander Lesezugriffe (READ SLOT) und Schreibzugriffe (I7RITE 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 l, 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 TVI-Adressenzähler 29 und den Variablcnadressenzähler 32 geliefert (ADRS COUNT).
  • Fig. 9 zeigt weitcrhin 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 flü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 Pesultatvektors 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 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ä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 Rsuhezustand (IDLE) die jeweilige der Adressenbusleitungen 23 (ADRS.i), bei internen Lesezugriffen (READ SLOT) die jeweilige der Adressenleitungen 24 (TVL ADflS.i) und bei internen Schreibzugriffen (WPITE SLOT) die jeweilige der Adressenleitungen 25 (AREA ADPS.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 PA 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 (ctwa Bestandteile eines Mikroprozessorsystems).
  • Die erfindungsgemäße Anordnung 36 wird nun einfach als weitere Funktionseinheit an das Bussystem angeschlossen. nie nicht näher dargestellten internen Details entsprechen Fig. 1, die Datenleitungen des Bussystems sind an die bidirektional gekoppelten Datenleitungen 13, 17 angeschlossen. Im Puhezustand der Anordnung 36 hat der Universalrechner die Busherrsehaft, 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 Auswahl schaltung 22 (die aus Buskoppelschaltungen für die Adressenleitungen 24, 25 besteht) die Adressenleitungen des Bussystems. Bei Lesezyklen wird der RAM l als Slave adressiert, wobei die ersten Adressenleitungen 24 aufgeschaltet sind. Die gelesene Information gelangt in das Halteregister 5. Bei Schreibzyklcn wird der RAU 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: TVL-Zeile: 0-0-1-01 Ternärvektor: 00-1--O-Markierungsvektor: 00101001 Somit sind drei Resultatvektoren zu erzeugen.
  • 2. Erzeugung des ersten Resultatvektors: Indexvektor: 00000001 (. Fig. 3) Resultatvektor: 00-1--00 (s. Fig. 6) neuer Ternärvektor: 00-1--Ol (s. Fig. 7) neuer Markierungsvektor: 00101000 (s. Fig. 5) 3. Erzeugung des zweiten Psesulatvektors: Indexvektor: 00001000 Resultatvektor: 00-10-01 neuer Ternärvektor: 00-11-01 neuer Markierungsvektor: 00100000 4. Erzeugung des dritten Resultatvoktors: 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 zusainmengefaß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 rer den. 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 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 rinnen die erfindungsgemäßen Schaltmittel mit anderen bereits vorgeschlagenen kombiniert werden. Somit ist die Grundlage gegeben, existierende flechnerkonfigurationen 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. Leerseite

Claims (9)

  1. Patentansprüche 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), den 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 (1o) 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 Ilalteregister (5. -3) angeschlossen sind, die den Datenausgängen dieser Speicher (2 - 4) nachgeordnet sind, daß den Adresseneingingen 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 (20) an dritte Adressenleitungen (27) der Adresaengeneratorschaltung (26) angeschlossen sind.
  2. 2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der Indexzuordner (21) o 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. 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 Plarlsierungsvektorspeichers (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. 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. 5. Anordnung nach Anspruch 1, dadurch gekennzeichnet, dar> der Rückführungszuordner (20) aus UND-Gattern aufgebaut ist, die einzeln mit der jeweiligen Ausgangsleitung des Markierungsvektorspeichers (4) direkt und des Indexzuordners (21) invertiert beschaltet sind.
  6. 6. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der crste Eingangszuordner (13) aus Auswahlschaltungen aufgebaut ist, die einzeln unter konjunktiver Verknüpfung it 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. 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. 8. Anordnung nacil 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 (X5) an einen Bcreichsadressenzä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. 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 Auswahischaltung (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 Buskoppelsehaltung der Ausgangsleitungen des ersten Eingangszuordners (18) ausgebildet ist.
DE19863603319 1985-03-25 1986-02-04 Anordnung zur orthogonalisierung von ternaervektorlisten Granted DE3603319A1 (de)

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 true DE3603319A1 (de) 1986-07-10
DE3603319C2 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)

Citations (2)

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

Patent Citations (2)

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

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Wissenschaftl. Schriftenreihe der TH Karl-Marx-Stadt, Ausg. 1/1979, Posthoff/Steinbach: Binäre Gleichungen, Algorithmen und Programme *

Also Published As

Publication number Publication date
DD235743A1 (de) 1986-05-14
DE3603319C2 (de) 1988-09-15

Similar Documents

Publication Publication Date Title
EP1329816B1 (de) Verfahren zum selbständigen dynamischen Umladen von Datenflussprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o.dgl.)
DE2716369C2 (de)
DE1774296C2 (de) Restruktuierbare Steuereinheit für elektronische Digitalrechner
DE1449765C3 (de) Einrichtung zur Abfrage eines assoziativen Speichers
DE2714805C2 (de)
DE3586603T2 (de) Datenprozessor fuer interpretierende und kompilierte sprache.
DE1549523B2 (de) Datenverarbeitungsanlage
DE1928202B2 (de) Einrichtung zur Erstellung statistischer Daten über den Operationsablauf programmgesteuerter Datenverarbeitungsanlagen
CH650600A5 (de) Zentralprozessoreinheit einer datenverarbeitungsanlage mit operationscode-erweiterungsregister.
DE3114921C2 (de) Mikroprogramm-Speicheranordnung
DE2019444A1 (de) Datenverarbeitungsanlage
DE3788617T2 (de) Vektordatenverarbeitungssystem mit einer E/A-Steuerung für jeden Vektordatenprozessor und einer anderen E/A-Steuerung für mindestens einen anderen Vektordatenprozessor.
DE2548720C2 (de) Mikroprogramm-Steuerwerk
DE2725614C2 (de)
DE1191145B (de) Elektronische Zifferrechenmaschine
DE1524181B2 (de) Auswahlvorrichtung fuer ein und ausgabegeraete einer daten verarbeitungsanlage
DE2245284A1 (de) Datenverarbeitungsanlage
DE68903280T2 (de) Vektorschlange in computern mit vektorregister.
DE2024584B2 (de) Steuereinrichtung für eine allgemeine Datenverarbeitungseinrichtung
DE3603319A1 (de) Anordnung zur orthogonalisierung von ternaervektorlisten
DE602004005806T2 (de) Serieller Speicher mit Mitteln zur Integration eines erweiterten Speicherfeldes
DE2911147C2 (de)
DE10300030A1 (de) DMA-Modul und Betriebsverfahren hierfür
DE2419837B2 (de) Schaltungsanordnung zur adressierung eines mikroprogramms in datenverarbeitungseinrichtungen und verfahren zur durchfuehrung von sprungbefehlen
DE2362117C3 (de)

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