DE2737353A1 - Verfahren zum testen der adressbildung in einem dv-system und vorrichtung zur durchfuehrung des verfahrens - Google Patents

Verfahren zum testen der adressbildung in einem dv-system und vorrichtung zur durchfuehrung des verfahrens

Info

Publication number
DE2737353A1
DE2737353A1 DE19772737353 DE2737353A DE2737353A1 DE 2737353 A1 DE2737353 A1 DE 2737353A1 DE 19772737353 DE19772737353 DE 19772737353 DE 2737353 A DE2737353 A DE 2737353A DE 2737353 A1 DE2737353 A1 DE 2737353A1
Authority
DE
Germany
Prior art keywords
descriptor
address
bits
register
memory
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
DE19772737353
Other languages
English (en)
Inventor
James N Dahl
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.)
Bull HN Information Systems Italia SpA
Original Assignee
Honeywell Information Systems Italia SpA
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 Honeywell Information Systems Italia SpA filed Critical Honeywell Information Systems Italia SpA
Publication of DE2737353A1 publication Critical patent/DE2737353A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • 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

Description

Die vorliegende Erfindung betrifft ein Verfahren nach dem Oberbegriff des Anspruches 1 sowie eine Vorrichtung zur Durchführung des Verfahrens. Insbesondere bezieht sich die vorliegende Erfindung auf den Test und die Diagnose von Fehlern bei der Adressbildung in Großrechnersystemen, wie sie beispielsweise in der DT-OS 25 16 050 und 25 46 354 dargestellt und beschrieben sind.
Großrechensysteme umfassen heutzutage typischerweise mehrere Prozessoren und erlauben eine Mehrprogrammbearbeitung im Dialog durch örtliche und entfernte Denutzer. Um einen solchen Bearbeitungsumfang zu gewährleisten, müssen unterteilbare Datenspeicher für Benutzerprogramme und Daten, die Betriebssystem-Software und die gemeinsam benutzten Anwenderprogramme vorgesehen sein. Ferner ist eine ausgefeilte Software und Hardware erforderlich, um die Programme und Daten während der verschiedenen durch die Systemprozessoren ausgeführten Aktivitäten in geeigneter Weise zu handhaben.
Um die Benutzeranforderungen zu befriedigen, ohne daß hierbei ein zu hoher Preis für den Hauptspeicher des Systems überschritten wird, benutzen die Datenverarbeitungssysteme erweiterte Speicher, in welchen der Primärspeicher des Systems durch sekundäre Großraumspeicher, z.B. Magnetplatten oder Magnetbänder ergänzt wird. Während somit irgendein Benutzer während der Programmbearbeitung tatsächlich einen kleinen Teil des Hauptspeichers beansprucht, erscheint es so, daß diesem Benutzer ein sehr viel größerer "virtueller Speicher" auf Grund der Erweiterung des Hauptspeichers durch den Sekundärspeicher zur Verfügung steht.
Die Speicherung der Information im Hauptspeicher kann in Form von Segmenten und Seiten erfolgen, wobei die Benutzerprogramme in Segmente variabler Länge unterteilt sind und die Segmente mehrere Datenseiten gleicher Länge aufweisen können. Die Verwendung der Seitenunterteilungstechnik gestattet eine flexible
809808/0978
Informationsspeicherung an beliebig verfügbaren Speicherplätzen, wobei eine vorgesehene Seitentabelle dem Benutzer die Auffindung der gespeicherten Seiten gestattet.
Während der Bearbeitung eines Benutzer-Seitensegmentes, wobei eine relative Zellenadresse durch den Datenprozessor erzeugt wird, dient die relative Segmentadresse der Auffindung eines speziellen Datenwortes bzw. einer Hinweisadresse auf die zu adressierende Seite, wobei die Kombination des speziellen Datenwortes mit der relativen Adresse zu der absoluten Adresse der Speicherzelle führt. Insbesondere sind im Realspeicher Basisbestimmungen vorgesehen, um die darin gespeicherten Daten aufzufinden, wobei die Basisbestimmung einen Teil des Deskriptorwortes der gemeinsam benutzten Daten bildet. Da Daten im Realspeicher herumgeschoben werden, werden die absoluten Adressen der gespeicherten Daten laufend verändert und die Deskriptorworte werden zur Auffindung von Seitentabellen und Segmenten ebenso wie zur Auffindung der gesuchten Seiten verwendet. Ein Segmentdeskriptor umfaßt daher die Basisadresse des virtuellen und des realen Speicherplatzes des Segmentes, wenn das Segment nicht seitenunterteilt ist bzw. er umfaßt die Basisadresse des virtuellen Speichersegmentes, wenn das Segment seitenunterteilt ist. Ein Seitentabellenwort gibt die Basisadresse einer Seite des entsprechenden Segmentes vor.
Unter Benutzung des vorstehend erwähnten Konzeptes werden relative Adressen in absolute Adressen entweder in einem einstufigen oder in einem mehrstufigen Prozeß umgewandelt, was von der Art der zu verarbeitenden virtuellen Adresse ebenso abhängt, wie von dem Umstand, ob die geeigneten Seitentabellenworte und/oder Seitentabellen sofort für einen Zugriff durch die Adressenbildungslogik verfügbar sind oder nicht.
Auf Grund der großen Bedeutung einer genauen Umwandlung der relativen Adresse in eine absolute Adresse sind eingebaute Test- und Diagnoseeinrichtungen von großem Wert, wobei einmal festgestellt werden kann, ob das System eine richtige Adressbildung
809808/0978
ο —
ausführt und wo im Falle eines Fehlers dieser aufzufinden ist.
Es ist daher die Aufgabe der vorliegenden Erfindung, ein Test- und Diagnoseverfahren für Fehler anzugeben, die bei der Adressbildung eines mit einer virtuellen Adresse arbeitenden Datenverarbeitungssystems auftreten. Die Lösung dieser Aufgabe gelingt gemäß dem im Anspruch 1 gekonnzeichneten Verfahren. Die vorteilhafte Ausgestaltung einer Vorrichtung zur Durchführung des Verfahrens ist den Unteransprüchen entnehmbar.
Gemäß der Erfindung werden drei hardwaremäßig verwirklichte Befehle für die Verwendung in einem verbesserten Datenverarbeitungssystem vorgeschlagen. Durch die Verwendung dieser Befehle, den effektiven Hinweisadressen- und Adressentest-Befehl (EPAT = effective pointer and adress to test), den Speicher-Test-Adressregister-Befehl (STTA = store test address register) und den Speicher-Test-Deskriptorregister-Befehl (STTD = store test descriptor register) können Test- und Diagnosefehler, die bei der Bildung des virtuellen Adressteils auftreten, leicht festgestellt werden. Der EPAT-Befehl verriegelt den ausgewählten Deskriptor in speziellen Testregistern jedesmal dann, wenn ein Deskriptor für eine Adressbildung aufgerufen wird. Die EPAT-Befehle verriegeln ferner zusätzlich die effektive Arbeitsbereichsnummer und die virtuelle Adresse des Arbeitsbereichs in Speicherregistern, wenn diese Daten in jedem Adressbildungszyklus erzeugt werden. Die reale Speicheradresse wird sodann in ein anderes Testregister während jeder Stufe des Bildungszyklus für eine reale Speicheradresse eingetaktet. Dieser Zyklus kann in einem oder in mehreren Schritten ablaufen, was davon abhängt, ob sich das für die Bildung der realen Speicheradresse erforderliche Seitentabellenwort gerade in der in dem Assoziativspeicher der virtuellen Einheit gespeicherten Seitentabelle befindet oder nicht. Für den Fall, daß sich das Seitentabellenwort nicht im Assoziativspeicher befindet, wird eine Schrittfolge aufgerufen, die den Abruf des geeigneten Seitentabellenwortes aus dem Hauptspeicher in den Assoziativspeicher erfordert.
809808/0978
Hierzu kann ein zusätzlicher Schritt bzw. mehrere Schritte erforderlich sein. In jedem Fall wird eine reale Speicheradresse am Ende einer jeden Schrittfolge entwickelt, wobei jedoch die erzeugten realen Speicheradressen solange nicht die gesuchten Adressen darstellen, bis das geeignete Seitentabellenwort in den Assoziativspeicher eingefügt ist. Die Tatsache, daß jener Teil der realen Speicheradresse, der am Ende einer jeden Schrittfolge erzeugt worden ist, durch den EPAT-Befehl in dem Testregister verriegelt wird, gestattet dem Diagnoseprogramm oder einer Bedienungsperson die überprüfung des Zustands der realen Speicheradressenbildung zu dem Zeitpunkt, wo ein Fehler erzeugt wurde, wenn die reale Speicheradressenbildung durch einen Fehler vor der Erzeugung der endgültigen Speicheradresse beendigt wird. Alle drei während der Adressenbildung beaufschlagten Register werden über den STTA-Befehl im Hauptspeicher abgespeichert.
Anhand eines in den Figuren der beiliegenden Zeichnungen dargestellten Ausführungsbeispieles sei die Erfindung im folgenden näher erläutert. Es zeigen:
Fig. 1 ein Blockdiagramm eines verbesserten Datenverarbeitungssystems, bei dem die vorliegende Erfindung Anwendung findet,
Fig. 2 ein Blockdiagramm einer Einrichtung zur Verwirklichung der vorliegenden Erfindung,
Fig. 3 eines der bei der Adressbildung verwendeten Standard-Deskriptorformate,
Fig. 4 eines der bei der Adressbildung verwendeten Super-Deskriptorformate,
Fig. 5 ein Blockdiagramm der in der virtuellen Speichereinheit verwendeten Adressenbildungsfolge,
Fig. 6 das Datenformat der virtuellen 44 Bit-Adresse, und Fig. 7 das Format der realen 24 Bit-Speicheradresse.
809808/0978
27373b3
Das in Fig. 1 dargestellte System entspricht, wenn man einmal von dem Block absieht, der mit virtueller Speicher- und Sicherheitseinheit 100 bezeichnet ist, demjenigen System, wie es aus der Computerreihe 6000 der Firma Honeywell Information Systems Inc. bekannt ist. Das System ist insofern redundant, als die Steuereinheit 102 und die Adressenbildungseinheit 104 alle Adressierungsfunktionen des Systems ausführen, wenn die Einrichtung gemäß der Erfindung nicht vorliegt. Ohne die Einheit 100 sind jedoch viele Vorteile des durch den Deskriptor bewirkten Zugriffes auf die Daten nicht verfügbar. VJenn die virtuelle Speicher- und Sicherheitseinheit 100 in dem System wirksam ist, so wird jegliche Adressbildung in dieser Einheit vorgenommen, ganz gleich, ob die Adressen in virtueller oder absoluter Weise gebildet werden.
In den Figuren 2A und 2B sind logische Schaltungsdiagramme der Hardware dargestellt, auf die der EPAT-Befehl einwirkt. Aus der Fig. 2 ist ferner die Einwirkung der Befehle STTD und STTA erkennbar, durch welche die durch den EPAT-Befehl gespeicherte Information im Speicher abgelegt wird. In Fig. 7 ist das Format des EPAT-Befehles dargestellt. Die Bits 0 bis 17 stellen das Adressfeld des Befehles dar und sie bilden in Abhängigkeit von den Status-Index-Modifikationsbits 30 bis 35 die effektive Adresse des Befehls, wie er in Fig. 2B mit 234 bezeichnet ist. Der Operationscode belegt die Eitpositionen 18 bis 27 und er weist bei dem EPAT-Befehl den Wert 412ß auf. Wenn der Operationscode zu der Steuereinheit 102 in Fig. 1 übertragen wird, so identifiziert die Steuereinheit die auszuführende Operation und erzeugt die erforderlichen Daten für die Kardware zur Funktionsausführung. Das Bit 28 ist ein Unterbrechungs-Sperrbit, das während der Ausführung des Befehls die Erzeugung einer Unterbrechung untersagt, falls es auf den Wert "1" gesetzt ist. Durch dieses Merkmal wird die vollständige Ausführung der geforderten Funktion auch dann gestattet, wenn die Hierarchie des Systems normalerweise die vollständige Ausführung des Befehls verhindern würde. Das Bit 29 ist ein Operanden-Deskriptor-Modifizierer und hat bei einem Wert von "0" zur Folge, daß der
809808/0978
3 -
Deskriptor in den Befehls-Segmentregistern 204 und 206 gemäß Fig. 2A zur Verwendung bei der Adressenbildungsfolge ausgewählt wird. Wenn das Bit 29 den Wert "1" aufweist, so werden die Operandendeskriptor-Registerreihen 200 und 202 gemäß Fig. 2A ausgewählt. Da 8 Operandendeskriptor-Register in jeder der zwei Deskriptorregisterreihen 200 und 202 in der virtuellen Einheit vorliegen, ist es erforderlich, festzulegen, welches der 8 Register für die Adressenbildung benutzt werden soll. Wannimmer das Bit 29 auf den Wert "1" gesetzt ist, werden daher zu diesem Zweck die ersten drei Bits des Adressfelds des Befehls auf den Leitungen 246, 248 und 250 gemäß Fig. 2A benutzt, um eines der 8 Operandendeskriptorregister für die Benutzung auszuwählen. Wenn die ersten drei Bits des Befehl-Adressfelds den Wert "0" aufweisen, so wird das Operandendeskriptor-Register 0 (ODR-O) in den Registerreihen 200 und 202 ausgewählt, wenn die Bits die Kostellation 001 aufweisen, so wird das Operandendeskriptor-Register 1 (ODR-1) ausgewählt, UBW. .
In den Figuren 3 und 4 ist das Format des Standard-Deskriptors und des Superdeskriptors dargestellt. Die Bits 0 bis 19 des ersten Wortes mit 36 Bit des Standard-Deskriptors stellen den Wert der Grenze des Segmentes in Bezug auf die Basis dar, welche durch das zweite Wort mit 36 Bit gebildet wird. Der Grenz-Wert stellt die obere Grenze für Bezugnahmen in dem durch den Deskriptor beschriebenen Segment dar, wobei von der Basis ausgegangen wird. Die Bits 20 bis 28 sind Hinweisbits, welche der Hardware die Eigenschaften des durch den Deskriptor definierten Segmentes anzeigen. Die folgende Tabelle zeigt jene Eigenschaften des Segmentes an, welche definiert sind, wenn das entsprechende Hinweisbit den Wert "1" aufweist.
Bit Durch Hinweiszeichen freigegebene Eigenschaft
20 Lesen freigegeben
21 Schreiben freigegeben
22 Deskriptorsicherung freigegeben
809808/0978
23 Pufferspeicherung freigegeben
24 Reserviert für Softwaresteuerung
25 Bearbeitung freigegeben
26 Privilegmodus freigegeben
27 Grenze ist definiert
28 Bezugnahmen sind freigegeben
Wenn irgendeines der Bits den Wert O aufweist, so bedeutet dies, daß die zugeordnete Eigenschaft nicht freigegeben ist. Die Bits 29 bis 31 definieren das Arbeitsbereichregister, welches später näher erläutert wird und die Bits 32 bis 35 definieren verschiedene, in dem System benutzte Deskriptortypen. Der Standard- und Superdeskriptor sind nicht die einzigen Deskriptortypen, die in dem System definiert sind, aber sie werden angegeben, um die grundlegende Systemkonfiguration zu veranschaulichen.
Der Superdeskriptor gemäß Fig. 4 wird benutzt, um extrem große Segmente in dem virtuellen Speicher zu definieren. Die Bits O bis 9 werden als Basiswert des Segmentes interpretiert und das System füllt automatisch rechts die Basis mit 26 Nullstellen auf, um ein Basiswort mit 36 Bit zu bilden. Das Grenz-Feld, d. h. die Bits 10 bis 19 werden in gleicher Weise interpretiert, jedoch mit der Ausnahme, daß es mit "1"-Werten aufgefüllt wird, um ein Wort mit 36 Bit zu bilden. Die Bits 20 bis 28 des Superdeskriptors sind die gleichen Hinweisbits und besitzen die gleiche Bedeutung, wie zuvor anhand der Tabelle für den Standard-Deskriptor beschrieben. Die Bits 29 bis 31 definieren das Arbeitsbereichsregister und die Bits 32 bis 35 definieren den Deskriptortyp im Superdeskriptor, wie dies bereits hinsichtlich der Bits in dem Standard-Deskriptor der Fall war. Das 36 Bit-Speicherplatzwort des Superdeskriptors bildet eine Verschiebung
26
(Offset) von der Modulo 2 -Basis. Wie dies bereits beim
809808/0978
Standard-Deskriptor der Fall war, muß die durch das Speicherplatzwort definierte Verschiebung geringer als der erweiterte Wert der Grenze sein.
Wenn einmal der EPAT-Befehl in die Steuereinheit 102 eingelesen worden ist und in die virtuelle Einheit 100 übertragen worden ist, so gibt das Bit 29 auf der Leitung 252 gemäß Fig. 2A entweder die Befehlssegmentregister 204 und 206 oder die Operandendeskriptorregister 200 und 202 frei. Unter der Annahme, daß ein Standard-Deskriptor beim Adressenbildungszyklus verwendet wird, verweist das erste Wort mit 36 Bit, das den Grenz-Wert enthält, auf die Arbeitsbereich-Registernummer und der Deskriptortyp wird durch das Speichersignal 254 in das Speicherregister 216 geladen. Die Register 216 und 218 speichern die zwei Deskriptorworte bis der nächste EPAT-Befehl die Erzeugung eines anderen Speichersignales hervorruft. Die Daten stehen somit zur Speicherung im Hauptspeicher durch den STT-Befehl auf der Leitung 256 zur Verfügung, wobei die Datenschienen 220 und 222 für die übertragung der zwei Deskriptorworte zum Hauptspeicher verwendet werden. Es sei darauf verwiesen, daß diese Daten zu irgendeinem Zeitpunkt vor dem nächsten EPAT-Befehl gespeichert werden können und daß sie während irgendeines anderen Adressenbildungszyklus nicht verändert werden. Gleichzeitig mit dem Eintakten der Deskriptorworte in die Register 216 und 218 wird gemäß Fig. 2B der zugehörige Teil der Deskriptorworte zu einer Recheneinheit übertragen, die bei der aktuellen Adressenkompilierung benutzt wird.
In den Fig. 5 und 5A ist in Blockdiagrammdarstellungen die Adressenbildungsfolge unter Benutzung des Standard-Deskriptors und des Superdeskriptors dargestellt. Obgleich der Superdeskriptor und der Standard-Deskriptor etwas verschiedenen Wegen bis zur Ankunft an der virtuellen Adresse folgen, ist das Format für die virtuelle Adresse für jeden Deskriptor identisch. Hinsichtlich des Standard-Deskriptors wählt die Operandenadresse über das Bit 29 entweder vom Befehlssegmentregister oder einem
809808/0978
27373S3
der 8 Operandendeskriptorregister einen Deskriptor aus und liefert ebenfalls eine effektive Adresse an die Recheneinheit 224. Das zweite Deskriptorwort liefert die Segmentbasis und die effektive Adresse wird zu dieser hinzuaddiert, um eine auf den Arbeitsbereich bezogene Adresse zu bilden. Zu diesem Zeitpunkt wird eine Grenzprüfung durchgeführt, um sicherzustellen, daß die auf den Arbeitsbereich bezogene Adresse kleiner als die Summe der Segmentbasis plus dem Grenzwert, wie er in den Bits 0 bis 19 des ersten Deskriptorwortes gefunden wird, ist. Gleichzeitig mit diesen Berechnungen wählen die Bits 29 bis 31 des ersten Deskriptorwortes ein Arbeitsbereichsregister und somit eine Arbeitsbereichs-Registernummer aus, welche zusammen mit der auf den Arbeitsbereich bezogenen Adresse eine Seitennummer und eine Verschiebung erzeugt. Diese drei Komponenten, d. h. die Arbeitsbereichsnummer, die Seitennummer und die Verschiebung werden sodann kombiniert, um eine virtuelle Adresse mit 47 Bit zu bilden. Die vier am wenigsten signifikanten Bits der virtuellen Adresse sind bitbezogen, d. h. sie verweisen auf ein besonderes Bit in dem Wort mit 36 Bit, auf das Bezug genommen wird und sie sind für eine spätere Benutzung im allgemeinen nicht verfügbar. Die Adressenbildungsfolge für den Superdeskriptor gemäß Fig. 5A ist ähnlich derjenigen des Standard-Deskriptors, mit der Ausnahme, daß eine effektive Zwischenadresse über den Seitentabellenmechanismus erzeugt wird. Dieser Zwischenschritt ist erforderlich auf Grund des extrem großen Segmentes, wie es durch einen Superdeskriptor definiert ist.
Die hardwaremäßige Verwirklichung der Schrittfolge bei der Adressenbildung gemäß den Fig. 5 und 5A ist in Fig. 2B dargestellt. Der einschlägige Teil des Deskriptors, d. h. der Grenz-Wert in den Bits 0 bis 19 und die Nummer des Arbeitsbereichsregisters in den Bits 29 bis 31 des ersten Deskriptorwortes ebenso wie der Basiswert (Adressenwert) des zweiten Deskriptorwortes von 36 Bit ist in Fig. 4 dargestellt. Die Bits 0 bis 17
809808/0978
27373S3
des Operandenbefehles 234 bilden einen Eingang für das Rechenwerk ALU-224, wobei in Erinnerung gerufen sei, daß in Abhängigkeit von den Indexmodifizierbits 30 bis 35 des Operandenbefehls diese effektive Adresse vor ihrer Benutzung in einer Adressbildungsfolge modifiziert werden kann. Die Bits 29 bis 31 des ersten Deskriptorwortes wählen sodann eines von 8 Arbeitsbereichregistern 226 aus, die die Arbeitsbereichsnummer definieren, der der Deskriptor zugeordnet ist. Die Arbeitsbereichsnummer wird sodann als ein Index für den Seitentabellenmechanismus 228 und seinen Assoziativspeicher 230 benutzt. Zur gleichen Zeit wird die Arbeitsbereichsnummer für das Arbeitsbereichsnummer-Pufferregister 232 zugänglich gemacht. Das Pufferregister 232 ist nur während der Benutzung des STTA-Befehles 260 zugänglich, wobei dieser Befehl die Datenschiene 240 in die Lage versetzt, die Arbeitsbereichsnummer im Hauptspeicher zu speichern. Für den Fall, daß die Arbeitsbereichsnummer keine im Seitentabellenmechanismus oder seinem zugeordneten Speicher gespeicherten Daten indiziert, ist die Wiederaufsuche der geeigneten Daten aus dem Massenspeicher erforderlich. Da eine Vielzahl von Bezugnahmen im Seitentabellenmechanismus und dem Assoziativspeicher vorliegen, ist es möglich, daß mehrere getrennte Zugriffe auf den Massenspeicher erforderlich sind. Auf Grund dieser Möglichkeit ist die reale Speicheradresse in den Pufferregistern 232, 236 und 238 nicht verriegelt. Durch Verwendung dieses Verfahrens der NichtVerriegelung speichert der STTA-Befehl 260 entweder die endgültigen Adressen, die nach den erforderlichen Iterationen und den durchgeführten Wiederaufsuchungen gebildet werden oder im Falle einer Unterbrechung, wobei das Unterbrechungsbit des Operandenbefehls nicht auf "1" gesetzt worden ist, den Zustand der virtuellen und realen Speicheradressen, die zum Zeitpunkt des Fehlerauftritts über den auf die Datenschienen 240, 242 und 244 einwirkenden STTA-Befehl zugänglich sind.
809808/0978
-A-
Leerseite

Claims (5)

  1. HONEYWELL INFORMATION SYSTEMS INC. 15. August 1977
    Smith Street 5202651 Ge
    WaItham, Mass., USA
    Verfahren zum Testen der Adressbildung in einem DV-System und Vorrichtung zur Durchführung des Verfahrens.
    Patentansprüche:
    .) Verfahren zum Testen der Adressbildung in einem DV-System mit segmentiertem Speicher und mit beschränktem Zugriff über eine durch einen Deskriptor vorgegebene Eintrittsstelle, gekennzeichnet durch folgende Schritte:
    a) Ablegen des durch mehrere Bits eines Befehles ausgewählten Deskriptors in einem ersten Register, dessen Inhalt im Hauptspeicher gespeichert sein kann;
    b) Ablegen der virtuellen Speicheradresse, die durch die in dem Deskriptor enthaltenen Daten erzeugt wird, und der durch den Befehl bestimmten. Adresse in einem zweiten Register, dessen Inhalt im Hauptspeicher gespeichert sein kann;
    c) Ablegen der teilweise von der virtuellen Speicheradresse abgeleiteten realen Speicheradresse in einem dritten Register, dessen Inhalt im Hauptspeicher gespeichert sein kann; und
    d) Ablegen der auf diese Weise in den Registern gespeicherten Daten im Hauptspeicher für einen späteren Zugriff.
    809808/0978
  2. 2. Vorrichtung zur Durchführung des Verfahrens nach Anspruch 1 mit einer Einrichtung zum Testen der Adressbildung, gekennzeichnet durch
    a) eine erste Regsiteranordnung zum Speichern mehrerer Deskriptoren;
    b) eine zweite Registeranordnung zum Speichern eines Deskriptors;
    c) eine an die ersten und zweiten Registeranordnungen angeschlossene und auf ein Bit des Befehls ansprechende erste Auswahleinrichtung zum Auswählen der ersten Registeranordnung, wenn sich das Bit in einem ersten Zustand befindet, und zum Auswählen der zweiten Registeranordnung, wenn sich das Bit in einem zweiten Zustand befindet;
    d) eine auf mehrere Bits in einem Adressfeldteil des Befehls ansprechende zweite Auswahleinrichtung zum Auswählen eines Deskriptors aus den Deskriptoren der ersten Registeranordnung, wenn sich das erste Bit des Befehls im ersten Zustand befindet;
    e) eine an die erste Auswahleinrichtung angeschlossene erste Puffereinrichtung zum Verriegeln der in dem ausgewählten Deskriptor enthaltenen Daten;
    f) eine zweite Puffereinrichtung zum Verriegeln einer Arbeitsbereichsnummer, die durch eine erste Anzahl von Bits des Deskriptors ausgewählt wird;
    g) eine dritte Puffereinrichtung zum Verriegeln einer Seitennummer und einer Verschiebung, die durch eine zweite Anzahl von Bits des Deskriptors und eine auf das Adressfeld des Befehls bezogene Adresse erzeugt werden;
    h) eine vierte Puffereinrichtung zum Speichern einer realen Adresse, die teilweise von der Arbeitsbereichsnummer, der Seitennummer und der Verschiebung abgeleitet wird;
    i) eine erste an die erste Puffereinrichtung angeschlossene Datenschiene, welche beim Vorliegen eines ersten Speicherbefehles den Inhalt der ersten Puffereinrichtung im Hauptspeicher abspeichert; und
    j) eine zweite an die zweite, dritte und vierte Puffereinrichtung angeschlossene Datenschiene, welche beim Vorliegen eines zweiten Speicherbefehles den Inhalt jener Puffereinrichtungen im Hauptspeicher abspeichert.
    809808/0978
  3. 3. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet , daß die erste Registeranordnung 16 Register mit 36 Bit aufweist, um 8 Deskriptoren/ bestehend aus zwei Worten mit jeweils 36 Bit, zu speichern.
  4. 4. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet , daß die zweite Auswahleinrichtung auf das erste, zweite und dritte Bit des Adressfeldteils des Befehls anspricht.
  5. 5. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet , daß die Arbeitsbereichsnummer durch drei Bits in einem ersten Wort von 36 Bit des Deskriptors ausgewählt wird.
    809808/0978
DE19772737353 1976-08-20 1977-08-18 Verfahren zum testen der adressbildung in einem dv-system und vorrichtung zur durchfuehrung des verfahrens Withdrawn DE2737353A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/716,315 US4079453A (en) 1976-08-20 1976-08-20 Method and apparatus to test address formulation in an advanced computer system

Publications (1)

Publication Number Publication Date
DE2737353A1 true DE2737353A1 (de) 1978-02-23

Family

ID=24877556

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19772737353 Withdrawn DE2737353A1 (de) 1976-08-20 1977-08-18 Verfahren zum testen der adressbildung in einem dv-system und vorrichtung zur durchfuehrung des verfahrens

Country Status (8)

Country Link
US (1) US4079453A (de)
JP (2) JPS5337336A (de)
AU (1) AU513512B2 (de)
CA (1) CA1104261A (de)
DE (1) DE2737353A1 (de)
FR (1) FR2362445A1 (de)
GB (1) GB1540340A (de)
HK (1) HK37080A (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4217638A (en) * 1977-05-19 1980-08-12 Tokyo Shibaura Electric Co., Ltd. Data-processing apparatus and method
US4453230A (en) * 1977-12-29 1984-06-05 Tokyo Shibaura Electric Co., Ltd. Address conversion system
DE2842288A1 (de) * 1978-09-28 1980-04-17 Siemens Ag Datentransferschalter mit assoziativer adressauswahl in einem virtuellen speicher
JPS5552581A (en) * 1978-10-11 1980-04-17 Advantest Corp Pattern generator
JPS5757345A (en) * 1980-09-24 1982-04-06 Toshiba Corp Data controller
US4521846A (en) * 1981-02-20 1985-06-04 International Business Machines Corporation Mechanism for accessing multiple virtual address spaces
US4821184A (en) * 1981-05-22 1989-04-11 Data General Corporation Universal addressing system for a digital data processing system
US4660142A (en) * 1981-05-22 1987-04-21 Data General Corporation Digital data processing system employing an object-based addressing system with a single object table
US4525780A (en) * 1981-05-22 1985-06-25 Data General Corporation Data processing system having a memory using object-based information and a protection scheme for determining access rights to such information
US4661903A (en) * 1981-05-22 1987-04-28 Data General Corporation Digital data processing system incorporating apparatus for resolving names
US4438512A (en) * 1981-09-08 1984-03-20 International Business Machines Corporation Method and apparatus for verifying storage apparatus addressing
US4580217A (en) * 1983-06-22 1986-04-01 Ncr Corporation High speed memory management system and method
JPS6048545A (ja) * 1983-08-26 1985-03-16 Nec Corp マイクロコンピユ−タ
US4587610A (en) * 1984-02-10 1986-05-06 Prime Computer, Inc. Address translation systems for high speed computer memories
US4972338A (en) * 1985-06-13 1990-11-20 Intel Corporation Memory management for microprocessor system
US4757447A (en) * 1986-07-28 1988-07-12 Amdahl Corporation Virtual memory system having identity marking for common address space
JPH0624335B2 (ja) * 1987-02-27 1994-03-30 日本電気株式会社 表示付選択呼出受信機
US5063497A (en) * 1987-07-01 1991-11-05 Digital Equipment Corporation Apparatus and method for recovering from missing page faults in vector data processing operations
US5278840A (en) * 1987-07-01 1994-01-11 Digital Equipment Corporation Apparatus and method for data induced condition signalling
JP2635058B2 (ja) * 1987-11-11 1997-07-30 株式会社日立製作所 アドレス変換方式
US5469556A (en) * 1989-12-12 1995-11-21 Harris Corporation Resource access security system for controlling access to resources of a data processing system
JP2000501217A (ja) * 1996-01-24 2000-02-02 サン・マイクロシステムズ・インコーポレイテッド 配列アクセス境界チェックを加速したプロセッサ
US6550034B1 (en) * 2000-02-17 2003-04-15 Hewlett Packard Development Company, L.P. Built-in self test for content addressable memory
US7013460B2 (en) * 2001-05-15 2006-03-14 Hewlett-Packard Development Company, L.P. Specifying an invariant property (range of addresses) in the annotation in source code of the computer program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2500841A1 (de) * 1974-01-18 1975-07-24 Int Standard Electric Corp Verfolgungseinrichtung
DE2516050A1 (de) * 1974-04-18 1975-11-06 Honeywell Inf Systems Verfahren und einrichtung zur informationsspeicherung in einem datenverarbeitungssystem
DE2546354A1 (de) * 1974-10-21 1976-04-22 Honeywell Inf Systems Mehrprogramm-dv-system

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2126137B2 (de) * 1967-09-25 1973-05-11 Burroughs Corp
JPS5040738B1 (de) * 1970-06-11 1975-12-26
US3704363A (en) * 1971-06-09 1972-11-28 Ibm Statistical and environmental data logging system for data processing storage subsystem
US3786427A (en) * 1971-06-29 1974-01-15 Ibm Dynamic address translation reversed
JPS5235585B2 (de) * 1972-10-12 1977-09-09
JPS4966253A (de) * 1972-10-31 1974-06-27
JPS5341021B2 (de) * 1972-12-22 1978-10-31
US3893084A (en) * 1973-05-01 1975-07-01 Digital Equipment Corp Memory access control system
US3916385A (en) * 1973-12-12 1975-10-28 Honeywell Inf Systems Ring checking hardware
FR122199A (de) * 1973-12-17
US3955180A (en) * 1974-01-02 1976-05-04 Honeywell Information Systems Inc. Table driven emulation system
JPS50117323A (de) * 1974-02-28 1975-09-13
JPS519543A (de) * 1974-07-13 1976-01-26 Fujitsu Ltd

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2500841A1 (de) * 1974-01-18 1975-07-24 Int Standard Electric Corp Verfolgungseinrichtung
DE2516050A1 (de) * 1974-04-18 1975-11-06 Honeywell Inf Systems Verfahren und einrichtung zur informationsspeicherung in einem datenverarbeitungssystem
DE2546354A1 (de) * 1974-10-21 1976-04-22 Honeywell Inf Systems Mehrprogramm-dv-system

Also Published As

Publication number Publication date
US4079453A (en) 1978-03-14
JPS5890600U (ja) 1983-06-18
CA1104261A (en) 1981-06-30
GB1540340A (en) 1979-02-07
FR2362445B1 (de) 1984-11-23
HK37080A (en) 1980-07-18
AU513512B2 (en) 1980-12-04
FR2362445A1 (fr) 1978-03-17
AU2780677A (en) 1979-02-15
JPS5337336A (en) 1978-04-06

Similar Documents

Publication Publication Date Title
DE2737353A1 (de) Verfahren zum testen der adressbildung in einem dv-system und vorrichtung zur durchfuehrung des verfahrens
DE2714805C2 (de)
DE2417795C2 (de) Datenverarbeitungsanlage
DE69133302T2 (de) Registerabbildung in einem einzigen Taktzyklus
EP0010198B1 (de) Vorrichtung zur Steuerung des Seitenaustausches in einem Datenverarbeitungssystem mit virtuellem Speicher
DE2948285C2 (de) Adressensteuereinrichtung für einen Datenprozessor
DE2328869C2 (de) Verfahren und Schaltungsanordnung zum Betreiben eines digitalen Speichersystems
DE2722099C2 (de)
DE3833933C2 (de) Informationsverarbeitungseinrichtung mit einer Adressenerweiterungsfunktion
DE60224774T2 (de) Datenverarbeitungssystem mit Lese-, Änderungs- und Schreibeinheit
DE2230102A1 (de) Rechenwerk fuer variable wortlaengen
DE2758152A1 (de) Speicherschutzanordnung
DE2611907A1 (de) Dv-system mit einer prioritaets- unterbrechungs-anordnung
DE3607889A1 (de) Verfahren zum steuern von unterbrechungen in einem virtuellen maschinensystem und virtuelles maschinensystem zur durchfuehrung des verfahrens
DE2312707A1 (de) Pruefanordnung fuer einen computer
DE2023354A1 (de) Programmierbare Einheit und Verfahren zum Betreiben einer programmierbaren Einheit
DE2054830C3 (de) Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge
DE2926322A1 (de) Speicher-subsystem
DE2810421C2 (de) Speicherschutzeinrichtung
DE1909090C3 (de) Schutzeinrichtung für den Arbeitsspeicher einer Rechenanlage
DE2611975A1 (de) Dv-system mit einer einrichtung zur zuordnung von prozessen zu einem prozessor auf einer prioritaetsbasis
DE3518818A1 (de) Datenverarbeitungsvorrichtung und verfahren und vorrichtung zur umsetzung von datenelementen
DE3121046C2 (de)
DE2458259A1 (de) Datenverarbeitungssystem zum vergleichen verschiedener datenstrukturen
DE2702722A1 (de) Instruktionsinterpretation in elektronischen datenverarbeitungsanlagen

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8130 Withdrawal