DE2054830A1 - Informationsverarbeitungssystem mit wortstrukturiertem Speicher und Verfahren fur einen Zugriff zu einem derar tigen Speicher - Google Patents
Informationsverarbeitungssystem mit wortstrukturiertem Speicher und Verfahren fur einen Zugriff zu einem derar tigen SpeicherInfo
- Publication number
- DE2054830A1 DE2054830A1 DE19702054830 DE2054830A DE2054830A1 DE 2054830 A1 DE2054830 A1 DE 2054830A1 DE 19702054830 DE19702054830 DE 19702054830 DE 2054830 A DE2054830 A DE 2054830A DE 2054830 A1 DE2054830 A1 DE 2054830A1
- Authority
- DE
- Germany
- Prior art keywords
- memory
- word
- bits
- bit
- register
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/04—Addressing variable-length words or parts of words
Description
205483Q
"Βη,Ί flan l ernt'oin, den 6. TT τ ν.
Dipl.-lng. Horst Rose
Dipl.-lng. Peter Kos el
Dipl.-lng. Peter Kos el
Patentanwälte
Bad Gandersheim
Bad Gandersheim
Hohenhöfen 5
Oorpnration
vom 6. November 197*^
BURROUGHS CORPORATION, Detroit, VStA
Informationsverarbeitungssystem mit wortstrukturiertem Speicher und Verfahren für einen Zugriff zu einem derartigen
Speicher
Die Erfindung betrifft ein Informationsverarbeitungssystem mit einem wortstrukturierten (oder wortorganisierten)
Speicher bzw. einer derartigen Speichereinheit (auch Freifeldspeicher genannt) mit einer Zugriffvorrichtung
und ein Verfahren für einen Zugriff zu einer derartigen Speichereinheit. Bei diesem System können Operanden
und Datensegmente irgendein beliebig großes Format aufweisen.
10982A/16 7
Digitale Großrechenanlagen oder -datenverarbeitungssysteme werden häufig zur Multiprogrammverarbeitung
verwendet. Das heißt, sie haben die Möglichkeit, mehrere voneinander unabhängige Programme gleichzeitig
ablaufen zu lassen. Dazu gehört die sogenannte "Stapelverarbeitung·1,
"Realzeitverarbeitung" und das sogenannte "time sharing". Um mehrere dieser unzusammenhängenden
Aufgaben oder "Tasks" durchführen zu können, sind bekannte Systeme mit sogenannten "Betriebssystemen" oder
Steuerprogrammen versehen, die solche Vorgänge wie die Steuerung der Reihenfolge der Tasks, Speicherzuordnung
oder Speieherzuweisung und dergleichen überwachen. Das
Betriebssystem enthält auch die verschiedenen Kompilierer, auch "Übersetzer" genannt, der in einer problemorientierten
Programmiersprache abgefaßte Ursprungsanweisungen in Zielanweisungen einer maschinenorientierten
Programmiersprache umwandelt (kompiliert), d.h. er gestattet dem Programmierer die Verwendung verschiedener
Programmiersprachen, ohne daß dieser den speziellen Schaltungsaufbau der betreffenden Anlage kennen muß.
Dabei beeinfluß die Art der Aufgaben, für die die Maschine verwendet werden soll, auch das Betriebssystem,
das seinerseits die Ausbildung der Anlage selbst beeinflußt. Wenn die Maschine problemorientiert ist, dann ist
das Überwachungsprogramm so aufgestellt, daß es eine eingegebene Folge von Programmen und dessen zugehörige Eingabedaten
verarbeitet. Wenn die Maschine dagegen auf Realzeit- oder time-sharing-Betrieb ausgelegt ist, dann erkennt
das Überwachungsprogramm Teile eingegebener Daten als solche, die der Vielzahl von Verarbeitungsprogrammen
zugeleitet werden müssen. Wenn die Maschine auf timesharing-Betrieb ausgelegt ist, dann müssen verschiedene
Programme und zugehörige Hilfsmittel überwacht werden.
109824/1670
Obwohl es möglich ist, ein Einprozessorsystem mehrere Programme gleichzeitig verarbeiten zu lassen, erhält man
doch eine größere Flexibilität, wenn man ein Multiprozessorsystem verwendet, bei dem mehrere Prozesse oder
Programme mehreren Prozessoren zugewiesen werden. Beispiele derartiger Multiprozessorsysteme sind in den
USA-Patentschriften 3 419 849 und 3 411 139 beschrieben. Sin zentraler Prozessor (auch Zentraleinheit genannt),
wie er bei dem System nach der USA-Patentschrift 3 411 139 verwendet wird, ist in der USA-Patentschrift 3 401
376 beschrieben.
Bei den beschriebenen Systemen werden Betriebssysteme verwendet, die für Multiprozessorsysteme aufgestellt
sind. Ein wesentlicher Unterschied der Erfindung besteht darin, daß der Prozessor (die Prozessoreinheit) eine
Schaltungsanordnung enthält, mit der es möglich ist, Systemanweisungen (auch Befehle genannt) mit größerer
Geschwindigkeit als bisher auszuführen. Das Betriebssystem nach der Erfindung und die Schaltung zur Ausführung
dieses Betriebssystems sind insbesondere so aufgebaut, daß die Anlage für einen Multitask-, einen timesharing-,
einen Realzeit- oder einen Stapelverarbeitungsbetrieb besser geeignet ist.
Besonders vorteilhaft sind rekursive oder Wiedereintritts-Systemprogramrae,
wie Dienstprogramme. Ferner ist es vorteilhaft, wenn diese Rekursivität in einer Hierarchie von
Ebenen und nicht nur einer Ebene vorliegt. Ferner ist es vorteilhaft und auch notwendig, bestimmte Systemprogramme
sowie Benutzerprogramme im Speicher vor einem unerwünschten Aufruf, einer unerwünschten Eingabe oder einem unerwünschten Eintritt durch unzusammenhängende Prozesse zu
109824/1670
schützen, die anderswo in dem System ausgeführt werden. Ein weiterer Vorteil ist die Bildung von Funktionen, die
verschiedenen Ursprungssprachen gemeinsam sind und durch Schaltungsanordnungen verwirklicht werden, wo es möglich
ist, um die Ausführungszeit zu verkürzen.
Man hat verschiedene Programmiersprachen oder Ursprungssprachen entwickelt, die dem Benutzer die Aufstellung
von Programmen ohne spezielle Kenntnis der jeweiligen Maschinensprache gestatten. Zu diesen verschiedenen
Programmiersprachen gehören Fortran, Cobol, Algol und PL/1. Ein besonderes Problem bei der Entwicklung von
Kompilierern oder Übersetzern für die Ursprungssprachen besteht darin, daß nicht nur verschiedene Arten von
Operatoren, sondern auch verschiedene Anweisungsformate (Befehlsformate) und Datenstrukturen verwendet werden.
Diese Unterschiede im Strukturformat und in den Operatoren sind zum Teil in den verschiedenen Speicheroganisationen
begründet, die für verschiedene Verarbeitungssysteme ausgebildet sind. Wenn daher das eine System
für eine bestimmte Programmiersprache besonders geeignet ist, muß es nicht ebenso gut für irgendeine andere Programmiersprache
geeignet sein. Man strebt daher eine Speicherorganisation an, die frei von irgendeiner internen
Struktur ist und die sich an Daten- und Anweisungs- bzw. Befehlssegmente mit einer nahezu unendlichen
Vielzahl von Größen anpassen kann. Ein derart strukturfreier Speicher kann sich jedoch nicht nur an Informationssegmente
mit unterschiedlicher Größe anpassen, sondern er gestattet auch eine größere Datenpackungsdichte.
Es ist unpraktisch, einen vollständig bitadressierbaren Speicher zu bauen, daher sind Speicher wort- oder byte-
109824/1670
orientiert. Bei bekannten wortorientierten Speichern ist es möglich, an einem ausgewählten Byte-Speicherplatz
zu speichern oder zu lesen. Dabei ist es jedoch nicht möglich, ein Feld beliebiger Größe zu wählen, das
also größer oder kleiner als ein Byte ist und an irgendeinem ausgewählten Bit-Speicherplatz beginnen kann. Dies
ist besonders zur Lösung verschiedener Aufgaben vorteilhaft, für die verschiedene Programmsprachen und
Datenformate entwickelt wurden.
Der Erfindung liegt daher die Aufgabe zugrunde, ein verbessertes Multiprozessorsystem zu schaffen, das für zahlreiche
verschiedene Anwendungsfälle geeignet ist, wie time sharing, Lösung wissenschaftlicher Probleme und andere
Datenverarbeitungsaufgaben. Dieses Multiprozessorsystem soll insbesondere Daten mit komplizierten Strukturen
verarbeiten können, die sowohl verschachtelt als auch aus Elementen veränderbarer Art und Länge zusammengesetzt
sein können. Dieses Multiprozessorsystem soll gleichzeitig für ausgefeilte Programmstrukturen geeignet
sein, die durch derzeitige und zukünftige Ursprungssprachen bestimmt werden.
Obwohl es unpraktisch ist, eine Speichereinheit zu bauen, die individuell bitadressierbar ist, ist die Erfindung
auf Trenn- und Schnittstellen-Verbindungseinheiten zwischen
dem Speicher und den verschiedenen Anforderungseinheiten zum Adressieren zweier benachbarter Wortspeicherplätze
in einem oder mehreren dieser Speicherwerke und anschließendes Auswählen des gewünschten Feldes aus
diesen beiden Speicherplätzen gerichtet. Dies ist insbesondere bei einem Multiprozeßsystem mit mehreren
Speichereinheiten vorteilhaft.
1098 24/1670
Nach der Erfindung ist daher die Zugriffvorrichtung derart ausgebildet, daß sie für einen Zugriff zu einem Feld
in der Speichereinheit in Übereinstimmung mit einem Steuerwort sorgt, das einen vorgegebenen Bitspeicherplatz in der
Speichereinheit als Anfangsspeicherplatz und auch eine vorgegebene Anzahl von Bits bis zu der in der Speichereinheit
verbleibenden Anzahl von Bits vorschreiben kann.
Vorzugsweise enthält die Zugriffvorrichtung nach der Erfindung
eine Steuervorrichtung, der ein Steuerwort zuführbar ist, das einen Anfangsbitspeicherplatz eines Feldes
in der Speichereinheit und die Anzahl der Bitspeicherplätze in dem Feld vorschreibt, und eine Adress4ölvorrichtung,
die auf die Steuervorrichtung anspricht und zwei benachbarte Wortspeicherplätze in der Speichereinheit
adressiert, von denen der erste Speicherplatz den ersten Teil des Feldes enthält.
Bei einem Informationsverarbeitungssystem mit mehreren
wortstrukturierten (wortorganisierten) Speichern, einer Speicher-Zugriffvorrichtung und einer Speicherzugriff-Anforderungsvorrichtung,
besteht die Erfindung darin, daß an die Zugriffvorrichtung eine Schnittstellen-Verbindungseinheit
angeschlossen ist und dieser ein Steuerwort zur Übertragung in den oder zum Auslesen aus dem Speicher
aus verschiedenen Bitfeldern zuführt und so ausgebildet ist, daß sie ein zweites Steuerwort in eine zweite Speichereinheit
überträgt, wenn das Bitfeld in Teilen des ersten und des zweiten Speichers vorhanden ist.
Das heißt, ein Merkmal der Erfindung besteht in einer Adressierschaltung für eine oder mehrere Speichereinheiten
zum Auswählen irgendeines Feldes veränderbarer Länge aus einer Speichereinheit durch Adressieren zweier
109824/1670
benachbarter WortSpeicherplätze und Auswählen eines
gewünschten Feldes aus diesem Paar.
Ein weiteres Merkmal der Erfindung ist eine Schaltung, die so ausgebildet ist, daß sie nacheinander irgendeine
Anzahl benachbarter Wortspeicherplatzpaare zum Adressieren eines Feldes irgendeiner gewünschten Länge auswählt.
Ein weiteres Merkmal der Erfindung ist ein Schiebenetzwerk in Verbindung mit der Adressierschaltung zum Auswählen
des gewünschten Feldes aus dem Wortspeicherplatzpaar zur Übertragung an eine Anforderungsvorrichtung während
einer Leseoperation und auch zum Anordnen des ausgewählten Feldes für eine richtige Eingabe in die Speichereinheit
während einer Speicheroperation.
Ein weiteres Merkmal der Erfindung sind Schnittstellen-Verbindungseinheiten,
die für jede der Anforderungsvorrichtungen zur Bildung von Speichersteuerwörtern zur
Auslösung des Auslesens und Speicherns ausgewählter Felder und zur Bildung zusätzlicher Steuerwörter, wenn
das ausgewählte Feld zwei oder mehrere Speicherwerke überlappt, vorgesehen.sind.
Das Zugriffverfahren besteht nach der Erfindung darin,
daß nacheinander verschieden große Gruppen aus Bits zum Abspeichern in dem Speicher aufgenommen und jede Bitgruppe
in entsprechenden Feldplätzen in Teilen der Wortstrukturen in dem strukturierten Speicher so angeordnet
werden, daß einige der Feldplätze benachbarte Wortstrukturen überlappen.
Die Erfindung und ihre Weiterbildungen werden im folgenden
anhand von Zeichnungen ausführlicher beschrieben.
i 0982Λ / 1670
Fig. 1 ist eine schematische Darstellung eines Systems, bei dem die Erfindung angewandt wird.
Fig. 2 ist eine schematische Darstellung eines Prozessors, bei dem die Erfindung angewandt wird.
Fig. 3 ist eine schematische Darstellung des Interpretiererteils des Prozessors.
Fig. 4 ist eine Darstellung des nach der Erfindung angewandten Deskriptorformats.
Fig. 5 ist eine schematische Darstellung eines Speicherwerks nach Fig. 1.
Fig. 6 ist eine schematische Darstellung einer Speichereinheit nach Fig. 5.
Fig. 7 ist eine schematische Darstellung einer Feldtrenneinheit nach Fig. 6.
Fig. 8 ist eine Darstellung der Sehnittstellen-Verbindungseinheit zwischen einer Speichereinheit und einer
Feldtrenneinheit.
Fig. 9 ist eine Darstellung einer Schnittstellen-Verbindungseinheit
zwischen einer Feldtrenneinheit und einer Änforderungsvorrichtung.
Fig. 10 ist eine schematische Darstellung der Speicher-Schnittstellen-Verbindungseinheit
eines Prozessors nach Fig. 2.
109824/1670
Fig. 11 ist eine Darstellung des Elementsteuerwortformats und
Fig. 12 ist eine Darstellung eines Speichersteuerwortformats.
Multiprozess-Systeme und Multiprograram-Systeme können
als eine Folge zusammenhängender oder unzusammenhängender Programme, Aufgaben (auch Tasks genannt) oder Arbeiten
angesehen werden, die im folgenden "Prozesse" genannt werden. Ein Elementarprozess ist eine serielle
Ausführung von Operatoren durch einen einzigen Prozessor. Ein Prozeß kann in Unterprozesse aufgeteilt oder Teil eines
Hauptprozesses ssin. Auf diese Weise läßt sich eine Prozeßhierarchie aufstellen. Der Begriff "Prozeß" kann
als eine Assoziierung zwischen einem Prozessor und Adressenraum definiert werden. Der Adressenraum ist die Gruppe
aller Speicher, die durch diesen Prozeß zugänglich sind. Der gesamte in dem System zur Verfügung stehende Speicherraum
kann so betrachtet werden, als sei in ihm ein Globalprozeß gespeichert, bei dem es sich um den Stammvater
aller anderen Prozesse und Unterprozesse in dem System handelt. Ein derartiger Globalprozeß kann so betrachtet
werden, als enthalte er das gesamte Betriebssystem mit Überwachungsprogrammen, Dienstprogrammen und
Kompilierern sowie den verschiedenen Benutzerprogrammen.
Der Adressenraum des Systems nach der Erfindung erstreckt sich über alle Speicherebenen einschließlich den Hauptspeicher
und einen Hilfs- oder Reservespeicher und periphere Geräte. Dieses System enthält mehrere Prozessoren,
von denen jeder mit einer Ililfsstruktur im Arbeitsspeicher
zum Speichern der Kennzeichnung eines neuen Arbeitsraumes oder neuer Arbeitsräume versehen ist. Diese Illlfs-
1 09824/ 1 670
struktur, die noch ausführlicher beschrieben wird, gestattet jedem Prozessor mit der Relation zwischen dem
gesamten Globalprozeßraum (Arbeitsspeicher) und dem jeweiligen Prozeßraum, mit dem er gerade in Verbindung steht,
Schritt zu halten.
Die Prozeßhilfsstruktur ist die Vorrichtung, die zum Durchlassen aller Hilfsmittel zwischen Prozessen der Prozeßhierarchie
verwendet wird, und ist daher ein integraler Bestandteil des Hilfsmittelschutzschemas, das zum Schutz
verschiedener Benutzerprogramme während des time sharing und generell zum Schutz der verschiedenen Prozesse erforderlich
ist. Wenn ein bestimmter Prozessor von einem Hauptprozeß auf einen Unterprozeß übergeht, werden zugeordnete
Hilfsmittel in der Hilfsmittelstruktur des Prozessors,
übereinandergestapelt und aus der Prozeßhilfsmittelstruktur entfernt, wenn der Prozessor aus dem
Unterprozeß in den Hauptprozeß zurückkehrt. Die Hilfsmittelstruktur enthält daher alle dynamisch zugeordneten
Hilfsmittel, die ihr Prozessor für irgendeinen bestimmten Unterprozeß eventuell benötigt. Ein bestimmter Systemmanagementprozeß
ist der einzige Prozeß, der direkten Zugang zu Eingaben oder Einsprüngen in jede der Hilfsmittelstrukturen
hat.
Diese oben angegebene allgemeine Beschreibung des Prozeßaufbaus umfaßt bereits in allgemeiner Form eine Beschreibung
der Art, in der die verschiedenen Speicherebenen verwendet werden. Im folgenden soll kurz das nach
der Erfindung derart ausgebildete System beschrieben werden, daß es diesen Prozeßaufbau verwenden kann. Fig. 1
stellt schematisch ein System dar, bei dem die Erfindung angewandt ist. Dieses System enthält mehrere zentrale
109824/1670
Prozessorwerke 10 und ein oder mehrere EA-Steuerwerke
(EA = Eingabe/Ausgabe), die zusammen mit einem Reservespeicher
14 an mehrere Speicherwerke 11 über ein Verriegelungsschaltwerk 20 angeschlossen sind. Alle Speicherwerke
11 bestehen aus zwei Speichereinheiten 12 und eine Trenneinheit 13, deren Zweck und Wirkungsweise noch ausführlicher
beschrieben wird. Der Reservespeicher 14 enthält ein Speichererweiterungssteuerwerk 15 und mehrere
Einheiten 16 und 17, die Register, Kernspeicher oder Plattenspeicher enthalten können. Der Reservespeicher
(auch Hilfs- oder Ergänzungsspeicher genannt) wird im folgeadeu
als Speicher der Ebene 2 bezeichnet. Von den EA-Steuerwerken 18 werden ein oder mehrere zur Herstellung
der Verbindung zu den Peripheriegeräten 19 verwendet.
Der in Fig. 1 dargestellte Aufbau unterscheidet sich nicht wesentlich von dem nach der US-Patentschrift 3 411 139. Das
nach der Erfindung ausgebildete System unterscheidet sich jedoch gegenüber dem bekannten erheblich in der Art, in
der die erwähnte Prozeßhierarchie angewandt wird, und in der Art, in der die Teile nach der Erfindung angepaßt sind,
um diese Hierarchie anzuwenden.
Die Hauptmerkmale der Erfindung sind sowohl in der Art zu sehen, in der die Speicherwerke 12 angepaßt sind, um
der Einrichtung als Freifeldspeicher zu erscheinen, und in der Art, in der die jeweiligen Prozessoren 10 ausgebildet
sind, um diesen Speicher zur Anwendung der erwähnten Prozeßhierarchie zu benutzen.
Die wesentlichen Einzelheiten des Prozessors werden zunächst anhand von Fig. 2 allgemein beschrieben. Wie aus
Fig. 2 zu ersehen ist, enthält der Prozessor 10 nach Fig. 1 eine Interpretierereinheit 21 und ein Rechenwerk 20.
109824/1670
Eine Speicherverbindungseinheit 22 (auch Speicher-Koppelelektronik
oder Speicher-Schnittstelleneinheit genannt) dient als Verbindungseinheit zwischen dem Interpretierer
21 und den jeweiligen Speicherwerken 11 nach Fig. 1. Der Interpretierer 21 besteht aus vier Grundteilen: Einem
Kernteil 23, einem Strukturpufferteil 24, einem Programmteil 25 und einem Unterbrechungsteil 26.
Die Hauptfunktion jedes Prozessors 10 besteht in der Aktivierung und Deaktivierung von Prozessen, der Steuerung
von Informationsübertragungen zwischen Baueinheiten, der Bedienung von Unterbrechungen und der Ausführung von
Rechenoperationen, die von einem Programm verlangt werden. Diese Funktionen werden unter der Leitung eines
Hauptsteuerprogramms ausgeführt. Der Prozessor verringert die Speicherzugriffszeiten durch Verwendung in der
Phase aufeinander abgestimmter Lese- und Schreiboperationen, wo immer es möglich ist, und durch gleichzeitige
Pufferung bzw. Zwischenspeicherung von Informationen. Durch die Zentralisierung der Steuerung der funktionell
unabhängigen Unterteile der Interpretierereinheit 21 wird die Ausführungsgeschwindigkeit erhöht und werden
die Hardware-Kosten verringert. In jedem Prozessor ist es der Interpretierer 21, der die Bewegung von Programm
und Daten steuert, für einen selbsttätigen Speicherschutz sorgt, auf Unterbrechungen und Steuerungen anspricht
und die verschiedenen Stapel und Puffer im Prozessor leert und wieder füllt.
In dem Interpretierer liest (aus dem Speicher), interpretiert und führt der Programmteil 25 die Programmoperatoren
in dem Programmstring aus. Durch den Kernteil 23 werden Deskriptoren, die in dem Programmstring in Abhängigkeit
von dem Programmoperator, der gerade ausge-
109824/1670
führt wird, aufgerufen werden, gelesen, interpretiert, ausgeführt und auf den neuesten Stand gebracht. Der Strukturpufferteil
24 besteht aus einer Gruppe örtlicher Speicher, die häufig aufgesuchte Posten zwischenspeichern um
die Anzahl der Leseoperationen, die mit der Ebene 1 (dem Hauptspeicher) durchgeführt werden, möglichst gering zu
halten. Die Zwischenspeicherung basiert auf den Strukturen, die zur Festlegung des Prozessors verwendet werden.
Der Unterbrechungsteil 26 empfängt Unterbrechungen und Fehler, prüft sie und läßt das geeignete Fehler- oder Unterbrechungssignal
durch, um eine Programmänderung zu bewirken.
Die Interpretierereinheit 21 ist dann so ausgebildet, daß sie die Verarbeitungs- oder Prozeßsteuerung in der Einrichtung
mit Hilfe von Strukturoperatoren, die speziell für ein wirksames Management von Daten und Programmstrukturen
ausgelegt sind, und mit Hilfe von Programmoperatoren übernimmt, die so ausgewählt sind, daß sie eine einfache
Verwirklichung auf höherer Ebene liegender Sprachen gestattet. Die Steuerinformation wird, wie dies erforderlich
ist, an das Rechenwerk und über die Speicherverbindungseinheit
22 an das Speicherwerk verteilt.
Obwohl der Hauptspeicher oder Speicher der Ebene 1 dem System als Freifeldspeicher oder ohne Struktur erscheinen
kann, sind die verschiedenen darin gespeicherten Prozesse und Informationssegmente natürlich strukturiert.
Die Deskriptoren sind so beschaffen, daß sie die verschiedenen Informationsstrukturen im Speicher bezeichnen oder
darauf hinweisen. Sie schreiben auch diese Strukturen und ihre Bedeutung in bezug auf den Prozeß vor, in dem sie
vorkommen, oder in bezug auf den Hauptprozeß, wenn die Struktur selbst ein Unterprozeß ist.
1 0 9 8 2 Λ/1670
In diesem Sinne umfaßt das Aufrufen aller strukturierten Informationen in den verschiedenen Speicherebenen die Auswertung
von Deskriptoren. Diese Auswertung wird durch den Kernteil 23 vorgenommen, wie es in Fig. 2 dargestellt ist.
Nach Fig. 4 gibt es vier Arten von Deskriptorformaten, die sich jeweils auf verriegelte Datenfelder, Datenobjekte,
Programmsegmente oder andere Deskriptoren beziehen, bzw. diese kennzeichnen.
Jeder dieser Deskriptoren enthält drei größere Informationsgruppen
oder Ausdrücke. Diese werden als Zugriffattribute, Interpretiererattribute und Strukturausdrücke
bezeichnet. Die Zugriffattribute bestimmen das Schutzvermögen und ob ein gekennzeichnetes Element im Speicher
abgespeichert oder ausgelesen werden kann. Die Interpretiererattribute bestimmen die Eigenschaften dieses
gekennzeichneten Elements, und der Strukturausdruck enthält
die Art der Struktur, in der das Element liegt, und dies bestimmt die Struktur und Strukturparameterfelder,
die die Parameter vorgeben, die für einen Zugriff zu dieser Struktur erforderlich sind. Es sei anhand von Fig.
darauf hingewiesen, daß jeder Deskriptor soviele Strukturausdrücke enthalten kann, wie zur Bestimmung oder
Abgrenzung eines bestimmten Elements erforderlich sind.
Die Formate des Strukturausdrucksfeldes sind in Fig. 5 dargestellt. Neben dem allgemeinen Format sind zwei spezielle
Strukturausdrucksarten dargestellt, bei denen es sich um die Segmentnummer und die Rufausdrücke handelt.
Dies sind die zwei einzigen Strukturausdrucke, die eine vorbestimmte Größe haben. Die Segmentnummer ist stets
mit einem 8-Bit-Index zum Anwählen des Hilfsmittelstapels als ihr Parameter versehen. Der Rufausdruck ist stets mit
109824/1670
einem Namen als Parameter versehen, der zur Bezeichnung von Deskriptoren verwendet wird. Nach dieser allgemeinen
Beschreibung der Deskriptoren sei daran erinnert, daß ein Speichersteuerwort aus dem Deskriptor erzeugt wird.
Ausführliche Beschreibung des Systems A. Interpretierer
Das folgende bezieht sich auf Fig. 3, die die Schaltung ö?s Interpretierers 21 und insbesondere des Kernteils 23
zur Auswertung der jeweiligen Deskriptoren und Strukturoperatoren darstellt. Die Kern-Hardware enthält fünf
Attributstapel 30 - 34 (für Stapel wird auch der Begriff Kellerspeicher verwandt), eine Deskriptor-Zusammensetzungs-Zerlegungs-Vorrichtung
35, ein Programm-Deskriptor-Steuerregister 36, ein Deskriptorausführungsregister 38 und
Deskriptorsteuerwerke 39 sowie einen Programm/Deskriptor-Steuerstapel 37. Der Kernteil 23 erhält Daten aus Strukturpuffern
40, einem Wertstapel 42, einer Programmwalzenschaltung 43 und dem Rechenwerk 20, wie es in Fig. 2 dargestellt
ist. Der Kernteil 23 überträgt Daten in die Strukturpuffer 40 und das Rechenwerk 20.
Jede der Strukturen im Speicher (Arbeitsspeicher) kann als in einem Adressenraum enthalten angesehen werden, der
durch eine Adresse und eine Länge bestimmt ist. Bei der Strukturausdrucksauswertung arbeitet also jede Anweisung
nach der Anfangsanweisung in diesem Ausdruck auf eine Behälteradresse, die im Behälteradressenstapel 32 nach
Fig. 3 gespeichert ist, und auf eine Behälterlänge in Behälterlängenstapel 31, um eine geeignete Unterstruktur
in dem Behälter zu bestimmen. Wenn das Unterfeld nicht
109824/1670
vollständig in dem so bestimmten Behälter enthalten ist, tritt ein Fehler auf. Wenn nicht anders vorgeschrieben,
sind von bestimmten Anweisungen benötigte Parameter in dem Wertestapel zu finden, der in dem Arbeitsspeicher
vorgesehen ist und den Wertestapelpuffern 42 nach Fig. Werte zuführt.
Der Attributsammeistapel 30 nach Fig. 3 sammelt dann Zugriffgestattungsattribute, Segmentnummern und Formatselektoren,
die er während der Auswertung aus den verschiedenen Deskriptoren erhält. Die anderen vier Stapel
31..., 34 werden zur Strukturausdruckparameterbehandlung verwendet. Jeder Stapel besteht aus vier Wörtern, die
32 Bits lang sind. Die Stapel stehen bei allen Rechenoperationen mit dem Rechenwerk in Verbindung. Sie verwenden
und modifizieren auch die in dem Struktur- und Deskriptorpuffer 40 gespeicherten Strukturausdrücke,
und sie erhalten Parameter aus dem Wertstapel über Wertstapelpuffer 42 und die Programmwalzenschaltung 43. Die
Stapel werden einzeln behandelt. Zwei der Stapel enthalten Behälterinformationen (Anfangsadresse und Länge),
während die übrigen beiden Stapel Elementinformationen (Anfangsadresse und Länge) speichern. Die Stapel sind in
Fig. 3 entsprechend beschriftet. Während der Auswertung speichern die Stapel Zwischenwerte aus diesen Behältern
für Längeninformationen und Selbstidentifizierungsstrukturen. Am Ende jeder Strukturtypauswertung sind die Elementstapel
leer, während die Behälterstapel ein Teilbezugszeichen für das Objekt aufweisen. Das Teilbezugszeichen
ist eine Behälteradresse und eine Länge, die der Länge bis zu der Stelle entspricht, bis zu der der Deskriptor
ausgewertet wurde.
109824/1670
Die Hauptaufgabe der Speicherwerke 12 nach Fig. 1 besteht darin, den anfordernden Geräten zu ermöglichen, Informationsfelder
irgendwo aus dem oder in das Speichersystem herauszuholen oder einzugeben. Ein Informationsfeld ist
als eine Anzahl von Bits definiert, deren Anfangsbitstelle irgendwo im Speichersystem sein kann. Fig. 1 stellt
die Beziehung der Speicherwerke 12 zu den anderen Geräten des Systems dar. Es gibt drei Arten von anfordernden Geräten:
Zentrale Prozessoren 10 (CPM = central processor module), Eingabe/Ausgabe-Steuerwerke 18 (I/O - input/
output) und die Speichererweiterungssteuerwerke 15 (MEC = memory extention controllers). Die maximale Anzahl von
Speieherwerken, auf die das System ausgelegt sein kann,
ist vorzugsweise 16, und jedes Speicherwerk soll in der Lage sein, jede beliebige Kombination von bis zu maximal
16 anfordernden Geräten zu bedienen. Die Speicherwerke sollen keinen Unterschied zwischen den anfordernden Geräten
machen, so daß irgendeine Operation, die für ein anforderndes Gerät ausgeführt wird, für irgendein anderes
anforderndes Gerät ausgeführt werden kann.
Wie in Fig. 1 dargestellt ist, bilden vorzugsweise zwei Speichereinheiten 12 (MSU = memory storage unit) in Verbindung
mit jeweils einer Feldtrenneinheit 13 (FIU = field isolation unit) ein vollständiges Speicherwerk 11.
In einem besonderen System können auch nur eine Speichereinheit 12 mit einer Trenneinheit 13 vorgesehen sein.
Jede Speichereinheit 12 speichert Informationen in einem
Kernspeicherstapel, obwohl andere Speicherarten für diesen Zweck verwendet werden können, und eine derartige Einheit
soll die Fähigkeit haben, diese Information auf Anforderung
1Q9824/ 1670
auszugeben. Jede Speichereinheit 12 steht nur mit ihrer
eigenen Feldtrenneinheit 13 in Verbindung, so daß alle
Operationen in dem System zunächst eine bestimmte Trenneinheit durchlaufen, bevor sie begonnen werden.
Nach den Fig. 5 und 6 ist jede Speichereinheit 12 strukturorientiert
und in mehrere Stapel unterteilt. Jeder Speicherstapel besteht vorzugsweise aus 8192 Plätzen
(Zellen), von denen jeder 288 Informationsbits enthält. Von diesen 288 Bits werden 256 von dem System als Speicherraum
und die übrigen 32 Bits intern als Fehlercodeinformation benutzt. Das Fehlercodebit soll nur zu den
vorausgehenden 64 Informationsbits gehören. Jedesmal, wenn im Speicher Informationen gespeichert werden, werden
diese Fehlercodebits in Abhängigkeit von der neuen Information im Stapelwort gesetzt.
C. Feldtrenneinheit (FIU)
Jede Feldtrenneinheit 13 ist mit einer Logik versehen, die es ermöglicht, Informationsfelder unabhängig
von der Speicherstruktur herauszuholen oder einzugeben. Der Speicher wird daher vom anfragenden Gerät als ein
kontinuierlicher Raum behandelt, der die Fähigkeit hat, Felder, die an irgendeiner Stelle (Bit) beginnen und sich
bis zu irgendeiner vorgeschriebenen Länge fortsetzen, aufzunehmen .
Die Feldtrenneinheit 13 besteht aus 13 größeren Funktionseinheiten, die miteinander verbunden sind. Wie in Fig. 7
gezeigt ist, ist das Leseregister 60 ein 144-Bit-Register,
109824/1670
das zur Aufnahme einer Kopie von zwei Speicherwörtern verwendet wird. Die erste Gruppe aus 72 Bits ist daher
eine Kopie des Speicherwortes, die das gegenwärtige Anfangsbit eines Feldes enthält, und die zweite Gruppe aus
72 Bits ist eine Kopie des Speicherwortes, das die Fortsetzung eines Feldes enthält. Wenn beispielsweise eine
Operation vorschreibt, daß das Anfangsbit das Bit 5 im Speicherwort B sein soll und die Länge größer als 59
Bits ist, nimmt das Leseregister 60 die Wörter B und C auf. Während der Leseoperationen wird das Leseregister
60 zur Übertragung von Speicherwörtern zur Walzenlogik
61 für einen Feldentzug verwendet. Während der Speicheroperation wird das Leseregister 60 zur Wiedereinfügung
von Bits eines Speicherwortes verwendet, die durch das Speichern eines neuen Feldes nicht geändert wurden.
Der Walzenteil 61 bildet das Schiebenetzwerk, das eine Kapazität zur Verschiebung von 128 Informationsbits nach
links herum bis zu einem Maximum oder einem Minimum von null Stellen oder, Plätzen aufweist. Während einer Leseoperation
wird die Trommel oder Walze 61 dazu verwendet, das Feld so zu positionieren, daß es linkberechtigt
oder rechtsberechtigt ist, bevor es in das anfordernde Gerät übertragen wird. Während einer Speicheroperation
wird die Walze 61 dazu verwendet, die eingegebenen Daten im richtigen Bitplatz des Speichers zu positionieren.
Ein Maskengeber sorgt für die Fähigkeiten, ein Feld aus der Walzenausgabeschaltung auszuwählen und ins Ausgaberegister
63 oder ein Erzeugungsregister 64 zu tibertragen. Das ausgewählte Feld wird durch die Anfangsbit- und Längenfeldinformation bestimmt, die in dem
Steuerwort enthalten ist, und auch durch die Art der angeforderten Operation. Ein Schiebenetzwerk, das hier
109824/1670
verwendet werden kann, wurde bereits an anderer Stelle
vorgeschlagen (Deutsche Patentanmeldung P 20 00 275.9, angemeldet am 5. Januar 1970.)
Das Ausgaberegister 63 ist ein 65-Bit-Register und wird zur Zwischenspeicherung von Informationen während mindestens eines Taktes verwendet, die aus den verschiedenen logischen Schaltungen der Feldtrenneinheit zum anfordernden Gerät übertragen werden.
Ein Paritätsgenerator 65 wird zur Bildung einer Parität bei allen ausgegebenen Datenwörtern verwendet. Ein Paritätsbit soll der Datenübertragung nach einer Taktperiode
folgen.
Das Eingaberegister 66 ist ein 65-Bit-Register, das zum Speichern des Steuerwortes für eine Paritätsprüfung verwendet wird. Das Eingaberegister 66 sorgt auch für eine
kurzzeitige Zwischenspeicherung während mindestens einer Taktperiode für die Datenübertragung aus dem anfordernden
Gerät.
Ein Paritätsprüfer 67 dient zum Prüfen aller eingegebenen Datenwörter. Ein Paritätsbit soll eine Taktperiode nach
der Datenübertragung empfangen werden.
Das Steuerwortregister 68 ist ein 64-Bit-Register, das
zur Aufnahme des Steuerwortes dient, das vom anfordernden Gerät gesendet wird. Während des Ablaufs einer Operation
soll dieses Register für einen Gleichlauf mit der genauen Anfangsposition und der übrigen Feldlänge dieser Operation sorgen.
109824/1670
Das Erzeugungsregister 64 ist ein 128-Bit-Register und
dient zur Verknüpfung der Walzenteilausgabe ait der Leseregisterausgabe. Das Ergebnis ist ein Speicherwort.
Das Erzeugungsregister 64 soll ferner das Speicherwort für mindestens eine Taktperiode festhalten, um den Codegenerator zu ermöglichen, Prüfcodebits zu erzeugen, bevor das Wort ins Speicherregister übertragen wird.
Das Speicherregister 69 ist ein 72-Bit-Register und wird zur Zwischenspeicherung des Datenwortes verwendet,
das an einem Platz gespeichert werden soll, der durch das richtige Speicheradressenregister 92 (MAR - memory
address register) nach Fig. 6 vorgeschrieben wird.
Der Codegenerator 70 dient zur Bildung für Prüfbits für alle Informationen, die im Speicher gespeichert werden.
Diese Prüfbits stellen ein Mittel zur Feststellung von Bitfehlern zwischen der Feldtrenneinheit 13 und dem
Speicher 12 dar.
Das Fehlerregister 71 ist ein 64-Bit-Register und dient
zur Aufnahme aller Informationen, die zur Identifizierung und Definierung eines Fehlers erforderlich sind, z.B. eines externen Fehlers (Fehler, die durch das anrufende
Gerät hervorgerufen werden), eines internen Fehlers (der in der Feldtrenneinheit festgestellt wird) und eines Speichereingabefehlers (eines durch eine falsche Stapelinformation bewirkten Fehlers).
Wenn Wörter aus dem Leseregister 60 aufgenommen werden, enthalten sie jeweils insgesamt 72 Bits. Die 64 höchststelligen Bits sind Datenbits, und die übrigen acht Bits
sind Prüfcodebits. Diese Prüfcodebits gestatten dem Mach-
109824/1670
weis-und Bitkorrekturteil 72 den Nachweis eines 1-Bit-Fehlors oder eines 2-Bit-Fehlers. Wenn ein 1-Bit-Fehler
auftritt, wird das Bit korrigiert, bevor das Feld übertragen wird. Wenn ein 2-Bit-Fehler auftritt, ist keine
Korrektur möglich. In jedem Falle wird das anfordernde
Gerät το« Auftreten eines Fehlers und der Art des aufgetretenen Fehlers unterrichtet.
Im folgenden wird die Verbindungsvorrichtung (auch Koppelelektronik oder Schnittstellenverbindungsvorrichtung genannt) «wischen der Speichereinheit 12 und der Feldtrenneinheit 13 anhand von Fig. 8 beschrieben. Diese Verbindungsvorrichtung enthält Steuerleitungen, Adressenleitungea und Datenleitungen. Wie in Fig. 8 dargestellt ist,
ist dl· Verbindungsvorrichtung in dem Sinne repetitiv, daß
die gleichen Arten von Übertragungsleitungen am jedem der vier Stapel führen, in denen jede der Speichereinheiten
so organisiert ist, wie es anhand der Fig. 5 und 6 beschrieben wurde.
Nach Fig. 8 enthält die Verbindungsvorrichtung sum Stapel A 26 Adressenleitungen, die mur Übertragung einer 13-BIt-Adresse verwendet werden, die einen der 8192 Speicherplätze vorschreiben kann. Die Verbindungsvorrichtung zum
Adressieren enthält 26 Leitungen, da die Speichereinheit 12 1- und 0-Ziffern für jedes Adressenbit benötigt.
Es gibt 72 Dateneingabeleitungen, die zur übertragung von
Dateninformationen verwendet werden, die in einen Adres-•enapeicherplats eingegeben werden sollen. Entsprechend
sind 72 Datenausgabeleitungen vorgesehen, die zur über-
109824/1670
2034830
tragung einer Kopie des aus einem adressierten Speicherplatz ausgelesenen Inhalts (72 Bits) in die Feldtrenneinheit dienen.
Die übrigen Steuerleitungen umfassen eine IMC-Leitung,
die das Signal "Auslöse Speicherzyklus11 (IMC « initiate
memory cycle) überträgt, und eine Leitung zur Übertragung des Lesebetriebssignals, das zum Auslöschen der übertragung von Daten aus einem Adressenspeicherplatz ins
Speicherinformationsregister 91 (MIR - memory information register) dient, das in Fig. 6 dargestellt ist. Das
Schreibbetriebsignal wird zur Freigabe der übertragung von Daten aas der Feldtrenneinheit 13 ins Speicherinformationsregister 91 verwendet. Das Löschsignal wird
zum Löschen des Speicherinformationsregisters vor der Dateneingabe verwendet. Das Schreibtastsignal wird zum
Eintasten von Daten ins Speicherinformationsregister verwendet, so daß sie für einen adressierten Speicherplatz zur Verfügung stehen. Das Lesedaten-Verfügbar-Signal dient dazu, die Feldtrenneinheit 13 (FIU) davon
zu unterrichten, daß aus dem Adressenspeicherplatz ausgelesene Daten im Speicherinformationsregister 91 verfügbar sind.
Die Verbindungsvorrichtung zwischen der Feldtrenneinheit 13 (FIU) und jedem der jeweiligen Anforderer ist in Fig.
9 dargestellt und enthält eine 64-Bit-Informations-Mehrfachleitung, die bidirektional ist und zur Übertragung von Daten und Steuerwörtern dient. Die Mehrfachleitung ist insofern bidirektional, als die Informationen
109824/1670
205483Q
entweder von der Feldtrenneinheit 13 zum Anforderer oder vom Anforderer zur Feldtrenneinheit übertragen werden können. Eine Totzeit von mindestens einer Taktperiode ist
jedesmal zwischen zwei aufeinanderfolgenden Operationen erforderlich, wenn die Übertragungsrichtung umgekehrt
wird.
Zu den Steuerleitungen gehört, wie Fig. 9 zeigt, eine
Anforderungssignalleitung, die ein von einem Anforderer abgegebenes Anforderungssignal zur Auswahl einer bestimmten Feldtrenneinheit überträgt. Es muß eine Taktperiode
vor dem Anforderungsleitsignal auf EINS ("wahr") übergehen und solange auf EINS bleiben,bis das erste Bestätigungssignal von der Feldtrenneinheit eintrifft.
Ein Anfo-rderungsleitsignal wird zur Feldtrenneinheit
übertragen, um diese davon zu unterrichten, daß ein Steuerwort über die Informationsleitung übertragen wird.
Zu Anfang geht das Anforderungsleitsignal eine Taktperiode nach dem Anforderungssignal auf EINS über, und es bleibt
für die Dauer einer Taktperiode EINS, bevor das Steuerwort über die Informationsleitung übertragen wird. Es
muß solange EINS bleiben, bis ein erstes Bestätigungssignal für jede Leseoperation oder Speicheroperation
empfangen wird, dessen Feldlänge größer als 64 Bits ist. Das Anforderungsleitsignal muß für die Dauer einer Taktperiode EINS sein und jeder Übertragung des Steuerwortes
um eine Taktperlode vorausgehen, und zwar bei jedem Leitsignal, dessen Feldlänge gleich oder kleiner als 64 Bits
ist.
Ein Datenleitsignal wird zur Feldtrenneinheit übertragen, um diese davon zu unterrichten, daß über die Informationsleitung ein Datenwort übertragen werden soll. Wenn die
10S824/1670
Feldlänge des Datenwortes größer als 64 Bits ist, folgt
das Datenwortleitslgnal den "Sende-Daten-Signal". Wenn
die Feldlänge des Datenwortes gleich oder kleiner als 64 Bits ist, wird das Datenwortleitsignal automatisch nach
den Anforderungsleitsignal übertragen und eine Dauer aufweisen, die gleich einer Taktperiode ist.
Ein Bestätigungssignal in Form eines Impulses mit einer
Dauer, die gleich der einer Taktperiode ist, wird stets zum Anforderer übertragen, wenn die Bedienung des Anforderers ausgelöst ist. Der Anforderer muß sich jedoch darauf einstellen, daß der Empfang des ersten Bestätigungssignals keine Garantie dafür ist, daß die Operation ausgeführt Wird.
Ein Daten-Vorhanden-Leitsignal wird übertragen, um den
Anforderer zu informieren, daß im Eingaberegister 66 der Feldtrenneinheit (siehe Fig. 7) ein Datenwort vorhanden
ist. Das Daten-Vorhanden-Signal wird bei allen Leseoperationen in Koinzidenz mit dem Datenwort übertragen, solange keine Fehler bei den aus der Speichereinheit 12
ausgelesenen Daten festgestellt werden. Es sei darauf hingewiesen, daß das Daten-Vorhanden-Signal nicht das
gleiche ist, wie das vom Anforderer gesendete Datenwort-Leitsignal. Das Daten-Vorhanden-Leitsignal zeigt an, daß
ein gültiges Datenwort aus der Feldtrenneinheit gesendet wurde.
Bin Sende-Daten-Signal wird jedesmal zum Anforderer gesendet, wenn die Feldlänge bei irgendeiner Speicheroperation größer als 64 Bits ist. Jede Taktperiode, während
der das Sende-Daten-Signal auf BINS steht, zeigt dem Anforderer an, daß er ein Datenwort-Leitsignal senden muß,
109824/1670
20S4830
bevor, er ein Datenwort sendet. Dieses Kontrollverfahren
ist erforderlieh, um zu vermelden, daft der Anforderer
wiesen muA, ob die Feldtrenneinheit eine Minimum- oder
eine Maxlmum-Speichereinheitskonfiguration aufweist.
Das Signal Fehlerunterbrechung 1 informiert den Anforderer davon, dall die Feldtrenneinheit zumindest eine der
folgenden Fehlerarten festgestellt hat. Das Fehlerunterbrechungssignal hat eine Dauer von zwei Takten und wird
dem anfordernden Gerät zugeführt, das die Operation ausgelöst hat. Die Fehlerarten sind: Sin 2-Bit-Fehler beim
Auslesen aus der Speichereinheit, ein Paritätsfehler im Steuerwort, ein unzulässiger Operationscode im Steuerwort, eine falsche Feldtrenneinheitsadresse im Steuerwort, eine falsche Anzahl von Datenwortleitsignalen bei
einer Speicheroperation, ein Paritätsfehler im Anfordererdatenwort und ein Interner Fehler.
Das Signal "Fehlerunterbrechung 2" informiert den Anforderer davon, da» die Feldtrenneinheit einen 1-Bit-Fehler
bei einer Auslesung aus der Speichereinheit festgestellt hat. Das Fehlerunterbrechung-2-Signal hat eine Dauer von
zwei Takten und wird zu dem anfordernden Gerät gesendet, das die Operation ausgelöst hat.
Die Anfordererparltätsleitung wird: zur übertragung des
verzögerten Paritätsbits bei irgendeiner Anfordererübertragung in die Feldtrenneinheit verwendet. Die verzögerten Paritätsbits folgen dem übertragenen Wort stets nach
einer Taktperiode und müssen eine Dauer von mindestens einer Taktperiode aufweisen.
109824/1670
Anhand von Fig. 10 wird im folgenden die Anfordererseite der Anforderer-Feldtrenneinheit-Verbindungsvorrichtung
beschrieben. Es sei daran erinnert, daß die Feldtrenneinheit Daten oder Steuerwörter empfangen und an irgendeinen Anforderer übertragen kann, sei es ein Prozessor,
ein EA-Steuerwerk oder das Speichererweiterungssteuerwerk für den Speicher der Ebene 2. In Fig. 10 ist jedoch
eine Schaltung dargestellt, die speziell für einen Prozessor ausgelegt ist. Die Schaltungsanordnung nach Fig.
stellt daher die Speicher-Verbindungseinheit 22 dar, die in den Fig. 2 und 3 dargestellt ist.
Die Speicherverbindtuigseinheit 22 (MIU « memory interface
unit) führt alle Übertragungen zwischen dem Prozessor und irgendeinem von bis zu maximal 16 Speicherwerken 11 durch.
Die Speicherverbindungseinheit (HIU) führt alle Datenübertragungen in Form von feldorientierten Operationen
durch und leitet die Speicherzugriffanforderungen durch die Funktionselemente des Prozessors auf der Basis zuvor
zugeordneter Prioritäten. Die Zugriffprioritätszuordnung wird vom Prozessor vorgeschrieben und umfaßt die folgenden Elemente: Anzeige, Hilfsmittelstapelscheibe (oder -Abschnitt), Namenstapelpuffer, Programmsteuerstapel, Wertstapelpuffer, Deskriptionspuffer und Programmpuffer.
Wenn eines der Funktionselemente des Interpretierers 21 die Dienste der Speicherverbindungseinheit 22 anfordert,
hebt es das Potential seiner "Zugriffanforderung"-Leitung,
die zur Speicherverbindungseinheit führt, und führt es ein Elementsteuerwort (ECW - element control word), wie
109824/1670
205483Q
_ 28 -
es in Fig. 11 dargestellt ist, einer entsprechenden
ECW-Leitung zu. Jede der ECW-Leitungen führt jeweils
von einem der Elemente zu einer Steuerwortauswähllogik
102, wie es in Fig. 10 dargestellt ist. Wenn das anfordernde Element Priorität hat, überträgt die Speicherverbindungseinheit 22 das Elementsteuerwort in dessen
Steuerwortregister 104 und bestimmt, welche der folgenden Operationen vorgeschrieben wird: Eine 1-Wort-Speicheroperation (Feldlänge kleiner als 64 Bits), eine Mehrfachwort-Speicheroperation (Feldlänge größer als 64 Bits)
oder eine Leseoperation.
Die verschiedenen Felder des in Fig. 11 dargestellten Formats des Elementsteuerwortes ECW haben folgende Bedeutung: Das Bit T identifiziert die Bedienungsanforderung als eine Lese- oder Speieheroperation, das Rechtfertigungsbit J identifiziert die Rechtfertigung, die
eine einzige Wortlose- oder -Speicheroperation benötigt, wenn eine Rechte-Rechtfertigung darstellt, daß das Bit
der niedrigsten Stelle, das übertragen wurde, in der niedrigsten Bitstelle angeordnet ist, und die Links-Rechtfertigung stellt die entgegengesetzte Anordnung dar,
die Bits L identifizieren oder kennzeichnen die Art der auszuführenden Leseoperation (d.h. ob das übertragene
Feld verriegelt werden soll oder nicht). Das anfordernde Element ist dafür verantwortlich, den Zustand des Feldes,
das es anfordert, zu kennen.
Das Adressenfeld Ll identifiziert die absolute Ebene-1-Speicher-Anfangsbitstelle, die bei der übertragung erfaßt wird. Das Längenfeld schreibt die Gesamtlänge des
109824/1670
Feldes, das übertragen wird, in Bits vor.
Nach Beendigung der angeforderten Operationsart erzeugt
die Speicherverbindungseinheit (MIU) ein Speichersteuerwprt (MCW) mit einem Format, wie es in Fig. 12 dargestellt
ist.
Wenn eine Einwort-Speicheroperation vorgeschrieben war,
hebt die MIU das Potential ihrer zu dem vorgeschriebenen Speicherwerk führenden Anforderungsleitungen, und dann
überträgt sie abwechselnd das MCW und die Daten, die gespeichert werden sollen, ins adressierte Speicherwerk. Die
Speicherverbindungseinheit 22 setzt die Übertragung des Speichersteuerwortes, dem die zu speichernden Daten folgen,
solange fort, bis sie von dem Speicherwerk ein Bestätigungssignal erhält.
Wenn eine Mehrfachwort-Speicheroperation vorgeschrieben ist, hebt die Speicherverbindungseinheit das Potential
ihrer zu dem betreffenden Speicherwerk führenden Anforderungsleitungen, und dann sendet sie das Speichersteuerwort
zu diesem Speicherwerk. Wenn das Speicherwerk das Vorhandensein des Speichersteuerwortes bestätigt, beginnt
die Speicherverbindungseinheit mit der Datenübertragung unter der Leitung des Datenanforderungssignals.
Wenn eine Leseoperation vorgeschrieben ist, hebt die MIU das Potential ihrer Anforderungsleitungen und sendet das
MCW zum betreffenden Speicherwerk. Wenn das Speicherwerk den Empfang des MCW bestätigt, schaltet die MIU ihre Informationssammelleitungsempfängerschaltungen
ein; Die MIU empfängt jetzt Informationen aus dem Speicher. Der Speicher überträgt jedoch einen Daten-Vorhanden-Leitimpuls
an die MIU, um zu veranlassen, daß die auf den Informa-
109824/1670
tionesamelleitungen vorhandenen Informationen zum anfordernden Element Übertragen und von diesem erfaßt «erden. Der Daten-Vorhanden-Leitimpuls wird bei jedem Wort
erzeugt, das vom Speicher zu dem die Daten anfordernden Element übertragen wird.
Wenn bei einer Lese- oder Speicheroperation mehr als ein Speicherwerk erforderlich ist, erzeugt die Speicherverbindungseinheit für jedes der aufgerufenen Speicherwerke
ein Speichersteuerwort. In diesem Falle bildet die Speicherverbindungseinheit ein auf den neuesten Stand gebrachtes Speichersteuerwort aus, und dann löst sie die
Datenübertragung mit dem zweiten Speicherwerk aus, um diese durchzuführen. Wenn die sechs niedrigststelligen
Bits des Adressenfeldes Ll im ursprünglichen Speichersteuerwort alles Nullen sind, muß das auf den neuesten
Stand gebrachte Speichersteuerwort ein geändertes Adressenfeld Ll aufweisen, das auf die erste Stelle des neuen
Speicherwerkes hinweist, und ein neues Längenfeld enthalten, das die Anzahl der Bits wiedergibt, die noch
übertragen werden müssen. Wenn die sechs niedrigststelligen Bits des ursprünglichen Adressenfeldes Ll nicht
gleich null sind, muß das auf den neuesten Stand gebrachte Speichersteuerwort wie folgt aufgebaut sein:
Das Verbindungsbit L muß gesetzt sein, die sechs niedrigststelligen Ziffern des geänderten Adressenfeldes Ll
müssen gleich denjenigen im ursprünglichen Speichersteuerwort sein, die Bits 18 bis 33 müssen alle eins sein, die
Bits 14 bis 17 müssen die neuen Speicherwerknummern oder -anzahlen darstellen, und das geänderte Längenfeld muß
die um eins vermehrte Anzahl der Wörter darstellen, die noch übertragen werden müssen, was zur Darstellung der
Längenoperation erforderlich ist, die das Speicherwerk durchführen muß.
109Θ2Α/ 1670
205483(3
Die verschiedenen Felder des Spelchersteuenrortes (MCW)
werden in folgenden anhand von Fig. 12 definiert. Die Bits T und J sowie das Adressenfeld Ll und das Längenfeld sind bei dem Speichersteuerwort die gleichen wie
bei dem Elementsteuerwort (ECW) nach Flg. 11. Außerdem gilt für die Modifizierbits Ml und M2 die gleiche Definition wie für die Verriegelungsbits L in Elementsteuerwort (ECW).
Das Speicheroperationsbestimmungsbit S schreibt eine
Speicheroperation in Fon einer l-Wort-Speicher- (S - 1)
oder als eine Mehrfachwort-Speicher- (S - 0)-Operation
vor. Dieses Bit kennzeichnet auch eine Leseoperation, die verlangt, daß das Speicherfehlerregister gelesen und dann
gelöscht wird (S - 1).
Das Längenbit L zeigt an - wenn es vorhanden ist -, daß das Feld, das gerade übertragen wird, in mehr als einem
Speicherwerk enthalten ist, und daß seine Anfangsspeicheradresse nicht der Anfang einer Speicherwortgrenze (null
oder ein Vielfaches von 64) war. Dieses Bit braucht nur dann auf 1 gesetzt zu sein, (einen "wahren" Zustand einnehmen) wenn bei einer Lese- oder Speicheroperation ein
Feld über eine Speichergrenze hinausgeht und mehr als ein Speicherwerk bei dieser Übertragung verwendet wird
(mitspielt). Wenn dieser Fall auftritt, muß das Längenbit den "wahren** Zustand einnehmen, wenn das auf den
neuesten Stand gebrachte Speichersteuerwort in das zweite Speicherwerk gesendet worden ist.
Das Betriebsartenbit M zeigt an - wenn es vorhanden ist -, daß der Speicher nach einem vorgeschriebenen Schema betrieben werden soll (z.B. alle zwei Takte ein Wort), das'
durch den Speicher gesteuert wird.
109824/1670
Wie Fig. 10 zu entnehmen ist, enthält die Speicherverbindungseinheit 9 Funktionseinheiten, die jetzt beschrieben werden.
Die Prioritätslogik 101 ist dafür verantwortlich, dem anfordernden Element, das die höchste Priorität aufweist,
die Dienste der Speicherverbindungseinheit zu gewährleisten. Eine Steuerwortwähllogik 102 ist verantwortlich
für die übertragung des Elementsteuerwortes ECW des anfordernden Elements zu einem Steuerwortregister 104 in
Abhängigkeit von der Prioritätslogik 101. Das Steuerwortregister 104 ist ein 64-Bit-Register und wird zum
Speichern des Elementsteuerwortes ECW verwendet, während es von einem Hauptsteuerteil 106 ausgeführt und auf den
neuesten Stand gebracht wird. Der Hauptsteuerteil 106 enthält die zur Ausführung aller Operationen der Speicherverbindungseinheit erforderliche Steuerlogik, einschließlich der Steuerungen, die zur Vervollständigung
der Empfänger- und Treiberkanäle erforderlich sind. Ein Speicherpufferregister 105, bei dem es sich um ein 64-Bit-Register handelt, wird zur Zwischenspeicherung aller
über die Informationsverbindung in den Speicher eingegebenen oder aus dem Speicher ausgegebenen Daten verwendet. Ein Datenpufferregister 103, bei dem es sich
ebenfalls um ein 64-Bit-Register handelt, wird zur Zwischenspeicherung aller Daten verwendet, die zwischen
dem anfordernden Element des Prozessors und der Speicherverbindungseinheit übertragen werden. Dieses Register wird für Längenübertragungsoperationen verwendet, bei denen die Verknüpfung von Datenfeldern, wie
bereite erwähnt, erforderlich ist. Ein Paritätsgenerator und -prüfer 107 dient zur Erzeugung von Paritäten bei allen Wörtern, die in den Speicher übertragen
109824/1670
werden, und zur Prüfung der Parität von Wörtern, die aus dem Speicher geholt werden. Empfänger und Treiber
100 enthalten 16 Gruppen aus Empfänger- und Treiberschaltungen in der Speicherverbindungseinheit, und zwar
eine Gruppe pro Speicherwerkschnittstelle. Der Zustand dieser Gruppen wird durch den Hauptsteuerteil 106 bestimmt,
und nur jeweils eine Gruppe ist zu einer bestimmten Zeit aktiv.
Das in Fig. 10 nicht dargestellte Prozessor-Fehlerregister (PER « processor error register) ist ein 64-Bit-Register
und dient zur Erleichterung der Korrektur von Fehlern, die beim Anwählen der Ebene 1 auftreten, und
zwar durch Speichern aller verfügbaren Steuerinformationen, die sich auf den Zugriff beziehen, bei dem die
Unterbrechung aufgetreten ist. Das Prozessor-Fehlerregister kann durch das Programm nach oben auf den (bzw.
an die Spitze des) Wertestapels gebracht werden. Wenn das Prozessor-Fehlerregister einmal mit Fehlerinformationen
geladen ist, kann es nicht eher wieder geladen werden, als bis es gelöscht ist. Das Löschen des Prozessor-Fehlerregisters
erfolgt dadurch, daß es ausgelesen wird. Es wird niemals geladen., wenn keine Unterbrechung
erfolgt.
Bei der Übertragung über die Speicherverbindungseinheit
können zwei Arten von Fehlern auftreten: Die von der Speicherverbindungseinheit festgestellten Fehler und
die vom Speicher festgestellten Fehler. Ein derartiger, von der Speicherverbindungseinheit festgestellter Fehler
ist der Fehler "kein Zugriff zum Speicher".'Dieser Fehler wird daran festgestellt, daß die Speicherverbindungseinheit
vom angerufenen Speicherwerk während
109824/1670
einer Zeit von 25 Mikrosekunden keine Antwort erhält.
Daß der Speicher keine Antwort gibt, wird daran festgestellt, daß aus dem Speicherwerk kein Antwortsignal
eintrifft oder die Daten nicht vollständig durch ein Speicherwerk übertragen wurden.
Ein zweiter, von der Speichereinheit festgestellter
Fehler ist die Disparität. Dieser Fehler wird daran erkannt, daß die Speicherverbindungseinheit aus den Speicher ausgelesene Daten oder Daten aus dem Interpretiererteil des Prozessors Bit falscher Parität erhält. Wenn
ein "kein Zugriff zun Speicher**- oder ein Paritätsfehler festgestellt wird, dann wird das Prozessor-Fehlerregister
in der angegebenen Weise geladen.
Ss gibt zwei Arten von Fehlern, die von Speicher festgestellt und der Speicherverbindungseinheit mitgeteilt
werden: Unkorrigierbare und korrigierbare Fehler. Diese beiden Fehlerarten werden der Speicherverbindungseinheit
jeweils als Signal "Fehlerunterbrechung 1" und als Signal "lehlerunterbrechung 2n zugeführt. Die Speicherverbindungseinheit sendet jedoch nur ein Fehlersignal an
den Interpretiererteil des Prozessors.
Wenn das Speicherwerk während einer Operation einer Speicherverbindungseinheit das Signal "Fehlerunterbrechung 1"
(unkorrigierbarer Fehler) feststellt, wird die Operation der Speicherverbindungseinheit beendet und der Prozessor
von diesen Vorgang unterrichtet. Wenn der Fehler während der Zeit mitgeteilt wird, in der eine Speicherverbindungseinheit nicht zusammen mit dem mitteilenden Speicherwerk
in Betrieb ist, zeichnet die Speicherverbindungseinheit diesen Fehler auf, doch führt sie die laufende Operation
bis zu Bnde durch.
109824/1670
Das Signal "Fehlerunterbrechung 2" (korrigierbarer Fehler) ist ein Fehlersignal, das die Speicherverbindungseinheit veranlaßt, dem Prozessor diesen Fehler mitzuteilen, doch läuft die Operation wie gewöhnlich ab.
Bei dem soweit beschriebenen System wird das der Trenneinheit zugeführte Speichersteuerwort im Steuerwortregister 68 gespeichert, das in Fig. 7 dargestellt ist.
Dieses Steuerwort enthält die absolute Adresse des Anfangsbits des zu speichernden oder zu lesenden Feldes
und die Länge des Feldes. Aus dieser Information werden die absoluten Adressen eines Wortspeicherplatzes, der
das Anfangsbit enthält, und des nächsten benachbarten Wortspeicherplatzes erzeugt und in die Speicheradressenregister 92 (KAR) nach Fig. 12 übertragen. Während einer
Leseoperation wird das ausgewählte Feld von dem Walzenteil 61 (bei dem es sieb um eine Schiebeschaltung oder
einen Walzenschalter handelt) aus seinem augenblicklichen Bitspeicherplatz in dem Leseregister 60 so verschoben, daß
das erste Bit des'ausgewählten Feldes schließlich in der ersten Bitstelle des Ausgaberegisters 63 angeordnet ist.
Wenn das Feld so lang ist, daß es mehr als zwei benachbarte Wortspeicherplätze überlappt, dann erzeugt das
Steuerregister 68 die Adressen der nächsten beiden benachbarten Wortspeicherplätze, um die übrigen Bits auszulesen, die erforderlich sind, um das Feld zu vervollständigen, wobei diese Bits wieder aus dem Leseregister
60 hinaus und in entsprechende Bitspeicherplätze des Ausgaberegisters 63 geschoben werden, so daß die Informationsübertragung in die anfordernde Vorrichtung eine
Folge von 64-Bit-Wörtern ist, von denen das letzte Wort als erste Gruppe von Bits diejenigen Bits enthält, die '
zur Vervollständigung des Feldes notwendig sind, wobei die übrigen Bits null sind.
109824/1670
Während einer Speieheroperation bestimmt die im Steuerregister gespeicherte Information wieder die absolute
Adresse des Anfangsbits im Speicher, in dem das Feld gespeichert werden soll, und die Länge des Feldes, aus
dem die absolute Adresse des jeweiligen Paares benachbarter Wortspeicherplätze errechnet werden kann. Dieses
Feld wird aus der anfordernden Vorrichtung als Folge aus 64-Bit-Wörtern Übertragen, deren Anzahl gleich der zur
Übertragung des betreffenden Feldes erforderlichen Anzahl ist. Das Steuerwortregister hält wieder Schritt
mit den übertragenen Bits und erzeugt neue Paare von Speicheradressen ., wie es zur Vervollständigung der
Speicherung des Feldes erforderlich ist.
Es sei daran erinnert, daß, wenn das ausgewählte Feld im Speicher- oder im Lesebetrieb zwei benachbarte Speichereinheiten überlappt, die Speicherverbindungseinheit
der anfordernden Vorrichtung neue SpeichersteuerwOrter erzeugt und in die nächste, benachbarte Speichereinheit
überträgt. Auf diese Weise können Felder beliebiger Länge in der Reihe von Speicherwerken gespeichert werden,
die der anfordernden Vorrichtung als Freifeld-Speicher oder strukturfrei erscheinen.
Dieses Informationsverarbeitungssystem enthält also mehrere Prozessoren und eine Freifeld-Speicheranordnung
zur Aufnahme von Operanden und Datensegmenten beliebiger Größe und beliebigen Formats. Jede der jeweiligen
Speichereinheiten ist praktisch strukturorientiert. Die Speichereinheiten sind jedoch paarweise mit Trenneinheiten versehen, die die Fähigkeit haben, Informationsfelder unabhängig von der Speicherstruktur auszulesen und
einzugeben. Während einer Leseoperation kann die Trenn-
109824/1670
einheit zwei benachbarte parallele Wörter auslesen, und ein Schiebenetzwerk oder ein Walzenschalter dient
dazu, das gewünschte Feld in die zur Übertragung in die anfordernde Vorrichtung passende Lage zu bringen. Während
einer Speicheroperation wird das Schiebenetzwerk bzw. der Walzenschalter dazu verwendet, die einlaufenden
Daten in dem richtigen Bitspeicherplatz des Speichers anzuordnen. Das ausgewählte Feld wird durch das Anfangsbit und die Längenfeldinfomation bestimmt, die durch
das Speichersteuerwort vorgegeben wird, und auch durch die Art der angeforderten Operation. Jede der anfordernden
Vorrichtungen ist mit ihrer eigenen Schnittstellen-Verbindungseinheit versehen, die eine Logik zur Bildung eines
Speichersteuerwortes für jedes Speicherwerk enthält, das bei einer Lese- oder Speicheroperation adressiert wird.
Patentanwälte Dipl.-Ing. Horst Röse
Dipl.-Ing. Peter Kosel
109824/1670
Claims (17)
- Dipl.-Ing. Horst Rose Dipl.-Ing. Peter K ο se IPatentanwälte ®a<* Gandersheim, den 6. Nov. 1970Bad Gandersheim - 38 - 2054830Hohenhöfen 5Burroughs Corporation Patentgesuch vom 6. November 1970Pat entansprücheInformationsverarbeitungssystem mit einer wortstrukturierten (wortorganisierten) Speichereinheit und einer Speicher-Zugriffvorrichtung, dadurch gekennzeichnet, daß die Zugriffvorrichtung derart ausgebildet ist, daß sie für einen Zugriff zu einem Feld in der Speichereinheit in Übereinstimmung mit einem Steuerwort sorgt, dam einen vorgegebenen Speicherplatz in der Speichereinheit als Anfangsspeicherplatz und auch eine vorgegebene Anzahl von Bits bis zu der in der Speichereinheit verbleibenden Anzahl von Bits vorschreiben kann.
- 2. System nach Anspruch 1, dadurch gekennzeichnet, daß die Zugriffvorrichtung eine Steuervorrichtung enthält, der das Steuerwort zufOhrbar ist und die die Adresse des Wortspeicherplatzes bestimmt, in der die erste:·. Bitstelle jenes Feldes vorkommt.
- 3. System nach Anspruch 2, dadurch gekennzeichnet, daß die Steuervorrichtung eine Schaltungsanordnung enthält, die den Inhalt des Steuerwortes auf den neuesten Stand bringt, sowie Bitsegmente in die Speichereinheit Obertragen oder aus der Speichereinheit geholt werden.
- 4. Informationsverarbeitungssystem mit einer wortstrukturierten (wortorganisierten) Speichereinheit und einer Speicher-Zugriffvorrichtung für die Speichereinheit, dadurch gekennzeichnet, daß die Zugriffvorrichtung eine Steuervorrichtung, der ein Steuerwort zuführbar ist, das einen Anfangsbitspeicherplatz eines Feldes in der Speichereinheit und die Anzahl der Bitspeicherplätze in dem Feld788/244109824/1670vorschreibt, und eine Adressiervorrichtung enthält, die auf die Steuervorrichtung anspricht und zwei benachbarte Wortspeicherplätze in der Speichereinheit adressiert, von denen der erste Speicherplatz den ersten Teil des Feldes enthält.
- 5. Systea nach Anspruch "4, dadurch gekennzeichnet, daß die Zugriffvorrichtung mit einen Informationsregister, das zur Aufnahm« einer Anzahl van Informationsbits dient, die gleich der Anzahl der Bits in zwei dieser Wortspeicherplätze ist, und mit einer Eingabe- und Auslesevorrichtung versehen ist, die zum Eingeben oder Auslesen der Gruppe von Bits in das oder aus dem Register dient, und zwar bei irgendeinem vorbestimmten Bitspeicherplatz beginnend.
- 6. System nach Anspruch 5, gekennzeichnet durch eine Maskiervorrichtung, die die Eingabe in diejenigen Bitstellen des Informationsregisters verhindert, die diese Anzahl von Bits nicht aufnehmen sollen.
- 7. System nach Anspruch 5, gekennzeichnet durch ein Speicherregister, das mit der Eingabe- und Auslesevorrichtung verbunden ist und zur Aufnahme der Gruppe von Bits aus diesem Speicherregister dient, um sie später in das Informationsregister zu übertragen.
- 8. System nach Anspruch 5, gekennzeichnet durch ein Leseregister, das mit dem Informationsregister verbunden ist und zur Aufnahme der Gruppe von Bits aus diesem Informationsregister dient, um sie später in die Eingabe- und Auslesevorrichtung zu übertragen.109824/1670
- 9. System nach Anspruch 8, dadurch gekennzeichnet, daß an die Eingabe- und Auslesevorrichtung eine Ausgaberegistervorrichtung zur Aufnahme der Gruppe von Bits angeschlossen ist und die Eingabe- und Auslesevorrichtung derart ausgebildet ist, daß sie zu einer derartigen Verschiebung der Gruppe von Bits in der Lage ist, daß das erste Bit der Gruppe in der ersten Bitstelle des Ausgaberegisters gespeichert wird.
- 10. System nach Anspruch 8, dadurch gekennzeichnet, daß an die Eingabe- und Auslesevorrichtung ein Ausgaberegister zur Aufnahme der Gruppe von Bits angeschlossen und so ausgebildet ist, daß es zu einer derartigen Verschiebung der Gruppe von Bits in der Lage ist, daß das letzte Bit der Gruppe in der ersten Bitstelle des Ausgaberegisters gespeichert wird.
- 11. Informationsverarbeitungssystem mit mehreren wortstrukturierten (wortorganisierten) Speichern, mindestens einer Speicher-Zugriffvorrichtung und einer Speicherzugriff anforderungsvorrichtung, dadurch gekennzeichnet, daß an die Zugriffvorrichtung eine Schnittstellen-Verbindungseinheit angeschlossen ist und dieser ein Steuerwort zur Übertragung in den oder zum Auslesen aus dem Speicher aus verschiedenen Bitfeldern zuführt und so ausgebildet ist, daß sie ein zweites Steuerwort in eine zweite Speichereinheit tiberträgt, wenn das Bitfeld in Teilen des ersten und des zweiten Speichers vorhanden ist.
- 12. System nach Anspruch 11, dadurch gekennzeichnet, daß die Zugriffvorrichtung eine Steuervorrichtung, der ein Steuerwort zuführbar ist, das einen Anfangsbitspeicherplatz eines Feldes in der Speichereinheit und die An-10 9 8 2 4/1670zahl der Bitspeicherplätze in dem Feld vorschreibt, und eine Adressiervorrichtung enthält, die auf die Steuervorrichtung anspricht und zwei benachbarte Wortspeicherplätze in der Speichereinheit adressiert, von denen der erste Speicherplatz den ersten Teil des Feldes enthält.
- 13. System nach Anspruch 12, dadurch gekennzeichnet, daß die Zugriffvorrichtung mit einem Informationsregister, das zur Aufnahme einer Anzahl von Informationsbits dient, die gleich der Anzahl der Bits in zwei dieser Wortspeicherplätze ist, und mit einer Eingabe- und Auslesevorrichtung versehen ist, die zum Singeben oder Auslesen der Gruppe von Bits in das oder aus dem Register dient, und zwar bei irgendeinem vorbestimmten Bitspeicherplatz beginnend.
- 14. System nach Anspruch 13, dadurch gekennzeichnet, daß die Zugriffvorrichtung ferner eine Maskiervorrichtung enthält, die eine Eingabe in diejenigen Bitstellen des Informationsregisters verhindert, die diese Anzahl von Bits nicht aufnehmen sollen.
- 15. System nach Anspruch 14, dadurch gekennzeichnet, daß die Zugriffvorrichtung eine Steuervorrichtung enthält, die den Inhalt des Steuerwortes auf den neuesten Stand bringt, sowie Bitsegmente aus der Speichereinheit ausgelesen oder in diese eingegeben werden.
- 16. Verfahren für einen Zugriff zu einem wortstrukturierten (wortorganisierten) Speicher in einem Informationsverarbeitungssystem, dadurch gekennzeichnet, daß nacheinander verschieden große Gruppen aus Bits zum Abspeichern in dem Speicher aufgenommen und jede Bitgruppe10 9 8 2 A/ 1670in entsprechenden Feldplätzen in Teilen der Wortstrukturen in dem strukturierten Speicher so angeordnet werden, daß einige der Feldplätze benachbarte Wortstrukturen überlappen.
- 17. Verfahren nach Anspruch 16, dadurch gekennzeichnet, daß der Inhalt des Registers in entsprechende Wortstrukturen übertragen wird.Patentanwälte Dipl.-Ing. Horst Rose Dipl.-lng. Peter Kosel109824/1670WrLeerseite
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US88053569A | 1969-11-28 | 1969-11-28 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2054830A1 true DE2054830A1 (de) | 1971-06-09 |
DE2054830B2 DE2054830B2 (de) | 1976-04-08 |
DE2054830C3 DE2054830C3 (de) | 1984-03-01 |
Family
ID=25376496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2054830A Expired DE2054830C3 (de) | 1969-11-28 | 1970-11-07 | Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge |
Country Status (10)
Country | Link |
---|---|
US (1) | US3680058A (de) |
JP (1) | JPS5113540B1 (de) |
BE (1) | BE758811A (de) |
CA (1) | CA945688A (de) |
CH (1) | CH532288A (de) |
DE (1) | DE2054830C3 (de) |
FR (1) | FR2069370A5 (de) |
GB (1) | GB1336981A (de) |
NL (1) | NL176888C (de) |
SE (1) | SE366599B (de) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3924241A (en) * | 1971-03-15 | 1975-12-02 | Burroughs Corp | Memory cycle initiation in response to the presence of the memory address |
US4028675A (en) * | 1973-05-14 | 1977-06-07 | Hewlett-Packard Company | Method and apparatus for refreshing semiconductor memories in multi-port and multi-module memory system |
US4068299A (en) * | 1973-12-13 | 1978-01-10 | Honeywell Information Systems, Inc. | Data processing system incorporating a logical compare instruction |
FR111574A (de) * | 1973-12-13 | 1900-01-01 | ||
US4015246A (en) * | 1975-04-14 | 1977-03-29 | The Charles Stark Draper Laboratory, Inc. | Synchronous fault tolerant multi-processor system |
US4135242A (en) * | 1977-11-07 | 1979-01-16 | Ncr Corporation | Method and processor having bit-addressable scratch pad memory |
CA1128212A (en) * | 1979-01-02 | 1982-07-20 | Jerry L. Kindell | Apparatus for reformating a binary number |
US4467443A (en) * | 1979-07-30 | 1984-08-21 | Burroughs Corporation | Bit addressable variable length memory system |
GB2117945A (en) * | 1982-04-01 | 1983-10-19 | Raytheon Co | Memory data transfer |
US4667305A (en) * | 1982-06-30 | 1987-05-19 | International Business Machines Corporation | Circuits for accessing a variable width data bus with a variable width data field |
US6552730B1 (en) | 1984-10-05 | 2003-04-22 | Hitachi, Ltd. | Method and apparatus for bit operational process |
US5034900A (en) * | 1984-10-05 | 1991-07-23 | Hitachi, Ltd. | Method and apparatus for bit operational process |
US5210835A (en) * | 1986-08-27 | 1993-05-11 | Ken Sakamura | Data processing system having apparatus for increasing the execution speed of bit field instructions |
JP2520882B2 (ja) * | 1986-08-27 | 1996-07-31 | 株式会社日立製作所 | デ−タ処理装置およびデ−タ処理方法 |
DE3837847A1 (de) * | 1988-02-19 | 1989-08-31 | Hercules Computer Technology N | Einrichtung und verfahren zum verschieben eines bitfoermigen datenblocks |
US7099318B2 (en) | 2001-12-28 | 2006-08-29 | Intel Corporation | Communicating message request transaction types between agents in a computer system using multiple message groups |
US7184399B2 (en) * | 2001-12-28 | 2007-02-27 | Intel Corporation | Method for handling completion packets with a non-successful completion status |
US7191375B2 (en) * | 2001-12-28 | 2007-03-13 | Intel Corporation | Method and apparatus for signaling an error condition to an agent not expecting a completion |
US7581026B2 (en) * | 2001-12-28 | 2009-08-25 | Intel Corporation | Communicating transaction types between agents in a computer system using packet headers including format and type fields |
EP2863566B1 (de) | 2013-10-18 | 2020-09-02 | Université de Nantes | Verfahren zur Rekonstruktion eines Datenblocks und Vorrichtung zur Verwendung davon |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1115488B (de) * | 1959-01-15 | 1961-10-19 | Ibm | Datenverarbeitungssystem |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3331056A (en) * | 1964-07-15 | 1967-07-11 | Honeywell Inc | Variable width addressing arrangement |
US3374467A (en) * | 1965-05-27 | 1968-03-19 | Lear Siegler Inc | Digital data processor |
US3401375A (en) * | 1965-10-01 | 1968-09-10 | Digital Equipment Corp | Apparatus for performing character operations |
US3387280A (en) * | 1965-10-04 | 1968-06-04 | Sperry Rand Corp | Automatic packing and unpacking of esi transfers |
US3411139A (en) * | 1965-11-26 | 1968-11-12 | Burroughs Corp | Modular multi-computing data processing system |
US3500337A (en) * | 1967-09-27 | 1970-03-10 | Ibm | Data handling system employing a full word main memory transfer with individual indirect byte addressing and processing |
US3581287A (en) * | 1969-02-10 | 1971-05-25 | Sanders Associates Inc | Apparatus for altering computer memory by bit, byte or word |
US3577130A (en) * | 1969-10-03 | 1971-05-04 | Fairchild Camera Instr Co | Means for limiting field length of computed data |
-
0
- BE BE758811D patent/BE758811A/xx not_active IP Right Cessation
-
1969
- 1969-11-28 US US880535A patent/US3680058A/en not_active Expired - Lifetime
-
1970
- 1970-11-07 DE DE2054830A patent/DE2054830C3/de not_active Expired
- 1970-11-13 CA CA098,093A patent/CA945688A/en not_active Expired
- 1970-11-13 GB GB5420170A patent/GB1336981A/en not_active Expired
- 1970-11-13 CH CH1685170A patent/CH532288A/de not_active IP Right Cessation
- 1970-11-13 FR FR7040724A patent/FR2069370A5/fr not_active Expired
- 1970-11-14 JP JP45101401A patent/JPS5113540B1/ja active Pending
- 1970-11-16 NL NLAANVRAGE7016736,A patent/NL176888C/xx not_active IP Right Cessation
- 1970-11-25 SE SE15988/70A patent/SE366599B/xx unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1115488B (de) * | 1959-01-15 | 1961-10-19 | Ibm | Datenverarbeitungssystem |
Non-Patent Citations (2)
Title |
---|
Datenverarbeitungsanlage 3003, Siemens u. Halske AG, Befehlsliste NV BS 107/1, Mai 1963, S.10 u. 11 * |
W. Buchholz: "Planning a Computer System" McGraw Hill, New York 1962, S.76-78 u. 202,203 * |
Also Published As
Publication number | Publication date |
---|---|
CH532288A (de) | 1972-12-31 |
GB1336981A (en) | 1973-11-14 |
NL7016736A (de) | 1971-06-02 |
BE758811A (fr) | 1971-04-16 |
DE2054830C3 (de) | 1984-03-01 |
NL176888C (nl) | 1985-06-17 |
NL176888B (nl) | 1985-01-16 |
JPS5113540B1 (de) | 1976-04-30 |
FR2069370A5 (de) | 1971-09-03 |
SE366599B (de) | 1974-04-29 |
US3680058A (en) | 1972-07-25 |
CA945688A (en) | 1974-04-16 |
DE2054830B2 (de) | 1976-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2054830A1 (de) | Informationsverarbeitungssystem mit wortstrukturiertem Speicher und Verfahren fur einen Zugriff zu einem derar tigen Speicher | |
DE2455803C2 (de) | Mehrprozessor-Datenverarbeitungsanlage | |
DE2350884C2 (de) | Adreßumsetzungseinheit | |
DE3131341C2 (de) | ||
EP0010198B1 (de) | Vorrichtung zur Steuerung des Seitenaustausches in einem Datenverarbeitungssystem mit virtuellem Speicher | |
DE2161886C2 (de) | Befehlsausführungseinheit in einer elektronischen Datenverarbeitungszentrale für die gleichzeitige Verarbeitung mehrerer Befehle | |
DE1524102C3 (de) | Elektronische, aus Baueinheiten aufgebaute Datenverarbeitungsmaschine | |
DE2839726A1 (de) | Datenverarbeitungsanlage mit verteilter steuerarchitektur in einem multiprozessor-system | |
DE2130299A1 (de) | Eingabe/Ausgabe-Kanal fuer Datenverarbeitungsanlagen | |
DE2630323A1 (de) | Datenspeichereinrichtung | |
DE2750721A1 (de) | Ein/ausgabe-system | |
DE2912738A1 (de) | System mit direkter uebertragung zwischen subsystemen | |
DE1549522B1 (de) | Datenverarbeitungsanlage mit simultanverarbeitung mehrerer programme mittels mehrerer rechner | |
CH650600A5 (de) | Zentralprozessoreinheit einer datenverarbeitungsanlage mit operationscode-erweiterungsregister. | |
DE2023354A1 (de) | Programmierbare Einheit und Verfahren zum Betreiben einer programmierbaren Einheit | |
DE2054947A1 (de) | Adressenvorbereitungseinnchtung und verfahren und Speicherzugnffan forderungseinnchtung fur ein Infor mationsver arbeitungssystem | |
DE2054835A1 (de) | Prozessor fur ein Informationsver arbeitungssystem und ein Betriebsver fahren fur diesen Prozessor | |
DE1499206C3 (de) | Rechenanlage | |
DE2856680A1 (de) | Befehlspuffer fuer ein datenverarbeitungssystem | |
EP0062141B1 (de) | Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem | |
DE1925427A1 (de) | Datenuebertragungsvorrichtung zum UEbertragen von Daten zwischen Informationsspeichern | |
CH495584A (de) | Datenverarbeitungsanlage | |
DE1499286B2 (de) | Datenbearbeitungsanlage | |
DE2217565A1 (de) | Steuerteil eines Rechenautomaten, der die relative Basisadresse von Befehlen bildet | |
DE1222289B (de) | Datenverarbeitungseinrichtung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8228 | New agent | ||
8228 | New agent |
Free format text: EISENFUEHR, G., DIPL.-ING. SPEISER, D., DIPL.-ING., PAT.-ANW., 2800 BREMEN |
|
8281 | Inventor (new situation) |
Free format text: DESANTIS, ALFRED J., NORRISTOWN, PA., US BEERS, LEROY W., EXTON, PA., US WHITE, JAMES A., WEST CHESTER, PA., US MOYSEY, JOHN A., MALVERN, PA., US |
|
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |