DE2625113C2 - Speicherschutzeinrichtung - Google Patents

Speicherschutzeinrichtung

Info

Publication number
DE2625113C2
DE2625113C2 DE2625113A DE2625113A DE2625113C2 DE 2625113 C2 DE2625113 C2 DE 2625113C2 DE 2625113 A DE2625113 A DE 2625113A DE 2625113 A DE2625113 A DE 2625113A DE 2625113 C2 DE2625113 C2 DE 2625113C2
Authority
DE
Germany
Prior art keywords
address
data
memory
register
zone
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE2625113A
Other languages
English (en)
Other versions
DE2625113A1 (de
Inventor
David Norman Endicott N.Y. Gooding
Everett Montague Endwell N.Y. Shimp
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2625113A1 publication Critical patent/DE2625113A1/de
Application granted granted Critical
Publication of DE2625113C2 publication Critical patent/DE2625113C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)

Description

Die Erfindung betrifft eine Speicherschutzeinrichtung der im Oberbegriff des Hauptanspruchs angegebenen Art.
Speicherschutzeinrichtungen der bekannten Art bezwecken den Zugriff zu bestimmten Bereichen des Datenspeichers einer Datenverarbeitungsanlage auf bestimmte autorisierte Benutzer zu beschränken. Dies geschieht aus Gründen der Datensicherheit und des Datenzusammenhanges. Ein solcher Speicherschutz kann z. B. darauf beruhen, daß einem bestimmten Benutzer der Anlage ein bestimmter Speicherbereich zugeteilt wird. Dabei muß der Zugriff anderer Benutzer zu diesem Datenbereich verhindert werden, um die Geheimhaltung der Daten zu gewährleisten und um nichtgewolltes Überschreiben der Daten zu verhindern. Dieser bekannte Speicherschutz bezieht sich also auf bestimmte Bereiche des Datenspeichers.
Zur Durchführung dieses Speicherschutzes sind Einrichtungen bekanntgeworden, die einen Schutzschlüssel bzw. einen Schutzcode dazu verwenden, Speicherbereiche einer bestimmten Größe zu schützen. Um Zugriff zu einem dieser Bereiche fester Größe zu erhalten, muß der Benutzer den Schutzschlüssel oder den Schutzcode eingeben, der dann von der Maschine mit dem betreffenden Schlüssel oder Code intern verglichen wird und worauf dann in Abhängigkeit vom Vergleichsresultat der Zugriff gewährt wird oder nicht.
Diese Einrichtungen gewährleisten einen guten Schutz für Speicherbereiche einer festen, gegebenen Größe. In einer Vielzahl von Fällen ist es jedoch gewünscht, sowohl die Größe als auch die Lage des Speicherbereiches verändern zu können. Aus dem IBM Technical Disclosure Bulletin, Dezember 1973, Seiten 2136/2137 ist eine Speicherschutzeinrichtung bekanntgeworden, die einen Speicherbereich schützt, der durch eine veränderbare untere Adreßgrenze und eine veränderbare obere Adreßgrenze gegeben ist Um in dieser bekannten Einrichtung Zugriff zu einem Speicherbereich zu erhalten, muß der Benutzer einen Identifikationscode eingeben und bei der darauffolgenden Adressierung wird jeweils überprüft, ob die vom
ίο Benutzer angegebene Zugriffsadresse über der erlaubten unteren Adreßgrenze und unter der erlaubten oberen Adreßgrenze liegt Liegt die Adresse außerhalb des erlaubten Bereiches, erhält der Benutzer keinen Zugriff zum Speicher sowie ein Signal, das die Abweisung seiner Zugriffsanforderung angibt Mit dieser bekannten Einrichtung wird insofern eine Flexibilität erzielt, als Bereiche variabler Größe und variabler Lage im Speicher geschützt werden können. Die Überprüfung in der bekannten Einrichtung ist jedoch sehr zeitaufwendig, da die definierten unteren und oberen Grenzadressen von Registern geholt werden und Vergleichsoperationen unter Verwendung dieser Grenzadressen ausgeführt werden müssen, was insgesamt mehrere Maschinenzyklen erfordert
Der Erfindung liegt daher die Aufgabe zugrunde, die Arbeitsgeschwindigkeit einer Speicherschutzeinrichtung der oben angegebenen Art zu erhöhen.
Diese Aufgabe wird erfindungsgemäß durch die im Kennzeichen des Hauptanspruchs angegebenen Merk-
jo male gelöst
Da nach der Erfindung zwei seriell zusammenhängende arithmetische Operationen während eines einzigen Maschinenzyklus durchgeführt werden können, wird bei der Durchführung der Speicherschutzoperation ein ganz wesentlicher Zeitvorteil erzielt. Insbesondere wird die Überprüfung der oberen Grenze des erlaubten Adressenbereiches parallel mit dem Zugriff zum Speicher und innerhalb des betretenden Zugriffs-Maschinenzyklus durchgeführt.
Vorteilhafte Weiterbildungen der Erfindung sind den Unteransprüchen zu entnehmen.
Ein Ausführungsbeispiel der Erfindung soll nun anhand der Zeichnung beschrieben werden. Es zeigt
Fig. 1 ein Blockschema einer Datenverarbeitungsanlage mit den zur Durchführung der vorliegenden Erfindung erforderlichen Teilen,
F i g. 2 ein Diagramm bezüglich der Konstruktion und Operation der Recheneinheit 20 in Fig. 1 mit unabhängigen Zonen,
F i g. 3 ein Blockschema einer der in F i g. 1 gezeigten ähnlichen Datenverarbeitungsanlage, in dem jedoch der Steuerteil der Anlage und seine Verbindung mit den übrigen Funktionseinheiten der Anlage ausführlicher dargestellt sind, und
F i g. 4 bis 6 Tabellen zur Erklärung der Wirkungsweise der in der Fi g. 1 gezeigten Datenverarbeitungsanlage.
In F i g. I ist ein Datenprozessor 10 gezeigt, der Daten verarbeiten kann, Oje aus Sequenzen von binären
so Zeichen oder Bits bestehen. Es wird angenommen, daß die Datenbits in diesen Sequenzen gruppiert sind in Acht-Bit-Gruppen, wobei jede solche Acht-Bit-Gruppe ein Datenbyte genannt wird. Der gezeigte Datenprozessor besteht aus einem Eingangs/Ausgangsteil I/O,
n5 einem Speicher, einer Verarbeitungseinheit und einer Steuereinheit. Der Eingangs/Ausgangsteil wird durch ein Gerät Il und einen Pufferspeicher 12 dargestellt. Der Speicherteil umfaßt einen Hauptspeicher 13, ein
Datenregister 14 und ein Speicheradreßregister 15. Der Steuerteil (Steuergerät) ist mit 16 bezeichnet Der Rest der in F i g. 1 gezeigten Einheiten sind im Prozessor enthalten und sind in Fi g. 1 mit dem Bezugszeichen 17 angegeben.
Die arithmetische und logische Einheit ALU 20 stellt das Zentrum des Verarbeitungsteiles 17 dar. Die ALU 20 enthält in mehreren, unabhängigen Zonen parallele binäre arithmetische Schaltungen. Zur Vereinfachung wird hierunter angenommen, daß die ALU 20 die Form eines binären Addierers der oben angegebenen Art hat.
Zur genaueren Darstellung der arithmetischen Verarbeitungseinheit (ALU) 20 soll nun Bezug auf Fig.2 genommen werden. Die ALU 20 enthält demnach einen parallelen binären Addierer und weist eine relativ große Datenflußbreite von 8 Bytes auf. Ferner sind einstellbare Grenzeinrichtungen vorgesehen, mit denen die in F i g. 2 gezeigten Grenzen A und B eingestellt werden können und die die ALU 20 bzw. den Addierer 20 in mehrere, voneinander unabhängig arbeitende Zonen variabler Breite und variabler Lage unterteilen können. Abhängig von der Lage der Grenzen A und B können zwischen 1 und 3 unabhängig arbeitende Zoi.en eingestellt werden. Unabhängige externe Übertrags-Eingangsleitungen CU, CV und CW sind für die drei unabhängig arbeitenden Zonen vorgesehen. Gleichermaßen sind unabhängige externe Übertrags-Ausgangsleitungen CX, CYund CZ vorgesehen. Dabei werden die verbindenden Punkte für diese Übertragseingangs- und-ausgangsleitungen automatisch mit den verschiebbaren Grenzen A und E verschoben. So werden der Verbindungspunkt für die CiZ-Übertragseingangsleitung für die Zone 1 und der Verbindungspunkt für die Cy-Übertrags-Ausgangsleitung für die Zone 2 im Schritt mit dem Verschieben der Grenze A mitverschoben. Gleichermaßen wird die CK-Übertrags-Eingangsleitung für die Zone 2 und die CZ-Übertrags-Ausgangsleitung für die Zone 3 zusammen mit de- Grenze B mitverschoben.
Jeder Byteteil des Addierers 20 umfaßt acht parallele binäre Bitstufen. Die Gesamtdatenbreite des Addierers 20 umfaßt somit 64 Bits. Die Rangfolge der Bits und der Bytes erhöht sich von rechts nach links. So stellt z. B. das Byte 0 das Byte der höchsten Ordnung und das Byte 7 das Byte Jer niedrigsten Ordnung iiar. Jede Bytesektion (z. B. Byte 0) kann einen ersten Acht-Bit-Eingangsoperanden (z. B. A 0 für das Byte 0) zu einem zweiten Acht-Bit-Eingangsoperanden (z.B. BO für das Byte 0) addieren und eine Acnt-Bit-Summe (z.B. 50 für das Byte 0) erzeugen.
Zur Beschreibung der Wirkungsweise der ALU 20 wird angenommen, daß die in der ALU 20 enthaltenen Steuerschaltungen so eingestellt sind, daß sie die ALU 20 in zwei unabhängig arbeitende Zonen verteilen, die jeweils eine Breite von vier Bytes haben. Diese Einstellung wird durch die Grenzsteuersignale bewirkt, die der ALU 20 von der Steuereinheit 16 über die Steuersammelleitung 21 (Fig. 1) zugeführt werden. In F i g. 2 ist angenommen, daß die Grenzen A und ßderart eingestellt sind, daß die Zone 1 die Bytes 0 bis 2 und die Zone 2 die Bytes 4 bis 7 umfassen. Dies wird dadurch erreicht, daß die Grenze A an der Trennlinie zwischen den Bytes 3 und 4 (Skalenstrich 4 für die /4-Grenze) und die Grenze B em rechten Ende des Addierers 20 (Skalenstrich 7 der Grenze ßj eingestellt wird. In diesem Falle verschwindet die "One 3. Per höhere Teil, d. h. der Zonen-1 -Teil der arithmetische!' Einheit 20 wird mit 20a und der niederwertige Teil, d. h. die Zone 2. mit 206 bezeichnet.
■ Mit dieser Einstellung arbeiten die höherwertige Hälfte 20a und die niederwertige 206 als unabhängige erste und zweite arithmetische Einheiten. Die höher-
ϊ wertige Einheit 20a wird dazu eingesetzt, einen ersten Vier-Byte-Operanden (A 0—A 3) zu einem zweiten Vier-Byte-Operanden (BO-B 3) zu addieren und somit eine resultierende Vier-Byte-Summe (SO—S3) zu erzeugen. In gleicher Weise wird die niederwertige
hi Hälfte der Einheit 206 dazu eingesetzt, einen ersten Vier-Byte-Operanden (A 4—A 7) zu einem zweiten Vier-Byte-Operanden (B4—Bl) zu addieren und damit eine Vier-Byte-Summe (S 4—S 7) zu erzeugen.
In F i g. 1 ist die höhere Hälfte 20a der arithmetischen Einheit schraffiert dargestellt, während die niedere Hälfte 206 unschraffiert dargestellt ist Aus F i g. 1 ist ersichtlich, daß die Eingangsbytes A 0—A 7 der linken Seite, d.h. A-Eingangsseite der Einheit 20 zugeführt werden. Die Eingangsbytes BO—B7 werden der
in rechten, d. h. B-Eingangsseite der- ALU 20 zugeführt. Die resultierenden Summenbytes SO bis 57 werden an der Ausgangsseite, d. h. in F i g. 1 unten, der ALU 20 erhalten. Der Einfachheit halber sind die 32 Emgangs- und Ausgangsleitungen für jede Vier-Byte-Gruppe der Dateiioits durch eine einzelne Leitung in F i g. 1 dargestellt. Zum Beispiel werden die 32 Datenbits für die Eingangsbytes AO-A3 über die Datensammelleitung 22 übertragen, die demnach aus 32 einzelnen Leitungen besteht
Die Daten werden in den Hauptspeicher 13 dadurch eingeschrieben, daß sie zuerst in das Datenregister 14 und die entsprechende Zugriffsadresse in das Speicheradreßregister 15 eingeschrieben werden. Die Daten werden vom Hauptspeicher 13 ausgelesen, indem die Zugriffsadresse in das Speicheradreßregister 15 und dann die an dieser Adresse ausgelesenen Daten in das Datenregister 14 gespeichert werden. Der Zugriff zum Speicher erfolgt byteweise, d. h. daß jedes Byte im Hauptspeicher 13 eine eigene Adresse hat. Die Einrichtung gestattet dabei einen gleichzeitigen Zugriff von einem bis zu acht Byte.
Zur Darstellung der Funktionsweise soll nun angenommen werden, daß Daten vom Hauptspeicher 13 zur Verarbeitung in der Einheit 17 ausgelesen weiden. Die Daten werden hierzu während aufeinanderfolgender Speicher-Lesezyklen und Instruktionszyklen in das Datenregister 14 ausgelesen. Wenn die Ausleseeinrichtung eine Datenbreite von acht Bytes hat, können während eines bestimmten Speicherzyklus zwischen einem und acht Bytes gleichzeitig in das Register 14 ausgelesen werden. Zur Verarbeitung werden die Daten vom Register 14 über eine Verschiebeeinrichtung 24 zu einem Bestimmungsregister 25 übertragen. Die Daten in diesem Bestimmi'.ngsregister 25 werden hiernach entweder einem A-Register 26, einem B-Register 27 oder einem von mehreren Allzweck- oder Einzweck-Registern in einem Lokalspeicher 28 zugeführt. Ein Allzweckregister :.n dem Lokalspeicher 28 ist mit 30 bezeichnet Wie in F i g. 1 gezeigt, sind im Lokalspeicher
bo 28 auch noch verschiedene andere Register vorgesehen. Die Daten im Bestimmungsregister 25 können auch zurück zum Datenregister 14 über die Vier-Byte-Datensammelleitungen 31a und 316 übertragen werden. Wenn es sich bei den Daten im Datenregister 14 um
f>5 Programminstruktionen handelt, dann werden sie auch in das Instruktionsregister 32 gesetzt.
Die Daten im A-Register 26 werden an die linke Hälfte, das ist an die A-Eingangsseite der ALU 20
übertragen. Die Daten im B-Register 27 werden über Wahr/Komplementär-Tore (T/C) 33 an die rechte Seite, d. h. an die B-Eingangsseite der Einheit 20 übertragen. Die resultierenden Daten erscheinen am Ausgang der ALU 20 und werden in ein Z-Register 34 gesetzt. Die Daten im Z-Register können zu einer der beiden Einheiten 16 oder 24 oder auch zu diesen beiden Steuerteil- und Schiebeteileinheiten übertragen werden. Die Tore 33 können die Daten im B-Register 27 an die ALU 20 entweder in wahrer oder in komplementierter Form übertragen in Abhängigkeit von den an die Tore vom Steuerteil 16 über die Steuerleitungen in einer Steuersammelleitung 35 gelieferten Steuersignale übertragen. Dabei sind die Steuerungen für die beiden Teile 33a und 336 der Tore 33 voneinander unabhängig, so ι; daß für diese beiden Teile eine unabhängige Übertragung vorgenommen werden kann. Bei einer Subtraküonsoperäüon wird ein -f- !-Eingsngsübcrtrsg sr; die ALU 20 über eine +1-Schaltung 36 geliefert. Dieses +1-Eingangsübertragsignal kann an eine oder beide Übertragseingangsleitungen CU und CV (Fig. 2) in Abhängigkeit von der gewünschten ALU Operation für jede der beiden separaten arithmetischen Zonen 20a und 206 angelegt werden.
Jede der Einheiten 24 bis 27, 30, 33 und 34 hat eine Datenflußbreite von acht Bytes. Jede dieser Einheiten enthält also 64 binäre Datenbitstufen. Die Bitstufen für die hochrangigen vier Bytes werden mit dem Zusatz »a« angegeben und die Bitstufen für die niederrangigen vier Bytes mit dem Zusatz »b«. Die Datensammelleitungen jo zwischen diesen Einheiten und der ALU 20 enthalten jeweils eine Gruppe von 32 Datenieitungen. Zum Beispiel enthält jede der vier Byte-Datensammelleitungen 37a und 376 zwischen dem Verschieber 24 und dem Bestimmungsregister 25 32 Datenleiter. Die Datensam- a melleitung 37a verbindet die hochrangigen Stufen 24a und 25a. während die Datensammelleitung 37b die niederrangigen Stufen 24b und 25b verbindet. Jede der in Fig. 1 gezeigten Sammelleitungen mit 32 Bitleitungen ist über eine Gruppe von 32 Steuertoren verbunden, um den Datenfluß auf diesen Sammelleitungen steuern zu können. Diese Schalttore sind der Einfachheit halber in F i g. 1 nicht gezeigt.
In der in Fig. 1 gezeigten Einrichtung sind auch Schaltungen enthalten, die es gestatten, einen ersten und -«5 einen zweiten Operanden zu der ersten arithmetischen Zone, die in F i g. I als gestrichelte Zone 20a angedeutet ist. der arithmetischen Einheit 20 zur Erzielung eines ersten Resultates zu übertragen. Diese Operanden-Eingangsschaltunge:. enthalten eine höhere Hälfte 26a des A-Registers 26 zur Übertragung eines ersten Operanden zu der höherrangigen linken Eingangsseite der ALU 20 und die höherrangige Hälfte 27a des B-Registers 27 zur Übertragung eines zweiten Operanden zu der höherrangigen rechten Eingangsseite der ALU 20. wobei dieser zweite Operand über die hochrangige Hälfte 33a der Wahr/Komplementär-Tore 33 übertragen wird.
Die in F i g. 1 gezeigte Einrichtung enthält ferner Datenübertragungsschaltungen, die mit dem Ausgang der ersten arithmetischen Zone (gestrichelte Zone 20a in Fig. 1) der arithmetischen Einheit 20 zur sofortigen Rückübertragung des ersten Resultates zum Eingang der zweiten arithmetischen Zone (ungestrichelte Zone 20b in Fig. 1) verbunden sind, wodurch sofort ein zweites und vom ersten verschiedenes Resultat erhalten werden kann. Diese Datenübertragungsschaltungen enthalten eine vier Byte breite Datensammelleitung 40, die mit dem höherrangigen Ausgang (Resultatbytes SO bis 53) der arithmetischen Einheit 20 verbunden ist und die an ihrem anderen Ende mit der niederrangigen Hälfte 33b der Tore 33 verbunden ist. Diese Datenübertragungsschaltungen enthalten ferner die niederrangige Hälfte 33b der Tore 33 und die Datensammelleitung für die Operandenbytes B 4 bis B 7, die die niederrangige Hälfte der Tore 336 mit dem Eingang der rechten Seite für die niederrangige Hälfte 20ό der arithmetischen Einheit 20 verbindet. Bei der nachfolgend beschriebenen Arbeitsweise der Einrichtung werden die Datenflußsteuertore (nicht gezeigt), welche den Datenfluß auf den Datensammelleitungen zu den niederrangigen Toren 33b steuern, in der Weise gesteuert, daß die Datensammelleitung 40 Daten zu den Toren 336 überträgt, während die Datensammelleitung vom Teil 27b des B-Registers blockiert wird und somit
Die Datenübertragungsschaltung, bestehend aus der Datensammelleitung 40 und der niederrangigen Hälfte 33b der T/C-Tore ist so eingerichtet, daß sie in asynchroner Weise arbeitet, derart, daß das erste Resultat (Resultatbytes SO-S3) zurück zum Eingang der zweiten arithmetischen Zone 206 übertragen wird, sobald es am Ausgang der ersten arithmetischen Zone 20a der ALU 20 verfügbar wird. Diese DatenübertragungsK iv-Jtung ist also frei von Registern, Kippschaltungen oder anderen von Taktsignalen gesteuerten Übertragungseinrichtungen. Die Übertragung über die Tore 33 erfolgt demgemäß ohne Taktsteuersignale und wird nur durch die unvermeidbaren inhärenten Übertragungsverzögerungen verzögert. Das gleiche gilt auch für die arithmetische Einheit 20, die auch aus »Durchflußschaltungen« aufgebaut ist. Im Gegensatz hierzu werden das Bestimmungsregister 25, das A-Register 26, das B-Register 27 und das C-Register 34 durch Taktimpulse vom Steuerteil 16 gesteuert. Die Taktsteuerung 16 steuert also die Zeiten zu denen neue Daten in diese Register eingeschrieben werden können. Die Daten bleiben dabei in diesen Registern, so lange, bis neue Daten während eines darauffolgenden Taktimpulses eingeschrieben werden. Die Register arbeiten somit synchron.
Wie bereits früher erwähnt, findet die vorliegende Erfindung eine vorteilhafte Verwendung bei der Überprüfung einer oberen Adreßgrenze im Zusammenhang mit einer Speicherschutzeinrichtung für ausgewählte Bereiche eines Hauptspeichers 13. Bei dieser Verwendung wird angenommen, daß die in F i g. 1 gezeigte Einrichtung auch eine Fortschreibungbjchaltung enthält, die sowohl die gegenwärtige Speicheradresse als auch die verlangte Speicherzugriffslänge zu der ersten arithmetischen Zone 20a der ALU 20 zu Additionszwecken bringt. Mit der Addition wird eine neue oder fortgeschriebene Speicheradresse erzeugt, welche die obere Adreßgrenze des gegenwärtigen Speicherzugriffs angibt. Die gegenwärtige, aktuelle Speicheradresse befindet sich dabei in der höherrangigen Hälfte 30a des Lokalspeicherregisters 30. »SA« bezeichnet »Speicheradresse«. Diese aktuelle Speicheradresse wird an die linke Eingangsseite der ersten arithmetischen Zone 20a von der hochrangigen Hälfte 26a des A-Registers 26 angelegt Andererseits wird der Wert der Länge des verlangten Speicherzugriffs, der sich ursprünglich im Instruktionsregister 32 befindet, an die rechte Eingangsseite der höherrangigen Hälfte der ALU 20 über die hochrangige Hälfte des Verschiebers 24, das Bestimmungsregister 25, das B-Register 27 und
die Tore 33 angelegt. Die höherrangige Hälfte 20a der arithmetischen Hälfte addiert die gegenwärtige Speicheradresse zu der verlangten Zugriffslänge, so daß die neue, fortgeschriebene Speicheradresse nunmehr aus den Resultatbytes SO—53 ersichtlich ist. Die höherrangige Hälfte 33a der T/C-Tore liefert dabei die Zugr'fslänge an die rechte Eingangsseite 20a der ALU 20 in wahrer Form.
Die Einrichtung zur Überprüfung der oberen Adreßgrenze enthält auch eine Grenzfiberp.-üfungsschaltung, die sowohl die obere Grenzadresse als auch die neue fortgeschriebene Adresse, die von der höherrangigen Zone 20a der ALU 20 erhalten wurde, an die zweite oder niederrangige arithmetische Zone 206 anlegt, um damit eine Anzeige zu erhalten, ob die neue Adresse die obere Grenzadresse überschreitet. Diese Grenzprüfschaltung enthält die niederrangige Hälfte 306 des Lokalspeicherregisters 30. von der die obere Grenzadresse an die linke Eingangsseite der niederrangigen arithmetischen Zone 206 über die niederrangige Hälfte 266 des A-Registers 26 übertragen wird. »t/S« bezeichnet »obere Grenze«. Die Grenzüberprüfungsschaltung enthält ferner die Vier-Byte-Datensammelleitung 40 und dit niederrangige Hälfte 336 der Tore 33 zur Übertragung der neuen oder fortgeschriebenen Adresse an die rechte Eingangsseite der niederrangigen arithmetischen Zone 206. Während dieser Grenzüberprüfungsoperation wird die niederrangige Hälfte 276 des B-Registers 27 daran gehindert, Daten über die ntedcrangige Hälfte 336 der Tore 33 zu übertragen. In der gezeigten Ausführungsform wird die niederrangige Hälfte 336 der T/C-Tore derart gesteuert, daß das Komplement der neuen, fortgeschriebenen Adresse an die rechte Eingangsseite der niederrangigen Zone 206 der ALU 20 angelegt wird. Ferner tritt die +!-Schaltung 36 in Tätigkeit und liefert ein + 1-Übertragseingangssignai an die unterste Bitposition in der niederrangigen arithmetischen Zone 206. Dies geschieht über die Übertrags-Eingangsleitung CV(F i g. 2).
Dabei soll bemerkt werden, daß wenn die arithmeti- -»ο sehe Einheit 20 eine ungerade Anzahl von polaritätsumkehrenden Stufen aufweist, so daß ihr Ausgang komplementiert ist im Verhältnis zu ihrem Eingangssignal, daß dann die niedere Hälfte 336 der Tore 33 die neue Adresse an die arithmetische Zone 206 in wahrer Form übertragen sollte und daß das + 1-Übertrags-Eingangssignal an die Zone 206 wegfallen sollte. In der vorliegenden Ausführungsform ist angenommen, daß die Anzahl der Stufen in der ALU 20 gerade ist, so daß Eingangs- und Ausgangssignale nicht invertiert aufscheinen.
Die Einrichtung zur Überprüfung der oberen Grenzadressen enthält ferner eine Schaltung, die auf das Übertrags-Ausgangssignal CY für die niederrangige arithmetische Zone 206 anspricht und ein Fehlersignal der Überschreitung der oberen Grenze erzeugt, wenn die neue oder fortgeschriebene Adresse diese obere Grenze überschreitet Diese Schaltung enthält die Cy-Übertrags-Ausgangsleitung, eine Kippschaltung 41 und eine Kippschaltungs-Ausgangsleitung 4Z Die Kippschaltung 41 speichert zeitweise das Cy-Übertrags-Ausgangssignal und das Überschreitungsfehlersignal erscheint an der Kippschaltungs-Ausgangsleitung 42. Das Fehlersignal wird ferner der Steuereinrichtung 16 zugeführt um die Datenverarbeitung zu unterbrechen und die entsprechende Fehlerroutine einzuleiten. Der Steuerteil 16 kann entweder ein Mikroprogramm enthalten oder kann ganz in Hardware ausgeführt sein.
F i g. 3 zeigt den Steuerteil 16 ausführlicher für den Fall, daß darin ein Mikroprogramm verwendet wird. Der Steuerteil 203 in Fig. 3 entspricht dem Steuerteil 16 in Fig. 1. Ebenso entspricht der Addierer 208 in F i g. 3 der arithmetischen Einheit 20 in Fig. I. Das Lokalspeicherregister 30 in Fig. 1 würde bei der Realisierung nach Fig. 3 die Form eines der Speicherregister im Lokalspeicher 230 annehmen.
Nachfolgend soll nun die Arbeitsweise der in Fig. 1 gezeigten Einrichtung für den Fall beschrieben werden, daß eine Überprüfung der oberen Grenze für die fortgeschriebene Adresse eines Speicherzugriffs zum Hauptspeicher 13 durchgeführt wird. Diese Überprüfung gestattet eine flexible Form eines Speicherschutzes, indem der Schutz auf Bereiche eines Hauptspeichers erstreckt werden kann, deren Beginn und deren Ende sowie deren Größe nicht von vorneherein festgelegt werden müssen.
Um Zugriff zu einem geschützten Bereich zu erhalten, wird vom Benutzer sein Benutzer-Identifikationscode zusammen mit einer Identifikation des Speicherbereiches, zu dem Zugriff gewünscht wird, in der betreffenden Zu^riffsanforderung geliefert. Der Prozessor 10 führt hiernach einen Zugriff zu einer Speicherschutztabelle im Hauptspeicher 13 durch und bestimmt, ob vom Benutzer der richtige Identifikationscode für den verlangten Speicherbereich eingegeben wurde. Wenn das der Fall ist, Überträge der Datenprozessor 10 vom Hauptspeicher 13 die Beginnadresse und die obere Grenzadresse für den geschützten Speicherbereich und setzt diese Daten in das Register 30 des Lokalspeichers. Hierauf wird der gewünschte Lese- oder Schreibzugriff durchgeführt. Die Startadresse für den geschützten Bereich wird in die hochrangige Vier-Byte-Hälfte 30a des Registers 30 gesetzt, während die obere Grenzadresse in die niedere Vier-Byte-Hälfte 306 in das Register 30 gesetzt wird. Der Benutzer, dessen Zugriff bewilligt wurde, kann hierauf zu dem geschützten Bereich innerhalb dieser beiden Grenzen Zugriff erhalten.
Es wird angenommen, daß der Speicherzugriff mit der Startadresse für den geschützten Bereich beginnt. Die Zugriffsoperation wird mit der Übertragung der entsprechenden Lese- oder Schreibinstruktion in das Datenregister 14 begonnen. Die Übertragung erfolgt dabei entweder vom Benutzerprogramm, das in einem anderen Bereich des Hauptspeichers 13 gespeichert ist oder aufgrund einer externen Anforderung über den Eingangs/Ausgangspufferspeicher 12. Die Zugriffsinstruktion wird dann in das Instruktionsregister 32 übertragen. Eine solche Instruktion enthält unter anderem einen Operationscode, einen Speicherbereichscode und einen Zugriffslängencode. Der Operationscode gibt an, ob es sich bei der Operation um eine Lese- oder eine Schreiboperation handelt und der Zugriffslängencode gibt die Länge der gewünschten Daten, d. h. die Anzahl der gewünschten Bytes an. Der Operationscode wird dabei auch an den Steuerteil 16 übertragen, der daraufhin Steuersignale an die arithmetische Einheit 20 über die Steuersammelleitung 21 sendet Hierdurch wird der Zoneneinteilungsmechanismus in der arithmetischen Einheit 20 derart gesteuert, daß die ALU 20 in zwei voneinander unabhängige Vier-Byte arithmetische Zonen 20a und 206 eingestellt •wird. Der Steuerten 16 sendet auch Steuersignale an die Wahr/Komplementtore 33 über die Steuersammeüeitung 35, wodurch die höherrangige Hälfte 33a Daten in wahrer Form und die niederrangige Hälfte 336 Daten in invertierter Form (Einerkomplement) überträgt
Im nächsten Schritt des Speicherzugriffszyklus wird der Wert für die Speicherzugriffslänge im Instruktionsregister 32 in die höherrangige Hälfte 25a des Bestimmungsregisters 25 gesetzt. Dann wird die aktuelle Speicheradresse, die im vorliegenden Fall, wie oben erwähnt, gleich ist der Beginnadresse des Speicherbereiches in der höherrangigen Hälfte 30a des Lokalspeicherregisters 30 in die höherrangige Hälfte 26a des A-Registers 26 gesetzt. Ferner wird die obere Grenzadresse in der niederrangigen Hälfte 306 in die niederrangige Hälfte 266 des Α-Registers übertragen und wird die Zugriffslänge in der höherrangigen Hälfte 25a des Bestimmungsregisters 25 in die höherrangige Hälfte 27a des B-Registers 27 übertragen. Die aktuelle Speicheradresse in der höherrangigen Hälfte 26a des Α-Registers wird sofort danach in das Speicheradreßiegister 15 gesetzt und damit die Zugriffsoperation zum Speicher !3 begonnen. Zu gleicher Zeit wird die akutcüe Speicheradresse in der Hälfte 26a des Α-Registers und die Zugriffslänge in der Hälfte 27a des B-Registers zur arithmetischen Einheit 20 gebracht. Die Hälfte 33a der Tore 33 überträgt dabei die Zugriffslänge in wahrer Form. Die ALU 20 addiert diese beiden Eingangsoperanden und erzeugt an der hochrangigen Ausgangshälfte (Bytes 50—53) eine neue, fortgeschriebene Adresse, die daraufhin in die höherrangige Hälfte 34a des C-Registers gesetzt wird. Diese neue Adresse wird sofort, nachdem sie am Ausgang der ALU 20 erscheint, zurück an die Eingangsseite der niederrangigen Hälfte 206 über die Vier-Byte-Datensammelleitung 40 und die niederrangige Hälfte 336 der Tore 33 übertragen. Diese niederrangige Hälfte 336 der T/C-Tore wird dabei so gesteuert, daß sie das Einerkomplement des neuen Adressenwertes an die rechte Eingangsseite 206 der arithmetischen Einheit überträgt Zur gleichen Zeit wird die obere Grenzadresse in der niederrangigen Hälfte 266 des Α-Registers an die linke Eingangsseite der niederrangigen Hälfte 206 der ALU 20 übertragen. Diese niederrangige Hälfte 206 der arithmetischen Einheit addiert sodann das Einerkomplement der neuen Adresse zu dem oberen Grenzwert, wobei eine + I-Übertrags-Eingangssignal von der Schaltung 36 über die CV-Übertrags-Eingangsleitung an die ALU 20 übertragen wird. Hierdurch wird von der Hälfte 206 der arithmetischen Einheit ein Ausgangsresultat erzeugt 4i (Bytes 54—57), welches die Summe des oberen Grenzwertes und des Zweierkomplementes der neuen Adresse darstellt. Dieses Resultat stellt natürlich das gleiche Resultat dar, das erhalten worden wäre, wenn die neue Adresse von der oberen Grenzadresse abgezogen worden wäre. Das Resultat von der niederrangigen Hälfte 206 der arithmetischen Einheit stellt somit das wahre Subtraktionsresultat dar. Dieser Subtraktionswert wird jedoch in der vorliegenden Ausführungsform nicht benutzt Die Überprüfung, ob die obere Grenzadresse überschritten wird, erfolgt vielmehr durch Feststellung des Obertrags-Ausgangssignals CY für die niederrangige Hälfte 206 der arithmetischen Einheit Die Abwesenheit des Übertrags-Ausgangssignals (CV=O) zeigt dabei einen Fehler an, d.h. zeigt an, daß die obere Grenzadresse überschritten wurde. Die neue Adresse war in diesem Falle größer als die obere Grenzadresse. Die Anwesenheit des Übertrags-Ausgangssignals hingegen /1CZ=I) zeigt an, daß die neue Adresse noch im erlaubten b5 Bereich liegt, d. h. kleiner ist als die obere Grenzadresse.
Die F i g. 4 bis 6 erklären, wieso das Übertrags-Ausgangssignal CY dazu benutzt werden kann, einen Überschreitungsfehler anzuzeigen. Der Einfachheit halber wird in den gezeigten Beispielen eine hexadezimale Notierung (Basis 16) anstelle der tatsächlichen binären Notierung benutzt.
In allen drei gezeigten Beispielen wird angenommen, daß die obere Grenzadresse den Wert »6000« in hexadezimaler Notierung, d. h. 24 576 in dezimaler Notierung haben. Im ersten Beispiel nach F i g. 4 hat die neue Adresse den Wert »5FFF« (24 575 in dezimaler Notierung), was natürlich kleiner ist als die obere Grenze. Das 16-K.omplement von 5FFF ist AOOl. Addiert man dieses 16-K.omplement zu dem oberen Grenzwert, erhält man 0001 plus einem Übertrags-Ausgangssignal zu der nächsten höherrangigen Stellenposition. Allgemein gilt, daß wenn die neue Adresse kleiner ist als die obere Grenze, das Komplement der neuen Adresse immer so groß sein wird, daß es ein
U5J-rAUJßUllßO3JßllUI Vl 1VUgI
F i g. 5 betrifft den Fall der Gleichheit zwischen der neuen Adresse und der oberen Grenzadresse. In diesem Fall ist das 16-Komplement gleich »AOOO« und die Summe ist dann »0000« mit einem Übertrags-Ausgangssignal zur nächsten Stellenposition.
In F i g. 6 ist der Fall dargestellt, daß die neue Adresse größer ist als die obere Grenzadresse. In diesem Fall ist das 16-Komplement »9FFF« und die Summe ist gleich »FFFF«, es wird also kein Übertrags-Ausgangssignal erzeugt. Man sieht also, daß, wenn die neue Adresse, die sich am Ende des Speicherzugriffs zur gewünschten Datenlänge ergibt, größer ist als die obere Grenzadresse, das Komplement zu klein ist, um ein Übertrags-Ausgangssignal zu erzeugen. Das Übertrags-Ausgangssignal kann daher in der oben angegebenen Weise zur Anzeige eines Überschreitungsfehlers verwendet werden, wobei die Abwesenheit des Übertrags (CV=O) einen Fehler, d. h. die Überschreitung des erlaubten Adreßbereiches anzeigt.
Die in F i g. 1 gezeigte Einrichtung arbeitet, wie bereits gesagt, nicht in hexadezimaler, sondern in binärer Notierung. Auch für diesen Fall sin··1 die in den F i g. 4 bis 6 aufgezeigten Gesetzesmäßigkeiten jedoch gültig. Wenn also die neue Adresse kleiner ist als die obere Grenzadresse, oder gleich ist dieser Grenze, dann ist das Komplement davon groß genug, um ein Übertrags-Ausgangssignal zu erzeugen. Umgekehrt ist das Komplement zu klein, um einen Übertrag zu erzeugen, wenn die neue Adresse größer ist als die obere Grenzadresse.
Der Status des CV-Übertrags-Ausgangssignals wird in der Kippschaltung 41 gespeichert Am Ausgang dieser Kippschaltung 41 wird also das Fehlersignal erhalten, das eine Überschreitung des erlaubten Adreßbereiches anzeigt Über die Ausgangsleitung 42 der Kippschaltung 41 gelangt der Status des CV-Signals zur Steuereinheit 16. Liegt ein Fehler vor, unterbricht die Steuereinheit 16 sofort die Speicherzugriffsoperation und die Datenverarbeitung. Das Benutzerprogramm oder Eingangs/Ausgangszyklen werden somit unterbrochen. Eine Fehlermeldung gelangt zum Benutzer oder an die Konsole. Auf diese Weise wird verhindert daß ein Benutzer den ihm zugewiesenen Speicherbereich verlassen und zu einem Speicherbereich eines anderen Benutzers Zugriff erlangen kann, wobei angenommen wird, daß ein gegebener Benutzer nicht die Berechtigung hat zu Speicherbereichen anderer Benutzer zuzugreifen.
Liegt kein Adreßüberschreitungsfehler vor, wird der neue, fortgeschriebene Adressenwert in der höherrangi-
gen Hiilfte 34a des C-Registers zurück in die Hälfte 30a des Lokalspeicherregisters 30 über die Verschiebebälfte 24a und die Hälfte 25a des Bestimniungsregisters übertragen und ersetzt dort die vorher eingeschriebene, alte Adresse. Die Verarbeitungseinrichtung 17 kann sodann die nächste Speicherzugriffsinstruktion abarbeiten. Solange kein Überschreitungsfehler festgestellt wird, werden aufeinanderfolgend Speicherzugriffsinstruktionen abgearbeitet, wie oben beschrieben, wobei die gegenwärtige Adresse in der Registerhälfte 30a durch eine neue fortgeschriebene Adresse zum geeigneten Zeitpunkt im Speicherzugriffszyklus überschrieben wird.
Es soll darauf hingewiesen werden, daß einige Speicherzugriffsinstruktionen nicht die Fortschreibung der gegenwärtigen Speicheradresse im Register 30a verlangen. In diesen Fällen arbeitet die Überschreitungs-Prüfeinrichtung genau in derselben Weise, wie oben beschrieben, wobei jedoch die fortgeschriebene Adresse ir der höherrangigen Hälfte 34a des C-Registers nicht zurück zum SA-Register 30a übertragen wird.
Der große Vorteil der vorgehend beschriebenen Einrichtung besteht darin, daß zwei bestimmte Operationen während ein und desselben Maschinensteuerzyklus durchgeführt werden können. In der ersten Operation wird die aktuelle Speicheradresse zu der gewünschten Speicherzugriffslänge addiert, um die neue Adresse zu erhalten. In der zweiten Operation wird diese während der ersten Operation erhaltene, neue Adresse von der oberen Grenze subtrahiert, um das Überschreitungs-Prüfsignal zu erhalten. Es ist also nicht notwendig, in einem zweiten Maschinenzyklus die Überprüfung der Adressenüberschreitung durchzuführen.
Es soll ferner darauf hingewiesen werden, daß die oben beschriebene Arbeitsweise in zwei aufeinanderfolgenden Operationen geringfügig langsamer ist als eine
ίο Arbeitsweise, die auf einem einzigen Durchgang beruht, da die Subtraktion die zur Grenzüberschreitung verwendet wird, auf das Ergebnis der Adreßfortschreibung warten muß. Diese Verzögerung entsteht durch die inhärenten Schaltungsverzögerungen in der arithmetischen Einheit 20 bei der Durchführung der Adreßfortschreibungsaddition. Diese Verzögerung ist jedoch klein in ihrer absoluten Höhe und verlängert nicht den normalen Speicherzugriffszyklus, da die Datenübertragung zum oder vom Speicher länger dauert als eine Operation in einem Durchgang.
Ein weiterer Vorteil ergibt sich in der oben beschriebenen Einrichtung dadurch, daß die Berücksichtigung von verschiedenen Zugriffslängen möglich ist. In aufeinanderfolgenden Speicherzugriffsinstruktionen können verschiedene Lese- oder Schreiblängen angegeben sein, wobei die Adressenüberprüfung trotzdem in der gewünschten Weise funktionieren kann. Die Adreßüberprüfungseinrichtung ist also nicht beschränkt auf Scheibe- oder Leselängen eines festen Wertes.
Hierzu 3 Blatt Zeichnungen

Claims (6)

Patentansprüche:
1. Speicrierschutzeinrichtung mit Adressenvergleich, dadurch gekennzeichnet, daß die gegenwärtige Speicheradresse und die gewünschte Datenzugriffslänge in der ersten Zone (2Oa^ eines in zwei voneinander unabhängige Zonen unterteilbaren Addierers (20) addiert werden und daß dieses Summenresultat (SO—S3) in der zweiten Zone (20b) des Addierers von einem oberen Grenzwert subtrahiert wird
2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß Addition und Subtraktion im selben Maschinenzyklus durchgeführt werden.
3. Einrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Übertragung der Summe an die Eingänge der zweiten Zone {20b) sofort nach Resultatbitöung und asynchron zum SpeicherzugFtiiSZynjUS Ui iGigt
4. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß das Übertragssignal (CY) der zweiten Zone zur Anzeige der Überschreitung des geschützten Adressenbereiches benutzt wird.
5. Einrichtung nach Anspr/ich 4, gekennzeichnet durch eine mit dem Eingang des Addierers verbundene Komplementiereinrichtung (33).
6. Einrichtung nach Anspruch 5, dadurch gekennzeichnet, daß die Komplementiereinrichtung (33) Daten an die »rste Addiererzone (2OaJm wahrer und an die zweite Addiererzone IfOb) in komplementärer Form überträgt
DE2625113A 1975-06-18 1976-06-04 Speicherschutzeinrichtung Expired DE2625113C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/587,936 US3999052A (en) 1975-06-18 1975-06-18 Upper bounds address checking system for providing storage protection for a digital data processor

Publications (2)

Publication Number Publication Date
DE2625113A1 DE2625113A1 (de) 1976-12-30
DE2625113C2 true DE2625113C2 (de) 1984-01-05

Family

ID=24351784

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2625113A Expired DE2625113C2 (de) 1975-06-18 1976-06-04 Speicherschutzeinrichtung

Country Status (5)

Country Link
US (1) US3999052A (de)
JP (1) JPS5914770B2 (de)
DE (1) DE2625113C2 (de)
FR (1) FR2315146A1 (de)
GB (1) GB1523005A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3333894A1 (de) * 1982-09-29 1984-03-29 Apple Computer, Inc., Cupertino, Calif. Speichermanagementeinheit

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4133028A (en) * 1976-10-01 1979-01-02 Data General Corporation Data processing system having a cpu register file and a memory address register separate therefrom
DE2842548A1 (de) * 1978-09-29 1980-04-10 Siemens Ag Programmierbare speicherschutzlogik fuer mikroprozessorsysteme
US4430711A (en) 1980-05-30 1984-02-07 Signetics Corporation Central processing unit
US4627017A (en) * 1980-10-22 1986-12-02 International Business Machines Corporation Address range determination
JPS58149548A (ja) * 1982-03-02 1983-09-05 Hitachi Ltd メモリ制御方式
US4592005A (en) * 1982-07-06 1986-05-27 Sperry Corporation Masked arithmetic logic unit
JPS59125462A (ja) * 1982-12-30 1984-07-19 Fujitsu Ltd ボリユ−ム管理情報の保護方式
US5101370A (en) * 1990-07-26 1992-03-31 Unisys Corporation Programmable digital accumulate and scale circuit
US5623621A (en) * 1990-11-02 1997-04-22 Analog Devices, Inc. Apparatus for generating target addresses within a circular buffer including a register for storing position and size of the circular buffer
EP0555382B1 (de) * 1990-11-02 1996-03-27 Analog Devices, Inc. Adressengenerator für einen ringpuffer
US5787492A (en) * 1996-04-09 1998-07-28 International Business Machines Corporation Address limit check apparatus with conditional carry logic
US5949972A (en) * 1996-08-23 1999-09-07 Compuware Corporation System for memory error checking in an executable
US6583945B1 (en) 1998-10-30 2003-06-24 Iomega Corporation Method for irreversibly write-securing a magnetic storage cartridge
JP2001022637A (ja) * 1999-07-07 2001-01-26 Fujitsu Ltd メモリ制御装置及び情報処理装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB986929A (en) * 1961-06-08 1965-03-24 Decca Ltd Improvements in or relating to data processing apparatus
US3639912A (en) * 1969-04-16 1972-02-01 Honeywell Inf Systems Management control subsystem for multiprogrammed data processing system
DE2222195A1 (de) * 1972-05-05 1973-11-22 Siemens Ag Anordnung zur verarbeitung von operanden von programmen
US3863061A (en) * 1973-08-16 1975-01-28 Us Navy Alu with end-around carry derived from auxiliary unit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3333894A1 (de) * 1982-09-29 1984-03-29 Apple Computer, Inc., Cupertino, Calif. Speichermanagementeinheit

Also Published As

Publication number Publication date
GB1523005A (en) 1978-08-31
USB587936I5 (de) 1976-03-23
JPS522227A (en) 1977-01-08
FR2315146B1 (de) 1979-09-21
DE2625113A1 (de) 1976-12-30
FR2315146A1 (fr) 1977-01-14
US3999052A (en) 1976-12-21
JPS5914770B2 (ja) 1984-04-06

Similar Documents

Publication Publication Date Title
DE2625113C2 (de) Speicherschutzeinrichtung
DE2457312C3 (de) Anordnung zur Durchführung arithmetischer oder logischer Operationen an ausgewählten Gruppen aufeinanderfolgender Bits in einer Datenverarbeitungsanordnung
DE3338345C2 (de)
DE2354521C2 (de) Verfahren und Einrichtung zum gleichzeitigen Zugriff zu verschiedenen Speichermoduln
DE2302074A1 (de) Speicherschutzanordnung in einem multiprozessorsystem
DE2835095C2 (de) Digitale Rechenanlage mit einem ersten und mindestens einem zweiten miteinander koppelbaren mikroprogrammierten Prozessoren
DE2953861C2 (de)
DE1499175B2 (de) Steuereinrichtung in einem mehrspezies rechner
DE1499203B1 (de) Schaltungsanordnung zum Speicherschutz bei Datenverarbeitungsanlagen mit Simultanbetrieb
DE2712224A1 (de) Datenverarbeitungsanlage
DE2230102A1 (de) Rechenwerk fuer variable wortlaengen
DE2130299B2 (de) Eingabe-/Ausgabekanal für eine Datenverarb eitungsanlage
DE2430127A1 (de) Einrichtung zur steuerung des speicherzugriffs konkurrierender benutzer
DE2718849A1 (de) Rechenspeicher mit mehrdimensionalem, parallelem zugriff
DE1269393B (de) Mikroprogramm-Steuerwerk
DE1774052B1 (de) Rechner
DE2758829A1 (de) Multiprozessor-datenverarbeitungssystem
DE2429067B2 (de) Speicherschaltung
EP0185260B1 (de) Schnittstelle für direkten Nachrichtenaustausch
CH654679A5 (de) Prozessrechner.
DE3501903A1 (de) Im pipelinebetrieb arbeitende datenverarbeitungseinrichtung
DE2725614C2 (de)
DE2747304A1 (de) Einrichtung zur mikrobefehlssteuerung
DE2610428C3 (de) Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher
DE3931505C2 (de) Speichersteuerung in einer Datenverarbeitungsanlage

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G06F 13/00

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee