DE2625113A1 - Speicherschutzeinrichtung - Google Patents

Speicherschutzeinrichtung

Info

Publication number
DE2625113A1
DE2625113A1 DE19762625113 DE2625113A DE2625113A1 DE 2625113 A1 DE2625113 A1 DE 2625113A1 DE 19762625113 DE19762625113 DE 19762625113 DE 2625113 A DE2625113 A DE 2625113A DE 2625113 A1 DE2625113 A1 DE 2625113A1
Authority
DE
Germany
Prior art keywords
address
memory
data
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.)
Granted
Application number
DE19762625113
Other languages
English (en)
Other versions
DE2625113C2 (de
Inventor
David Norman Gooding
Everett Montague 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

Aktenzeichen der Anmelderin; EN 974 029
Speicherschutzeinrichtung
Die Erfindung betrifft eine Speicherschutzeinrichtung der im Oberbegriff des Hauptanspruches 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 beikanntgeworden, die einen Schutzschlüssel, bzw. einen Schutzcode j {dazu verwenden, Speicherbereiche einer bestimmten Größe zu schütze^, IUm Zugriff zu einem dieser Bereiche fester Größe zu erhalten, muß der Benutzer den Schutzschlüssel oder den Schutzcode ein- !geben, 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 31-36 ist eine Speicherschutzeinrichtung bekannt geworden, 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 Arbeitsge- : schwindigkeit einer Speicherschutzeinrichtung der oben angegebenen Art zu erhöhen.
Diese Aufgabe wird erfindungemäß durch die im Kennzeichen des Hauptanspruches angegebenen Merkmale gelöst.
Da nach der Erfindung zwei seriell zusammenhängende arithmetische Operationen während eines einzigen Maschinenzyklus durchgeführt
EN 974029
609853/0690
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 betreffenden 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 zeigen;
Fig, 1 ein Blockschema einer Datenverarbeitungsanlage
mit den zur Durchführung der vorliegenden Erfindung erforderlichen Teilen,
Fig, 2 ein Diagramm, das die Konstruktion und Operation
de Recheneinheit 20 in Fig, 1 mit unabhängigen Zonen r
Fig, 3 ein Blockschema einer der in Fig. 1 gezeigten
ähnlichen Datenverarbeitungsanlage, in dem jedoch der Steuerteil der Anlage und seine Verbindung mit den übrigen Funktionseinheiten der Anlage ausführlicher dargestellt ist und
iFign, 4 bis 6 Tabellen zur Erklärung der Wirkungsweise der
j in der Fig, 1 gezeigten Datenverarbeitungsanlage.
In Fig. 1 ist ein Datenprozessor 10 gezeigt, der Daten verarbeiten kann, die aus Sequenzen von binären Zeichen oder Bits bestehen. Es wird angenommen, daß die Datenbits in diesen Sequenzen grup- ! piert sind in Acht-Bit-Gruppen, wobei jede solche Acht-Bit-Gruppe : ein Datenbyte genannt wird. Der gezeigte Datenprozessor besteht EN 974 029
609853/0690
einem Eingangs/Ausgangsteil, einem Speicher, einer Verarbeitungseinheit und einer Steuereinheit. Der Eingangs/Ausgangsteil wird durch ein Gerät 11 und einen Pufferspeicher 12 dargestellt. Der Speicherteil umfaßt einen Hauptspeicher 13f ein Datenregister 14 und ein Speicheradreßregister 15. Der Steuerteil ist mit 16 bezeichnet. Der Rest der in Fig. 1 gezeigten Einheiten sind im Prozessor enthalten und sind in Fig. 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 nach der in der US-Patentanmeldung Serial No, 573 656, 1, Mai 1975, gezeigten Art, 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 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 Fig, 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 arbeitenden Zonen 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, CY und CZ vorgesehen. Dabei werden die verbindenden Punkte für diese Übertragseingangs- und -ausgangsleitungen automatisch mit den verschiebbaren Grenzen A und B verschoben. So werden der Verbindungspunkt für die CU Ü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,
EN 974 029
609853/069Q
Gleichermaßen wird die CV Übertrags-Eingangsleitung für die Zone und die CZ Übertrags-Ausgangsleitung für die Zone 3 zusammen mit der 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 der niedrigsten Ordnung dar. Jede Bytesektion (z.B. Byte 0) kann einen ersten Acht-Bit Eingangsoperanden (z.B. AO für das Byte O) zu einem zweiten Acht-Bit-Eingangsoperanden (z.B. BO für das Byte 0) addierern und eine Acht-Bit-Summe (z.B. SO für das Byte 0) erzeugen.
Zur Beschreibung der Wirkungsweise der AIiU 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 (Fig, 1) zugeführt werden, In Fig, 2 ist angenommen, daß die Grenzen A und B 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 Α-Grenze) und ; die Grenze B am rechten Ende des Addierers 20 (Skalenstrich 7 der 1 Grenze B) eingestellt wird. In diesem Falle verschwindet die Zone 3, Der höhere Teil, d.h. der Zonen-1-Teil der arithmetischen Einheit 20 wird mit 20a und der niederwertige Teil, d,h, die Zone 2, Hälfte mit 20b bezeichnet, :
Mit dieser Einstellung arbeiten die hochwertige Hälfte 20a und ; die niederwertige 20b als unabhängige erste und zweite arithme- j tische Einheiten, Die höherwertige Einheit 20a wird dazu eingesetzt, einen ersten Vier-Byte-Operanden (A0-A3) zu einem zweiten
EN 974 029
609853/0690
Vier-Byte-Operanden (BO-B3) zu addieren und somit eine resultierende Vier-Byte-Summe (SO-S3) zu erzeugen. In gleicher Weise wird die niederwertige Hälfte der Einheit 20b dazu eingesetzt, einen ersten Vier-Byte-Operanden (A4-A7) zu einem zweiten Vier-Byte-Operanden (B4-B7) zu addieren und damit eine Vier-Byte-Summe (S4-S7) zu erzeugen.
In Fig. 1 ist die höhere Hälfte 20a der arithmetischen Einheit schraffiert dargestellt, während die niedere Hälfte 20b unschraffiert dargestellt ist. Aus Fig. 1 ist ersichtlich, daß die Eingangsbytes A0-A7 der linken Seite, d.h. der Α-Seite, oder Eingangsseite der Einheit 20 zugeführt werden. Die Eingangsbytes B0-B7 werden der rechten oder B-Eingangsseite der ALU 20 zugeführt. Die resultierenden Summenbytes SO bis S7 werden an der Ausgangsseite, d.h. in Fig. 1 unten der ALU 20 erhalten. Der Einfachheit halber sind die 32 Eingangs- und Ausgangsleitungen für jede Vier-Byte-Gruppe der Datenbits durch eine einzelne Leitung in Fig. 1 dargestellt. Z.B. werden die 32 Datenbits für die Eingangsbytes AO-A3 über die Datensammelleitung 22 übertragen, die demnach aus 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 Zugriff sadresse 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 ausgelesen werden. Die Daten werden hierzu während aufeinanderfol-
EN 974 029
609853/0690
gender 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 Regsiter 14 über eine Verschiebeeinrichtung 24 zu einem Bestimmungsregister 25 übertragen. Die Daten in diesem Bestimmungsregister 25 werden hiernach entweder einem A-Register 26f einem B-Register 27 oder einem von mehreren Allzweck oder Einzweck-Registern in einem Lokalspeicher 28 zugeführt. Ein Allzweckregister 28 in dem Maschinenteil 28 ist mit 30 bezeichnet. Wie in Fig. 1 gezeigt, sind im Lokalspeicher 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 31b übertragen werden. Wenn es sich bei den Daten im Datenregister 14 um Programminstruktionen handelt, dann werden sie auch in das Instruktionsregister 32 gesetzt.
Die Daten im A-Register 26 werden an die linke Hälfte, 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 einer komplementierten Form übertragen in Abhängigkeit von den an die Tore vom Steuerteil über die Steuerleitungen in einer Steuersammelleitung 35 gelieferten Steuersignale übertragen. Dabei sind die Steuerungen für die beiden Teile 33a und 33b der Tore 33 voneinander unabhängig, so daß für diese beiden Teile eine unabhängige übertragung vorgenommen werden kann. Bei einer Subtraktionsoperation wird ein +1 Eingangsübertrag an die ALU 20 über eine +1 Schaltung
EN 974 029
609853/0690
— ο —
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 20b 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 zwischen diesen Einheiten und der ALU 20 enthalten jeweils eine Gruppe von 32 Datenleitungen. Z.B. enthält jede der
vier Byte-Datensammelleitungen 37a und 37b zwischen dem Verschieber 24 und dem Bestimmungsregister 25 32 Datenleiter, Die Datensammelleitung 37a verbindet die hochrangigen Stufen 24a und 25a r 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 Fig« 1
nicht gezeigt.
In der in Fig. 1 gezeigten Einrichtung sind auch Schaltungen enthalten, die es gestatten, einen ersten und einen zweiten Operand zu der ersten arithmetischen Zone, die in Fig. 1 als gestrichelte Zone 20a angedeutet ist, der arithmetischen Einheit 20 zur Erzielung eines ersten Resultates zu übertragen. Diese Operanden-Eingangsschaltungen enthalten eine höhere Hälfte 26a des A-Registers 26 zur Übertragung eines ersten Operandens 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.
EN 974 029
609853/0690
Die in Fig. 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 erstes verschiedenes Resultat erhalten werden kann. Diese Datenübertragungsschaltungen enthalten eine vier Byte breite Datensammelleitung 40, die mit dem höherrangigen Ausgang (Resultatbytes SO bis S3) 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 B4 bis B7f die die niederrangige Hälfte der Tore 33b mit dem Eingang der rechten Seite für die niederrangige Hälfte 20b 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 33b überträgt, während die Datensammelleitung vom Teil 27b des B-Registers blockiert wird und somit keine Daten zu den Toren 33b gelangen.
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 S0-S3) zurück zum Eingang der zweiten arithmetischen Zone 20b übertragen wird, sobald es am Ausgang der ersten arithmetischen Zone 20a der ALU 20 verfügbar j wird. Diese Datenübertragungsschaltung ist also frei von Registerni Kippschaltungen oder anderen von Taktsignalen gesteuerten Übertragungseinrichtungen, Die Übertragung über die Tore 33 erfolgt , demgemäß ohne Taktsteuersignale und wird nur durch die unver- ; meidbaren inhärenten Übertragungsverzögerungen verzögert. Das !
EN 974 029
609853/0690
gleiche gilt auch für die arithmetische Einheit 20, die auch aus "DurchIfuß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, solange, 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 Fig, 1 gezeigte Einrichtung auch eine Fortschreibungsschaltung enthält, die sowohl die gegenwärtige Speicheradresse als auch die verlangte Speicherzugriffslänge zu der ersten arithmetischen Zone 20a der ALU 20 zu Additions zwecken 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 i 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 S0-S3 ersichtlich ist. Die höherrangige Hälfte 33a der T/C-Tore liefert dabei die Zu-
EN 974 029
009853/0690
griffslänpe an die rechte Eingangsseite 20a der ALU 20 in wahrer Form.
Die Einrichtung zur überprüfung der oberen Adreßgrenze enthält auch eine Grenzüberprü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 20b anlegt, um damit eine Anzeige zu erhalten, ob die neue Adresse die obere Grenzadresse überschreitet. Diese Grenzprüfschaltung enthält die niederrangige Hälfte 30b des Lokalspeicherregisters 30 t von der die obere Grenzadresse an die linke Eingangsseite der niederrangigen arithmetischen Zone 20b über die niederrangige Hälfte 26b des A-Registers 26 übertragen wird, "DB" bezeichnet "obere Grenze", Die GrenzüberprüfungsschaZtung enthält ferner die Vier-Byte-Datensammelleitung 40 und die niederrangige Hälfte 33b der Tore 33 zur übertragung der neuen oder fortgeschriebenen Adresse an die rechte Eingangsseite der niederrangigen arithmetischen Zone 20b, Während dieser Grenzüberprüfungsoperation wird die niederrangige Hälfte 27b des B-Registers 27 daran gehindert, Daten über die niederrangige Hälfte 33b der Tore 33 zu übertragen. In der gezeigten Ausfuhrungsform wird die niederrangige Hälfte 33b der T/C-Tore derart gesteuert, daß das Komplement der neuen, fortgesehr!ebenen Adresse an die rechte Eingangsseite der niederrangigen Zone 20b der ALU 20 angelegt wird. Ferner tritt die +1 Schaltung 36 in Tätigkeit und liefert ein +1 Übertragseingangssignal an die unterste Bitposition in der niederrangigen arithmetischen Zone 20b, Dies geschieht über die Übertrags-Eingangsleitung CV (Fig, 2),
Dabei soll bemerkt werden, daß wenn die arithmetische Einheit ,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 33b der Tore 33 die neue Adresse an die arithmetische Zone 20b in wahrer Form übertragen sollte und daß das +1 übertrags-Eingangssignal an die
EN 974 029
609853/0690
Zone 20b 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 Grenzadresse enthält ferner eine Schaltung die auf das übertrags-Ausgangssignal CY für die niederrangige arithmetische Zone 20b 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 42. Die Kippschaltung 41 speichert zeitweise das CY-Übertrags-Ausgangssignal und das übersehreitungsfehlersignal erscheint an der Kippschaltungs-Ausgangsleitung 42, Das Feh.lersigna.1 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. Fig. 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 Fig. 3 der arithmetischen Einheit 20 in Fig. 1, 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 Speicherschutzesf 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,
EN 974 029
609853/0690
Um Zugriff zu einem geschützten Bereich erhalten, wird vom Benutzer sein Benutzer-Identifikationscode zusammen mit einer Identifikation des Speicherbereiches, zu dem Zugriff gewünscht wird, in der betreffenden Zugriffsanforderung 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ägt 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 Leseoder Schreibzugriff durchgeführt. Die Startadresse für den geschützten Bereich wird in die hochrangige Vier-Byte-Hälfte 30a des Registers 30 gesetztf während die obere Grenzadresse in die niedere Vier-Byte-Hälfte 30b 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 Hauptspeicher 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 Zugriffs-, lä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,
EN 974 029
609853/0690
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 20b eingestellt wird. Der Steuerteil 16 sendet auch Steuersignale an die Wahr/Komplementtore 33 über die Steuersammelleitung 35, wodurch die höherrangige Hälfte 33a Daten in wahrer Form und die niederrangige Hälfte 33b 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 30b in die niederrangige Hälfte 26b 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ßregister 15 gesetzt und damit die Zugriffsoperation zum Speicher 13 begonnen. Zu gleicher Zeit wird die aktuelle 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 , Eingangs Operanden und erzeugt an der hochrangigen Ausgangshälfte ·, (Bytes S0-S3) eine neue, fortgeschriebene Adresse f 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 20b über die Vier-Byte-Datensammelleitung 40 und die niederrangige Hälfte 33b der Tore 33 übertragen. Diese niederrangige HSlfte 33b
EN 974 029
609853/0690
der T/C-Tore wird dabei so gesteuert, daß sie das Einerkomplement des neuen Adressenwertes an die rechte Eingangsseite 20b der arithmetischen Einheit überträgt. Zur gleichen Zeit wird die obere Grenzadresse in der niederrangigen Hälfte 26b des Α-Registers an die linke Eingangsseite der niederrangigen Hälfte 20b der ALU 20 übertragen. Diese niederrangigen Hälfte 20b der arithmetischen Einheit addiert sodann das Einerkomplement der neuen Adresse zu dem oberen Grenzwert, wobei ein +1 übertrags-Eingangssignal von der Schaltung 36 über die CV-tibertrags-Eingangsleitung an die ALU 20 übertragen wird. Hierdurch wird von der Hälfte 20b der arithmetischen Einheit ein Ausgangsresultat erzeugt (Bytes S4-S7), 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 20b 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 Übertrags-Ausgangssignales CY für die niederrangige Hafte 20b der arithmetischen Einheit, Die Abwesenheit des Übertrags-Ausgangssignales CCY = 0) 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, pie Anwesenheit des Übertrags-Ausgangssignales hingegen (CY = 1) zeigt an, daß die neue Adresse noch im erlaubten Bereich liegt, d.h. kleiner ist als die obere Grenzadresse.
Fign. 4 bis 6 erklärenf wieso das Übertrags-Ausgangssignal CY dazu benutzt werden kannf einen überschreitungsfehler anzuzeigen. Der Einfachheit halber wird in den gezeigten Beispielen eine hexadezimale Notierung (Basis 16) anstelle der tatsächlichen Dinaren Notierung benutzt.
EN 974 029
609853/0690
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 Fig. 4 hat die neue Adresse den Wert "5FFP" (24 575 in dezimaler Notierung), was natürlich kleiner ist als die obere Grenze. Das 16-Komplement von 5FFF ist AOO1. Addiert man dieses 16-Komplement 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 Übertrags-Ausgangssignal erzeugt,
Fig. 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 Fig. 6 ist der Fall dargestelltf 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 (CY = 0) einen Fehler, d.h. die Überschreitung des erlaubten Adreßbereiches anzeigt.
Die in Fig. 1 gezeigte Einrichtung arbeitet, wie bereits gesagt, nicht in hexadezimaler, sondern in binärer Notierung. Auch für ; diesen Fall sind die in den Fign. 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 j
EN 974 029
609853/0690
erzeugen. Umgekehrt ist das Komplement zu klein um einen übertrag zu erzeugen, wenn die neue Adrese größer ist als die obere Grenzadresse .
Der Status des CY übertrags-Ausgangssignales 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 CY Signales 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 Benjutzer nicht die Berechtigung hat, zu Speicherbereichen anderer Benutzer zuzugreifen.
Liegt kein Adreßübersehreitungsfehler vor, wird der neue, fortgeschriebene Adressenwert in der höherrangigen Hälfte 34a des C-Registers zurück in die Hälfte 30a des Lokalspeicherregisters über die Verschiebehälfte 24a und die Hälfte 25a des Bestimmungsregisters ü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,
iEs soll daraufhingewiesen werden, daß einige Speicherzugriffs- ;Instruktionen nicht die Fortschreibung der gegenwärtigen Speicheradresse im Register 30a verlangen. In diesen Fällen arbeitet
EN 974 029
609853/0690
die überschreitungs-Prüfeinrichtung genau in derselben Weise, wie oben beschrieben, wobei jedoch die fortgeschriebene Adresse in 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 daraufhingewiesen 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 langer 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üfungs-· einrichtung ist also nicht beschränkt auf Schreibe- oder Leselängen eines festen Wertes.
EN 974 029
609853/06 9 0

Claims (6)

  1. PATENTANSPRÜCHE
    Speicherschutzeinrichtung mit Adressenvergleich, dadurch gekennzeichnet, daß die gegenwärtige Speicheradresse und die gewünschte Datenzugriffslänge in der ersten Zone (20a) eines in zwei voneinander unabhängige Zonen unterteilbaren Addierers (20) addiert werden und daß dieses Summenresultat (S0-S3) in der zweiten Zone (20b) des Addierers von einem oberen Grenzwert subtrahiert wird,
  2. 2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß Addition und Subtraktion im selben Maschinenzyklus durchgeführt werden.
  3. 3. Einrichtung nach Anspruch 2f dadurch cfekermzeirhnet, daß die übertragung der Summe an die Eingänge der zweiten Zone (20b) sofort nach Resultatbildung und asynchron zum Speicherzugriff szyklus erfolgt.
  4. 4. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß das Übertragssignal (CY) der zweiten Zone zur Anzeige der Überschreitung des geschützten Adresssenbereiches benutzt wird.
  5. 5. Einrichtung nach Anspruch 4 gekennzeichnet durch eine mit dem Eingang des Addierers verbundene Komplementiereinrichtuiig (33).
  6. 6. Einrichtung nach Anspruch 5, dadurch gekennzeichnet, daß die Komplementiereinrichtung (33) Daten an die erste Addiererzone (20a) in wahrer und an die zweite Addiererzone (20b) in komplementärer Form überträgt.
    EN 974 029
    609853/0690
    ίΟ
    Leerseite
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 true DE2625113A1 (de) 1976-12-30
DE2625113C2 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
EP0011685A1 (de) * 1978-09-29 1980-06-11 Siemens Aktiengesellschaft Programmierbare Speicherschutzeinrichtung für Mikroprozessorsysteme und Schaltungsanordnung mit einer derartigen Einrichtung

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
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
GB2127994B (en) * 1982-09-29 1987-01-21 Apple Computer Memory management unit for digital computer
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
WO1992008186A1 (en) * 1990-11-02 1992-05-14 Analog Devices, Inc. Address generator for circular buffer
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
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

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IBM-Techniocal Disclosure Bulletin, Dezember 1973, S. 2136/2137 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0011685A1 (de) * 1978-09-29 1980-06-11 Siemens Aktiengesellschaft Programmierbare Speicherschutzeinrichtung für Mikroprozessorsysteme und Schaltungsanordnung mit einer derartigen Einrichtung

Also Published As

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

Similar Documents

Publication Publication Date Title
DE3750938T2 (de) Multiprozessorsystem.
DE2354521C2 (de) Verfahren und Einrichtung zum gleichzeitigen Zugriff zu verschiedenen Speichermoduln
DE2224537C2 (de) Einrichtung und Verfahren zur Instruktionsauswahl in einem Fließbandprozessor
DE69130852T2 (de) Verarbeitungsmechanismus zur Verschachtelung in einem Schleifensteuersystem
DE3688802T2 (de) Arithmetische Einheit mit einfachem Überlaufdetektionssystem.
DE1499175B2 (de) Steuereinrichtung in einem mehrspezies rechner
DE2625113C2 (de) Speicherschutzeinrichtung
DE2302074A1 (de) Speicherschutzanordnung in einem multiprozessorsystem
DE1499203B1 (de) Schaltungsanordnung zum Speicherschutz bei Datenverarbeitungsanlagen mit Simultanbetrieb
DE2360303C2 (de) Datenverarbeitungsanlage mit Adreßübersetzung für Ein-/Ausgabekanäle
DE2712224A1 (de) Datenverarbeitungsanlage
DE2457312A1 (de) Datenbehandlungseinrichtung mit einem feldwaehler
DE2130299B2 (de) Eingabe-/Ausgabekanal für eine Datenverarb eitungsanlage
DE2215066B2 (de) Schaltungsanordnung zum schnellen Austausch von Informationen zwischen Schieberegistern und Einheiten einer Datenverarbeitungsanlage
DE3535436C2 (de)
DE1269393B (de) Mikroprogramm-Steuerwerk
DE1774052B1 (de) Rechner
DE1524142C3 (de) Einrichtung in elektronischen Datenverarbeitungsanlagen zur Steuerung des Vorranges bei der Speicherzuteilung
DE3688806T2 (de) Instruktionsprozessor.
DE2758829A1 (de) Multiprozessor-datenverarbeitungssystem
DE2358593A1 (de) Datenverarbeitungsanordnung und bei dieser verwendbare steuerschaltung
DE2054941C2 (de) Anordnung zur Auswahl von Datensätzen
DE1271433B (de) Adressiereinrichtung fuer einen Tabellenwertspeicher
DE69118392T2 (de) Adressengenerator für einen ringpuffer
DE2610428C3 (de) Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher

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