DE2444406A1 - METHOD FOR PERFORMING INPUT / OUTPUT OPERATIONS IN A DATA PROCESSING SYSTEM WORKING WITH VIRTUAL ADDRESSING - Google Patents

METHOD FOR PERFORMING INPUT / OUTPUT OPERATIONS IN A DATA PROCESSING SYSTEM WORKING WITH VIRTUAL ADDRESSING

Info

Publication number
DE2444406A1
DE2444406A1 DE19742444406 DE2444406A DE2444406A1 DE 2444406 A1 DE2444406 A1 DE 2444406A1 DE 19742444406 DE19742444406 DE 19742444406 DE 2444406 A DE2444406 A DE 2444406A DE 2444406 A1 DE2444406 A1 DE 2444406A1
Authority
DE
Germany
Prior art keywords
page
chaining
memory
address
data
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.)
Pending
Application number
DE19742444406
Other languages
German (de)
Inventor
Albrecht Dipl Ing Baer
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
Priority to FR108891D priority Critical patent/FR108891A/fr
Priority to DE19732302379 priority patent/DE2302379C3/en
Priority to DE19732314070 priority patent/DE2314070C3/en
Priority to GB5705473A priority patent/GB1447680A/en
Priority to FR7401140A priority patent/FR2214923B1/fr
Priority to LU69174D priority patent/LU69174A1/xx
Priority to NL7400649A priority patent/NL7400649A/xx
Priority to BE139975A priority patent/BE809930A/en
Priority to GB691174A priority patent/GB1454357A/en
Priority to NL7403609A priority patent/NL7403609A/xx
Priority to FR7409060A priority patent/FR2222696B2/fr
Priority to LU69663A priority patent/LU69663A1/xx
Priority to BE142284A priority patent/BE812640R/en
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE19742444406 priority patent/DE2444406A1/en
Priority to NL7510623A priority patent/NL7510623A/en
Priority to FR7527583A priority patent/FR2285658A2/en
Priority to IT27092/75A priority patent/IT1049588B/en
Priority to GB38092/75A priority patent/GB1514555A/en
Priority to BE160129A priority patent/BE833520R/en
Publication of DE2444406A1 publication Critical patent/DE2444406A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • 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/1081Address translation for peripheral access to main memory, e.g. direct memory access [DMA]

Landscapes

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

Description

SIEMENS AKTIENGESELLSCHAFT München, den 17. SER197 Berlin und München Witteisbacherplatz 2SIEMENS AKTIENGESELLSCHAFT Munich, 17 SER197 Berlin and Munich Witteisbacherplatz 2

74/213574/2135

Verfahren zum Durchführen von Eingabe-/Ausgabeoperationen s bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage. A method for performing input / output operations at a s operating with virtual addressing data processing system.

Die Erfindung bezieht sich auf ein Verfahren zum Durchführen von Eingabe-/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage mit Hilfe von ursprünglich beliebig virtuell oder reell/adre ssier ten, aber stets reell adressiert ablaufenden Kanalprogrammen, bei denen die Datentransfers auch zu mehr als einer Seite des segmentierten physikalischen Arbeitsspeichers zugegriffen wird und bei einer festgestellten Überschreitung einer Seitengrenze dieses Speichers mit Hilfe eines Teiles der in einem Datenadreßspeicher niedergelegten physikalischen Datenadresse eines zu transferierenden Datenbytes zu einem systemeigenen Kettungslisten-Speicher zugegriffen wird, in dem jeder physikalischen Seitennummer eine die ■physikalische Seitennummer der im Programmablauf folgenden virtuellen Speicherseite enthaltende Eintragszeile zugeordnet ist, die mit der neuen Bytenummer zu einer nun gültigen physikalischen Datenadresse zusammengesetzt und im Daten-Adreßspeicher gespeichert wird, gemäß Hauptpatent (deutsche Patentanmeldung P 23 02379.2).The invention relates to a method of implementation of input / output operations in a data processing system working with virtual addressing with the help of of originally any virtual or real / addressed, but always real addressing running channel programs in which the data transfers also to more than one side of the segmented physical main memory is accessed and if a Page boundary of this memory with the help of part of the physical data stored in a data address memory Data address of a data byte to be transferred to a system's linked list memory is accessed in which each physical page number is assigned the physical page number of the following in the program sequence The entry line containing the virtual memory page is assigned, with the new byte number to a now valid physical data address is composed and stored in the data address memory, according to the main patent (German patent application P 23 02 379.2).

Der Forderung nach einer einheitlichen Speicherverwaltung folgend, ist es bei Betriebssystemen datenverarbeitender Anlagen mit virtueller Adressierung üblich, nicht nur Benutzerprogramme, Benutzerdaten, Betriebssystemprogramme und Betriebssystemdaten segmentiert, d. h. seitenweise gestreut auf dem Arbeitsspeicher zu speichern, sondern möglichstFollowing the requirement for uniform memory management, operating systems are more data-processing Systems with virtual addressing common, not just user programs, user data, operating system programs and Operating system data segmented, d. H. to save pages scattered on the main memory, but if possible

VPA 9/210/4062 Go/FdI -2- VPA 9/210/4062 Go / FdI -2-

609813/0601609813/0601

auch alle sogenannten Systemtabellen. Typische Systemtabellen sind bei virtuell adressierten datenverarbeitenden Anlagen die AdreßüberSetzungstabellen. Deren Segmentierung wird bei bekannten Systemen durch eine in mehrere Stufen aufgegliederte Adreßübersetzung erreicht. So sind datenverarbeitende Anlagen mit zwei- oder dreistufiger Adreßübersetzung bekannt. In einer Anlage mit zweistufiger Adreßübersetzung sind z. B. je 32 sogenannte Arbeitsspeicherseiten von je zwei KB Länge zu einem Segment zusammengefaßt. Die Adreßübersetzungstabellen gliedern sich daher in Segmenttafeln und Seitentafeln. Bei entsprechendem Speicherausbau sind weder die Segmenttafeln noch die Seitentafeln selbst langer als eine Speicherseite. Somit fügen sich auch diese Systemtabellen harmonisch in die Seitenstruktur des virtuellen Speichers ein.also all so-called system tables. Typical system tables are for virtually addressed data processing companies Attach the address translation tables. Their segmentation is achieved in known systems by an address translation subdivided into several stages. So are data processors Systems with two- or three-stage address translation known. In a system with two-stage Address translations are z. B. 32 so-called main memory pages, each two KB in length, are combined into a segment. The address translation tables are therefore divided into segment tables and side tables. With a corresponding memory expansion neither the segment panels nor the side panels themselves are longer than a memory page. So these also fit together System tables harmoniously fit into the page structure of the virtual memory.

Bei einer gemäß der Lehre des Hauptpatents ausgebildeten datenverarbeitenden Anlage stellt der Kettungslisten-Speicher eine weitere Systemtabelle dar, die auch als Seitenkettungstabelle bezeichnet werden kann. Diese benötigt wegen der Länge ihrer Einträge bei einem Speicherausbau von mehr als 512 KB selbst mehr als das Volumen einer SpeicherSeite. Bei einem Ausbau des physikalischen Arbeitsspeichers bis etwa 4 MB ist der Kettungslisten-Speicher auf acht Speicherseiten maximal begrenzt. Wegen der einfachen Struktur kann dafür noch eine konsekutive, d. h. nicht gestreute Speicherung der Seitenkettungstabelle gegebenenfalls zugestanden werden, obwohl sich eine derartige Behandlung in das systematische Konzept nicht einfügt.In the case of a data processing system designed according to the teaching of the main patent, the linked list memory provides represents another system table, which can also be referred to as a page link table. This needed because of the Length of your entries with a memory expansion of more than 512 KB even more than the volume of a memory page. at An expansion of the physical main memory up to about 4 MB is the linked list memory on eight memory pages maximum limited. Because of the simple structure, a consecutive, i.e. H. non-dispersed storage the side link table may be granted, although such treatment does not fit into the systematic concept.

Bei einem noch umfangreicheren Arbeitsspeicherausbau wird jedoch eine konsekutive Abspeicherung des Kfettungslisten-Speichers in nicht segmentierter Form unter allen Umständen auszuschließen sein, Aufgabe der Erfindung ist esIn the case of an even more extensive main memory expansion, however, consecutive storage of the link list memory is required to be excluded under all circumstances in non-segmented form, it is the object of the invention

VPA 9/210/4062 -3-VPA 9/210/4062 -3-

609813/0601609813/0601

daher, das nach dem Hauptpatent ausgebildete Verfahren zum Durchführen von Ein-/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage derart weiterzubilden, daß eine Kettung bei einem * Datentransfer aufeinanderfolgend benutzter Speicherseiten über einen systemeigenen Kettungslisten-Speieher auch dann möglich ist, wenn dieser im Arbeitsspeicher seitenweise gestreut angeordnet ist. In Analogie zu der vorstehend genannten AdreßüberSetzung ist es daher in diesem Falle auch notwendig, ein mehrstufiges Zugriffsverfahren für Seitenkettung sroutinen zu schaffen.therefore, the trained according to the main patent method for Carrying out input / output operations in a data processing system that works with virtual addressing to be developed in such a way that a chain of memory pages used consecutively during a * data transfer then also via a system's linked list store is possible if this is arranged in the main memory in a scattered manner. In analogy to the above It is therefore also address translation in this case necessary to create a multi-level access procedure for side chaining routines.

Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß bei einem Kettungsiisten-Speicher, der wegen seines Umfanges in einem hierarchisch in Seiten, Segmente und sofern erforderlich in Blöcke gegliederten Arbeitsspeicher seitenweise gestreut ist und der seinerseits dieser Gliederung entsprechend aus hierarchisch geordneten Kettungstafeln besteht, in einer durch Überschreiten einer Seitengrenze ausgelösten und - sofern dabei ein Segment-oder ein Blockwechsel im Arbeitsspeicher stattfindet - mehrstufigen Seitenkettungsroutine aus der zuletzt ausgewählten Eintragszeile in einer der Kettungstafeln niedriger Ordnung, einer sogenannten Seitenkettungstafel dann gültige Teileinträge entnommen werden, von denen jeder innerhalb einer Kettungstafel jeweils/rerschiedener höherer Ordnung eine Eintragszeile adressiert, daß daraus stufenweise in einer hierarchischen Linie absteigend jeweils die Fußpunktadresse für eine Kettungstafel der nächstniedrigeren Ordnung entnommen und zusammen mit einem der genannten T^ileinträge die vollständige Adresse einer Eintragszeile in der auszuwählenden Kettungstafel nächstniedrigerer Ordnung gäbildet wird, bis damit eine neue Seitenkettungstafel selektiert ist, in der mit einem Teil der Seitennummer der bisher beim Datentransfer ausgewählten Speicherseite eine Eintragszeile According to the invention, this object is achieved in that, in a Kettungsiisten-Speicher, which because of its size in a working memory that is hierarchically divided into pages, segments and, if necessary, into blocks is scattered and which in turn consists of hierarchically ordered chain tables according to this structure, in a triggered by crossing a page boundary and - provided there is a segment or block change in the RAM takes place - multi-level page chaining routine from the last selected entry line in a valid partial entries are then taken from the lower order chaining tables, a so-called side chaining table each of which is different within a chain table higher order an entry line is addressed that from it stepwise in a hierarchical Descending line, the base point address for one Chaining table of the next lower order removed and together with one of the named entries, the complete address of an entry line in the line to be selected Chaining table of the next lower order is created until a new side chaining table is selected in which with part of the page number of the memory page previously selected during the data transfer, an entry line

VPA 9/210/4062 -4-VPA 9/210/4062 -4-

60981 3/060160981 3/0601

adressierbar.ist, die neben den genannten Teileinträgen einen weiteren Teileintrag mit der vollständigen Folgeseitennummer einer Speicherseite enthält, in der nun die unterbrochene Ein-/Ausgabeoperation fortgesetzt wird. e-addressable. is, in addition to the named partial entries, a contains further partial entry with the complete following page number of a memory page in which the interrupted I / O operation continues. e-

Diese Lösung bietet folgende "Vorteile: Wie alle anderen Systemtabellen belegen auch die Kettungstafein nicht mehr als eine Speicherseite. Die Verwaltung dieser Tafeln durch das Betriebssystem fügt sich daher in das bei virtuell adressierenden datenverarbeitenden Anlagen angewandte Prinzip der Speicherverwaltung durch Aufteilung des Speichers in gleich lange Speicherseiten widerspruchsfrei ein.This solution offers the following "advantages: Like all others System tables also no longer occupy the chaining table as a memory page. The management of these tables by the operating system is therefore part of the virtual addressing data processing systems applied principle of memory management by dividing the memory into memory pages of the same length without contradiction.

Bei datenverarbeitenden Anlagen mit virtueller Adressierung nicht mehr benötigte Speicherseiten im Arbeitsspeicher brauchen nicht resident zu sein. Kettungstafeln können ebenso behandelt werden, wie Seiten des Datenspeichers. Kettungstafeln nicht benutzter Speicherseiten brauchen im Speicher nicht resident zu bleiben und können dadurch den Speicher und das Betriebssystem zusätzlich entlasten. Vom Ausfall einzelner Speicherteile betroffene Kettungstafeln sind wie alle anderen Speicherteile zu behandeln, so daß sich die für eine störungsfreie Fortsetzung des Rechenbetriebs erforderliche Umkonfiguration des Arbeitsspeichers erheblich erleichtert. Dieser Fal^zeigt im übrigen, wie wichtig es ist, bei großen Arbeitsspeichern auch die Kettungstafeln möglichst weit gestreut auf dem Arbeitsspeicher unterzubringen.In data processing systems with virtual addressing, memory pages no longer required in the main memory do not need to be resident. Link tables can be treated in the same way as pages of the data memory. Chaining tables of unused memory pages need im Memory not to remain resident and can thereby additionally relieve the memory and the operating system. Chaining tables affected by the failure of individual storage parts are to be treated like all other storage parts that the reconfiguration of the main memory required for a trouble-free continuation of the arithmetic operation much easier. Incidentally, this case shows how important it is to also include the chaining tables in large working memories to be distributed as widely as possible on the main memory.

Eine Weiterbildung der Erfindung besteht darin, daß die vollständige Adresse des jeweils zu übertragenden Datenbytes nach Byte- und Seitennummern geordnet in zwei Datenadressregistern gespeichert wird und dabei das die Bytenummer übernehmende erste Register als vor- und rückwärtszählender undA further development of the invention is that the complete Address of the data byte to be transmitted, sorted according to byte and page numbers in two data address registers is stored and the byte number taking over the first register as counting up and down and

VPA 9/210/4062 -5-VPA 9/210/4062 -5-

609813/0601609813/0601

nach Übernahme einer Bytenummer in einen dem Arbeitsspeicher zugeordneten Decoder durch einen von einem Ein-/AusgäbeSteuerwerk abgegebenen Zählimpuls fortschaltbaren Zähler ausgebildet ist, aus dessen für jeweils eine der bei%-den Zählrichtung extremen Zählerstand 000...bzw. 111... ein Anforderungssignal als Kriterium für eine nun erforderliche Seitenkettungsroutine abgeleitet wird, bei der von dem Ein-/Ausgabesteuerwerk durch ein Steuersignal die Übernahme der folgenden physikalischen Seitennummer aus einem ausgewählten Eintrag einer Seitenkettungstafel in das zweite Datenadreßregister ausgelöst wird.after taking over a byte number in a decoder assigned to the main memory by one of an input / output control unit delivered counting pulse is formed incrementable counter, from which for each one of the at% -den Counting direction extreme counter reading 000 ... or. 111 ... a request signal as a criterion for a now required Page chaining routine is derived from the Input / output control unit by means of a control signal to take over the following physical page number from a selected one Entry of a side chain table in the second Data address register is triggered.

Diese Ausbildung des die Bytenummer speichernden Datenadreßregisters benutzt auf einfache Weise den bei einem extremen Zählerstand auftretenden End-Übertragsimpuls als Kriterium für eine Anforderung auf eine Seitenkettungsroutine an das Ein-/Ausgabesteuerwerk. Dieses steuert analog wie bei einer reinen Adreßübersetzung die bei der Seitenkettungsroutine erforderlichen Speicherzugriffe u. a. durch das Steuersignal, mit dem die Übernahme der folgenden physikalischen Seitennummer in das zweite Datenadreßregister ausgelöst wird.This design of the data address register storing the byte number uses in a simple manner the final carry pulse that occurs in the event of an extreme counter reading as a criterion for a request for a page chaining routine to the Input / output control unit. This controls the page chaining routine in the same way as with a pure address translation required memory accesses, among other things. by the control signal with which the following physical page number is accepted is triggered in the second data address register.

Eine bei einer mehrstufigen Seitenkettungsrouftine besonders vorteilhafte Weiterbildung der Erfindung besteht darin, daß aus dem die Übernahme der neuen Seitennummer auslösenden Steuersignal abhängig von dem Zustand einzelner, jeweils bereits einen Se gment- oder Blockwechsel bei der nächsten Seitenkettungsroutine anzeigender Bitstellen der gerade in der laufenden Seitenkettungsroutine ausgewählten Eintragszeile einer Seitenkettungstafel weitere Anforderungssignale an das Ein-/Ausgabesteuerwerk abgeleitet werden und daß das Ein-/Ausgabesteuerwerk daraufhin zu einem frei wählbaren Zeitpunkt im Verlauf des Datentransfers innerhalb -der ausgewählten Speicherseite eine ein- oder mehrstufige Zugriffsroutine zu den Kettungstafein der bezeichnetenOne especially with a multi-level side-chain routine An advantageous development of the invention consists in the fact that the takeover of the new page number triggers from the Control signal depending on the status of individual, already one segment or block change with the next Page chaining routine indicating bit positions of the currently in the current page linking routine selected entry line of a page linking table further request signals to be derived from the input / output control unit and that the input / output control unit then becomes a freely selectable one Time in the course of the data transfer within the selected memory page a single or multi-level Access routine to the chaining table of the designated

VPA 9/210/4062 -6-VPA 9/210/4062 -6-

609813/0601609813/0601

höheren Ordnung auslöst, bei der bereits vor dem Erreichen der Seitengrenze der Teil der Seitenkettungsroutine abläuft, in dem die Fußpunktadresse der neuen Seitenkettungstafel gebildet wird. - rj triggers a higher order, in which the part of the page link routine in which the base point address of the new page link table is formed is already running before the page limit is reached. - rj

Damit besteht die Möglichkeit, zu einem beliebigen Zeitpunkt während des Datentransfers innerhalb der aktuellen Speicherseite bereits die nächste Seitenkettungsroutine so weit vorzubereiten, daß der bei einer mehrstufigen Routine erforderliche mehrmalige Speicherzugriff im Ablauf des gesamten Datentransfers insofern nicht mehr störend hervortritt, als die eigentliche Seitenkettung auch nur bei einer einstufigen Seitenkettungsroutine erforderliche Zeit beansprucht.This means that it is possible at any time during the data transfer within the current Memory page to prepare the next page chaining routine so far that the multi-level Routine required multiple memory accesses in the process of the entire data transfer is no longer disruptive as the actual side chain time required even in a one-step side-chaining routine.

Im folgenden wird ein Ausführungsbeispiel der Erfindung anhand der einzigen Figur näher erläutert, in der der einfachste Fall einer mehrstufigen Seitenkettungsroutine mit Hilfe von Kettungstafeln nur zweier verschiedener Ordnungen dargestellt ist.In the following an embodiment of the invention is explained in more detail with reference to the single figure in which the simplest Case of a multi-stage side chaining routine with the help of chaining tables of only two different orders is shown.

Für diesen angenommenen Fall sei der Arbeitsspeicher in Speicherseiten mit einer Länge von jeweils zwei KB unterteilt und die Kettungstafeln maximal ebenso lang. Weiterhin soll ein Eintrag in einer Kettungstafel vier Byte umfassen, eine einzelne Kettungstafel von zwei KB Länge kann dann gerade ein Volumen des physikalischen Arbeitsspeichers von 512 SpeicherSeiten mit einem Umfang von 1024 KB bedienen. Bei einem größeren Arbeitsspeicher müssen offensichtlich mehrere Kettungstafeln angelegt werden, um Kettungen aller vorhandenen Speicherseiten zu ermöglichen. In diesem Fall seien jeweils 512 SpeicherSeiten, denen jeweils eine Kettungstafel zugeordnet ist, zu einem Speichersegment zusammengefaßt. Die zunächst für sich allein stehenden Kettungstafeln müssen nun untereinander durch eine weitere Kettungstafel höherer Ordnung in Zusammenhang gebrachtFor this assumed case, the working memory is in Memory pages with a length of two KB each are subdivided and the link tables are no more than just as long. Farther an entry in a link table should contain four bytes; a single link table can be two KB in length then serve a volume of physical main memory of 512 memory pages with a size of 1024 KB. In the case of a larger working memory, several link tables must obviously be created in order to To enable chaining of all existing memory pages. In this case, there are 512 memory pages each a chaining table is assigned in each case, combined to form a memory segment. The ones initially standing on their own Chaining boards must now be linked to one another by a further chaining board of a higher order

VPA 9/210/4062 609813/0601 VPA 9/210/4062 609813/0601

werden. Ein Zugriff zu den Kettungstafeln niederer Ordnung, die sogenannten Seitenkettungstafeln, die sämtliche Seitennummern des ihnen zugeordneten Speichersegments in voller Breite tabellarisch enthalten, erfordert tdie Kenntnis ihrer Fußpunktadressen. Diese sind in der Kettungstafel höherer Ordnung, einer sogenannten Segmentzeigertafel zusammengefaßt. Über das nun im einzelnen zu schildernde Ausführungsbeispiel hinausgehend ist nun wohl vorstellbar, daß diese hier angedeutete zweistufige Seitenkettungsroutine in Analogie zu bekannten Adreßübersetzungsverfahren zu einer drei- oder mehrstufigen Routine erweitert werden kann, wenn die Segmentzeigertafel wiederum selbst das Volumen einer Speicherseite überschreitet und darum eine Blocktafel usw. eingeführt werden muß.will. One access to the chaining boards lower Order, the so-called page chaining tables, the all page numbers of the memory segment assigned to them included in full table, requires tdie Knowledge of their footer addresses. These are in the A higher-order chain table, a so-called segment pointer table summarized. Going beyond the exemplary embodiment to be described in detail now is now It is probably conceivable that this two-stage page chaining routine indicated here is analogous to known address translation methods can be expanded to a three or more step routine when the segment pointer table turns itself exceeds the volume of a memory page and therefore a block table etc. must be introduced.

In der Figur ist schematisch ein Arbeitsspeicher MM dargestellt, der neben einem Datenspeicher DM zwei hiei/dargestellte Kettungstafeln, eine Seitenkettungstafel PCT und eine Segmentzeigertafel SPT enthält. In dieser schematischen Darstellung ist vereinfachend von einer größeren Anzahl von Seitenkettungstafeln PCT nur eine einzige dargestellt, was jedoch für die Erläuterung der hierarchischen Anordnung der Kettungstafeln ausreicht, da art-einer Seitenkettungsroutine auch immer nur eine einzige Seitenkettungstafel PCT beteiligt ist. .In the figure, a main memory MM is shown schematically, the two shown here / shown in addition to a data memory DM Chaining boards, a side chaining board PCT and includes a segment pointer table SPT. This schematic representation is simplified by a larger number only one of the side chain tables PCT is shown, However, this is sufficient for the explanation of the hierarchical arrangement of the chaining tables, since it is a kind of side chaining routine also only ever a single side chain table PCT is involved. .

Allein aus Gründen der übersichtlicheren Darstellung ist jedem dieser Speicherteile.als Auswahlschalteinrichtung ein tatsächlich nur einmal vorhandener Decoder DEC zugeordnet. Mit seinen Bitsteilen 0...23 soll angedeutet werden, daß im angenommenen Fall eine vollständige physikalische Speicheradresse aus einer 24stelligen Binärzahl besteht, die sich aus einer 13stelligen Seitennummer und einer 11 stelligen Bytenummer zusammensetzt.Just for the sake of a clearer representation each of these memory parts as a selector switch actually only assigned once existing decoder DEC. Its bit parts 0 ... 23 are intended to indicate that In the assumed case, a complete physical memory address consists of a 24-digit binary number that is from a 13-digit page number and an 11-digit Byte number.

VPA 9/210/4064 -8-VPA 9/210/4064 -8-

6098 1 3/06016098 1 3/0601

24U40624U406

Jedem der angedeuteten Speicherteile DM, PCT bzw. SPT ist ein Paar von Registern zugeordnet. Beim Datenspeicher DM sind dies zwei Datenadressregister DR1 und DR2 für die die Bytenummer bzw. die Seitennummer eines gerade auszu-Each of the indicated memory parts DM, PCT b z w. SPT is assigned to a pair of registers. In the case of the data memory DM, these are two data address registers DR1 and DR2 for which the byte number or the page number of a

enthalten.contain.

wählenden Speicherplatzes im Datenspeicher DM/Der Datentransfer von oder zu den ausgewählten Speicherplätzen in beiden Richtungen ist durch einen mit DI/O bezeichneten Pfeil angedeutet.Selecting memory location in the data memory DM / The data transfer from or to the selected memory locations in both directions is indicated by an arrow labeled DI / O.

Den beiden dargestellten Kettungstafeln PCT und SPT ist jeweils ein Paar von Kettungsregistern CR1 und CR2 bzw. CR3 und CR4 zugeordnet. Dabei sind die beiden der Seitenkettungstafel PCT zugehörigen Kettungsregister CR3 bzw. CR4 im wesentlichen entsprechend den beiden Datenadreßregistern DR1 und DR2 aufgeteilt, mit dem einen Unterschied, daß die beiden letzten Bitstellen über den Decoder DEC fest eingegeben werden und daher das zweite, der Bytenummer zugeordnete Kettungsregister CR4 nur 9 Bitstellen umfaßt.The two chaining tables PCT and SPT shown are each a pair of chaining registers CR1 and CR2 or Assigned to CR3 and CR4. The two are the side chain table PCT associated chaining register CR3 or CR4 essentially corresponding to the two data address registers DR1 and DR2 split, with the one difference that the last two bit positions are fixed via the decoder DEC are entered and therefore the second chaining register CR4 assigned to the byte number comprises only 9 bit positions.

Anders ist jedoch die Aufteilung der beiden der Segmentzeigertafel zugeordneten Kettungsregister CR1 bzw. CR2. In dem 18stelligen ersten Kettungsregister CR1 ist die Fußpunktadresse für die Segmentzeigertafel SPT enthalten, auch während das zweite Kettungsregister CR2 nur 4 Bitstellen enthält.However, the division of the two of the segment pointer table is different associated chaining register CR1 or CR2. The base point address is in the 18-digit first chaining register CR1 for the segment pointer table SPT, even while the second linked register CR2 only contains 4 bit positions contains.

Sämtliche genannten Register sind jeweils über Leitungsvielfache Bitstelle für Bitstelle mit dem Decoder DEC verbindbar. Dies ist in der Zeichnung schematisch durch aufgefächerte Leitungen und mit einer die Zahl der Einzelleitungen bezeichnenden^iffer angedeutet. Ein prinzipieller Unterschied des ersten Kettungsregisters CR1 zu den übrigen dargestellten Registern ist rein optisch in der Zeichnung durch seine strichpunktierte Umrandung angedeutet. DiesAll the registers mentioned are each bit position for bit position with the decoder DEC via line multiples connectable. This is shown schematically in the drawing Fanned out lines and indicated with a letter indicating the number of individual lines. A principled one The difference between the first chaining register CR1 and the other registers shown is purely visual in the drawing indicated by its dash-dotted border. this

VPA 9/210/4062 -9-VPA 9/210/4062 -9-

6098 13/06016098 13/0601

—Q——Q—

weist darauf hin, daß bis auf das erste Kettungsregister CR1 sämtliche anderen dargestellten Register in der datenverarbeitenden Anlage geräteindividuell vorgesehen sind, d. h. ihre gesamte Anzahl von der Zahl der über das e" Ein-/Ausgabewerk tätigen Geräte abhängt. Das erste Kettungsregister CR1 jedoch ist ein Systemregister und wird nur einfach benötigt, da es die feste Fußpunktadresse der Segmentzeigertafel SPT enthält.indicates that, except for the first Kettungsregister CR1 all other registers shown are provided devices individually in the data processing system, that is, their total number of the number of via e "input / output network devices make depends. The first Kettungsregister CR1, however, a System register and is only required because it contains the fixed base point address of the segment pointer table SPT.

Weitere Schaltungseinzelheiten" sollen nun im folgenden im Zusammenhang mit der Wirkungsweise der geschilderten Anordnung erläutert werden:Mit der in den beiden Datenadreßregistern DR1 bz . DR2 gespeicherten vollständigen physikalischen Datenadresse wird im Datenspeicher DM ein Speicherplatz ausgewählt. Dabei bestimmt die in dem 13stelligen Datenregister DR2 niedergelegte Adresse eine Seite des Datenspeichers DM und die in dem 11 stelligen ersten Datenadreßregister DR1 niedergelegte Bytenummer ein bestimmtes Byte innerhalb der Speicherseite. Das erste Datenadreßregister DR1 ist als Binärzähler ausgebildet, der sowohl vor- als auch rückwärts in Abhängigkeit von Zählimpulsen DRC zu zählen vermag, die ihm über eine Zählleitung aus dem in der Zeichnung rein schematisch angedeuteten Ein-/Ausgabesteuerwerk I/OP zugeleitet werden. Der Zählerstand des ersten Datenadreßregisters DR1 wird durch einen Zählirapuls DRC jeweils dann fortgeschaltet, wenn der Decoder DEC durch/die bisher aktuelle Bytenummer entsprechend eingestellt ist, d. h. das zugehörige Datenbyte in den bzw. aus dem Datenspeicher DM transferiert werdenyfcann. Die Zählrichtung im ersten Datenadreßregister DR1 wird durch ein Steuersignal DTB festgelegt, das ebenfalls im Ein-/AusgabeSteuerwerk I/OP erzeugt wird und einen bestimmten Datentransferbetrieb kennzeichnet. Denn es sind bei Ein-/Ausgabeoperationen neben der eigentlichen DatentransferrichtungFurther circuit details "are now to be found in the following in connection with the mode of operation of the described Arrangement to be explained: With the in the two data address registers DR1 or DR2 stored full physical data address is in the data memory DM a Storage location selected. The address stored in the 13-digit data register DR2 determines one Page of the data memory DM and the first in the 11-digit Data address register DR1 stored byte number a specific byte within the memory page. The first Data address register DR1 is designed as a binary counter, which is able to count both forwards and backwards as a function of counting pulses DRC sent to it via a counting line from the input / output control unit I / OP indicated purely schematically in the drawing. Of the The count of the first data address register DR1 is incremented by a counter pulse DRC whenever the Decoder DEC is set accordingly by / the current byte number up to now, d. H. the associated data byte in or can be transferred from the data memory DM. the Counting direction in the first data address register DR1 is determined by a control signal DTB, which is also in the input / output control unit I / OP is generated and a specific data transfer operation indicates. Because with input / output operations it is in addition to the actual data transfer direction

VPA 9/210/4062 -10-VPA 9/210/4062 -10-

6098 Τ3/06016098 Τ3 / 0601

noch andere Unterschiede möglich. So ist es im Zusammenhang mit Magnetbandgeräten als peripheren Speichern durchaus üblich, von dem Magnetbandgerät in den Arbeitsspeicher auch Daten rückwärts zu lesen, also "Eingabe rückwärts", <·,·- mit fortlaufend erniedrigter Speicheradresse. Ein entsprechender Speicherbefehl enthält mindestens ein Steuerbit, das diesen Zustand kennzeichnet und im Ein-/Ausgabesteuerwerk I/OP das genannte Steuersignal DTB erzeugt.other differences are possible. So it is in context with magnetic tape recorders as peripheral storage it is quite common, from the magnetic tape recorder to the main memory also read data backwards, i.e. "input backwards", <·, · - with continuously decreased memory address. A corresponding one Storage command contains at least one control bit that identifies this state and is in the input / output control unit I / OP generates said control signal DTB.

Mit dem Fortschreiten des Datentransfers in oder aus dem Datenspeicher DM erreicht das erste Datenadreßregister DR1 einmal einen seiner beiden extremen Zählerstände, in dem entweder bei fortschreitender Adressenerhöhung sämtliche Bitsteilen mit "0" oder bei fortschreitender Adreßerniedrigung mit "1" besetzt sind. In beiden Fällen ergibt sich in diesem Register ein Übertragssignal, das nichts anderes kennzeichnet, als daß die obere oder untere Grenze einer Speicherseite Überschrittervist. Wenn dann der Datentransfer noch nicht abgeschlossen ist, muß im Datenspeicher die nächste Speicherstufe aufgesucht werden und dafür eine Seitenkettungsroutine ablaufen. Aus diesem Grunde wird das Übertragssignal dazu benutzt, ein erstes Flip-Flop FF1 zu setzen, das dann an das Ein-/Ausgabesteuerwerk I/OP ein Anforderungssignal PCR für eine Seitenkettungsroutine abgibt.As the data transfer progresses into or from the data memory DM, the first data address register reaches DR1 once one of its two extreme counter readings, in which either all of the Bit parts with "0" or with progressive address decrease are filled with "1". In both cases there is a carry signal in this register, nothing else indicates that the upper or lower limit of a memory page is override v. If then the data transfer has not yet been completed, the next storage level must be sought in the data memory and one for this Page chaining routine run. For this reason, the carry signal is used to send a first flip-flop FF1 which is then connected to the input / output control unit I / OP Issues request signal PCR for a page chaining routine.

Analog wie bei der bekannten Adreßübersetzung wird nun eine Seitenkettungsroutine durch das Ein-/Ausgabesteuerwerk gesteuert. Liegt die zu kettende Speicherseite innerhalb des bisher benutzten Speichersegments, muß in der bisher benutzten Seitenkettungstafel PCT lediglich ein neuer Eintrag ausgewählt werden. Mit den neun Bitstellen, die innerhalb des gegebenen Speichersegments die bisher benutzte Speicherseite kennzeichnen, wird dann in der bisher benutzten Seitenkettungstafel PCT lediglich ein neuer Ein-As with the known address translation, a Page chaining routine controlled by the input / output control unit. Is the memory page to be linked within of the previously used memory segment, only a new entry needs to be made in the previously used page link table PCT to be selected. With the nine bit positions that were previously used within the given memory segment Mark the memory page, is then used in the previously used Side chain table PCT just a new one

VPA 9/210/4062 -11-VPA 9/210/4062 -11-

609813/0601609813/0601

trag ausgewählt. Dazu sind die neun niederwertigen Bitstellen des zweiten Datenregisters DR2 statisch mit dem vierten Kettungsregister CR4 verbunden. Dieses ist also vorbereitet und da sich im gewählten Fall auch der Inhalt des Sj dritten Kettungsregisters CR3 nicht ändert, liegt damit eine vollständige Speicheradresse für einen bestimmten Eintrag einer bestimmten Seitenkettungstafel PCT fest. Aus diesem Eintrag werden die 13 höchstwertigen Bitstellen ausgelesen und mit einem von dem ^in-/Ausgabesteuerwerk I/OP abgegebenen weiteren Steuersignal PCS als die neue aktuelle physikalische Seitennummer in das zweite Datenadreßregister DR2 übernommen. Der einfachste Fall einer Seitenkettungsroutine ist damit abgeschlossen, der Datentransfer wird in der nun aktuellen Speicherseite fortgesetzt. wear selected. For this purpose, the nine low-order bit positions of the second data register DR2 are statically connected to the fourth chaining register CR4. This is therefore prepared and since in the selected case the content of the Sj third chaining register CR3 does not change either, a complete memory address for a specific entry of a specific page chaining table PCT is thus established. The 13 most significant bit positions are read from this entry and transferred to the second data address register DR2 as the new current physical page number with a further control signal PCS emitted by the I / O control unit I / OP. The simplest case of a page chaining routine is thus completed, the data transfer is continued in the current memory page.

Darüber hinaus enthält ein Eintrag in der Seitenkettungstafel PCT neben bestimm ten, ^ei virtuellen Speichersystemen üblichen Kontrollbits CON für gültigen Eintrag usw. ein sogenanntes S-Bit.Dieses Bit kennzeichnet die Mehrstufigkeit der nächsten Seitenkettungsroutine. Mit diesem S-Bit wird nun ein durch das die Seitenkettungsroutine abschließende Steuersignal PCS vorbereitetes UND-Glied UG durchgeschaltet. Damit wird zunächst ein zweites Flip-Flop FF2 gesetzt, das dann mit einem an das ' Ein-/AusgäbeSteuerwerk I/OP übermittelten weiteren Anforderungssignal PRR kennzeichnet, daß nun zu einem an sich beliebigen Zeitpunkt innerhalb des Datentransfers der aktuellen Speicherseite bereits die nächste Seitenkettungsroutine vorbereitet werden muß. Das Ausgangssignal des durchgeschalteten UND-Glieds UG bewirkt außerdem, daß das zweite Kettungsregister CR2 aus einem weiteren Feld des ausgewählten Eintrages der benutzten SeitenkettungstafelAdditionally, an entry in the PCT Seitenkettungstafel next ten limited hours, contains ^ ei virtual memory systems usual control bits CON for valid entry and so a so-called S-Bit.Dieses bit identifies the multiple stages of the next Seitenkettungsroutine. With this S bit, an AND element UG prepared by the control signal PCS which terminates the page chaining routine is switched through. This first sets a second flip-flop FF2, which then uses a further request signal PRR transmitted to the input / output control unit I / OP to indicate that the next page chaining routine is already being prepared at any point in time within the data transfer of the current memory page must become. The output signal of the connected AND gate UG also causes the second chaining register CR2 from a further field of the selected entry of the side chaining table used

VPA 9/210/4062 -12-VPA 9/210/4062 -12-

6098 1 3/06016098 1 3/0601

PCT eine 4stellige Bitnummer übernimmt. Diese 4stellige Bitnummer kennzeichnet das Speichersegment, in dem nach der nächsten Seitenkettungsroutine der Datentransfer fortgesetzt werden soll.PCT takes on a 4-digit bit number. This 4-digit bit number identifies the memory segment in which the data transfer is continued with the next page chaining routine shall be.

Für diese Routine ist damit neben dem ersten auch das zweite Kettungsregister CR2 vorbereitet, d. h. eine bestimmte vollständige Speicheradresse festgelegt, die einen bestimmten Eintrag in der Segmentzeigertafel SPT bezeichnet. Deren Einträge sind in einzelne an Wortgrenzen ausgerichtete Teileinträge unterteilt. Jeder Eintrag enthält neben Kontrollbits CON ζ. B. für die Gültigkeit von Teileinträgen im wesentlichen zwei Teileinträge mit zwei verschiedenen 13stelligen Bitnummerh, die vollständige Seitennummern bezeichnen. Das ist im Gegensatz zu den Seitenkettungstafel PCT hiajferforderlich, um den Datentransfer für die beiden Fälle fortschreitender Adreßerhöhung- bzw. Erniedrigung unterscheiden zu können. Ein ausgewählter Eintrag in der ' Segmentzeigertafel SPT enthält in voller Breite sowohl eine vollständige Seitennummer als Fußpunktadresse einer Seitenkettungstafel PCT für den Fall fortschreitender Adreßerhöhung als auch einer anderen für den Fall fortschreitender Adreßerniedrigung.In addition to the first, the second chaining register CR2 is therefore also prepared for this routine, i. H. a certain full Defined memory address which designates a specific entry in the segment pointer table SPT. Whose Entries are divided into individual subentries aligned with word boundaries. Each entry contains beside Control bits CON ζ. B. for the validity of partial entries essentially two partial entries with two different ones 13-digit bit numbers that designate complete page numbers. This is in contrast to the side chain table PCT is required to handle the data transfer for the both cases of progressive address increase or decrease to be able to distinguish. A selected entry in the 'segment pointer table SPT contains both a full width complete page number as the base point address of a page link table PCT for the case of progressive Address increment as well as another one for the case of progressive address decrement.

Welcher der beiden Einträge bei einer Seitenkettungsroutine in das dritte Kettungsregister CR3 ausgelesen wird, ist durch das den Datentransfer kennzeichnende Steuersignal DTB festgelegt. Dieses bereitet nämlich auch einen bestimmten Schaltzustand eines Schaltnetzes SC vor, das zwischen den Datenausgängen der Segmentzeigertafel SPT und den Eingängen des dritten Kettungsregisters CR3 angeordnet ist. Dieses Schaltnetz ist in der Zeichnung vereinfacht nur für eine Leitung dargestellt, es enthält in Wirklichkeit zum Durchschalten eines Leitungsvielfaches mit 13 Leitungen 13 der dargestellten Netzwerke. Diese bestehen jeweils aus zweiWhich of the two entries is read out into the third chaining register CR3 in a page chaining routine is determined by the control signal DTB, which characterizes the data transfer. This namely also prepares a certain switching state of a switching network SC, which is arranged between the data outputs of the segment pointer table SPT and the inputs of the third chaining register CR3. This switching network is shown in simplified form in the drawing for only one line; in reality, it contains a line multiple with 13 lines 13 of the networks shown for switching through. These each consist of two

VPA 9/210/4062 .VPA 9/210/4062.

609813/0601 ^ 609813/0601 ^

zueinander parallel angeordneten UND-Gliedern, deren eine Eingänge jeweils mit einer Leitung eines der beiden Leitungsvielfache verbunden sind und deren zweiten Eingängen das normale, bzw. das negierte Steuersignal DTB zugeführt ': ist. Die Ausgänge der beiden UND-Glieder sind über ein ODER-Glied zusammengefaßt, dessen Masgang jeweils mit einer Bitstelle des dritten Kettungsregisters CR3 verbunden ist. Das Schaltnetz SC schaltet also in Abhängigkeit von dem Zustand des Steuersignals DTB jeweils eines der beiden Leitungsvielfache auf das dritte Kettungsregister CR3 durch. Mit der Übernahme des Inhalts eines der beiden Felder des ausgewählten Eintrages in der Segmentzeigertafel SPT in das dritte Kettungsregister CR3 ist eine der Seitenkettungstafeln PCT auswählbar, in der ein bestimmter Eintrag wiederum, wie bereits vorstehend im einzelnen beschrieben, durch den Inhalt des vierten Kettungsregisters CR4 festgelegt ist.mutually parallel AND gates, one of which inputs are each connected to a line of the two line multiples and their second inputs supplied with the normal or the negated control signal DTB ': is. The outputs of the two AND gates are combined via an OR gate, the course of which is connected to a bit position in the third chaining register CR3. The switching network SC therefore switches one of the two line multiples through to the third chaining register CR3 depending on the state of the control signal DTB. With the transfer of the content of one of the two fields of the selected entry in the segment pointer table SPT into the third chaining register CR3, one of the side chaining tables PCT can be selected, in which a certain entry, as already described in detail above, is determined by the content of the fourth chaining register CR4 is.

Zusammenfassend zeigt das anhand der Zeichnung erläuterte zweistufige Seitenke ttungs verfahren im Prinzip, daß/feine an einer Seitengrenze des Arbeitsspeichers MM liegende Fußpunktadresse jeweils durch einen Eintrag in einer in der Hierarchie übergeordneten Kettungstafel bestimmt ist und ein bestimmter Eintrag bzw. eine Bytenummer innerhalb einer Speicherseite durch einen Eintrag in einer in der Hierarchie nachgeordneten Tafel bzw. dem Inhalt eines diesem Speicherteil zugeordneten Registers festgelegt ist. Beide Adreßteile müssen jeweils zusammengefaßt werden, wenn ein Eintrag in einer bestimmten Adreßtafel benötigt wird. Dies ist im Laufe einer Seitenkettungroutine der Fall, die durch einen der beiden extremen Zählerstände des ersten Datenadreßregisters DR1 ausgelöst wird und für den Fall, daß sie mehrstufig verläuft und mehrere Speicherzugriffe erfordert, bereits durch vorgeschaltete Einzelschritte vorbereitet wird. Dadurch wird verhindert, daß der Datendurchsatz bei einer mehrstufigen Seitenkettungsroutine sinkt und damit die Möglichkeiten eines großen Arbeitsspeichersystems nichtIn summary, the two-stage side sinking method explained with reference to the drawing shows in principle that / fine on one Base point address lying on the page limit of the main memory MM is each determined by an entry in a link table higher in the hierarchy and a specific one Entry or a byte number within a memory page through an entry in one in the hierarchy subordinate table or the content of a register assigned to this memory part is determined. Both parts of the address must be combined each time an entry is required in a specific address table. this is the case in the course of a page chaining routine that is followed by one of the two extreme counts of the first data address register DR1 is triggered and in the event that they runs in several stages and requires several memory accesses, already prepared by preceding individual steps will. This prevents the data throughput from falling in the case of a multi-stage page chaining routine and thus the possibilities of a large memory system do not

VPA 9/210/4062 609813/0601 -H-VPA 9/210/4062 609813/0601 -H-

voll ausgenutzt werden können.can be fully exploited.

Weiterhin ist darauf hinzuweisen, daß die Kettungs tafeln mit Ausnahme der Kettungstafel höchster Ordnung jeweils nur Einträge für fortschreitende Adreßerhöhung bzw.- erniedrigung enthalten und deshalb auch nur diejenigen Kettungstafeln im Speicher resident zu sein, brauchen, die bei dem entsprechenden Datentransferbetrieb benötigt werden. Liegt also kein Fall der "Eingabe rückwärts" vor, so kann man auf die entsprechenden Kettungstafein für fortschreitende Adreßerniedrigung verzichten, was den Speicherplatzbedarf für Systemtabellen vermindert. Schließlich ist noch darauf hinzuweisen, daß sich aus dem geschilderten Ausführungsbeispiel ohne weiteres auch ein drei- oder mehrstufiges Seitenkettungsverfahren ableiten läßt. Im Prinzip wären dann nur zwischen die Kettungstafeln der untersten Ordnung, die Seitenkettungstafeln PCT und eine Kettungstafel der höchsten Ordnung, die hier durch die Segmentzeigertafel SPT dargestellt ist, weitere Ordnungen von Kettungstafeln einzufügen, denen jeweils ein Paaijvon Kettungsregistern zugeordnet ist. Der Inhalt dieser Kettungsregister ergäbe siclywie geschildert als Fußpunktadresse aus einem Eintrag einer Kettungstafel der nächsthöheren Ordnung bzw. aus einem Eintrag einer Folgenummer der Seitenkettungstafeln. Allgemein betrachtet stellen die Kettungstafein jedoch immer Systemtafeln dar, die einem bestimmten Speicherbereich zugeordnet sind und von den gerateindxviduellen Eingabe-/Ausgabeoperationen nebeneinander benutzt werden. Damit dies möglich ist, sind die dem Ein-/AusgäbeSteuerwerk zuzuordnenden Kettungsregister bis auf das Fußpunktregister für^ie Kettungstafel höchster Ordnung jedoch geräteindividuell, d. h. so. oft vorgesehen wie individuelle Ein-/Ausgäbeoperationen nebeneinander ablaufen können.It should also be noted that the chain boards with the exception of the chain board of the highest order each only contains entries for progressive increase or decrease of the address and therefore only those Chaining boards to be resident in the attic, need that in the corresponding data transfer company are needed. If there is no case of "input backwards", you can go to the corresponding one Foregoing chaining tables for progressive address lowering, which reduces the storage space requirements for system tables reduced. Finally, it should be noted that the described embodiment without further also a three- or multi-stage side chain process can be derived. In principle there would only be between the chaining tables of the lowest order, the side chaining tables PCT and a chaining table of the highest order, which is represented here by the segment indicator table SPT to insert further orders of chain tables, which a pair of linked registers is assigned in each case. Of the The content of these chaining registers would result as described as Base point address from an entry in a chaining table of the next higher order or from an entry in a sequence number of the side chain panels. Generally considered however, the chaining tables always represent system tables, which are assigned to a specific memory area and from the device-specific input / output operations can be used side by side. So that this is possible, the chaining registers to be assigned to the input / output control unit are except for the base point register for the highest order chaining table, however, device-specific, d. H. so. often provided like individual input / output operations can run side by side.

1 Figur -15-1 figure -15-

8 Patentansprüche8 claims

VPA9£!O/4O62 609813/0601VPA9 £! O / 4O62 609813/0601

Claims (8)

PatentansprücheClaims .^'Verfahren zum Durchführen von Eingabe-/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage mit Hilfe von ursprünglich beliebig virtuell oder reell adressierten, aber stets reell adressiert ablaufenden Kanalprogrammen, bei denen bei Datentransfers auch zu mehr als einer Seite des segmentierten physikalischen Arbeitsspeichers zugegriffen wird und bei einer festgestellten Überschreitung einer Seitengrenze dieses Speichers mit Hilfe eines Teiles der in einem Datenadreßspeicher niedergelegten physikalischen Datenadresse einer zu transferierenden Datenbytes zu einem systemeigenen Kettungslisten-Speicher zugegriffen wird, in dem jeder physikalischen Seitennummer eine die physikalische Seitennummer der im Programmablauf folgenden virtuellen Speicherseite enthaltende Eintragszeile zugeordnet ist, die mit der neuen Bytenummer zu einer nun gültigen physikalischen Datenadresse zusammengesetzt und im Daten-Adreßspeicher gespeichert wird, gemäß Hauptpatent . ... .,. (deutsche Patentanmeldung P 23 02379.2), dadurch gekenn.z.e lehnet, daß bei einem Kettungslisten-Speicher, der wegen seines Umfanges in einem hierarchisch in Seiten, Segmente und sofern erforderlich in Blöcke gegliederten Arbeitsspeicher (MM) seitenweise gestreut ist und der seinerseits dieser Gliederung entsprechend aus hierarchisch geordneten Kettungstafeln (PCT, SPT) besteht, in einer durch Überschreiten einer Seitengrenze ausgelösten und - sofern dabei ein Segmentoder ein Blockwechsel im Arbeitsspeicher stattfindet - mehrstufigen Seitenkettungsroutine aus der zuletzt ausgewählten Eintragszeile in einer der Kettungstafeln niederster Ordnung, einer sogenannten Seitenkettungstafel (PCT) dann gültige Teileinträge entnommen werden,' von denen jeder innerhalb einer Kettungstafel jeweils verschiedener höherer. ^ 'Procedure for performing input / output operations in a data processing system working with virtual addressing with the help of originally arbitrary channel programs with virtual or real addressing, but always real addressing, where data is transferred more than one page of the segmented physical memory is also accessed and at a detected exceeding of a page limit of this memory with the help of a part of the in a data address memory stored physical data address of a data byte to be transferred to a system-specific one Linked list memory is accessed in which each physical page number is the physical page number is assigned to the entry line containing the following virtual memory page in the program sequence, which starts with the new byte number is combined to form a now valid physical data address and stored in the data address memory according to the main patent. ....,. (German patent application P 23 02 379.2), thereby marked z.e refuses, that with a linked list memory, which because of its size in a hierarchical in pages, segments and if required working memory (MM) divided into blocks is scattered page by page and which in turn has this structure accordingly consists of hierarchically ordered chain tables (PCT, SPT), in one by crossing one Page limit triggered and - if a segment or block change takes place in the main memory - multilevel Page chaining routine from the last selected entry line in one of the chaining tables Order, a so-called side chain table (PCT) then valid partial entries are taken, 'each of which different higher levels within a chain table VPA 9/210/4062 -16-VPA 9/210/4062 -16- 8098 1 3/06018098 1 3/0601 Ordnung (ζ. B. SPT) eine EintraSzeile adressiert, daß daraus stufenweise in einer hierarchischen Linie absteigend jeweils die Fußpunktadresse für eine Kettungstafel der snächstniedrigeren Ordnung entnommen und zusammen mit einem der genannten Teileinträge die vollständige Adresse einer Eintragszeile in der auszuwählenden Kettungstafel nächstniedrigerer Ordnung gebildet wird, bis damit eine neue Seitenkettungstafel selektiert ist, in der mit einem Teil der Seitennummer der bisher beim Datentransfer ausgewählten Speicherseite eine Eintragszeile adressierbar ist, die neben den genannten Teileinträgen einen weiteren Teileintrag mit der vollständigen Folgeseitennummer einer Speicherseite enthält, in der nun die unterbrochene Ein-/Ausgabeoperation fortgesetzt wird.Procedure (ζ. B. SPT) addresses a EintraSzeile that it descending stepwise respectively from in a hierarchical line the Fußpunktadresse for Kettungstafel the s next lower order and formed together with one of said sub items, the full address of a record line in the to be selected Kettungstafel next lower order until a new page link table is selected in which an entry line can be addressed with part of the page number of the memory page previously selected during the data transfer, which in addition to the named partial entries contains a further partial entry with the complete following page number of a memory page in which the interrupted entry is now - / output operation is continued. 2 . Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die vollständige Adresse des jeweils zu übertragenden Datenbytes nach Byte- und Seitennummer geordnet in zv/ei Datenadreßregistern (DR1, DR2) gespeichert wird und dabei das die Bytenummer übernehmende erste Register (DR1) als vor- und rückwärtszählender und nach Übernahme einer Bytenummer in einen dem Arbeitsspeicher (MM) zugeordneten Decoder (DEC) durch einen von einem Ein-/Ausgabesteuerwerk (I/OP) abgegebenen Zählimpuls (DRC) fortschaltbaren Zähler : ausgebildet ist, aus dessen für jeweils eine der beiden Zählrichtungen extremen Zählerstand 000... bzw. 111... ein Anforderungssignal (PCR) als Kriterium für eine nun erforderliche Seitenkettungsroutine abgeleitet wird, bei der von dem Ein-/AusgäbeSteuerwerk durch ein Steuersignal (PCS) die Übernahme der folgenden physikalischen Seitennummer aus ■einem ausgewählten Eintrag einer Seitenkettungstafel (PCT) in das zweite Datenadreßregister (DR2) ausgelöst wird.2. Method according to Claim 1, characterized in that the complete address of the respective data byte to be transmitted is stored in two data address registers (DR1, DR2), sorted by byte and page number, and the first register (DR1) taking over the byte number as preceding and backward-counting, and after acquisition of a byte number in a working memory (MM) associated decoder (DEC) by an output from an input / output controller (I / OP) count (DRC) continuously switchable counter: is formed, from which in each case one of the two counting directions extreme counter reading 000 ... or 111 ... a request signal (PCR) is derived as a criterion for a now required page chaining routine, in which the input / output control unit takes over the following physical page number from a control signal (PCS) selected entry of a page chaining table (PCT) in the second data address register (DR2) is triggered. 3. Verfahren nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet, daß aus dem die Übernahme der 3. The method according to any one of claims 1 or 2, characterized in that the takeover of the VPA 9/210/4062 -17-VPA 9/210/4062 -17- ÖÜ98 13/0601ÖÜ98 13/0601 neuen Seitennummer auslösenden Steuersignal (PCS) abhängig von dem Zustand einzelner, jeweils bereits einen Segmentoder Blockwechsel bei der nächsten Seitenkettungsroutine anzeigender Bitstellen (z. B. S) der gerade in der laufenden Seitenkettungsroutine ausgewählten Eintragszeile einer Seitenkettungstafel (PCT) weitere Anforderungssignale (ζ. B. PRR) an das Ein-/Ausgabesteuerwerk (i/OP) abgeleitet werden und daß das Ein-/Ausgabesteuerwerk daraufhin zu einem frei wählbaren Zeitpunkt im Verlauf des Datentransfers innerhalb der ausgewählten Speicherseite eine ein- oder mehr-" stufige Zugriffsroutine zu den Kettungstafein (z. B. SPT) der bezeichneten höheren Ordnung auslöst, bei der bereits vor dem Erreichen der Seitengrenze der Teil der Seitenkettungsroutine abläuft, in dem die Fußpunktadresse der neuen Seitenkettungstafel gebildet wird.New page number triggering control signal (PCS) dependent of the status of individual, already one segment or block change in the next page chaining routine indicating bit positions (e.g. S) of the entry line currently selected in the current page chaining routine Side chaining table (PCT) further request signals (ζ. B. PRR) to the input / output control unit (i / OP) and that the input / output control unit thereupon at a freely selectable point in time in the course of the data transfer within the selected memory page a single or multi-level access routine to the chaining table (e.g. SPT) of the specified higher order triggers, in which the part of the page chain routine is triggered before the page limit is reached runs, in which the base point address of the new page link table is formed. 4. Verfahren: nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die Kettungstafel höchster Ordnung (SPT) des Kettungslisten-Speichers zwei verschiedene, abhängig von dem geforderten Datentransferbetrieb,, d. h. ob der Datentransfer in konsekutiver Folge nach steigenden bzw. fallenden Bytenummern geordnet erfolgen soll, wahlweise auslesbare Einträge enthält, die jeweils durch die identische Adresse auswählbar sind und in unterschied- , liehe Kettungstafeln der niedrigeren Ordnungen verweisen.4. The method: according to one of claims 1 to 3, characterized in that the chaining table of the highest order (SPT) of the chaining list memory two different, depending on the required data transfer operation, ie whether the data transfer in consecutive order of increasing or decreasing byte numbers is to take place in an orderly manner, optionally contains readable entries, which can each be selected by the identical address and refer to different, borrowed chain tables of the lower orders. 5. Schaltungsanordnung zum Durchführen eines Verfahrens nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß ebenso wie die beiden Datenadreßregister (DR1, DR2) über den Decoder (DEC) einem Datenspeicher (DM) als Teil des Arbeitsspeichers (MM) jeder Kettungstafel (PCT, SPT) des Kettungslisten-Speichers ein Paar von Kettungsregistern (CR1, CR2 bzw. CR3, CR4) zugeordnet ist, in denen aufgeteilt in eine Basisadresse bzw. eine5. Circuit arrangement for performing a method according to one of claims 1 to 4, characterized in that that as well as the two data address registers (DR1, DR2) via the decoder (DEC) to a data memory (DM) as part of the main memory (MM) of each link table (PCT, SPT) of the link list memory a pair assigned by chaining registers (CR1, CR2 or CR3, CR4) is divided into a base address and a VPA 9/210/4062 -18-VPA 9/210/4062 -18- 609813/0601609813/0601 24444Ü624444Ü6 Segment- oder Blocknummer eine vollständige Speicheradresse zu speichern ist und die dazu über Leitungsvielfache mit Datenausgängen der Kettungstafeln der nächsthöheren bzw. niedrigsten Ordnung verbunden sind, mit Ausnahme des ersten' der Adreßtafel (SPT) höchster Ordnung zugeordneten Kettungsregisters (CR1), in dem die Fußpunktadresse für diese Kettungstafel als unveränderliche Systemgröße gespeichert ist und daß alle genannten Register, mit Ausnahme des letzteren, als geräteindividuelle Register ausgeführt sind.Segment or block number, a complete memory address is to be saved and this via line multiples with Data outputs of the chaining boards of the next higher or lowest order are connected, with the exception of the first 'of the address table (SPT) assigned highest order chaining register (CR1), in which the base point address for this Link table is stored as an unchangeable system variable and that all registers mentioned, with the exception of the the latter, are designed as device-specific registers. 6. Schaltungsanordnung nach Anspruch 5, dadurch gekennzeichnet, daß die parallelen Datenausgänge der Kettungstafel höchster Ordnung (SPT) und das die Basisadresse aufnehmende Kettungsregister (CR3) der Kettungstafelη der nächstniedrigeren Ordnung (PCT) über ein Schaltnetz (SC) miteinander verbunden sind, mit dem ausgelöst durch ein weiteres vom Ein-/AusgäbeSteuerwerk (I/OP) abgegebenes und den gewünschten Datentransferbetrieb bezeichnendes Steuersignal (DTB) jeweils einer der beiden Einträge mit einer Seitennummer auf das Kettungsregister durchschaltbar ist.6. Circuit arrangement according to claim 5, characterized in that the parallel data outputs the highest order chaining table (SPT) and the chaining register (CR3) containing the base address of the Chaining table of the next lower order (PCT) over a switching network (SC) are connected to each other, with which triggered by another from the input / output control unit (I / OP) and the desired data transfer operation Designating control signal (DTB) each one of the two entries with a page number on the chaining register is switchable. 7. Schaltungsanordnung nach Anspruch 5 oder 6, dadurch gekennzeichnet, daß* dem ersten, die Bytenummer speichernden Datenadreßregister (DR1) das den Datentransferbetrieb kennzeichnende Steuersignal (DTB) zugeführt und damit dessen Zählrichtung festlegbar ist, daß an einen Übertragsausgang dieses Registers ein erstes, andererseits mit dem Ein-/Ausgabesteuerwerk (I/OP) verbundenes Flip-Flop (FF1) angeschaltet ist, das durch einen Übertragsimpuls setzbar ist und in diesem Zustand am Ausgang ein Anforderungssignal (PCR) für eine Seitenkettungsroutine abgibt.7. Circuit arrangement according to claim 5 or 6, characterized in that * the first, the byte number storing data address register (DR1) the data transfer mode characterizing control signal (DTB) supplied and thus its counting direction can be determined that to a The carry output of this register is a first, on the other hand connected to the input / output control unit (I / OP) Flip-flop (FF1) is switched on, which can be set by a carry pulse and in this state at the output Issues request signal (PCR) for a page chaining routine. 8. Schaltungsanordnung nach einem der Ansprüche 5 bis 7% VPA 9/210/4062 6ΰ98Ί3/0601 -19-8. Circuit arrangement according to one of claims 5 to 7% VPA 9/210/4062 6ΰ98Ί3 / 0601 -19- dadurch gekennzeichnet, daß zum Vorbereiten einer mehrstufigen Seitenkettungsroutine jeweils weitere, zwischen je einem UND-Glied (UG) und dem Ein-/Ausgabesteuerwerk (l/OP) angeordnete Flip-Flops (z. B. FF2) vorgesehen sind, die im gesetzten Zustand Anforderungssignale (z. B. PRR) auf eine ein- oder mehrstufige vorbereitende Zugriffsroutine abgeben und daß die UND-Glieder eingangsseitig parallel mit den jeweils einen Segment- oder einen Blockwechsel anzeigenden Bitstellen (z. B. S) der Seitenkettung st afein (PCT) und außerdem mit der Steuerleitung verbunden sind, die das Steuersignal (PCS) führt, mit dem die Übernahme einer neuen Seitennummer in das zweite Datenadreßregister (DR2) ausgelöst wird.characterized in that for preparing a multi-stage side chaining routine in each case further flip-flops (e.g. FF2) arranged between each AND element (UG) and the input / output control unit (I / OP) are provided are, the request signals in the set state (e.g. PRR) to a single or multi-level preparatory Submit access routine and that the AND gates on the input side in parallel with the one segment or one Bit positions indicating block changes (e.g. S) of the side chain st afein (PCT) and also with the control line are connected, which carries the control signal (PCS) with which the acceptance of a new page number in the second data address register (DR2) is triggered. VPA 9/210/4062VPA 9/210/4062 609813/0601609813/0601 LeerseiteBlank page
DE19742444406 1973-01-18 1974-09-17 METHOD FOR PERFORMING INPUT / OUTPUT OPERATIONS IN A DATA PROCESSING SYSTEM WORKING WITH VIRTUAL ADDRESSING Pending DE2444406A1 (en)

Priority Applications (19)

Application Number Priority Date Filing Date Title
FR108891D FR108891A (en) 1973-01-18
DE19732302379 DE2302379C3 (en) 1973-01-18 1973-01-18 Circuit arrangement for performing sequentially running input / output operations in a data processing system working with virtual addressing
DE19732314070 DE2314070C3 (en) 1973-01-18 1973-03-21 Method and circuit arrangement for creating the entries of a linked list memory in a method and a circuit arrangement for performing sequentially running input / output operations in a data processing system operating with virtual addressing
GB5705473A GB1447680A (en) 1973-01-18 1973-12-10 Data processing systems
FR7401140A FR2214923B1 (en) 1973-01-18 1974-01-14
LU69174D LU69174A1 (en) 1973-01-18 1974-01-16
NL7400649A NL7400649A (en) 1973-01-18 1974-01-17
BE139975A BE809930A (en) 1973-01-18 1974-01-18 PROCESS AND CIRCUIT FOR EXECUTING INPUT / OUTPUT OPERATIONS TAKING PLACE IN SEQUENCE IN A DATA PROCESSING INSTALLATION
GB691174A GB1454357A (en) 1973-01-18 1974-02-15 Data processing systems
NL7403609A NL7403609A (en) 1973-01-18 1974-03-18
FR7409060A FR2222696B2 (en) 1973-01-18 1974-03-18
LU69663A LU69663A1 (en) 1973-01-18 1974-03-19
BE142284A BE812640R (en) 1973-01-18 1974-03-21 PROCESS AND CIRCUIT FOR EXECUTING INPUT / OUTPUT OPERATIONS TAKING PLACE IN SEQUENCE IN A DATA PROCESSING INSTALLATION
DE19742444406 DE2444406A1 (en) 1973-01-18 1974-09-17 METHOD FOR PERFORMING INPUT / OUTPUT OPERATIONS IN A DATA PROCESSING SYSTEM WORKING WITH VIRTUAL ADDRESSING
NL7510623A NL7510623A (en) 1973-01-18 1975-09-09 PROCEDURE FOR PERFORMING IMPORT / EXPORT OPERATIONS AT AN INFORMATION PROCESSING DEVICE WORKING WITH VIRTUAL ADDRESSING.
FR7527583A FR2285658A2 (en) 1973-01-18 1975-09-09 PROCEDURE AND CIRCUIT FOR PERFORMING INPUT / OUTPUT OPERATIONS TAKING PLACE IN SEQUENCE IN A DATA PROCESSING INSTALLATION WHICH OPERATES WITH VIRTUAL ADDRESSING
IT27092/75A IT1049588B (en) 1974-09-17 1975-09-10 DEVICE FOR PERFORMING INPUT OPERATIONS EMISSION IN A DATA PROCESSING SYSTEM WORKING WITH FORMULATION OF VIRTUAL DIRECTIONS
GB38092/75A GB1514555A (en) 1974-09-17 1975-09-16 Data processing systems
BE160129A BE833520R (en) 1973-01-18 1975-09-17 PROCESS AND CIRCUIT FOR EXECUTING INPUT / OUTPUT OPERATIONS TAKING PLACE IN SEQUENCE IN A DATA PROCESSING INSTALLATION

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE19732302379 DE2302379C3 (en) 1973-01-18 1973-01-18 Circuit arrangement for performing sequentially running input / output operations in a data processing system working with virtual addressing
DE19732314070 DE2314070C3 (en) 1973-01-18 1973-03-21 Method and circuit arrangement for creating the entries of a linked list memory in a method and a circuit arrangement for performing sequentially running input / output operations in a data processing system operating with virtual addressing
DE19742444406 DE2444406A1 (en) 1973-01-18 1974-09-17 METHOD FOR PERFORMING INPUT / OUTPUT OPERATIONS IN A DATA PROCESSING SYSTEM WORKING WITH VIRTUAL ADDRESSING

Publications (1)

Publication Number Publication Date
DE2444406A1 true DE2444406A1 (en) 1976-03-25

Family

ID=27184986

Family Applications (3)

Application Number Title Priority Date Filing Date
DE19732302379 Expired DE2302379C3 (en) 1973-01-18 1973-01-18 Circuit arrangement for performing sequentially running input / output operations in a data processing system working with virtual addressing
DE19732314070 Expired DE2314070C3 (en) 1973-01-18 1973-03-21 Method and circuit arrangement for creating the entries of a linked list memory in a method and a circuit arrangement for performing sequentially running input / output operations in a data processing system operating with virtual addressing
DE19742444406 Pending DE2444406A1 (en) 1973-01-18 1974-09-17 METHOD FOR PERFORMING INPUT / OUTPUT OPERATIONS IN A DATA PROCESSING SYSTEM WORKING WITH VIRTUAL ADDRESSING

Family Applications Before (2)

Application Number Title Priority Date Filing Date
DE19732302379 Expired DE2302379C3 (en) 1973-01-18 1973-01-18 Circuit arrangement for performing sequentially running input / output operations in a data processing system working with virtual addressing
DE19732314070 Expired DE2314070C3 (en) 1973-01-18 1973-03-21 Method and circuit arrangement for creating the entries of a linked list memory in a method and a circuit arrangement for performing sequentially running input / output operations in a data processing system operating with virtual addressing

Country Status (6)

Country Link
BE (3) BE809930A (en)
DE (3) DE2302379C3 (en)
FR (4) FR2214923B1 (en)
GB (2) GB1447680A (en)
LU (2) LU69174A1 (en)
NL (3) NL7400649A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2437300A1 (en) * 1978-09-26 1980-04-25 Cii Honeywell Bull Stored data checking technique - determines whether items are within page limits by using address calculator which performs addition or subtraction from origin

Also Published As

Publication number Publication date
BE809930A (en) 1974-07-18
DE2314070B2 (en) 1979-11-29
DE2314070C3 (en) 1980-08-07
BE833520R (en) 1976-03-17
DE2314070A1 (en) 1974-10-10
FR2214923A1 (en) 1974-08-19
NL7510623A (en) 1976-03-19
FR2285658B2 (en) 1978-09-08
DE2302379A1 (en) 1974-08-15
FR108891A (en)
GB1447680A (en) 1976-08-25
FR2214923B1 (en) 1978-08-04
FR2222696B2 (en) 1978-09-08
GB1454357A (en) 1976-11-03
FR2222696A2 (en) 1974-10-18
FR2285658A2 (en) 1976-04-16
DE2302379C3 (en) 1978-12-07
NL7400649A (en) 1974-07-22
LU69663A1 (en) 1974-10-17
LU69174A1 (en) 1974-04-08
BE812640R (en) 1974-09-23
DE2302379B2 (en) 1977-03-31
NL7403609A (en) 1974-09-24

Similar Documents

Publication Publication Date Title
DE2515696C2 (en) Data processing system
DE2725718C2 (en) Data processing arrangement for translating virtual addresses
DE2556661A1 (en) CONTROL CIRCUIT WITH ADDRESS EXTENSION
DE2758829C2 (en) Data processing system with several processors
DE2703559C2 (en)
DE1524788C3 (en) Circuit arrangement for the detection and automatic replacement of defective memory locations in data memories
DE2846054C2 (en) Circuit arrangement for expanding the addressing volume of a central unit, in particular a microprocessor
DE1269182B (en) Content-Addressed Information Store (Catalog Store)
EP0009625B1 (en) Data transfer commutator with associative address selection in a virtual store
CH495584A (en) Data processing system
DE2610428C3 (en) Arrangement for controlling the intermediate storage of data to be transmitted between two functional units in a buffer memory
EP1204917B1 (en) Stack of operands and method for stacking of operands
DE2444406A1 (en) METHOD FOR PERFORMING INPUT / OUTPUT OPERATIONS IN A DATA PROCESSING SYSTEM WORKING WITH VIRTUAL ADDRESSING
DE1549422B2 (en) DATA PROCESSING SYSTEM WITH VARIABLE PRE-SELECTABLE WORD LENGTH
DE2714314C2 (en) Data processing device with a data memory
DE2451984C2 (en) Data processing system
DE2816838C2 (en) Method and priority control unit for assigning priorities
DE2047144C3 (en) Memory arrangement working according to the principle of coincidence with rapid control
DE3918453C2 (en) LRU circuit
DE1774866C3 (en) Circuit for determining the address of a piece of information contained in a memory of a data processing system
DE1549422C3 (en) Data processing system with variable preselectable word length
DE1449816B2 (en) CIRCUIT ARRANGEMENT FOR CONTROLLING ACCESS TO A MAGNETIC DRUM MEMORY
DE3216222C2 (en)
DE3009329A1 (en) Hybrid associative memory for sorting stored data - has extra storage unit permitting house-keeping operations
DE2555434A1 (en) CALCULATOR

Legal Events

Date Code Title Description
OHN Withdrawal