DE2459833A1 - Controlled memory access for microprogrammed data - cyclic memory section of main store operates through control programme facility - Google Patents

Controlled memory access for microprogrammed data - cyclic memory section of main store operates through control programme facility

Info

Publication number
DE2459833A1
DE2459833A1 DE19742459833 DE2459833A DE2459833A1 DE 2459833 A1 DE2459833 A1 DE 2459833A1 DE 19742459833 DE19742459833 DE 19742459833 DE 2459833 A DE2459833 A DE 2459833A DE 2459833 A1 DE2459833 A1 DE 2459833A1
Authority
DE
Germany
Prior art keywords
memory
control program
input
data
area
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
DE19742459833
Other languages
German (de)
Inventor
Hellmuth Geng
Hermann Dipl Ing Helke
Christoph V Dipl Ing Krogh
Dieter Wollschlaeger
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.)
IBM Deutschland GmbH
Original Assignee
IBM Deutschland GmbH
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 IBM Deutschland GmbH filed Critical IBM Deutschland GmbH
Priority to DE19742459833 priority Critical patent/DE2459833A1/en
Publication of DE2459833A1 publication Critical patent/DE2459833A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • 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/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)

Abstract

A controlled memory access system with a working store and control programme is suited to micro-programmed data processing systems. The main dynamic store consists of an addressable section with input-output controlled by a general machine control programme. A cyclic memory section is loaded by the system user and is not addressable. Data transfer to and from the cyclic memory is under the control of a I/O programme coupled to read and write magnetic disc stores. A general control programme store communicates with the cyclic memory and can generate jump instructions. The system provides flexibility of operation of various sub-routines with different characteristics and programme systems.

Description

"Steuerbare Speicherzugriffsvorrichtung mit Arbeitsspeicher und Steuerprogramm für Speichereinrichtungen von Datenverarbeitungsanlagen, insbesondere von mikroprogrammierten Datenverarbeitungsanlagen" Die Erfindung betrifft eine steuerbare Speicherzugriffsvorrichtung mit Arbeitsspeicher und Steuerprogramm für Speichereinrichtungen von Datenverarbeitungsanlagen, insbesondere von mikroprograinmierten Datenverarbeitungsanlagen."Controllable memory access device with working memory and control program for storage devices in data processing systems, in particular micro-programmed Data processing systems "The invention relates to a controllable memory access device with working memory and control program for memory devices of data processing systems, in particular of microprograined data processing systems.

Der Begriff 'tMikroprogrammierung" wurde im Jahre 1951 von Prof. Wilkes geprägt. Hierzu sei verwiesen auf M. v. Wilkes »The best way to design an automatic calculating maschine Manchester University Computer Inaugural Conference 16-18 (Juli 1951). Über die exakte Bedeutung und Abgrenzung gibt es eine Reihe verschiedener Definitionen, wie man bei G.The term 'microprogramming' was created in 1951 by Prof. Wilkes embossed. Reference is made to M. v. Wilkes “The best way to design an automatic calculating machine Manchester University Computer Inaugural Conference 16-18 (July 1951). There are a number of different about the exact meaning and delimitation Definitions as described in G.

Chroust 11Mikroprogrammierung: Eine Definition auf Hardware-Basis, veröffentlicht in der Zeitschrift Elektronische Rechenanlagen 1974, Heft 2, S. 49-52, nachlesen kann, Dieser Aufsatz von Chroust führt die Definition des Begriffes Mikroprogrammierung auf das Konzept einer mikrogesteuerten Maschine zurück. Hiernach soll es wesentlich sein, daß die einzelnen Gatter des Rechenwerkes praktisch direkt vom Steuerwerk gesteuert werden. Mikroprogrammierung ist nach Chroust im wesentlichen eine Hardware-Eigenschaft. Sie kann nur in Zusammenhang mit einer Maschine betrachtet werden.Chroust 11 Micro-programming: A hardware-based definition, published in the journal Electronic Computing Systems 1974, Issue 2, pp. 49-52, This article by Chroust leads the definition of the term microprogramming on the concept of a micro-controlled Machine back. After that it should be essential that the individual gates of the arithmetic unit are practically direct controlled by the control unit. According to Chroust, microprogramming is essentially a hardware property. It can only be viewed in the context of a machine will.

Eine allgemeine Diskussion einer Mikroprogramm-Steuerung ist ferner in einer Veröffentlichung von S. G. Tucker "icroprogram control for System/360" in der Zeitschrift "IBM Systems - Vol.6 - No.4 - 1967, Seiten 222-241 zu finden.A general discussion of microprogram control is also provided in a publication by S. G. Tucker "icroprogram control for System / 360" in the journal "IBM Systems - Vol.6 - No.4 - 1967, pages 222-241 to be found.

Mit der Arbeitsweise von Steuereinheiten, die auf der Mikroprogrammsteuerung beruhen, beschäftigt sich der Artikel Die Mikroprogrammsteuerung der Philips Rechnerfamilie P 1000 von I. A. Dinklo und E. B. Vries in der Zeitschrift Philips techn. Rundschau, Band 34, Heft 5/6, 1974/75, Seiten 122-137.With the operation of control units based on the microprogram control based, the article deals with the microprogram control of the Philips computer family P 1000 by I. A. Dinklo and E. B. Vries in the journal Philips techn. Rundschau, Volume 34, Issue 5/6, 1974/75, pages 122-137.

In der von Wilkes beschriebenen Mikroprogrammorganisation werden für jeden einzelnen Auftrag die aufeinanderfolgenden elementaren Operationen in Form eines kleinen Programms festgelegt. Obwohl Wilkes damals an eine Bestückelung mit Dioden dachte, schloß er bereits die Möglichkeit ein, das Mikroprogramm in einem Speicher festzulegen, wie dies gegenwärtig in vielen Fällen geschieht.In the microprogram organization described by Wilkes, for every single order the successive elementary operations in the form a small program. Although Wilkes at that time was using a Dioden thought it already included the possibility of the micro program in one Memory, as is currently done in many cases.

Bei Verwendung eines Mikroprogrammspeichers oder Steuerspeichers bestimmt der Inhalt eines Registers über eine Adreßwahlschaltung eine Adresse im Steuerspeicher. Das sich auf dieser Adresse befindliche Mikroprogrammwort wird gelesen und in ein Pufferregister transportiert. Jedes Wort besteht aus einem Adreßteil und einem Befehelsteil. Der Adreßteil bestimmt den anschließenden Registerinhalt des Registers ~indem dieser Adreßteil unverändert in das Register übernommen wird. Im Befehlsteil entspricht jedes Bit oder jede Bitgruppe einer bestimmten elementaren Operation oder einer Gruppe dieser Operationen (val. ngheres in Philips techn. Rdsch. 34, Nr. 5/6, Seiten 122-137).Determined when using a microprogram memory or control memory the content of a register via an address selection circuit an address in the control store. The microprogram word located at this address is read and stored in a Buffer register transported. Each word consists of an address part and a command part. Of the Address part determines the subsequent register content of the register ~ by transferring this address part unchanged into the register. In the command part each bit or group of bits corresponds to a particular elementary operation or a group of these operations (val. ngheres in Philips techn. Rdsch. 34, No. 5/6, pages 122-137).

Durch die deutsche Offenlegungsschrift 2 363 100 ist ein Mikroprogramm-Steuerwerk für eine Datenverarbeitungsanlage zum Steuern von Maschinenoperationen unter dem Einfluß von Maschinenzuständen und gespeicherten Maschinenbefehlen, welche Maschinenbefehle wenigstens einen Operations code umfassen, bekanntgeworden.By the German Offenlegungsschrift 2 363 100 is a microprogram control unit for a data processing system for controlling machine operations under the Influence of machine states and stored machine commands, which machine commands comprise at least one operation code has become known.

Dieses bekannte Steuerwerk enthält einen ersten und einen zweiten Steuerspeicher zur Aufnahme von Mikrobefehlen, sowie jedem der Speicher individuell zugeordnete Adressierer und Schalter für den Zugriff zu maschinensteuernden Mikrobefehlen, ein Steuerregister, das mit den Schaltern verbunden ist, um jedem von mehreren Arbeitszyklen des Steuerwerks zugeordnete Mikrobefehle zu empfangen. Ferner sind durch mit dem Steuerregister verbundene Wählmittel vorgesehen, die auf die Ausgabe der Mikrobefehle ansprechen, um wenigstens einen der den Speichern zugeordneten Schalter zu schließen, wobei die dem ersten Speicher zugeordneten Schalter eine Vorrichtung zum Signalisieren des letzten Steuerzyklus eines Maschinenbefehls aufweisen.This known control unit contains a first and a second Control memory for receiving micro-commands, as well as each of the memories individually assigned addressers and switches for access to machine-controlled microinstructions, a control register connected to the switches for each of several duty cycles to receive micro-commands assigned to the control unit. Furthermore, through with the Control register associated selector means are provided which respond to the output of the microinstructions respond to close at least one of the switches assigned to the memories, the switches associated with the first memory having a device for signaling of the last control cycle of a machine command.

In der deutschen Offenlegungsschrift 2 117 581 ist eine Einrichtung zur Adressenprüfung und Adressenmodifizierung in einer mikroprogrammierten Datenverarbeitungsanlage, deren Hauptspeicher aus einem Datenspeicher zur Speicherung der Daten und der Programminstruktionen und aus einem Steuerspeicher zur Speicherung der Eikroprogrammsteuerworte besteht, wobei diese beiden Speicherbereiche über ein gemeinsames Adressenregister und gemeinsame Treiberschaltungen adressiert werden, beschrieben.In the German Offenlegungsschrift 2 117 581 is a facility for address checking and address modification in a micro-programmed data processing system, their main memory consists of a data memory for storing the data and the program instructions and consists of a control memory for storing the microprogram control words, whereby these two memory areas have a common address register and common Driver circuits are addressed, described.

Diese bekannte Einrichtung nach der deutschen Offenlegungsschrift 2 117 581 enthält ein Adressenprüfungs-Grenzenregister zur Speicherung der Adresse der Grenzspeicherstelle zwischen Steuerspeicher und Datenspeicher und von Steuerinformationen über den Hauptspeicherbetrieb. Es ist ausgangsseitig sowohl mit dem Hauptspeicheradressenregister als auch mit einer Vergleichseinrichtung verbunden, wobei der andere Eingang der Vergleichseinrichtung mit dem Ausgang des Hauptspeicheradressenregisters verbunden ist. Ferner sind hierbei Einrichtungen vorgesehen, die der Erzeugung eines Fehlersignales aus dem von der Vergleichseinrichtung gelieferten Signal dienen, wenn die Hauptspeicheradresse fälschlicherweise unter- oder oberhalb der im Adressenprüfungs-Grenzenregister gespeicherten Adressengrenze liegt.This known device according to the German Offenlegungsschrift 2 117 581 contains an address validation limit register for storing the address the boundary storage location between the control store and the data store and of control information via main memory operation. It is on the output side with both the main memory address register and connected to a comparison device, the other input being the Comparison device connected to the output of the main memory address register is. In addition, devices are provided here which enable the generation of an error signal from the signal supplied by the comparison device if the main memory address incorrectly below or above that stored in the Check Address Limits register Address limit lies.

Die der Erfindung zugrunde liegende Aufgabe besteht nun darin, eine steuerbare Speicherzugriffsvorrichtung mit Arbeitsspeicher und Steuerprogramm für Speichereinrichtungen von Datenverarbeitungsanlagen, insbesondere von mikroprogrammierten Datenverarbeitungsanlagen bzw. von Datenverarbeitungsanlagen der vorstehend erörterten Art derart zu gestalten, daß ein Höchstmaß an Datenschutz gewährleistet ist.The object of the invention is now to provide a controllable memory access device with working memory and control program for Storage devices for data processing systems, in particular micro-programmed Data processing systems or data processing systems of those discussed above Art to be designed in such a way that the highest level of data protection is guaranteed.

Dies wird erfindungsgemäß dadurch erreicht, daß ein dynamisch schaltbarer Hauptspeicher in einen adressierbaren Speicherbereich und in einen als Umlaufspeicher dienenden Speicherteil unterteilt ist, deren gemeinsame Übergangsgrenze verschiebbar ist, wobei der Umlaufspeicherteil in variable Blöcke unterteilbar ist, deren Anzahl vom Benutzer frei wählbar sind, und daß zudem ein Maschinensteuerprogramm den jeweiligen Block des Umlaufspeichers so lange zur Verfügung hält, wie dieser zur Ausführung von Ein-bzw. Ausgabevorhaben benötigt wird, daß ferner die Verwaltung und Zuordnung der einzelnen Blöcke im Umlaufspeicher zyklisch erfolgt, derart, daß die maximale Menge an Information von externen, virtuellen Datenmedien ständig zur Verfügung steht und nur die am längsten nicht gebrauchte Dateninformation im Bedarfsfalle durch neue Daten überschreibbar ist, wobei im Umlaufspeicher stehende Daten über das Maschinenprogramm dem Benutzer im Hauptspeicher direkt zur Verfügung stehen, so daß insgesamt ein Speicherbereich entsteht, der einmal gegen willkürlichen oder unbeabsichtigten Zugriff durch den Benutzer vom Arbeitsprogramm her geschützt ist und zum anderen vom gleichen Maschinenkontrollprogramm her bearbeitbar ist, obwohl diese Speicherbereiche nicht das Kontrollprogramm selbst darstellen.This is achieved according to the invention in that a dynamically switchable Main memory in an addressable memory area and in a circular memory Serving memory part is divided, the common transition limit of which is displaceable is, the circulating memory part can be subdivided into variable blocks, the number of which by the user are freely selectable, and that also a machine control program keeps the respective block of the circulating storage available as long as this for the execution of input or. Output project is required that also the administration and assignment of the individual blocks in the circular memory takes place cyclically in such a way that the maximum amount of information from external, virtual data media is constantly available Is available and only the data information that has not been used for the longest time if necessary can be overwritten by new data, with data in the circular memory over the machine program is directly available to the user in the main memory, so that a total of a memory area is created that once against arbitrary or unintentional access by the user is protected by the work program and on the other hand can be edited from the same machine control program, although these memory areas do not represent the control program itself.

Die Erfindung stellt damit eine Einrichtung zum stufenweisen Reduzieren des Arbeitsspeichers mit Steuerprcgramm dar, welche die reduzierten Bereiche für spezielle Ein-und Ausgabeaufgaben verwaltet.The invention thus provides a device for stepwise reduction of the main memory with control program, which the reduced areas for special input and output tasks are managed.

In der Datenverarbeitung sind neben den normalen Hauptspeichern folgende andere gebräuchliche Speicher an sich bekannt: 1.) Zwischenspeicher, deren Inhalt aus Ein- und Ausgabesätzen besteht, die von der Software direkt verarbeitet werden können. 2.) Hardware-Zwischenspeicher, die für Drucker, Leser und Stanzer Zwischenbereiche darstellen und hardwaregerechte Codes enthalten, so daß sie unmittelbare Signale für die Ausgabe bzw. von der Eingabe her direkt darstellen. 3.) Durchlaufspeicher, wie sie bei Magneteinheiten in Form von Schieberegistern bzw. Ersatzpuffern üblich sind. 4.) Die Schaltung einer Grenze in einem gemeinsamen Speicher, deren einer Teil für den Benutzer als Hauptspeicher zur Verfügung steht und deren anderer Teil als Maschinensteuerprogramm benutzt wird.In addition to the normal main memories, the following are used in data processing other common memory known per se: 1.) Intermediate memory, their content consists of input and output records that are processed directly by the software can. 2.) Hardware buffers, the intermediate areas for printers, readers and punches represent and contain hardware-compatible codes so that they are immediate signals for the output or directly from the input. 3.) flow storage, as is usual with magnetic units in the form of shift registers or replacement buffers are. 4.) The circuit of a limit in a shared memory one part of which is available to the user as main memory and of which other part is used as a machine control program.

Dem Erfindungsgedanken liegt die Aufgabe zur Schaffung eines dynamischen Umlaufspeichers zugrunde. Hierbei werden gegenüber dem Bekannten folgende technischen Vorteile erreicht: Die Erfindung ermöglicht, auf einem Datenmedium verschiedene Systemroutinen mit unterschiedlichen Charakteristiken und Programmsystemen unterzubringen. Dies ermöglicht, auf einem Datenmedium sowohl die Behandlung von alten als auch neuen Dateneinheiten. Dieser Typ von Speicher ist obwohl er physikalisch im Hauptspeicher angeordnet ist, vom Benutzer nicht adressierbar. Hierdurch wird ein Höchstmaß an Datenschutz erreicht.The task of the invention is to create a dynamic one Circulating storage is based. The following technical Advantages achieved: The invention enables various To accommodate system routines with different characteristics and program systems. This enables both old and new data units. This type of memory is physically in main memory even though it is is arranged, not addressable by the user. This will provide the highest level of Data protection achieved.

Falls dieser dynamische Umlaufspeicher bei der Erfindung nicht für spezielle Ein- und Ausgabenanwendungen benötigt wird, steht dieser dem Benutzer selbstverständlich uneingeschränkt zur Verfügung.If this dynamic circular memory in the invention is not for special input and output applications are required, this is available to the user of course unrestrictedly available.

Da bei der Erfindung dieser Umlaufspeicher iqvariable Blöcke unterteilbar ist, und daß dabei die Anzahl dieser Blöcke vom Benutzer frei wählbar ist, ermöglicht es dem Anwender, eine Einschränkung des Hauptspeichers nur insofern durchzuführen, als es für seine Zwecke dienlich ist.Since, in the invention, this circulating memory can be divided into iqvariable blocks is, and that the number of these blocks can be freely selected by the user, enables allows the user to restrict the main memory only to the extent that than it is useful for his purposes.

Bei der Erfindung besteht eine dynamische Zuordnung für Ein- und Ausgabe-Aufgaben durch ein Maschinenprogramm nach dem Umlaufprinzip, wobei Modusmerkmale für den jeweiligen Speicherblock in diesem mitgeführt werden. Hierdurch wird ermöglicht, daß jeder Block als selbständige Einheit vom Maschinensteuerprogramm aus betrachtet werden kann.In the invention there is a dynamic assignment for input and output tasks by a machine program based on the principle of circulation, with mode features for the respective memory block are carried along in this. This enables that each block is viewed as an independent unit from the machine control program can be.

Durch das Umlaufprinzip behalten bei der Erfindung die jeweiligen Speicherblöcke den Inhalt ihrer letzten Aktivität so lange bei, bis sie reaktiviert werden. Dadurch entfallen zusätzliche mechanische Zugriffs zeiten bei Wiederbenutzung der gleichen Informationen in den Blöcken.Due to the circulation principle keep the respective in the invention Memory blocks retain the contents of their last activity until they are reactivated will. This eliminates the need for additional mechanical access times when re-used the same information in the blocks.

Dieser Umlaufspeicher kann vorteilhaft vom Maschinensteuerprogramm aus gegen Zugriff von anderen als den erlaubten Ein- und Ausgabemedien gesperrt werden (Datenschutz).This circulating memory can advantageously be used by the machine control program locked against access from other than the permitted input and output media (data protection).

Für Wartungszwecke ist es bei der Erfindung dem Wartungspersonal vorteilhaft möglich, Speicherauszüge mit Hilfe des Maschinensteuerprogramms aus dem normalerweise gesperrten Bereich zu erstellen.For maintenance purposes, it is advantageous to the maintenance personnel in the invention possible to extract memory dumps with the help of the machine control program from the normally create restricted area.

Das Maschinensteuerprogramm ermöglicht bei der Vorrichtung nach der Erfindung im Falle einer nicht normalen Beendigung eines Programmbereiches, die diesem Programmbereich zugeordneten Speicherblöcke anderen Programmbereichen zur Verfügung zu stellen.The machine control program enables the device according to the Invention in the event of an abnormal termination of a program area that Memory blocks assigned to this program area for other program areas To make available.

Das Prinzip des Maschinensteuerprogramms erlaubt es bei der Erfindung1 in vorteilhafter Weise aus einer vorhandenen logischen Verarbeitungseinheit eine dem neuen Datenmedium angepaßte neue Verarbeitungseinheit zu erstellen, wobei auch Übergänge in der Hierarchie möglich sind.The principle of the machine control program allows it in the invention 1 advantageously one from an existing logical processing unit to create the new data medium adapted new processing unit, with also Transitions in the hierarchy are possible.

Aus dem zuletzt genannten Vorteil heraus ermöglicht in weiterhin vorteilhafter Weise das Maschinenprogramm, daß in einem Adressiersystem ein weiteres, selbständiges enthalten sein kann. Dadurch wird erreicht, daß vorhandene Progrnmmbibliotheken und die dafür erstellten Standardprogramme ohne Einschränkung benutzbar sind. Auch der Aufbau eines solchen erfindungsgemäßen Systems läßt sich hierdurch mit normalen Standardprogrammen verwirklichen.The last-mentioned advantage enables it to continue to be advantageous Way the machine program that another, independent one in an addressing system may be included. This ensures that existing program libraries and the standard programs created for this can be used without restriction. Even the structure of such a system according to the invention can hereby be carried out with normal Realize standard programs.

Ein Vorteil gegenüber den bekannten Zwischenspeichern, deren Inhalt aus Ein- und Ausgabesätzen besteht, ist bei der Erfindung darin zu sehen, daß sich Zwischenspeicher und Software-Verarbeitung aus den Möglichkeiten ergeben, die durch den Adressierschutz entstehen, wie vorstehend dargelegt wurde.An advantage over the known caches, their content consists of input and output sets, can be seen in the invention in that Cache and software processing result from the possibilities provided by the address protection arise, as explained above.

Ein Vorteil der Erfindung gegenüber den bekannten, oben erwähnten Hardware-Zwischenspeichern, die für Drucker, Dieser und Stanzer Zwischenbereiche darstellen und hardwaregerechte Codes enthalten, liegt in der Flexibilität, wie bereits vorstehend erörtert wurde.An advantage of the invention over the known ones mentioned above Hardware caches that are used for printers, dies and punches and contain hardware-compatible codes lies in the flexibility of how has already been discussed above.

Oben wurde erwähnt, daß in der bekannten Datenverarbeitung neben den normalen Haupt speiche rn auch Durchlaufspeicher bekannt sind, wie sie bei Magneteinheiten in Form von Schieberegstern bzw. Ersatzpuffern üblich sind. Durchlaufspeicher, wie Schieberegister und Ersatzpuffer, sind jedoch kleine Speicher, deren Anwendung schon wegen ihrer Größe außer Betracht kommt.It was mentioned above that in the known data processing in addition to the normal main memories are also known as pass-through memories, as they are in magnet units in the form of shift registers or replacement buffers are common. Pass-through memory, like Shift registers and spare buffers, however, are small memories that are used out of consideration because of their size.

Die Schaltung einer verschiebbaren Grenze zwischen dem vom Maschinensteuerprogramm und vom Anwender gemeinsam benutzten Speicher ist im allgemeinen eine konfigurationsabhängige Maßnahme, die lediglich einer besseren Ausnutzung des Speicherplatzes dient und somit Fertigungsvorteile mit sich bringt. Sie ermöglicht nicht die dynamische Zuordnung von geschützten Hauptspeichern für interne Ein- und Ausgabevorgänge, da die adressierbare Speichergröße nach Abschluß der Systeminstallation eingefroren wird.The switching of a movable border between that of the machine control program and user shared memory is generally configuration dependent Measure that only serves to make better use of the storage space and thus brings manufacturing advantages. It does not allow dynamic allocation of protected main memories for internal input and output processes, since the addressable Memory size is frozen after the system installation is complete.

Die Erfindung besteht also im wesentlichen aus einem dynamisch schaltbaren Speicher, der in jeder beliebigen Größe, vorzugsweise aber in Vielfachen von 1 kB unterteilbar ist, wobei jeweils ein Block durch ein Maschinenprogramm einem Ausgabe- bzw. einem Eingabevorgang dynamisch zugeordnet werden kann.The invention therefore essentially consists of a dynamically switchable one Memory in any size, but preferably in multiples of 1 kB divisible is, with one block in each case by a machine program can be dynamically assigned to an output or an input process.

Die Erfindung sei nachstehend an Hand der schematischen Zeichnungen für eine beispielsweise Ausführungsform näher erläutert.The invention is described below with reference to the schematic drawings explained in more detail for an example embodiment.

Fig. 1 zeigt eine Schaltung für die dynamische Programmsteuerung der Größe eines Speichers.Fig. 1 shows a circuit for the dynamic program control of the Size of a memory.

Fig. 2 enthält ein Flußdiagramm für den Prozeß und die Betriebsablauforganisation bei der Einrichtung nach der Erfindung. Die Ein- und Ausgabeeinheiten sind hier mit I/o bezeichnet.Fig. 2 contains a flow chart for the process and operational organization in the device according to the invention. The input and output units are here marked with I / o.

Fig. 3 zeigt in schematischer Darstellung einen in Blöcken I und II mit variablen Grenzen h und -B unterteilten Speicher. Diese Fig 3 dient zur Erläuterung eines an sich bekannten Programmsteuerungsprinzips nach R. Geng, H. Helle, C. von ifrogh und D. Wollschläger, das sich bei der Erfindung besonders vorteilhaft anwenden läßt, um zu gewährleisten, daß der dynamische Umlaufspeicher sowohl gegen jeden Benutzerzugriff als auch durch andere als der virtuellen Ein- und Ausgabeeinheit geschützt ist.Fig. 3 shows a schematic representation of one in blocks I and II memory subdivided with variable limits h and -B. This Fig 3 is used for explanation a program control principle known per se according to R. Geng, H. Helle, C. von ifrogh and D. Wollschläger, which apply particularly advantageously to the invention leaves to ensure that the dynamic circular memory against each User access as well as by other than the virtual input and output unit is protected.

Die Anwendung des Prinzips der virtuellen Adressierung ist bei wortorientierten Rechenmaschinen bekannt, vgl. z.The application of the principle of virtual addressing is with word-oriented Calculating machines are known, cf.

B. lexikon der Datenverarbeitung", Verlag moderne Industrie, 2. Auflage 1969, Seiten 542-545.B. lexicon of data processing ", Verlag modern industry, 2nd edition 1969, pages 542-545.

Ausführlich ist das Prinzip des virtuellen Speicherkonzepts von W. G. Spruth in seinem Artikel ~Systemprogramme für Teilnehmersysteme" in dem von W. H#ndler herausgegebenen Buch "Teilnehmer-Rechensysteme"(Verlag R. Oldenbourg, München und Wien 1968) auf Seite 61-77, insbesondere Seite 66 und 67, beschrieben. Danach sind die virtuellen Speicher in gleiche Einheiten, die sogenannten Seiten, unterteilt.The principle of the virtual storage concept by W. G. Spruth in his article ~ System Tools for Subscriber systems " in the book "Participant computing systems" published by W. H # ndler (Verlag R. Oldenbourg, Munich and Vienna 1968) on pages 61-77, especially pages 66 and 67, described. After that, the virtual memories are in equal units, the so-called Pages, divided.

Jede Seite eines virtuellen Speichers wird in einen gleichgroßen Block im Kernspeicher oder Hilfsspeicher des Systems abgebildet. Die virtuellen Adressen werden elektronisch in physikalische Kernspeicheradressen übersetzt; das Hereinholen von benötigten Seiten in den Kernspeicher erfolgt hierbei durch Systemprogramme. Auf beide Operationen hat der Benutzer keinen Einfluß. Sie erfolgen automatisch und unbemerkt vom Benutzer.Each page of virtual memory is in an equally sized block mapped in the core memory or auxiliary memory of the system. The virtual addresses are electronically translated into physical core memory addresses; bringing in of required pages into the core memory is done by system programs. The user has no influence on either operation. They happen automatically and unnoticed by the user.

Fig. 1 zeigt in Blockschaltbilddarstellung eine Ausführungsform einer Schaltungsanordnung für eine dynamisch programmgesteuerte Speichergröße. Diese Anordnung enthält den Registerspeicher 1, der über die Leitung 2 mit dem Adressenregister 3 und letzterer über die Leitung 4 mit dem Grenzenregister 5 verbunden ist.Fig. 1 shows in a block diagram representation an embodiment of a Circuit arrangement for a dynamically program-controlled memory size. This arrangement contains the register memory 1, which is connected to the address register via line 2 3 and the latter is connected to the limit register 5 via the line 4.

An das Grenzenregister 5 ist ausgangsseitig über die Leitung 6 die Vergleichseinrichtung 7 angeschlossen. Die zweite Eingangsleitung zur Vergleichseinrichtung 7 ist die Leitung 8, welche mit der Ausgangsleitung 4 des Adressenregisters 3 verbunden ist.The limit register 5 is on the output side via line 6 Comparison device 7 connected. The second input line to the comparison device 7 is the line 8, which is connected to the output line 4 of the address register 3 is.

Die die Mikroinstruktion enthaltende Leitung 9 an welche das Grenzenregister 5 angeschlossen ist, wird für die Einstellung der Speichergröße benutzt, d. h. sie führt den Setzimpuls für das Abtrennen der Speichergröße.Line 9 containing the microinstruction to which the limit register 5 is connected, is used for setting the memory size, i.e. H. she carries out the setting pulse for the separation of the memory size.

Das von der Vergleichseinrichtung 7 geleiferte Signal fließt über die Leitung 10 in die UND-Schaltung 11, über deren Ausgangsleitung 12 der Speicherzugriff bzw. die Prüfdurchschaltung erfolgt.The signal supplied by the comparison device 7 overflows the line 10 into the AND circuit 11, via their output line 12 the memory access or the test connection takes place.

Die Ausgangsleitung 4 des Adressenregisters 3 ist schließlich über die Leitung 13 mit. dem UND-Glied 14 der Verriegelungsschaltung 15 und mit dem UND-Glied 16 der Verriegelungsschaltung 17 verbunden. Die anderen Eingänge der genannten UND-Glieder 14 bzw. 16 der Verriegelungsschaltungen 15 bzw. 17 sind an die Leitung 18 angeschlossen, welche mit der Mikroinstruktionsleitung 9 verbunden ist.The output line 4 of the address register 3 is finally over the line 13 with. the AND gate 14 of the latch circuit 15 and the AND gate 16 of the latch circuit 17 is connected. The other inputs of the said AND gates 14 and 16 of the interlocking circuits 15 and 17 are connected to the line 18, which is connected to the microinstruction line 9.

Die Verriegelungsschaltung 15 führt ausgangsseitig über die Leitung 19 zum Eingang einer UND-Schaltung 20, und die Verriegelungsschaltung 17 führt ausgangsseitig über die Leitung 21 zum Eingang einer anderen UND-Schaltung 22.The locking circuit 15 leads on the output side via the line 19 to the input of an AND circuit 20, and the latch circuit 17 leads on the output side via line 21 to the input of another AND circuit 22.

Über die Leitung 23, die zum zweiten Eingang der UND-Schaltung 20 führt, erfolgt der Zugriff für die interne Datenverarbeitung. Über die Leitung 24, die zum zweiten Eingang der UND-Schaltung 22 führt, erfolgt der Zugriff von der Magnetbandeinheit oder von der Magnetplatte oder dergleichen.Via the line 23, which leads to the second input of the AND circuit 20 access for internal data processing takes place. Via line 24, which leads to the second input of the AND circuit 22, is accessed by the Magnetic tape unit or from the magnetic disk or the like.

Die Ausgangsleitung 25 der UND-Schaltung 20 führt zu einem Eingang der ODER-Schaltung 26, und die Ausgangsleitung 27 der. anderen UND-Schaltung 22 führt zum anderen Eingang der ODER-Schaltung 26. Der Ausgang der ODER-Schaltung 26 ist mit dem Eingang der Inverterschaltung 29 verbunden, die ausgangsseitig über die Leitung 30 mit dem zweiten Eingang der UND-Schaltung 11 verbunden ist.The output line 25 of the AND circuit 20 leads to an input the OR circuit 26, and the output line 27 of the. another AND circuit 22 leads to the other input of the OR circuit 26. The output of the OR circuit 26 is connected to the input of the inverter circuit 29, the output side via the line 30 is connected to the second input of the AND circuit 11.

Das Grenzenregister 5 ist ein Register, welches die Begrenzung darstellt und das Abtrennen bewirkt.The limit register 5 is a register which represents the limit and causes the separation.

Der Registerspeicher 1 ist nur ein Kontrollspeicherregister, d. h. ein Registerspeicher, wo die Adressen und das Kontrollprogramm mit arbeitet. Hier hat der Kunde keinen direkten Zugriff.The register memory 1 is only a control memory register, i. H. a register where the addresses and the control program with is working. The customer has no direct access here.

Fig. 2 beschreibt durch ein Flubdiagremm graphisch den Prozeß und die Betriebsablauforganisation für die Schaltungsanordnung nach der Erfindung zum stufenweisen Reduzieren des Arbeitsspeichers mit Steuerprogramm, welche die reduzierten Bereiche für spezielle Ein- und Ausgabeaufgaben verwaltet.Fig. 2 graphically describes the process and through a flow diagram the operational flow organization for the circuit arrangement according to the invention for gradual reduction of the main memory with control program, which the reduced Managed areas for special input and output tasks.

Die Anordnung nach der Erfindung enthält nach Fig. 2 im wesentlichen einen dynamisch schaltbaren Speicher 200, der in jeder beliebigen Größe, vorzugsweise aber in Vielfachen von 1 kB, unterteilbar ist, wobei jeweils ein Block durch ein Maschinensteuerprogramm 201 einem Ausgabe- bzw. einem Eingabevorgang dynamisch zugeordnet werden kann.The arrangement according to the invention contains as shown in FIG. 2 essentially a dynamically switchable memory 200, which is in any size, preferably but in multiples of 1 kB, can be subdivided, with one block in each case by a Machine control program 201 is dynamically assigned to an output or an input process can be.

Der prinzipielle Ablauf beginnt im Falle der Fig. 2 in der Regel damit, daß der Benutzer eine Anzahl von Speicherblöcken 101, 102, 103, 104, 105, 106 und x im Hauptspeicher 200, vorzugsweise am oberen Ende desselben, als Umlaufspeicher 202 deklariert. Dies geschieht generell zu dem Zeitpunkt, zu dem der Benutzer sein Programmsystem erstmalig am Tage aufladet. Hierbei werden über bestimmte Kontrollschaltungen die adr#ierbaren Hauptspeicherteile a entsprechend der Reservierung für den Umlaufspeicher 202 definiert.In the case of FIG. 2, the basic sequence usually begins with that the user has a number of memory blocks 101, 102, 103, 104, 105, 106 and x in main memory 200, preferably at the upper end thereof, as a circulating memory 202 declared. This generally happens at the point in time at which the user will be Program system charges for the first time during the day. Here are certain control circuits the addressable main memory parts a corresponding to the reservation for the circular memory 202 defined.

Danach ist der Umlaufspeicher 202 für den Benutzer nicht mehr adressierbar und steht ihm auch nicht mehr zur Verfügung. Dieser Umlaufspeicher 202 wird nun das erste Mal benutzt für das Laden des Programmsystems, falls dieses nur auf einem virtuellen Datenmedium, d. h. einer emulierten Dateneingabeeinheit existiert. Hierbei werden im allgemeinen die Laderoutinen über den Umlaufspeicher 202 zum Hauptspeicher 200 eingelesen, die für die SwTstemöffnung erforderlich sind. Ein Umrechnungsmechanismus sorgt dafür, daß Adressen des virtuellen Eingabemediums in entsprechende Adressen des tatsächlichen Eingabemediums umgesetzt werden.Thereafter, the circular memory 202 can no longer be addressed by the user and is no longer available to him. This circulating memory 202 is now used for the first time to load the program system, if only on one virtual data medium, d. H. an emulated data entry unit exists. Here will in general the loading routines via the circular memory 202 read into main memory 200, which are required for opening the SwTstem. A conversion mechanism ensures that addresses of the virtual input medium be converted into corresponding addresses of the actual input medium.

Das Maschinensteuerprogramm 201 sorgt nun dafür, daß der jeweilige Umlaufspeicher 202 so lange zur Verfügung gehalten wird, wie dieser zur Ausführung von Ein- bzw. Ausgabevorhaben benötigt wird. Eine entsprechende Anzeige wird dem jeweiligen der derzeit der Benutzung unterliegenden Blocks beigegeben. Dadurch werden Doppelbelegungen, die neuerliche Zugriffe zu den externen Datenmedien nötig machen, vermieden.The machine control program 201 now ensures that the respective Circulating memory 202 is kept available as long as it is available for execution is required by input and output projects. A corresponding display will be sent to the each of the blocks currently in use. This will be Double assignments that make new access to the external data media necessary, avoided.

Die Verwaltung und Zuordnung der einzelnen Blöcke 101, 102, 103, 104, 105, 106 und x im Umlaufspeicher 202 erfolgt vorteilhaft zyklisch. Hierdurch wird erreicht, daß die maximale Menge an Informationen von externen, virtuellen Datenmedien ständig zur Verfügung stehen und daß nur die älteste, t. h. die am längsten nicht gebrauchte Dateninformation, im Bedarfsfall durch neue Daten überschrieben wird. Daraus ergibt sich zwangsläufig, daß bei einem Rückgriff auf vorher gebrauchte Daten diesem keine Wartezeiten, wie sie entstehen, wenn externe Datenmedien angesprochen werden, anfallen.The administration and assignment of the individual blocks 101, 102, 103, 104, 105, 106 and x in the circulating memory 202 are advantageously carried out cyclically. This will that achieves the maximum amount of information from external, virtual data media always available and that only the oldest, t. H. the longest not Used data information, overwritten by new data if necessary. This inevitably results in a fallback to previously used data This means that there are no waiting times that arise when external data media are accessed will be incurred.

Im Umlaufspeicher 202 stehende Daten können somit über das Maschinensteuerprogramm 201 dem Benutzer im Hauptspeicher 200 direkt zur Verfügung gestellt werden. Hierbei fallen lediglich die internen Übertragungszeiten an, die auch bei der Übertragung von Hauptspeicher zu Hauptspeicher entstehen. Der Teil der Zeit, der für das Aufsuchen und die Verwaltung der Dateninformation erforderlich ist, ist vernachlässigbar. Der Vorteil ist besonders auffällig bei kleinen Teildatenmengen, die aus dem Umlaufspeicher 202 über das la>Iaschinensteuerprogramm 201 abgerufen werden.The data in the circular memory 202 can thus be accessed via the machine control program 201 can be made directly available to the user in the main memory 200. Here only the internal transmission times apply, which are also used during the transmission arise from main memory to main memory. The part of the time devoted to prospecting and the management of the data information required is negligible. Of the The advantage is particularly noticeable in the case of small partial amounts of data from the circular memory 202 can be called up via the machine control program 201.

Die zyklische Weiterschaltung erfolgt ebenfalls über die Modus anzeige, in der angegeben wird, welcher Speicherblock (101 - 106, x) des Umlaufspeichers 202 jeweils als letzter benutzt wurde.The cyclical switching is also done via the mode display, which indicates which memory block (101-106, x) of the circular memory 202 was the last to be used.

Neben dieser zyklischen Weiterschaltung der Speicherblöcke (101 - 106, x) des Umlaufspeichers 202 besteht die Möglichkeit, bereits im Umlaufspeicher 202 befindliche Daten erneut anzusprechen und damit jeden Speicherblock (101a06, x) zu reaktivieren.In addition to this cyclical forwarding of the memory blocks (101 - 106, x) of the circulating store 202, there is the possibility of already being in the circulating store 202 to address the data again and thus each memory block (101a06, x) to reactivate.

In Fig. 2 ist mit 203 ein Kontrollprogrammspeicher in einem Ein-Ausgabe-Prozessor bezeichnet. Dieser Kontrollprogrammspeicher bestimmt den Datenfluß, der gelesen oder geschrieben werden soll. An diesem Kontrollprogrammspeicher 203 sind die beiden Magnetplattenspeicher 204 und 205 angeschlossen. Die Bereiche virtueller I/o's sind beim Plattenspeicher 204 mit 206 und beim Plattenspeicher 205 mit 207 bezeichnet.In FIG. 2, 203 is a control program memory in an input / output processor designated. This control program memory determines the flow of data that is read or should be written. The two are in this control program memory 203 Magnetic disk storage 204 and 205 connected. The areas of virtual I / Os are in the case of disk storage 204 with 206 and in disk storage 205 with 207.

Im Speicher 208 für das Steuerprogramm virtueller I/o wird erfindungsgemäß ein Teil der Befehle abgefangen. Diese verlaufen nicht über die Verbindung 209 in das Steuerprogramm 203 für I/O-Einheiten, sondern führen über die Verbindungen 210 und 211 in den abgetrennten Bereich 202 des Hauptspeichers 200. In diesem abgetrennten Bereich, dem Umlaufspeicher 202, stehen die Daten dem Benutzer nicht direkt zur Verfügung, sondern werden von dort in den Bereich gesteuert, wo er sie ursprünglich haben wollte.In the memory 208 for the control program virtual I / o, according to the invention some of the commands intercepted. These do not run over connection 209 in the control program 203 for I / O units, but run via the connections 210 and 211 in the separated area 202 of the main memory 200. In this separated area Area, the circular memory 202, the data are not directly available to the user Available, but are controlled from there to the area where it was originally wanted to have.

Der vom Hauptspeicher 200 über die Leitung 212 und über das allgemeine Maschinen-Steuerprogramm 201 sowie über die Leitung 213 nach 203 (Steuerprogramm für 1/0-Einheiten) führende Befehl ist der normale, alte, an sich bekannte Weg. Neu ist das Hinzukommen eines Datenzusatzweges, der zusätzlich von der Leitung 214 (Befehl für virtuelle 1/015) und von dem allgemeinen Maschinenprogramm 201 über die Leitung 215, über den Speicher 208 für das Steuerprogramm virtueller I/O's und über die Leitungen 210 bzw. 211 in den Umlaufspeicher 202 führt.That from main memory 200 via line 212 and via general Machine control program 201 and via line 213 to 203 (control program for 1/0 units) leading command is the normal, old, known way. What is new is the addition of an additional data path, which is also provided by line 214 (Command for virtual 1/015) and from the general machine program 201 via the line 215, via the memory 208 for the control program of virtual I / O's and leads via the lines 210 and 211 into the circulating memory 202.

In Fig. 2 ist im adressierbaren Speicher-Bereich des Hauptspeichers 200 der virtuelle /0-Bereich mit 216 und der reelle I/O-Bereich mit 217 angegeben. Die verschiebbare Grenze ist in Fig. 2 durch 218 angedeutet. Vom virtuellen I/O-Bereich 216 führt der Datenfluß 219 in den Speicherblock 0 des Umlaufspeichers 202. Der Datenfluß 219 wird über die Steuerung 220 von 208 aus durchgeführt. 219 ist ein Datenpfad, die übrigen sind Steuerpfade bzw. Befehlspfade.In Fig. 2 is in the addressable memory area of the main memory 200 the virtual / 0 area with 216 and the real I / O area with 217. The movable limit is indicated by 218 in FIG. 2. From the virtual I / O area 216 leads the data flow 219 into the memory block 0 of the circular memory 202. The Data flow 219 is performed from 208 via controller 220. 219 is a Data path, the others are control paths or command paths.

Vom Steuerprogramm 203 führen die Steuerpfade 221 und 222 "Auftrag Lesen" zum Magnetplattenspeicher 204, wobei der Steuerpfad 222 zum virteuellen /0-Bereich 206 des Plattenspeichers 204 führt.From the control program 203, the control paths 221 and 222 "lead" job Read "to disk storage 204, with control path 222 to virtual / 0 area 206 of the disk storage 204 leads.

Zum virtuellen I/O-Bereich 207 des Magnetplattenspeichers 205 führt der Steuerpfad 223 Auftrag Schreiben". In der Fig.Leads to the virtual I / O area 207 of the magnetic disk storage 205 the control path 223 "write job". In Fig.

2 ist mit 224 der Datenpfad zwischen dem reellen Bereich 217 des Hauptspeichers 200 und dem Magnetplattenspeicher 204, mit 225 der Datenpfad vom Speicherblock des Umlaufspeichers 202 zum virtuellen I/0-Bereich 206 des 0 Magnetplattenspeichers 204 und mit 226 der Datenpfad des virtuellen /0-Bereichs 207 des Magnetplattenspeichers 205 mit dem Speicherblock x des Umlaufspeichers 202 bezeichnet. Zwischen dem Speicherblock x und dem Speicher 208 für das Steuerprogramm virtueller I/O besteht der Steuerpfad 211.2 with 224 is the data path between the real area 217 of the main memory 200 and the magnetic disk storage 204, with 225 the data path from the memory block of the Circulating memory 202 to the virtual I / 0 area 206 of the 0 magnetic disk memory 204 and with 226 the data path of the virtual / 0 area 207 of the magnetic disk storage 205 denoted by the memory block x of the circular memory 202. Between the memory block x and the memory 208 for the control program virtual I / O the control path 211.

Um zu gewährleisten, daX der dynamische Umlaufspeicher sowohl gegen jeden Benutze#rzugriff als auch durch andere als der- virtuellen Ein- und Ausgabeeinheit geschützt ist, kann man vorteilhaft zum Beispiel das an sich bekannte Prinzip "Control-programmed switchable local storage" von R.In order to ensure that the dynamic circulating storage system can counteract both every user access as well as by anyone other than the virtual input and output unit is protected, one can advantageously use, for example, the principle known per se "Control-programmed switchable local storage "by R.

Geng, H. Helke, C. von Krogh und D. Wollschlaeger, das in der Zeitschrift IBM Technical Disclosure Bulletin, Vol. 15, No. 12 vom Mai 1973 auf Seite 3799 beschrieben ist, verwenden.Geng, H. Helke, C. von Krogh and D. Wollschlaeger, published in the journal IBM Technical Disclosure Bulletin, Vol. 15, No. 12 of May 1973 on page 3799 is to use.

Dieses an sich bekannte und bei der Erfindung äußerst vorteilhaft verwendbare Prinzip sei nachstehend an Hand der Fig. 3 kurz erläutert.This is known per se and extremely advantageous in the invention The principle that can be used is briefly explained below with reference to FIG. 3.

Der in Fig. 3 schematisch dargestellte Speicher 300 besitzt einen wirksamen itdressenbereich 301 für das Operationssystem und für die Benutzerprogramme sowie einen für das Operationssystem und die Benutzerprogramme unwirksamen hdressenbereich 302. Der Speicherbereich 302 ist in die Blöcke I und II mit variablen Grenzen A und B geteilt.The memory 300 shown schematically in FIG. 3 has a effective address area 301 for the operating system and for the user programs as well as an address area which is ineffective for the operating system and the user programs 302. The memory area 302 is in blocks I and II with variable limits A. and B shared.

Ein Teil des Speichers 300, der normalerweise vom Benutzer verwendet wird, ist für das Mikroprogramm im Eingabe- und Ausgabebereich eingesetzt. Zu diesem Zwecke ist der Speicher 300 durch eine Hardware-Verriegelung gegen einen unberechtigten Zugriff durch den Benutzer und gegen einen unbeabsichtigten Gebrauch durch irgendwelche anderen Steu#rogramme geschützt.A portion of memory 300 that is normally used by the user is used for the microprogram in the input and output area. To this Purpose is the memory 300 by a hardware lock against an unauthorized person Access by the user and against unintentional use by any other control programs.

Um diesen Teil des Speichers 500 für eigene Zwecke nutzbar zu machen, sind Kontrolloperationen vorgesehen, welche diesen Speicherbereich intern öffnen. Dies wird beim an sich Bekannten in verschiedenen Stufen bewerkstelligt, so daß entweder ein Bereich oder eine Vielzahl von vier K-Bereichen alternativ verriegelt werden kann. Nach der genannten IBM-Druckschrift ist es dabei ratsam, diese Bereiche entweder am Anfang oder am Ende des physikalischen Speichers anzuordnen.In order to make this part of the memory 500 usable for your own purposes, control operations are provided which this memory area open internally. This is accomplished in different stages when you are familiar with yourself, so that either one area or a plurality of four K-areas are locked alternatively can be. According to the aforementioned IBM publication, it is advisable to include these areas to be placed either at the beginning or at the end of the physical memory.

Dieser Speicherbereich kann nur durch das ihm zugeordnete Steuerprogramm betrieben werden. In diesen geschonten Bereichen ist es zum Beispiel möglich, Daten aus ganzen Magnetplattenspuren zu speichern. Die Datenverarbeitung ist dann dem zugeordneten Steuerprogramm zuzuschreiben. Da die Information aus einer Gesamtspur in dem geschonten Bereich immer greifbar ist, ergibt sich für diese Daten ein schnellerer Zugriff als wenn ein Programm erst auf das Ende des Produktionszyklus warten muß. Wenn die Grenze A (Fig. 3) durch die Programmierung bestimmt wird, dann werden die Blöcke I und II vom Speicher getrennt. Wenn jedoch die Grenze bei B liegt, dann wird nur der Block I getrennt.This memory area can only be accessed by the control program assigned to it operate. In these spared areas it is possible, for example, to store data to save from entire magnetic disk tracks. The data processing is then the assigned control program. As the information from a complete track is always available in the spared area, this results in a faster one Access as if a program had to wait for the end of the production cycle. If limit A (Fig. 3) is determined by programming, then the Blocks I and II separated from the memory. However, if the limit is at B, then only block I is separated.

Das von der Vergleicherschaltung 303 abgegebene Signal LSA inv. verhindert in Sonderfällen Zugriffe vorgegebener Einheiten in abgetrennten Blocks. "LSA in Fig. 3 ist die Abkürzung für Local Storage Adresse.The signal LSA inv. Emitted by the comparator circuit 303 prevents in special cases, access to specified units in separate blocks. "LSA in Fig. 3 is the abbreviation for Local Storage Address.

Der Produktionszyklus ist bei einem Plattenspeicher die Zugriffszeit = Wartezeit + Lesezeit. Beim Magnetband ist die Produktionszeit gleich der Bandanlaufzeit + Lesezeit.In the case of disk storage, the production cycle is the access time = Waiting time + reading time. With magnetic tape, the production time is the same as the start-up time of the tape + Reading time.

PatentansprücheClaims

Claims (5)

Patentansprüche Steuerbare Speicherzugriffsvorrichtung mit Arbeitsspeicher und Stetierprogramm für Speichereinrichtungen von Datenverarbeitungsanlagen, insbesondere von mikroprogrammierten Datenverarbeitungsanlagen, dadurch gekennzeichnet, daß ein dynamisch schaltbarer Hauptspeicher (209) in einen adressierbaren Speicherbereich und in einen als Umlaufspeicher dienenden Speicherteil (202) unterteilt ist, deren gemeinsame Übergangsgrenze(218) verschiebbar ist, wobei der Umlaufspeicherteil (202) in variable Blöcke (101, 102, 103, 104, 105, 106, x) unterteilbar ist, deren Anzahl vom Benutzer frei wählbar sind, und daß zudem ein Maschinensteuerprogramm (201) den jeweiligen Block des Umlaufspeichers (202) so lange zur Verfügung hält, wie dieser zur Ausführung von Ein- bzw. Ausgabevorhaben (I/O) benötigt wird, daß ferner die Verwaltung und Zuordnung der einzelnen Blöcke im Umlaufspeicher (202) zyklisch erfolgt, derart, daß die maximale Menge an Information von externen, virtuellen Datenmedien (206, 207) ständig zur Verfügung steht und nur die am längsten nicht gebrauchte Dateninformation im Bedarfsfalle durch neue Daten überschreibbar ist, wobei im Umlaufspeicher (202) stehende Daten über das Maschinenprogramm (208) dem Benutzer im Hauptspeicher (200) direkt zur Verfügung stehen, so daß insgesamt ein Speicherbereich entsteht, der einmal gegen willkürlichen oder unbeabsichtigten Zugriff durch den Benutzer vom Arbeitsprogramm (208) her geschützt ist und zum anderen vom gleichen Maschinenkontrollprogramm (208) her bearbeitbar ist, obwohl diese Speicherbereiche (101 - 106, x) nicht das Kontrollprogramm selbst darstellen. Controllable memory access device with working memory and continuous program for storage devices of data processing systems, in particular of micro-programmed data processing systems, characterized in that a dynamically switchable main memory (209) in an addressable memory area and is divided into a memory part (202) serving as a circulating memory, the common transition boundary (218) is displaceable, wherein the circulating storage part (202) can be subdivided into variable blocks (101, 102, 103, 104, 105, 106, x), the number of which can be freely selected by the user, and that a machine control program (201) keeps the respective block of the circular memory (202) available for as long as this is required for the execution of input and output projects (I / O), that furthermore the management and assignment of the individual blocks in the circular memory (202) cyclically takes place in such a way that the maximum amount of information from external, virtual Data media (206, 207) is constantly available and only for the longest time used data information can be overwritten with new data if necessary, the data about the machine program (208) in the circular memory (202) being dem Users in the main memory (200) are directly available, so that a total of one Memory area arises, which once against arbitrary or unintentional access is protected by the user from the work program (208) and on the other hand from The same machine control program (208) can be processed, although these memory areas (101 - 106, x) do not represent the control program itself. 2.) Steuerbare Speicnerzugriifsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, da1# dem "Allgemeinen Maschinen-Steuerprogramm" (201) aus dem adressierbaren Speicher-Bereich (a) des Hauptspeichers (200) über eine Leitung (214) Befehls-Signale für virtuelle Eingabe-Ausgabe-Einheiten (1/0) und über eine andere Leitung (212) Befehls-Signale für echte Eingabe-Ausgabe-Einheiten (1/0) zufließen, daß der Steuerfluß für die virtuellen Eingabe-Ausgabe-Einheiten (1/0)-Signale von der einen Leitung (214) über das Allgemeine Maschinen-Steuerprogramm't (201) in den Speicher (208) für das Steuerprogramm virtueller Eingabe-Ausgabe-Einheiten (1/0) verläuft, der (208) mit dem Umlaufspeicherteil (202)des Hauptspeichers (200) über Steuerleitungen (210, 211) in wechselseitiger Verbindung steht, und daß der Steuerfluß für die echten Eingabe-Ausgabe-Einheiten (1/0)-Signale von der anderen Leitung (212) über das 1,Allgemeine Maschinen-Steuerprogramm" (201) unmittelbar in das Steuerprogramm (203) für die Eingabe-Ausgabe-Einheiten (1/0) verläuft, das über eine Auftragsleitung (209) dem Speicher (208) für das Steuerprogramm virtueller Eingabe-Aus gabe-Einheiten nachgeschaltet ist und an das Magnetplatteneinheiten (204, 205) angeschlossen sind, deren Bereiche (206, 207) virtueller Eingabe-Ausgabe-Einheiten Datenpfade (225, 226) zum Umlaufspeicherteil (202) des Hauptspeichers (200) besitzen und deren anderer Bereich mit dem reellen Bereich (217) des adressierbaren Speicherbereiches (a) des Hauptspeichers (200) Daten-Verbindung (224) hat, und daß eine wechselseitige Daten-Verbindung (219) zwischen dem Umlaufspeicherbereich (202) und dem virtuellen Bereich (216) des adressierbaren Speicherbereiches (a) des Hauptspeichers (200) besteht.2.) Controllable Speicnerzugriifsvorrichtung according to claim 1, characterized characterized da1 # the "general machine control program" (201) from the addressable Memory area (a) of the main memory (200) via a line (214) command signals for virtual input-output units (1/0) and via another line (212) Command signals for real input-output units (1/0) flow that the control flow for the virtual input-output units (1/0) signals from one line (214) via the general machine control program (201) into memory (208) for the control program of virtual input-output units (1/0) runs, the (208) with the circulating storage part (202) of the main storage (200) via control lines (210, 211) is mutually related, and that the flow of control for the real Input-output units (1/0) signals from the other line (212) via the 1, general Machine control program "(201) directly into the control program (203) for the Input-output units (1/0) runs, which via an order line (209) to the Downstream memory (208) for the control program of virtual input / output units and to which magnetic disk units (204, 205) are connected, their areas (206, 207) virtual input-output units data paths (225, 226) to the circular storage part (202) of the main memory (200) and their other area with the real one Area (217) of the addressable memory area (a) of the main memory (200) Data connection (224) and that a reciprocal data connection (219) between the circular storage area (202) and the virtual area (216) of the addressable Memory area (a) of the main memory (200) exists. 3.) Steuerbare Speicherzugriffsvorrichtung nach den Ansprechen 1 und 2, dadurch gekennzeichnet, daß eine dynamische Zuordnung für Ein- und Ausgabe aufgaben durch das Maschinensteuerprogramm nach dem Umlaufprinzip erfolgt, wobei Modusmerkmale für den jeweiligen Speicherblock in diesem mitgeführt werden.3.) Controllable memory access device according to responses 1 and 2, characterized in that a dynamic assignment for input and output tasks is carried out by the machine control program according to the principle of circulation, with mode features for the respective memory block are carried along in this. 4.) Steuerbare Speicherzugriffsvorrichtung nach den Ansprüchen 1 bis 3, dadurch gekennzeichnet, daß der dynamisch schaltbare Speicher in Vielfachen von 1 kB unterteilbar ist, wobei jeweils ein Block durch ein Maschinensteuerprogramm einem Ausgabe-bzw. einem Eingabevorgang dynamisch zuordbar ist.4.) Controllable memory access device according to claims 1 to 3, characterized in that the dynamically switchable memory in multiples of 1 kB can be subdivided, with one block at a time by a machine control program an output or. can be dynamically assigned to an input process. 5.) Steuerbare Speicherzugriffsvorrichtung nach den Ansprüchen 1 bis 4, dadurch gekennzeichnet, daß der jeweilige Umlaufspeicher vom Maschinensteuerprogramm so lange zur Verfügung haltbar ist, wie dieser zur Ausführung von Ein- bzw. Ausgabe-Vorhaben benötigt wird und daß eine entsprechende Anzeige den jeweiligen der derzeitig der Benutzung unterliegenden Blocks beigegeben ist.5.) Controllable memory access device according to claims 1 to 4, characterized in that the respective circulating memory from the machine control program can be kept available as long as it is available for the execution of input and output projects is required and that a corresponding display corresponds to the current of the Use underlying blocks is included. L e e r s e i t eL e r s e i t e
DE19742459833 1974-12-18 1974-12-18 Controlled memory access for microprogrammed data - cyclic memory section of main store operates through control programme facility Pending DE2459833A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19742459833 DE2459833A1 (en) 1974-12-18 1974-12-18 Controlled memory access for microprogrammed data - cyclic memory section of main store operates through control programme facility

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19742459833 DE2459833A1 (en) 1974-12-18 1974-12-18 Controlled memory access for microprogrammed data - cyclic memory section of main store operates through control programme facility

Publications (1)

Publication Number Publication Date
DE2459833A1 true DE2459833A1 (en) 1976-06-24

Family

ID=5933722

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19742459833 Pending DE2459833A1 (en) 1974-12-18 1974-12-18 Controlled memory access for microprogrammed data - cyclic memory section of main store operates through control programme facility

Country Status (1)

Country Link
DE (1) DE2459833A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0061324A2 (en) * 1981-03-19 1982-09-29 Zilog Incorporated Computer memory management

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0061324A2 (en) * 1981-03-19 1982-09-29 Zilog Incorporated Computer memory management
EP0061324A3 (en) * 1981-03-19 1985-11-21 Zilog Incorporated Computer memory management

Similar Documents

Publication Publication Date Title
DE2364408C3 (en) Circuit arrangement for addressing the memory locations of a memory consisting of several chips
DE1774296C2 (en) Restructurable control unit for electronic digital computers
EP0097725B1 (en) Circuits in the control part of a microprogrammable processor for direct hardware execution of selected instructions
DE2630323A1 (en) DATA STORAGE DEVICE
DE2501853A1 (en) PROCESSOR FOR A DATA PROCESSING SYSTEM
DE2725718A1 (en) PROCESSING SYSTEM WITH MULTIPLE VIRTUAL ADDRESS SPACES
DE2151472A1 (en) Microprogram memory for electronic computers
DE2117581C3 (en) Device for address checking
DE1801620A1 (en) Method and arrangement for addressing a memory in a data processing system
DE1499206B2 (en) COMPUTER SYSTEM
DE2854782A1 (en) DATA PROCESSING SYSTEM
DE3911721C2 (en)
DE3688136T2 (en) Procedure for testing and putting data into a record on a disk in an atomic I / O operation.
DE3852196T2 (en) Group-related addressing system.
DE2912073A1 (en) STACKED STORAGE ARRANGEMENT FOR THE SHORT-TERM STORAGE OF INFORMATION IN THE EVENT OF NON-SEGPARABLE INFORMATION IN A DATA PROCESSING SYSTEM
DE2433436A1 (en) PROCEDURE AND ARRANGEMENT FOR MULTIPLE BRANCHING THE PROGRAM IN A DIGITAL COMPUTER
DE2134816A1 (en) FACILITY FOR ADDRESS TRANSLATION
EP1352318B1 (en) Microprocessor circuit for portable data carriers
DE2617485B2 (en) Circuit arrangement for data processing systems for processing micro instruction sequences
DE1180171B (en) Number calculator
CH495584A (en) Data processing system
DE2235883C3 (en) Data processing device
DE2403669A1 (en) SPECIAL COMPUTER
DE1806464A1 (en) Address generator for a digital computer
DE2459833A1 (en) Controlled memory access for microprogrammed data - cyclic memory section of main store operates through control programme facility

Legal Events

Date Code Title Description
OD Request for examination
OHW Rejection