DE2523686A1 - Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung - Google Patents

Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung

Info

Publication number
DE2523686A1
DE2523686A1 DE19752523686 DE2523686A DE2523686A1 DE 2523686 A1 DE2523686 A1 DE 2523686A1 DE 19752523686 DE19752523686 DE 19752523686 DE 2523686 A DE2523686 A DE 2523686A DE 2523686 A1 DE2523686 A1 DE 2523686A1
Authority
DE
Germany
Prior art keywords
address
translation
main memory
virtual
access
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.)
Withdrawn
Application number
DE19752523686
Other languages
English (en)
Inventor
Peter Dipl Ing Dr Mueller-Stoy
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE19752523686 priority Critical patent/DE2523686A1/de
Priority to CH422676A priority patent/CH601858A5/xx
Priority to AT332776A priority patent/AT360254B/de
Priority to GB2084076A priority patent/GB1567772A/en
Priority to FR7615636A priority patent/FR2312820A1/fr
Priority to NL7605610A priority patent/NL7605610A/xx
Priority to IT2366276A priority patent/IT1081081B/it
Priority to BE167414A priority patent/BE842320A/xx
Publication of DE2523686A1 publication Critical patent/DE2523686A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1072Decentralised address translation, e.g. in distributed shared memory systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

Einrichtlang und Verfahren zur Adreßübersetzung in einem Multiprozessorsystem mit virtueller Adressierung.
Die Erfindung bezieht sich auf eine Einrichtung zur Adreßübersetzung in einem Multiprozessorsystem mit virtueller Adressierung gemäß dem Oberbegriff des Hauptanspruches und auf ein Verfahren zur Adreßübersetzung mit Hilfe dieser Einrichtung.
Virtuell adressierende datenverarbeitende Systeme gehen von einem theoretisch beliebig großen Arbeitsspeicher, einem virtuellen Speicher aus. Der virtuelle Speicher wird in gleich große Bereiche, sogenannte Seiten, unterteilt. Der Inhalt des gesamten virtuellen Speichers befindet sich auf einem äußeren Speicher der Datenverarbeitungsanlage. In den physikalischen Arbeitsspeicher, ebenfalls mit Seitenstruktur, werden jeweils nur diejenigen Seiten des virtuellen Speichers übertragen, die gerade benötigte Befehle oder Operanden eines laufenden Programms enthalten.
Die virtuelle Adressierung ist voi* allem dann sinnvoll einzusetzen, wenn in einem Datenverarbeitungssystem gleichzeitig eine Vielzahl von Programmen verarbeitet werden soll. Jeder Benutzer bzw. jedes Programm hat dann seinen eigenen virtuellen Speicher, jedoch sind die von den verschiedenen Programmen benötigten Seiten eines virtuellen Speichers den Seiten des physikalischen Arbeitsspeichers nicht fest zugeordnet, da der Inhalt einer virtuellen Speicherseite nur bei Bedarf in eine gerade freie Seite des physikalischen Arbeitsspeichers transferiert wird. Die virtuelle* Adressen von Befehlen oder Operanden werden daher den physikalischen Arbeitsspeicheradressen über Adreßtabellen, die sogenannten Übersetzungstafeln, zugeordnet, die für jeden Programmablauf neu präpariert werden.
Der große Vorteil einer virtuellen Adressierung besteht darin, daß jedes der simultan ablaufenden Programme seinen gesamten
YPA 9/210/4002 Qo/FdI
609849/0552
ORIG.NAL INSPECTED
virtuellsn Speicher- und Adressenraum scheinbar uneingeschränkt benutzen kann. Der Programmwechsel von Benutzerprogrammen und Adrcßabersctzun^srcutin-an bleiben für den Benutzer unsichtbar, d. h. sie "brauchen in den Benutzerprogrammen nicht berücksichtigt zu werden.
Allerdings nuß in einer virtuell adressierenden Datenverarbeitungsanlage bei jedem Zugriff zum- physikalischen Arbeitsspeicher eine unter Umständen sehr zeitraubende Übersetzungsroutine durchlaufen werden, die je nach der Größe des physikalischen Arbeitsspeichers mit geketteten Übersetzungstafeln auch mehrstufig sein kann. Dabei benutzt jede Adreßübersetzung bei einem großen Speicherausbau stufenweise eine Mehrzahl von Übersetzungstafeln und erfordert eine Anzahl von HilfsZugriffen zum Arbeitsspeicher, die den eigentlichen Zugriff zum physikalischen Arbeitsspeicher verzögern und erschweren.
Bei Kiiltiprozessorsysteinen konkurrieren&ie einzelnen, selbständig verschiedene Programme verarbeitenden Prozessoren miteinander um Zugriff^ dem gemeinsamen Arbeitsspeicher. Ist bei solchen Systemen die Möglichkeit virtueller Adressierung vorgesehen, so ist es üblich, jedem Prozessor eine fest verdrahtete Adreßübersetzung ssteuerung zuzuordnen, die Auszüge aus den momentan benutzten Übersetzungstafeln enthält. Das schränkt die Anzahl der Speicherjiilfszugriffe der einzelnen Prozessoren ein und ent- ' lastet damit die Arbeitsspeicherschnittstelle.
Aus dieser Struktur der Adreßübersetzung ergeben sich jedoch folgende Probleme:
Während ein Prozessor eine Üb ersetzungstafel ändert, kann ein anderer Prozessor deren noch nicht geänderten Auszug in seiner eigenen Adreßübersetzungssteuerung im Laufe einer Übersetzungsroutine benutzen. Die Folge ist dann eine falsch übersetzte virtuelle Adresse.
VPA 9/210/4002
60 9 849/055 2
Darüber hinaus kann ein Prozessor eine Übersetzungstafel im Arbeitsspeicher inspizieren, um einen Auszug für seine eigene Adreßübersetzungssteuerung zu überprüfen. Wird diese Übersetzungstafel in diesem Zeitraum durch einen anderen Prozessor im Zuge einer Adreßübersetzung verändert, so läßt sich nicht ausschließen, daß der erste Prozessor einen dann nicht mehr gültigen Tafeleintrag als Auszug zwischenspeichert.
Diese Problematik in der Verwaltung der Übersetzungstafeln bei Multiprozessorsystemen ist bekannt. Man hat daher Programmierungskonventionen mit "Belegen" und "Freigeben" von Übersetzungstafeln festgelegt und spezielle Befehle eingeführt, die einerseits bestimmte Fehlerursachen ausschalten und andererseits aufgetretene Fehler als solche erkennen lassen, so daß sie berichtigt werden können. Programmierungsvorschriften jedoch schränken die Flexibilität eines Systems ein und eine Behebung aufgetretener Fehler erfordert leistungsmindernde Tests und Fehlerroutinen.
Der Erfindung liegt daher die Aufgabe zugrunde, eine Einrichtung und ein Verfahren zur Adreßübersetzung in einem Multiprozessorsystem mit virtueller Adressierung der eingangs genannten Art zu schaffen, die eine vereinfachte Verwaltung und Handhabung der Übersetzungstafeln bei Adreßübersetzungsroutinen ohne einschränkende Vorschrift ermöglicht und zugleich weitere FehlerurSachen ausschaltet, so daß sieh die Häufigkeit von Fehlerroutinen vermindert.
Bei einer Einrichtung der eingangs genannten Art wird diese Aufgabe erfindungsgemäß gelöst durch die im Kennzeichen des Hauptanspruchs genannten Merkmale. Bei einer derartigen Lösung wird die Adreßübersetzung nicht individuell in den Prozessoren, sondern zentral im Arbeitsspeicher vorgenommen. Hierzu ist dem Arbeitsspeicher eine zentrale Steuereinrichtung zur Adreßübersetzung zugeordnet, die ohne Mitwirken eines Prozessors mit den Übersetzungstafeln arbeitet und häufig benutzte Auszüge daraus selbst speichert. Die Prozessoren adressieren dann die Arbeitsspeicher unmittelbar mit virtuellen Adressen. Alle Prozessoren
VPA 9/210/4002
609849/0552
konkurrieren - wie bekannt - um Zugriffe zum Arbeitsspeicher, hier aber bereits um dessen zentrale AdreßüberSetzungseinrichtung. Diese ist für die Dauer einer AdreßüberSetzung durch einen bestimmten anfordernden Prozessor belegt und für Zugriffe durch alle anderen Prozessoren gesperrt.Bei dieser Integration der Adreßübersetzung in den Bereich des Arbeitsspeichers können die obengenannten Probleme nicht auftreten, so daß einschränkende Programmierungskonventionen und spezielle Befehle nicht erforderlich sind, die bisher notwendig waren, diese Probleme zu lösen.
Eine Weiterbildung der Erfindung gemäß dem Patentanspruch 2 offenbart den mit einer solchen Einrichtung möglichen Verfahrensablauf zur AdreßütErsetzung in einem Multiprozessorsystem mit virtueller Adressierung. Diese Lösung berücksichtigt insbesondere, die im Arbeitsspeicher zentralisierte Adreßübersetzungseinrichtung von mehreren Programmen zu benutzen, die eigene Sätze von Übersetzungstafeln besitzen. Diese dabei auftretende Schwierigkeit läßt sich auf elegante Weise ausräumen, indem jede- dem Arbeitsspeicher übergebene virtuelle Adresse von einem Programmkennzeichen begleitet wird, das als Zeiger oder Fußpunktadresse zu den programmindiviuellen Übersetzungstafeln entwickelt werden kann.
Eine vorteilhafte Weiterbildung der Erfindung ergibt sich aus dem Inhalt des Patentanspruches 3. Diese berücksichtigt insbesondere, daß eine Adreßübersetzung meist mindestens zwei aufeinanderfolgende Zugriffe zu miteinander verketteten Übersetzungstafeln erfordert. Bei einer Adreßübersetzung im Arbeitsspeicher entfallen dann die sonst notwendigen langen Übertragung szei ten für die Zugriffsparameter und die gelesenen Tafeleinträge auf dem Wege zwischen Prozessor und Arbeitsspeicher, d. h. die Arbeitsspeicherschnittstelle ist geringer belastet.
Auch die erfindungsgemäße Organisation der Adreßübersetzung kann insbesondere nicht systematische Fehlerursachen nicht vollkommen
VPA 9/210/4002
609849/0552
ausschließen. Diese Fehler werden erst im Laufe der Adreßübersetzung offenbar und erfordern zur Beseitigung zunächst den Ablauf einer Betriebssystemroutine und dann die Wiederholung des vorher fehlerhaft abgelaufenen Befehls. Heute werden deshalb in den prozessorindividuellen Adreßübersetun gseinrichtungen vorsorglich Adreßübersetzungen ohne Arbeitsspeieherzugriff mit der übersetzten Adresse ausgeführt, so daß Programmfehler früher erkannt werden können und dann der Befehl vor dem Entstehen sichtbarer Ergebnisse abgebrochen werden kann. Dadurch bleibt er bei bekannten Datenverarbeitungssystemen wiederholbar.
Eine gemäß der Erfindung in den Arbeitsspeicher verlagerte Adreßübersetzung einfordert jedoch eine allgemeinere Sicherstellung der Wiederholbarkeit eines Befehls, als es bei bekannten Systemen mit prozessorindividuellen Adreßübersetzungseinrichtungen der Fall ist. Daß eine solche allgemeinere Sicherstellung der Widerholbarkeit von Befehlen möglich ist, ergibt sich aus der parallel laufenden deutschen Patentanmeldung P .., in der ein Verfahren zum wiederholten Ausführen von Befehlen in einer Verarbeitungseinheit einer Datenverarbeitungsanlage im Fehlerfall beschrieben ist. Dieses sichert eine uneingeschränkte Widerholbarkeit von Befehlen, da Parameter und Operanden eines Befehls so lange verfügbar bleiben, bis das Resultat fehlerfrei ist.
Zur näheren Erläuterung der Erfindung wird im folgenden ein Ausführung sbei spiel anhand der Zeichnung beschrieben. Es zeigt: Fig. 1 ein im Hinblick auf die hier nur zu erläuternde Adreßübersetzur-gsroutine schematisch vereinfachtes Blockschaltbild eines Multiprozessorsystems mit einer zentralen Adre&bersetzungssteuerung und einer Zugriffssteuerung, die beide unmittelbar dem Arbeitsspeicher zugeordnet sind, Fig. 2 scheraatisch die über die Speicherschnittstelle bei einem Speicherzugriff eines Prozessors übertragenen Daten und Steuerinformationen,
Fig. 3 ein zeitorientiertes Ablaufschema bei Adreßübersetzungen
VPA 9/210/4002
6 0 9849/0552
mit zwei anfordernden Prozessoren und
Fig. 4 ein funktioneiles Ablaufdiagramm einer Adreßübersetzung im Zusammenhang mit einem Speicherzugriff "Lesen".
In dem in Fig. 1 dargestellten Blockschaltbild eines Multiprozessorsysteins konkurrieren mehrere Prozessoren P1 bis PN um Zugriff zu einem gemeinsamen Arbeitsspeicher ASP. Dieser ist modular aufgebaut und enthält in seinem für den Benutzer unsichtbaren Teil u. a. für jedes der laufenden Programme in beliebiger Anordnung einen Satz/ron rein schematisch mit AT1, ATN angedeuteten Übersetzungstafeln.Die eine dieser Übersetzungstafeln AT1 sei dabei dem ersten Prozessor P1 und die andere, ATN dem n-ten Prozessor /zugeordnet. Lokalisiert werden die Übersetzungstafeln AT1 und ATN durch Zeiger Z1 bzw. ZN, die auf Fußpunktadressen dieser Übersetzungstafeln hinweisen.
Da die Prozessoren P1 bis PN mit virtuellen Adressen zu dem Arbeitsspeicher ASP zugreifen sollen, ist diesem unmittelbar eine zentrale Adreßübersetzungssteuerung AST zugeordnet, in der ohne Mitwirken eines anfordernden Prozessors die gesamte Adreßübersetzungsroutine abläuft. Dieser Steuereinrichtung ist eine Zugriffssteuerung ZST vorangeschaltet, die einen der miteinander konkurrierenden Prozessoren P1 bis PN die Adreßübersetzungssteuerung freigibt und Anforderungen aller anderen Prozessoren für die Dauer dieser Adreßübersetzung sperrt* Da Steuereinrichtungen für die Adreßübersetzung und für Zugriffe miteinander konkurrierender Prozessoren zu einer bestimmten gemeinsamen Einheit an sich bekannt sind, erübrigt es sich im vorliegenden Fall, sowohl die Adreßübersetzungssteuerung AST als auch die Zugriffssteuerung ZST im einzelnen näher zu erläutern.
Es genügt vielmehr, hier nur auf die Daten und Steuerinforaationen hinzuweisen, die diese beiden Steuereinrichtungen benötigen. Dazu dient die Darstellung in Fig. 2. Sie zeigt im wesentlichen die einzelnen Daten- und Informations gruppen, die über die Speicher« schnittstelle bei einem Zugriff eines Prozessors PN zum Arbeitsspeicher ASP in einer oder in beiden Richtungen übertragen
VPA 9/210/4002
609849/0552
werden müssen. An den Arbeitsspeicher übergibt der anfordernde Prozessor neben der Speicheradresse ADR und einem Kommando COM, das die Art des SpeicherZugriffs, d. h. "Lesen" oder "Schreiben" festlegt, ein Programmkennzeichen PRZ, das das auf dem anfordernden Prozessor laufende Programm definiert und damit auf eine bestimmte Übersetzungstafel, z.B. ATN hinweist. Dieses Programmkennzeichen PRZ ist wie einer der in Fig. 1 dargestellten Zeiger, z, B. ZN, zu interpretieren, d. h. aus ihm ist eine Fußpunktadresse für eine bestimmte Übersetzungstafel, im gewählten Beispiel die Ubersetzungstafel ATN, ableitbar.
Neben weiteren Steuerinformationen STI und Fehlermeldungen FM, die üblicherweise immer über Schnittstellen in beiden Richtungen übertragen werden, laufen noch die eigentlichen Speicherdaten über die Schnittstelle, entweder als Schreibdaten SD in Richtung des Arbeitsspeichers ASP oder als Lesedaten LD in Richtung des anfordernden Prozessors PN.
In Fig. 3 ist eine Übersicht über die Zeitverhältnisse bei konkurrierenden Speicherzugriffen durch anfordernde Prozessoren anhand eines zeitlichen Ablaufdiagrammes dargestellt. Vereinfacht sind der Belegung des Arbeitsspeichers ASP Anforderungen von zwei Prozessoren P1 bzw. P2 gegenübergestellt. In dem durch die Zeitachse t vorgegebenen zeitlichen Ablauf von oben nach unten wird zunächst die Anforderung des ersten Prozessors P1 auf einen Arbeitsspeicherzugriff im Zeitabschnitt P11 bedient. Innerhalb dieses Zeitabschnittes wird im Arbeitsspeicher im Zeitabschnitt A1 zunächst die Zugriffssteuerung belegt und damit eine mögliche Anforderung eines anderen Prozessors, z. B. des Prozessors P2, blockiert. Im Arbeitsspeicher ASP wird im darauffolgenden Zeitabschnitt A2 die AdreßüberSetzung durchgeführt. Daran schließt sich im Zeitabschnitt A3 der eigentliche Speicherzugriff an, worauf im Zeitabschnitt A4 die Zugriffssteuerung ZST wieder freigegeben wird.
Im angenommenen Beispiel wartet der zweite Prozessor P2 bereits während des gesamten Zeitabschnittes P20 auf die Freigabe der VPA 9/210/4002
.'6 09849/0552
Zugriffssteuerung ZST und belegt diese zu Beginn des Zeitabschnittes P21. Danach laufen nun analog wie oben im Arbeitsspeicher ASP dieselben Vorgänge ab, so daß nach Freigabe der Zugriffs steuerung ZST im Zeitabschnitt A4 nunmehr wieder der auf einen Speicherzugriff im Zeitabschnitt P10 bereits wartende erste Prozessor P1 bedient werden kann.
Nach dieser Darstellung des zeitlichen Ablaufes von Prozessoranforderungen auf Speicherzugriffe soll anhand eines in Fig. 4 dargestellten funktionellen Ablaufdiagramms eine Adreßiibersetzung .für eine "Lese"-Operation in einzelnen Schritten erläutert werden. Dieses Ablaufdiagramm ist in zwei Spalten unterteilt. In der rechten Spalte sind alle Verfahrensschritte dargestellt, an denen ein einen Speicherzugriff anfordernder Prozessor PN beteiligt ist. In der linken Spalte sind alle ' jene Vorgänge dargestellt, die innerhalb des Arbeitsspeichers ASP und der ihm zugeordneten Zugriffssteuerung ZST und Adreßübersetzungssteuerung AST ablaufen.
über eine der in Fig. 2 dargestellten Steuerinformationen STI fordert der Prozessor PN einen Speicherzugriff an, der durch die Zugriffssteuerung ZST freigegeben oder blockiert wird. Erkennt die Zugriffssteuerung ZST die Anforderung an, so wird sie dadurch belegt und der Prozessor übergibt an den Arbeitsspeicher ASP ein Programmkennzeichen PRZ , das das auf ihm ablaufende Programm definiert, ein Kommando COM, im Beispiel ein Lesekommando und bezeichnet damit die durchzuführende Speicheroperation, sowie die virtuelle Adresse ADRV des Speicherplatzes, an dem diese Operation durchzuführen ist.
In der Adreßübersetzungssteuerung AST wird zunächst aufgrund des Programmkennzeichens PRZ diejenige Übersetzungstafel, hier ATN, über eine Fußpunktadresse ermittelt, die dem im anfordernden Prozessor PN ablaufenden Programm zugeordnet ist. Im nächsten Verfahrensschritt wird dieser Fußpunktadresse mit Hilfe eines
VPA 9/210/4002
609849/0 552
Teiles der virtuellen Adresse ADRV eine bestimmte Distanzadresse hinzuaddiert und damit eine bestimmte Eintragszeile ATNX dieser Übersetzungstafel ermittelt. Dieser Eintrag wird dann ausgelesen und anschließend getestet. Ergibt dieser Test einen offensichtlichen Programmfehler, so erfolgt eine Rückmeldung an den anfordernden Prozessor PN. Nicht mehr dargestellt ist, daß sich daraus weitere ITehlerroutinen ergeben können, die zum Abbruch des Speicherzugriffes führen und nach Ermittlung und Behebung des Fehlers eine Wiederholung der Speicheroperation erfordern.
Bei mehrstufigen Adreßübersetzungen, d. h. miteinander verketteten Übersetzungstafeln weist der Inhalt der Eintragszeile ATNX auf ■ die Fußpunktadresse einer nachgeordneten Übersetzungstafel hin* In diesem Fall wird» wie oben beschrieben, wiederum aus einem Teil der virtuellen Adresse ADRV eine bestimmte Eintragszeile der nachgeordneten Übersetzungstafel bestimmt, deren Inhalt gelesen und getestet. Je nach der Größe der Adreßübersetzungsstufen muß diese Schleife mehrmals durchlaufen werden. In der Darstellung des funktioneilen Ablaufes in Fig. 4 ist dies durch eine mit Pfeilen gekennzeichnete gestrichelte Linie angedeutet.
Am Ende der AdreßüberSetzungsroutine ergibt sich aus dem Inhalt der zuletzt ermittelten Eintragszeile, hier mit ATNX bezeichnet, und einem weiteren Teil der virtuellen Adresse ADRV die reelle Adresse ADRR eines .bestimmten Speicherplatzes im physikalischen Arbeitsspeicher ASP. Damit ist nun der eigentliche Zugriff zum Arbeitsspeicher ASP möglich. Auch hier wird wiederum getestet, ob ein Zugriffsfehler vorliegt und der Fehlerfall an den anfordernden Prozessor PN rückgemeldet.
Bei einwandfreiem Zugriff zum Arbeitsspeicher ASP wird nunmehr aufgrund des vom anfordernden Prozessor PN übergebenen Kommandos COM die Art der Speicheroperation ermittelt. Bei einer Leseoperation wird der Inhalt des Speicherplatzes mit der ermittelten reellen
VPA 9/210/4002
6098A9/0552
Adresse ADRR ausgelesen, bereitgestellt und an den Prozessor PN übertragen. Damit ist der Speicherzugriff abgeschlossen, die Zugrifffssteuerung ZST wird freigegeben, so daß der Arbeitsspeicher ASP mit den ihm zugeordneten Steuerungen ZST bzw. AST für einen weiteren Zugriff zur Verfugung steht.
3 Patentansprüche
4 Figuren
VPA 9/210/4002
60 96 49/0552

Claims (3)

  1. -11-Patentansprüche
    (T) Einrichtung zur Adreßübersetzung in einem Multiprozessorsystem mit virtueller Adressierung mit äußeren Speichern für die einzelnen virtuell adressierten Programme und im Arbeitsspeicher niedergelegten Übersetzungstafeln, in denen für jedes laufende Programm eine Zuordnung der verwendeten virtuellen Adresssen zu reellen Arbeitsspeicheradressen festgelegt ist und mit Steueranordnungen zum Übersetzen von virtuellen in reelle Adressen, mit denen zum Arbeitsspeicher zum Einschreiben bzw. Auslesen von Adresseninhalten zugegriffen wird, dadurch gekennzeichnet, daß dem Arbeitsspeicher (ASP) unmittelbar eine einzige, zentrale Adreßübersetzungssteuerung (AST) zugeordnet ist, mit der selbständig ohne Mitwirken eines einen Speicherzugriff fordernden Prozessors (PN) virtuelle in reelle Adressen übersetzbar sind und in der dazu häufig benutzte Auszüge aus den Übersetzungstafeln gespeichert sind, und daß weiterhin eine zentrale Zugriffssteuerung (ZST) vorgesehen ist, die bei Zugriff eines Prozessors zur Adreßübersetzungssteuerung den Zugriff aller anderen Prozessoren für die Dauer dieses Zugriffs sperrt.
  2. 2. Verfahren zur Adreßübersetzung in einem Multiprozessorsystem mit virtueller Adressierung mit Hilfe einer Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß ein einen Speicherzugriff anfordernder Prozessor (PN) die Zugriffssteuerung (ZST) belegt, sobald sie für ihn frei ist und an den Arbeitsspeicher (ASP) ein Programmkennzeichen (PRZ) als Unter^- scheidungskriterium für die verschiedenen laufenden Programme, eine virtuelle Adresse (ADRV) und ein Schreib- bzw. Lesekommando (COM) übergibt, daß dann die Adreßübersetzungssteuerung (AST) mit dem Programmkennzeichen eine Anfangsadresse der diesem Programm zugeordneten Übersetzungstafel (ATN) bildet und aufgrund einer .der virtuellen Adresse entnommenen Distanzadresse ein Eintrag in dieser Tafel ermittelt wird, aus dessen^Inhalt und einem weiteren Teil der virtuellen Adresse eine reelle Adresse (ADRR) gebildet wird
    VPA 9/21Ό/4002
    €09849/0552
    und daß mit dieser Adresse der Zugriff zum Arbeitsspeicher durchgeführt wird.
  3. 3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß ein Teilablauf, bei dem aus der ermittelten Anfangadresse einer Übersetzungstafel (ATN) und einem Teil der virtuellen Adresse (ADRV) eine Tafeleintragsadresse (ATNX) gebildet, dieser Tafeleintrag gelesen, soweit erforderlich, modifiziert und das Ergebnis im Hinblick auf einen an den anfordernden Prozessor (PN) rückzumeldenden Zugriffsfehler getestet wird, im Falle einer mehrstufigen Adreßübersetzung mit hierarchisch geordneten Übersetzungstafeln mehrmals durchlaufen wird, daß erst bei fehlerfreier Adreßübersetzung aus dem Inhalt des zuletzt ermittelten Tafeleintrags und dem verbliebenen Teil der virtuellen Adresse eine reelle Adresse (ADRR) im Arbeitsspeicher (ASP) gebildet und aufgrund dieser Adresse die Speicheroperation durchgeführt, d. h. aus dem Arbeitsspeicher ein Datenwort gelesen und in den anfordernden Prozessor übertragen bzw. aus dem Prozessor in den Arbeitsspeicher übertragen und eingeschrieben wird und daß anschließend die Zugriffssteuerung (ZST) freigegeben wird.
    VPA 9/210/4002
    609&49/QS52
DE19752523686 1975-05-28 1975-05-28 Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung Withdrawn DE2523686A1 (de)

Priority Applications (8)

Application Number Priority Date Filing Date Title
DE19752523686 DE2523686A1 (de) 1975-05-28 1975-05-28 Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung
CH422676A CH601858A5 (de) 1975-05-28 1976-04-05
AT332776A AT360254B (de) 1975-05-28 1976-05-06 Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung
GB2084076A GB1567772A (en) 1975-05-28 1976-05-20 Data processing systems utilising virtual addressing
FR7615636A FR2312820A1 (fr) 1975-05-28 1976-05-24 Procede et dispositif pour la traduction d'adresses dans un multiprocesseur a adressage virtuel
NL7605610A NL7605610A (nl) 1975-05-28 1976-05-25 Inrichting en werkwijze voor de adresvertaling in een computersysteem met multiverwerking en met virtuele adressering.
IT2366276A IT1081081B (it) 1975-05-28 1976-05-26 Dispositivo per tradurre gli indirizzi in un sistema a piu elaboratori con formazione di indirizzi virtuali
BE167414A BE842320A (fr) 1975-05-28 1976-05-28 Procede et dispositif pour la traduction d'adresses dans un multiprocesseur a adressage virtuel

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19752523686 DE2523686A1 (de) 1975-05-28 1975-05-28 Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung

Publications (1)

Publication Number Publication Date
DE2523686A1 true DE2523686A1 (de) 1976-12-02

Family

ID=5947671

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19752523686 Withdrawn DE2523686A1 (de) 1975-05-28 1975-05-28 Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung

Country Status (8)

Country Link
AT (1) AT360254B (de)
BE (1) BE842320A (de)
CH (1) CH601858A5 (de)
DE (1) DE2523686A1 (de)
FR (1) FR2312820A1 (de)
GB (1) GB1567772A (de)
IT (1) IT1081081B (de)
NL (1) NL7605610A (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0006485A1 (de) * 1978-06-23 1980-01-09 International Business Machines Corporation Seiten-Adressiervorrichtung in einem Datenverarbeitungssystem
EP0007001A1 (de) * 1978-07-17 1980-01-23 International Business Machines Corporation Datenverarbeitungseinrichtung mit beschränktem Paging
EP0166268A2 (de) * 1984-06-29 1986-01-02 International Business Machines Corporation Zugriff zu gemeinschaftlichem Speicher für Datenverarbeitungssystem

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0006485A1 (de) * 1978-06-23 1980-01-09 International Business Machines Corporation Seiten-Adressiervorrichtung in einem Datenverarbeitungssystem
EP0007001A1 (de) * 1978-07-17 1980-01-23 International Business Machines Corporation Datenverarbeitungseinrichtung mit beschränktem Paging
EP0166268A2 (de) * 1984-06-29 1986-01-02 International Business Machines Corporation Zugriff zu gemeinschaftlichem Speicher für Datenverarbeitungssystem
EP0166268B1 (de) * 1984-06-29 1990-05-16 International Business Machines Corporation Zugriff zu gemeinschaftlichem Speicher für Datenverarbeitungssystem

Also Published As

Publication number Publication date
CH601858A5 (de) 1978-07-14
ATA332776A (de) 1980-05-15
NL7605610A (nl) 1976-11-30
FR2312820A1 (fr) 1976-12-24
GB1567772A (en) 1980-05-21
BE842320A (fr) 1976-11-29
FR2312820B3 (de) 1979-02-16
IT1081081B (it) 1985-05-16
AT360254B (de) 1980-12-29

Similar Documents

Publication Publication Date Title
DE2350884C2 (de) Adreßumsetzungseinheit
EP0013737B1 (de) Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem
DE3854481T2 (de) Datenverarbeitungsverfahren in einem dezentralisierten Verarbeitungssystem.
DE68916167T2 (de) Adressenspeichersperrung mit priorität für einen gemeinsamen speicher.
DE3803759C2 (de)
DE2637054C3 (de) Steuervorrichtung für einen Pufferspeicher
DE3508291A1 (de) Realzeit-datenverarbeitungssystem
DE3439302A1 (de) Speichersteuerungsvorrichtung
DE1499607C2 (de) Zugriffschaltung für Umlaufspeicher in einer Datenverarbeitungsanlage
DE2101949A1 (de) Verfahren zum Schutz von Datengruppen in einer Multiprocessing-Datenverarbeitungsanlage
DE3046912C2 (de) Schaltungsanordnung zum selektiven Löschen von Cachespeichern in einer Multiprozessor-Datenverarbeitungsanlage
DE2063195C2 (de) Verfahren und Einrichtung zur Operationssteuerung einer Anzahl von externen Datenspeichern
EP0062141B1 (de) Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem
DE2350229A1 (de) Datenverarbeitungsanlage, insbesondere als steuereinrichtung fuer fernsprechvermittlungsanlagen
DE2710477C2 (de)
DE69031529T2 (de) Speichersteuerungssystem
EP0265636A1 (de) Multiprozessor mit mehreren mit Cache-Speichern ausgerüsteten Prozessoren und einem gemeinsamen Speicher
DE2523686A1 (de) Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung
CH495584A (de) Datenverarbeitungsanlage
DE1774421B1 (de) Mehrprogramm datenverarbeitungsanlage
DE2404887C2 (de) Schaltungsanordnung für den Informationsaustausch mit einem Rechner
DE2034423B2 (de) Verfahren zur Fehlersuche in einem programmgesteuerten Vermittlungssystem
DE3235264C2 (de)
DE2355814C2 (de) Kanalzugriffseinrichtung für eine hierarchische Speicheranordnung
EP0525214A1 (de) Verfahren zum Betreiben eines Automatisierungsgeräts

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee
8130 Withdrawal
8180 Miscellaneous part 1

Free format text: DIE VEROEFFENTLICHUNG IST ZU STREICHEN