DE2952314C2 - - Google Patents

Info

Publication number
DE2952314C2
DE2952314C2 DE19792952314 DE2952314A DE2952314C2 DE 2952314 C2 DE2952314 C2 DE 2952314C2 DE 19792952314 DE19792952314 DE 19792952314 DE 2952314 A DE2952314 A DE 2952314A DE 2952314 C2 DE2952314 C2 DE 2952314C2
Authority
DE
Germany
Prior art keywords
address
signal
bits
memory
bit
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.)
Expired
Application number
DE19792952314
Other languages
German (de)
Other versions
DE2952314A1 (en
Inventor
Thomas O. Newton Mass. Us Holtey
Robert C. Braintree Mass. Us Miller
Kin C. Burlington Mass. Us Yu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bull HN Information Systems Inc
Original Assignee
Honeywell Information Systems Inc
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 claimed from US06/000,463 external-priority patent/US4290104A/en
Priority claimed from US06/000,314 external-priority patent/US4257101A/en
Application filed by Honeywell Information Systems Inc filed Critical Honeywell Information Systems Inc
Publication of DE2952314A1 publication Critical patent/DE2952314A1/en
Application granted granted Critical
Publication of DE2952314C2 publication Critical patent/DE2952314C2/de
Granted 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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0615Address space extension
    • G06F12/0623Address space extension for memory modules
    • 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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication

Description

Die vorliegende Erfindung bezieht sich auf eine Datenverarbeitungsanlage nach dem Gattungsbegriff des Patentanspruches 1.The present invention relates to a data processing system according to the preamble of claim 1.

Normalerweise speichert ein Computerspeicher sowohl Operanden als auch Anweisungen bzw. Befehle. Operanden stellen allgemein Daten dar, die verarbeitet werden und Anweisungen sind Befehle, die zusammen ein Computerprogramm bilden. Ein Befehlswort umfaßt normalerweise einen Anweisungsteil, der einen Speicherplatz in dem Computerspeicher adressiert. Die Anzahl der Speicherplätze in dem Speicher, die durch einen vorgegebenen Befehl adressiert werden kann, hängt von der Anzahl der Bits ab, die dem Adressenteil des Befehlswortes zugeteilt sind sowie von der Hardware, die auf diese Bits anspricht. Normalerweise bestehen Befehlsworte aus Bytes mit 8 Bit, obgleich auch jede andere Anzahl von Bits in einem Byte verwendet werden kann. Ferner ist es hinsichtlich des Adressenteils eines Befehles nicht unüblich, 1, 2, 3 oder mehr Bytes zu verwenden. Mit einem Adressenteil in einem Befehl, der ein Byte mit 8 Bit aufweist, können nur 2⁸ = 256 Speicherplätze im Speicher adressiert werden. Bei 2 Bytes mit jeweils 8 Bit können bereits 2¹⁶ = 65 536 Speicherplätze adressiert werden. Obgleich mit zwei 8 Bit-Bytes mehr Speicherplätze adressiert werden können, sind mehr Zeit und eine größere Anzahl von Zyklen bei dem Abruf eines jeden Adressenwortes vom Speicher und seiner Bearbeitung erforderlich. Ferner wird mehr Speicherraum benötigt, um die größeren Worte zu speichern. Bei dem Entwicklungstrend zu Minicomputern und Mikroprozessoren kommt dem Computerspeicher und dem Leistungsfluß eine immer größere Bedeutung zu. Hinsichtlich Minicomputer, Mikroprozessoren und Dialogprozessoren ist daher immer mehr eine verbesserte Adressiereinrichtung erwünscht, die eine größe Adressierleistung bei einem Minimum an Computer- Zykluszeit bei dem Abruf des Adressenteils eines Befehles aufweist. Ferner ist es bei einer einer Fehlfunktion eines Computersystems erwünscht, eine Diagnose durch eine Fernstation über Hunderte oder gar Tausende von Kilometern ausführen zu können. Auf diese Weise können die Kosten bei der Wartung eines Computers wesentlich vermindert werden.Typically, computer memory stores both operands as well as instructions. Operands generally Data that is processed and instructions are commands, which together form a computer program. A command word includes usually a statement part that has a storage space addressed in the computer memory. The number of storage locations in memory addressed by a given command can depend on the number of bits that the address part the command word and the hardware, that responds to these bits. Command words usually exist from 8-bit bytes, although any other number of bits in a byte can be used. Furthermore, it is not unusual with regard to the address part of a command, Use 1, 2, 3 or more bytes. With an address part In a command that has an 8-bit byte, only 2⁸ = 256 memory locations in the memory can be addressed. At 2nd Bytes with 8 bits each can already have 2¹⁶ = 65 536 memory locations can be addressed. Although with two 8 bit bytes more Storage spaces can be addressed are more time and a greater number of cycles each time it is called Address word from the memory and its processing required. Furthermore, more storage space is needed to accommodate the larger ones Save words. With the development trend to mini computers and microprocessors comes in the computer memory and power flow becoming more and more important. Regarding minicomputers, Microprocessors and dialog processors is therefore an improved addressing device is increasingly desired, a great addressing performance with a minimum of computer Cycle time when the address part of a command is retrieved.  It is also a malfunction of a computer system wanted a diagnosis by a remote station over hundreds or even being able to run thousands of kilometers. To this That way, the cost of maintaining a computer can be significant can be reduced.

Im Stand der Technik gibt es viele Speicher-Adressiereinrichtungen, deren Aufbau der verbesserten Adressierung von Hauptspeichern dient. Eine typische Adressiereinrichtung zur Adressierung des Hauptspeichers eines Computers kann der US-PS 32 67 462 entnommen werden. Diese Einrichtung dient der direkten Adressierung, wobei jede gewünschte Anzahl von Zeichen, beginnend mit irgendeiner willkürlich ausgewählten Position adressiert werden kann.There are many memory addressing devices in the prior art, their structure of the improved addressing of main memories serves. A typical addressing device for addressing the main memory of a computer can be US-PS 32 67 462 be removed. This facility is used for direct addressing, where any number of characters you want, starting with any arbitrarily selected position can.

Die im Hauptspeicher gespeicherten Befehle sind im allgemeinen in aneinandergrenzenden Speicherplätzen in Gruppen gespeichert, so daß die Gruppe ein Computerprogramm bildet. Demgemäß ist es im allgemeinen nicht erforderlich, eine weitere Adresse für den zweiten Befehl usw. abzurufen, da die ursprüngliche Adresse modifiziert werden kann, indem die Zahl 1 zu der bereits abgerufenen Adresse hinzuaddiert wird, wodurch auf den nächsten angrenzenden und abzurufenden Speicherplatz verwiesen wird.The commands stored in main memory are general stored in adjacent storage locations in groups, so that the group forms a computer program. Accordingly, it is generally not required an additional address for the second command, etc. because the original address is modified can be made by adding the number 1 to the one already retrieved Address is added, causing the next adjacent and referenced storage space.

Andere Modifizierverfahren umfassen Indexregister, die durch die ursprüngliche Adresse adressiert werden und die die ursprüngliche Adresse ersetzen oder modifizieren, um eine neue Adresse für den abzurufenden Operanden vorzugeben. Eine typische Einrichtung dieser Art kann der US-PS 32 84 778 entnommen werden.Other modification methods include index registers that are created by the original address can be addressed and the original Replace address or modify to a new address for the operand to be called. A typical facility this type can be found in US Pat. No. 3,284,778.

Weitere Verfeinerungen der Adressierverfahren führten zu der relativen Adressierung, bei der der Adreßteil eines Befehles sich nicht auf die absolute Speicheradresse bezieht, sondern auf irgendeine realtive Adresse, wie beispielsweise eine Seite oder ein Segment innerhalb des Hauptspeichers. Diese Seite bzw. dieses Segment kann relativ zu dem Anfang des Segments bzw der Seite angeordnet sein. Dementsprechend kann die Hardware die relative Adresse innerhalb eines Segmentes oder einer Seite mit dem Speicherplatz des Anfanges dieses Segmentes bzw. dieser Seite verknüpfen, um die absolute Adresse vorzugeben. Typische Beispiele solcher Adressiereinrichtungen können den US-Patentschriften 39 38 096 und 34 61 433 entnommen werden.Further refinements in the addressing process led to the relative addressing where the address part of a command does not refer to the absolute memory address, but rather to any real address, such as a page or a segment within the main memory. This page or this segment can be relative to the beginning of the segment or be arranged on the side. Accordingly, the hardware  the relative address within a segment or page with the storage space of the beginning of this segment or this Link page to specify the absolute address. Typical Examples of such addressing devices can be found in the US patents 39 38 096 and 34 61 433.

Weitere Adressierverfahren erhöhen die Geschwindigkeit und die Leistung, indem sie von einem Hochgeschwindigkeitsspeicher kleiner Kapazität Gebrauch machen, um den Hauptspeicher zu unterstützen und indem Adressen im voraus abgerufen werden, bevor sie durch die Adressiereinrichtung benutzt werden. Auf diese Weise wird die Geschwindigkeit bei der Adressierung erhöht. Ein typisches Beispiel einer solchen Adressiereinrichtung kann der US-PS 32 51 041 entnommen werden.Additional addressing methods increase the speed and the Performance by being smaller from a high-speed memory Use capacity to support main memory and by getting addresses in advance before they can be used by the addressing device. In this way the speed of addressing is increased. A typical one An example of such an addressing device can be found in US Pat 32 51 041.

Zur Erhöhung der Kapazität eines Hauptspeichers kann ein virtuelles Speichersystem verwendet werden, wobei das Betriebssystem wie beispielsweise bei dem IBM-System 370 auf einer Magnetplatte vorliegende Adressen in dem Hauptspeicher abbildet. Der Anwender adressiert den Hauptspeicher und er hat den Endruck, einen Hauptspeicher mit sehr großer Kapazität vor sich zu haben. Es sei diesbezüglich auf die Veröffentlichung: "Computer Organization and the System/370" von Harry Katzan Jr. verwiesen, die 1971 durch Van Nostrand Reinhold Company in New York veröffentlicht wurde.To increase the capacity of a main memory, a virtual Storage system used, the operating system such as the IBM System 370 on one Magnetic disk maps existing addresses in the main memory. The user addresses the main memory and has the final print, a main memory with a very large capacity to have. Regarding the publication: Computer Organization and the System / 370 by Harry Katzan Jr. referenced in 1971 by Van Nostrand Reinhold Company of New York was released.

Alle diese Adressierverfahren beziehen sich im allgemeinen auf Großcomputersysteme und sie erfordern eine zusätzliche Hardware im Form von Indexregistern, Pufferspeichern usw. Darüber hinaus ist bei Großcomputern der Speicherraum nicht von der Bedeutung wie bei Kleincomputern.All of these addressing methods generally refer to Large computer systems and they require additional hardware in the form of index registers, buffer memories, etc. In addition storage space is not important for large computers like small computers.

Bei Kleincomputern besteht daher das Bedürfnis nach einem verbesserten Adressen-Modifiziersystem, das die Hardware des grundlegenden Adressiermechanismus verwendet und gleichzeitig die Zykluszeit für den Zugriff auf Mehrfach-Adreßworte auf ein Minimum reduziert.In the case of small computers, there is therefore a need for an improved one Address modification system that the hardware of the basic addressing mechanism used and at the same time the cycle time for access to multiple address words reduced to a minimum.

Es ist daher die Aufgabe der vorliegenden Erfindung, eine Datenverarbeitungsanlage anzugeben, die mit geringer Zykluszeit und geringer Befehlswortlänge eine erweiterte Speicheradressierung gestattet. Die Lösung dieser Aufgabe gelingt gemäß den kennzeichnenden Merkmalen des Patenanspruches 1. Weitere vorteilhafte Ausgestaltungen der erfindungsgemäßen Datenverarbeitungsanlage sind den Unteransprüchen entnehmbar.It is therefore the object of the present invention, a Data processing system specify that with lower Cycle time and short command word length an extended Memory addressing allowed. The solution to this task succeeds according to the characteristic features of the patent claim 1. Further advantageous embodiments of the Data processing system according to the invention are the dependent claims removable.

Die Adressierung eines Speichers mit einer Kapazität, die größer als die durch die Befehlswortlänge vorgegebene Speicherkapazität ist, ist bereits aus der US-PS 35 53 653 bekannt. Dies geschieht dort, indem einige Bits des Befehlswortes mit einem Statuswort logisch kombiniert werden, während die verbleibenden Bits des Befehlswortes der direkten Adressierung des Speichers dienen.The addressing of a memory with a capacity that greater than that specified by the command word length Storage capacity is already from US Pat. No. 3,553,653 known. This is done there by adding a few bits of the command word logically combined with a status word, while the remaining bits of the command word direct addressing of the memory.

Im Falle der vorliegenden Erfindung wird beim Vorliegen eines kurzen Befehlswortes mittels bestimmter Bits dieses Befehlswortes ein PROM-Signalgenerator adressiert, um eine in bestimmten Registern gespeicherte Information bei Auslesen im Hinblick auf eine Adreßbereichserweiterung zu modifizieren. So können beispielsweise mit einem Befehlswort von 8 Bit 768 Speicherplätze anstelle von 256 adressiert werden.In the case of the present invention, the present a short command word using certain bits of this Command word a PROM signal generator addressed to a information stored in certain registers when read out with regard to an address area expansion modify. For example, with a command word addressed by 8 bit 768 memory locations instead of 256 will.

Ein Ausführungsbeispiel gemäß der vorliegenden Erfindung sei nunmehr unter Bezugnahme auf die Figuren der beiliegenden Zeichnung beschrieben. Es zeigt An embodiment according to the present invention now with reference to the figures of the accompanying Drawing described. It shows  

Fig. 1 eine schematische Übersicht eines Computersystems, das eine Telefonleitung für den Dialog verwendet. Fig. 1 is a schematic overview of a computer system that uses a telephone line for dialogue.

Fig. 1AA eine detailliertere schematische Darstellung eines Computersystems, das Telefonleitungen für den Dialog verwendet. Fig. 1AA uses a more detailed schematic diagram of a computer system, the telephone lines for dialogue.

Fig. 1A ein schematisches Blockdiagramm des bevorzugten erfindungsgemäßen Ausführungsbeispieles. Fig. 1A is a schematic block diagram of the preferred embodiment of the invention.

Fig. 1B ein schematisches Diagramm des typischen Adressierformats der Erfindung. Fig. 1B is a schematic diagram of the typical Adressierformats the invention.

Fig. 1C ein Abbild des Seitenunterteilungs-PROM. Fig. 1C an image of the side-division PROM.

Fig. 2A ein schematisches Diagramm des typischen Aufbaus des realen Speichers gemäß der Erfindung. Fig. 2A is a schematic diagram of the typical configuration of the real storage according to the invention.

Fig. 2B ein schematisches Diagramm eines typischen Aufbaus des virtuellen Speichers gemäß der Erfindung. Fig. 2B is a schematic diagram of a typical structure of the virtual memory according to the invention.

Fig. 3, 4, 4A, 4B, 4C, 5A, 5B und 7 Diagramme des bevorzugten Ausführungsbeispieles der Erfindung. Fig. 3, 4, 4A, 4B, 4C, 5A, 5B, and 7 are diagrams of the preferred embodiment of the invention.

Fig. 6A ein Flußdiagramm zur Beschreibung von Teilen der Erfindung. Fig. 6A is a flowchart for description of parts of the invention.

Fig. 6B ein Zeittaktdiagramm für die Erläuterung eines Ausführungsbeispieles der Erfindung. Fig. 6B is a timing chart for explaining an embodiment of the invention.

Fig. 1AA zeigt ein bekanntes Rechner-Dialogsystem, bei dem die Erfindung vorteilhaft eingesetzt werden kann. Der Rechner 107 in der Außenstation ist ständig eingeschaltet und mit Strom versorgt, unabhängig davon, ob der Rechner 101 in der Zentralstation Daten überträgt oder nicht. Für die Übertragung von Daten wählt der Zentralrechner 101 durch Handbetätigung oder über eine automatische Wähleinrichtung 103 die Telefonnummer des Außenrechners 107. Die Wählsignale werden zum Modem 104 gesandt, der Leitungssteuersignale zur Übertragungssteuereinheit 102 abgibt, um auf diese Weise den Datenübertragungsdialog in Gang zu setzen. Die Übertragungssteuereinheit 10 ist beispielsweise eine Standardschnittstelleneinheit zwischen einem Modem 104 und einem Rechner 101 wie sie beispielsweise von der Firma Electronic Industries Associations unter der Bezeichnung EIA RS-232-C Standard angeboten wird. Diese Standard- Schnittstelleneinheiten empfangen, erzeugen und übertragen verschiedene Signale wie folgt: Fig. 1AA shows a known computer dialogue system in which the invention may be advantageously employed. The computer 107 in the front-door station is constantly switched on and supplied with power, regardless of whether the computer 101 is transmitting data in the central station or not. For the transmission of data, the central computer 101 dials the telephone number of the external computer 107 by manual operation or via an automatic dialing device 103 . The dialing signals are sent to the modem 104 , which provides line control signals to the transmission control unit 102 to thereby initiate the data transmission dialog. The transmission control unit 10 is, for example, a standard interface unit between a modem 104 and a computer 101, as is offered for example by the company Electronic Industries Associations under the name EIA RS-232-C standard. These standard interface units receive, generate and transmit various signals as follows:

  • 1. Datensignale
    • a) Sendedaten (zum Modem);
      vom Terminal oder Rechner erzeugte Daten für die Übertragung
    • b) Empfangsdaten (zum Terminal oder Rechner);
      vom Modem empfangene Daten für das Terminal
    1. Data signals
    • a) transmission data (to the modem);
      Data generated by the terminal or computer for transmission
    • b) Receive data (to the terminal or computer);
      Data received from the modem for the terminal
  • 2. Zeitsignale
    • a) Zeitgabe für das Sendesignalelement;
      zwei Verbindungen sind definiert; die eine sendet Signalelementzeitinformationen vom sendenden Terminal für den Rechner zu dessen Modem; die andere sendet Zeitinformationen vom sendenden Modem durch dessen Terminal oder den Rechner.
    • b) Zeitgabe für das Empfangssignalelement;
      zwei Verbindungen sind definiert von denen die eine Zeitgabeinformationen für das Signalelement vom Empfangsterminal zu dessen Modem oder Rechner schickt, während die andere Zeitgabeinformationen vom empfangenen Modem zu dessen Terminal gibt. Ein Modem für Start-Stop-Übertragung braucht diese Zeitgabesignalverbindungen nicht; sie sind deshalb wahlweise vorhanden.
    2. Time signals
    • a) timing for the transmission signal element;
      two connections are defined; one sends signal element time information from the sending terminal for the computer to its modem; the other sends time information from the sending modem through its terminal or the computer.
    • b) timing for the received signal element;
      two connections are defined, one of which sends timing information for the signal element from the receiving terminal to its modem or computer, while the other gives timing information from the received modem to its terminal. A modem for start-stop transmission does not need these timing signal connections; they are therefore optionally available.
  • 3. Steuersignale
    • a) Sendeanforderung (zum Modem);
      Signale auf dieser Verbindung werden vom Sendeterminal erzeugt, wenn es Informationen abgeben möchte. Das Trägersignal des Modems wird während der Einschaltdauer dieser Verbindung übertragen. (Bei Halb-Duplexbetrieb hält der Ausschaltzustand dieser Verbindung den Modem im Datenempfangszustand.)
    • b) Sendebereit (zum Terminal oder Rechnersystem);
      Signale auf dieser Verbindung werden vom sendenden Modem erzeugt, um dessen Bereitschaft zur Datenübertragung anzuzeigen. Sie entstehen aufgrund einer Sendeanforderung der übertragenden Einheit (bei Voll-Duplexbetrieb befindet sich der Modem jederzeit im Sendezustand).
    • c) Datensatzbereitschaft (zum Terminal oder Rechner);
      Signale auf dieser Verbindung werden vom örtlichen Modem erzeugt, um der übertragenden Einrichtung anzuzeigen, daß der Modem betriebsbereit ist. (Die folgenden Steuersignale sind nur wahlweise vorhanden).
    • d) Datenterminalbereitschaft (zum Modem);
      wenn das Terminal oder das Rechnersystem auf dieser Verbindung den Einschaltzustand überträgt, bewirkt es den Anschluß des Modems an die Übertragungsleitung. Der Ausschaltzustand bewirkt die Trennung, um einen Anruf zu beenden oder die Leitung für anderweitige Benutzung freizumachen.
    • e) Ringanzeiger (zum Terminal);
      ein Signal auf dieser Verbindung benachrichtigt das Terminal, daß der Modem von einer Außenstelle ein Anrufsignal erhält.
    • f) Datenträgerdetektor (zum Terminal);
      ein Signal auf dieser Verbindung meldet den Empfang des Trägers, d. h. der Sinusschwingung welcher das Signal aufmoduliert ist. Geht der Träger verloren, beispielsweise wegen eines Fehlers in der Leitung, so wird das Terminal hiervon mittels eines Abschaltzustandes in der Verbindung informiert.
    • g) Datenmodulationsdetektor (zum Terminal);
      der Einschaltzustand auf dieser Verbindung meldet dem Terminal, daß das Signal vom Modem ordnungsgemäß demoduliert wird. Sinkt die Qualität der Modulation unter einen vorgegebenen Schwellwert, so kann das Terminal erforderliche Schritte unternehmen, beispielsweise eine erneute Übertragung oder eine Verringerung der Übertragungsgeschwindigkeit anfordern.
    • h) Geschwindigkeitswähler;
      es gibt zwei Geschwindigkeitswählverbindungen und zwar die eine zum Modem und die andere zum Terminal. Mit ihnen kann die Übertragungsgeschwindigkeit geändert werden.
    3. Control signals
    • a) Send request (to the modem);
      Signals on this connection are generated by the transmitter terminal when it wants to provide information. The modem's carrier signal is transmitted during this connection's duty cycle. (With half-duplex operation, the switch-off state of this connection keeps the modem in the data reception state.)
    • b) ready to send (to the terminal or computer system);
      Signals on this connection are generated by the sending modem to indicate that it is ready to transmit data. They arise due to a transmission request from the transmitting unit (with full duplex operation, the modem is always in the transmission state).
    • c) data record readiness (to the terminal or computer);
      Signals on this connection are generated by the local modem to indicate to the transmitting device that the modem is operational. (The following control signals are only optionally available).
    • d) data terminal readiness (to the modem);
      If the terminal or the computer system transmits the switched-on state on this connection, it effects the connection of the modem to the transmission line. The off state causes disconnection to end a call or free up the line for other use.
    • e) ring indicator (to the terminal);
      a signal on this connection notifies the terminal that the modem is receiving a call signal from an external unit.
    • f) data carrier detector (to the terminal);
      a signal on this connection signals the reception of the carrier, ie the sine wave which the signal is modulated on. If the carrier is lost, for example due to a fault in the line, the terminal is informed of this by means of a switch-off status in the connection.
    • g) data modulation detector (to the terminal);
      the switch-on status on this connection reports to the terminal that the signal is being demodulated correctly by the modem. If the quality of the modulation drops below a predetermined threshold value, the terminal can take the necessary steps, for example requesting a new transmission or a reduction in the transmission speed.
    • h) speed selector;
      there are two speed dial connections, one to the modem and the other to the terminal. They can be used to change the transmission speed.
  • 4. Masseverbindungen
    • a) Schutzerde;
      diese ist mit dem Maschinengestell und möglicherweise externen Masseanschlüssen verbunden
    • b) Signal-Masseverbindung;
      dies bildet das gemeinsame Bezugspotential für alle Schaltkreise. Wenn die Verbindung zwischen dem Zentralrechner 101 und dem Modem 104 hergestellt ist, läuft die Datenübertragung ab, sobald das Modem die Daten in eine Übertragung über die Verbindungsleitung 105 gestattende Form umgewandelt hat. Die Daten werden vom Modem 106 empfangen und in ein Digitalformat zurückübersetzt und anschließend zum empfangenden Außenrechner 107 weitergegeben.
    4. Ground connections
    • a) protective earth;
      this is connected to the machine frame and possibly external earth connections
    • b) signal ground connection;
      this forms the common reference potential for all circuits. When the connection between the central computer 101 and the modem 104 is established, the data transmission takes place as soon as the modem has converted the data into a form allowing transmission via the connecting line 105 . The data is received by the modem 106 and translated back into a digital format and then passed on to the receiving external computer 107 .

Fig. 1 zeigt ein Blockschaltbild einer Anordnung gemäß der Erfindung. Die Standardschnittstellenübertragungssteuerung zwischem Modem und Datenprozessor ist hier der Einfachheit halber weggelassen. Durch die Verwendung einer ferngesteuerten Stromversorgungseinrichtung 125 braucht der Rechner 124 in der Außenstation nicht ständig eingeschaltet zu sein, sondern wird nur dann mit Strom versorgt, wenn der Zentralrechner 120 Daten zum Außenrechner 124 zu senden wünscht. Ist dies der Fall, so wird eine Verbindung zwischen dem Zentralrechner 120 und dem Modem 123 hergestellt und zwar entweder automatisch wie zuvor beschrieben oder durch Abheben des Telefonhörers und Anwählen der Außenstation. Sobald die Telefonverbindung mit der Außenstation hergestellt ist, werden digitale Steuersignale 120 A vom Zentralrechner 120 abgegeben und vom Modem 121 in trägerfrequente Analogsignale 120 b umgewandelt, so daß sie vom Modem 121 über die Telefonleitungen 122 übertragen werden können. Sie gelangen über die Leitung 122 zum Modem 123 der Außenstation, kommen dort als Analogsignale 120 C an und werden vom Modem 123 in Digitalsignale zurückgewandelt. Diese Signale empfängt die Stromversorgungsteuereinrichtung 125 der Außenstation, welche die nötigen Schritte zur Einschaltung des Außenrechners 124 einleitet, um diesen für den Empfang von Datensignalen vorzubereiten. Fig. 1 shows a block diagram of an arrangement according to the invention. The standard interface transfer control between modem and data processor is omitted here for the sake of simplicity. By using a remote-controlled power supply device 125 of the computer need not be continuously switched in the remote station 124, but is only supplied with current when the central computer 120 desires data to the external computer 124 to send. If this is the case, a connection is established between the central computer 120 and the modem 123 , either automatically as described above or by lifting the telephone receiver and dialing the front-door station. As soon as the telephone connection with the front-door station is established, digital control signals 120 A are emitted by the central computer 120 and converted by the modem 121 into carrier-frequency analog signals 120 b , so that they can be transmitted by the modem 121 via the telephone lines 122 . You reach the outdoor station's modem 123 via line 122 , arrive there as 120 C analog signals and are converted back into digital signals by the modem 123 . These signals are received by the power supply control device 125 of the front-door station, which initiates the necessary steps to switch on the outdoor computer 124 in order to prepare it for the reception of data signals.

Gemäß Fig. 1A ist ein Blockdiagramm eines bevorzugten Ausführungsbeispiels der Erfindung dargestellt, das ebenfalls den Informationsfluß und die Modifikation der Information für eine verbesserte Adressierung zeigt. Ein Mikroprozessor 101, der durch den im Handel erhältlichen Typ 6800 der Firma Motorola Inc. vorgegeben sein kann, verwendet einen Adressbus 102 mit 16 Bit zur Adressierung des Hauptspeichers 108. Es ergibt sich somit eine Adressiermöglichkeit für die 64K-Bytes des Hauptspeichers 108. Die Formate des Befehls sind in Fig. 1B dargestellt. Es gibt in erster Linie zwei Formate, von denen das eine einen Operationscode mit 8 Bit und ein Byte a mit 8 Bit ausweist, während das andere einen Operationscode von 8 Bit, ein Byte a mit 8 Bit und ein Byte b mit 8 Bit aufweist. Um Speicherplatz und Zykluszeit zu sparen, ist es vorteilhafter, nur das Byte b zu verwenden. Dementsprechend benutzt bei der schematischen Darstellung gemäß Fig. 1A das Register 103 die ersten 5 hochwertigen Bits 8, 9, 10, 11 und 12, um den Seitenunterteilungs-Signalgenerator 105 zu adressieren. Dieser Generator 105 ist ein integrierter Schaltkreis, der unter der Typnummer 5610 im Handel erhältlich ist und von der Firma Motorola Inc. hergestellt wird. Der Seitenunterteilungs-Signalgenerator 105 speichert 32 Worte, die durch die Bits 8-12 des Bytes b adressiert werden können. Da 5 Bits verwendet werden, um den Seitenunterteilungs-Signalgenerator zu adressieren, kann jedes der 32 Worte adressiert werden. Der interne Schaltkreis des Generators 105 ist dergestalt, daß bei der Adressierung der ersten 8 Worte, d. h. bis zu der Adresse 07 das Signal CPGLIN aktiviert wird, d. h. den niedrigen Pegel einnimmt. Wenn die nächsten 4 Worte des Signalgenerators 105 adressiert werden, d. h. die Adressen 8-11, so werden beide Signale CPGLIN und CPGDIR aktiviert. Wenn das nächste Wort 13 unter der Adresse 12 adressiert wird, so sind alle folgenden Signale aktiviert: CPGLIN, CPGDIR, CPGCCB und CPGAD4. Der Seitenunterteilungs-Signalgenerator 105 wird freigegeben, wenn ein Ausgangssignal mit niedrigem Pegel von dem Mikroprozessor 101 an seinem Eingangsanschluß E vorliegt. Ein Eingangssignal mit niedrigem Pegel wird von dem Ausgang des NOR-Gatters 104 an den Eingangsanschluß E des Seitenunterteilungs-Signalgenerators 105 angelegt, wenn alle Eingangsbits 1-8 des Bytes a an den niedrigen Pegel bzw. den Wert "0" aufweisen. Diese Bits 1-8 des Bytes a besitzen den Wert "0", wenn eine Modifikation der durch das Byte a und b gebildeten 16-Bit Adresse gewünscht ist. Wenn alle Bits des Bytes a den Wert "0" aufweisen, so ergibt sich dementsprechend ein Signal mit niedrigem Pegel am Ausgang des NOR-Gatters 104, das dem Eingangsanschluß E des Signalgenerators 105 zu dessen Freigabe zugeführt wird. Wenn der Seitenunterteilungs-Signalgenerator 105 freigegeben ist, so wird einer der Steuersignal-Speicherplätze 105 a durch die Bits 9-13 des Bytes b freigegeben. Wenn eines dieser Steuersignale 105 a wirksam ist, d. h. den niedrigen Pegel aufweist, so wird die virtuelle 16-Bit-Adresse 106 zu der realen Adresse 107 modifiziert, welche sodann den Hauptspeicher 108 adressiert. Wenn keines der Steuersignale 105 a wirksam ist, so ist die 16-Bit-Adresse 106 identisch zu der 16-Bit-Adresse 107 und es tritt keine Modifikation bei der Adressierung des Speichers 108 auf. Der Mechanismus zur Ausführung dieser Modifikation wird später in näheren Einzelheiten im Zusammenhang mit Fig. 3 erläutert. Nimmt man daher an, daß das Steuersignal CPGCCB wirksam ist, so wird das Bit 11 der virtuellen Adresse durch das Bit an der Position α des CCB- Registers 115 ersetzt und das Bit 12 wird durch das Bit an der Position β in dem CCB-Register 115 ersetzt, um die reale Adresse zu bilden. Wenn das Steuersignal CPGDIR wirksam ist, so wird das Bit 10 der virtuellen Adresse durch das Bit D des Kanalregisters 114 ersetzt. Ist das Steuersignal CPGLIN wirksam, so wird das Bit 9 der virtuellen Adresse durch das Bit M des CH- Registers 114 ersetzt und das Bit 8 der virtuellen Adresse wird durch das Bit H des CH-Registers 114 ersetzt. Wenn das Steuersignal CPGAD8 wirksam ist, so wird das Bit 7 der virtuellen Adresse durch den Wert "1" ersetzt. Schließlich werden, wenn das Steuersignal CPGAD4 wirksam ist, die Bits 4, 5 und 6 der virtuellen Adresse durch den Wert "1" ersetzt.Referring to FIG. 1A, a block diagram is shown of a preferred embodiment of the invention, also showing the flow of information and the modification information for improved addressing. A microprocessor 101 , which can be specified by the commercially available type 6800 from Motorola Inc., uses an address bus 102 with 16 bits for addressing the main memory 108 . This results in an addressing possibility for the 64K bytes of the main memory 108 . The formats of the command are shown in Fig. 1B. There are primarily two formats, one of which identifies an 8-bit operation code and an 8-bit byte a, while the other has an 8-bit operation code, an 8-bit byte a and an 8-bit byte b. To save storage space and cycle time, it is more advantageous to use only byte b. Accordingly, in the schematic representation of FIG. 1A, register 103 uses the first 5 high-quality bits 8, 9, 10, 11 and 12 to address the page division signal generator 105 . This generator 105 is an integrated circuit that is commercially available under type number 5610 and is manufactured by Motorola Inc. The page division signal generator 105 stores 32 words that can be addressed by bits 8-12 of byte b. Since 5 bits are used to address the page division signal generator, each of the 32 words can be addressed. The internal circuit of the generator 105 is such that when the first 8 words are addressed, ie up to the address 07, the signal CPGLIN is activated, ie assumes the low level. When the next 4 words of signal generator 105 are addressed, ie addresses 8-11, both signals CPGLIN and CPGDIR are activated. When the next word 13 is addressed at address 12, all of the following signals are activated: CPGLIN, CPGDIR, CPGCCB and CPGAD4. The side division signal generator 105 is enabled when there is a low level output from the microprocessor 101 at its input terminal E. A low level input signal is applied from the output of NOR gate 104 to input terminal E of page division signal generator 105 when all of the input bits 1-8 of byte a are at the low level or "0". These bits 1-8 of byte a have the value "0" if a modification of the 16-bit address formed by bytes a and b is desired. If all bits of byte a have the value "0", a signal with a low level is accordingly obtained at the output of NOR gate 104 , which is fed to input terminal E of signal generator 105 for its release. If the side-division signal generator is enabled 105, so one of the control signal memory locations 105 is a b by bits 9-13 of the byte released. If one of these control signals 105 a is effective, ie has the low level, then the virtual 16-bit address 106 is modified to the real address 107 , which then addresses the main memory 108 . If none of the control signals 105 a is effective, then the 16-bit address 106 is identical to the 16-bit address 107 and there is no modification to the addressing of the memory 108 . The mechanism for executing this modification will be explained in more detail later in connection with FIG. 3. Therefore, assuming that the control signal CPGCCB is effective, the bit 11 of the virtual address is replaced by the bit at position α of the CCB register 115 and the bit 12 is replaced by the bit at position β in the CCB register 115 replaced to form the real address. If the control signal CPGDIR is effective, bit 10 of the virtual address is replaced by bit D of channel register 114 . If the control signal CPGLIN is effective, bit 9 of the virtual address is replaced by bit M of the CH register 114 and bit 8 of the virtual address is replaced by bit H of the CH register 114 . If the control signal CPGAD8 is active, bit 7 of the virtual address is replaced by the value "1". Finally, if the control signal CPGAD4 is active, bits 4, 5 and 6 of the virtual address are replaced by the value "1".

Das Signal CE$U2U wird verwendet, um die Leitungsnummer eines ausgewählten Empfängers/Sender USART 116 bzw. 117 zu adressieren. Derartige Empfänger/Sender werden von der Firma Texas Instruments unter der Typnummer 74LS245 im Handel vertrieben. Das Steuersignal CEI02U gibt den I-Bus 113 über den Zweirichtungs-Bustreiber 111 frei. Diese Zweirichtungs-Bustreiber sind ebenfalls im Handel unter der Typnummer 74LS245 von der Firma Texas Instruments erhältlich. Das Signal CEI02U gestattet einen Dialog des I-Bus 113 mit dem U-Bus 112, während das Signal CEU2I0 einen Dialog des U-Bus 112 mit dem U-Bus 113 gestattet. An den I-Bus können verschiedene Register angeschlossen sein, um Dialoginformation zu speichern. Einige typische solche Register sind beispielsweise das Hochwertigkeits-Datenregister 120, das Niedrigwertigkeits- Datenregister 121, das Kanalnummernregister 122 und das Statusregister 123. Diese Register stehen mit dem Mikroprozessor über den I-Bus 113 und den U-Bus 112 und mit dem Hauptspeicher 108 über den I-Bus 113 und den M-Bus 109 in Nachrichtenverbindung. Für den verschiedenen Anschluß an den I-Bus 113 für einen Dialog mit dem Hauptspeicher 108 und mit dem Mikroprozessor 101 ist es erforderlich, im Hauptspeicher für verschiedene Leitungen und Kanäle, die jedem Dialoganschluß zugeordnet sind, Speicherplatz zuzuteilen. Gemäß Fig. 2A ist erkennbar, daß ein Teil des Speicherplatzbereiches des realen Speichers 200 für die Zeilen 0-3 reserviert ist. Jede Zeile umfaßt 64 Bytes und die Gesamtheit von 4 Zeilen 0-3 beinhaltet den Speicherplatz für die Logiktabelle LCT. Jede Zeile 0-3 ist ferner in zwei Kanäle mit jeweils 32 Bytes unterteilt. Dementsprechend gibt es 8 Kanäle mit 32 Bytes, die die 4 Zeilen mit 64 Bytes der Logiktabelle LCT umfassen. Die nächsten 256 Bytes sind für Kanal-Anweisungsprogramme CCP reserviert. Es gibt ferner 3 bis 4 K-Bytes, welche zusammen mit dem unbenutzten Speicherplatz für Kanal-Anweisungsprogramme CCP reserviert sind. Unterhalb dieses Speicherplatzes gibt es zusätzliche 256 Bytes, die für den Kanal-Steuerblock CCB reserviert sind. Wie bei dem Speicherplatz für die Logiktabelle LCT ist jeder Zeile 0-3 ein Steuerblock CCB von 64 Bytes jeweils zugeordnet, der in zwei Kanäle mit 32 Bytes jeweils unterteilt ist. Unterhalb dieses Speicherraumes ist Speicherplatz für den Firmware-Arbeitsspeicher reserviert. Demgemäß ist erkennbar, daß jeder Zeile 0-3 ein Speicherraum der Logiktabelle LCT und des Steuerblockes CCB zugeordnet ist, der jeweils in zwei Kanäle unterteilt ist. Ein Teil des im Zusammenhang mit Fig. 1A beschriebenen Adressiermechanismus adressiert alle diese Speicherplätze. Um dies jedoch zu bewerkstelligen, müssen die zwei Adreßbytes a und b genommen werden, da ein Adreßbyte 8 Bits umfaßt und mit 8 Bit nur 256 Speicherplätze adressiert werden können. Wie Fig. 2A zu entnehmen ist, sind jedoch 768 Speicherplätze (3 × 256) vorgesehen, wobei die 3K/4K-Speicherplätze noch nicht berücksichtigt sind. Diese 256 Speicherplätze sind die am häufigsten adressierten Speicherplätze, da die Zeilen 0-3 einen konstanten Dialog mit den Logiktabellen LCD, den Steuerblöcken CCB und der Firmware ausführen müssen. Zur Adressierung der 768 Speicherplätze ist es sehr unwirksam, die 16 Bit-Adresse zu verwenden, die normalerweise über 64.000 Speicherplätze adressieren kann. Durch eine 8-Bit-Adresse können jedoch nur 256 Speicherplätze adressiert werden. Das Ausführungsbeispiel der vorliegenden Erfindung gestattet die Adressierung der 768 Speicherplätze durch die ersten 5 Bits 8-12 des b-Bytes 103, indem die Modifikation der virtuellen Adresse von Fig. 2B in der zuvor erläuterten Weise ermöglicht wird. Durch diese kurze Form der Adressierung wird somit Zykluszeit und Speicherraum gespart. The CE $ U2U signal is used to address the line number of a selected receiver / transmitter USART 116 or 117 . Such receivers / transmitters are commercially available from Texas Instruments under type number 74LS245. The control signal CEI02U enables the I-bus 113 via the bidirectional bus driver 111 . These bidirectional bus drivers are also commercially available from Texas Instruments under type number 74LS245. The signal CEI02U allows a dialogue of the I-bus 113 with the U-bus 112 , while the signal CEU2I0 allows a dialogue of the U-bus 112 with the U-bus 113 . Various registers can be connected to the I-bus to save dialog information. Some typical such registers are, for example, the high order data register 120 , the low order data register 121 , the channel number register 122 and the status register 123 . These registers are in communication with the microprocessor via I-bus 113 and U-bus 112 and with main memory 108 via I-bus 113 and M-bus 109 . For the different connection to the I-bus 113 for a dialogue with the main memory 108 and with the microprocessor 101 , it is necessary to allocate memory space in the main memory for different lines and channels which are assigned to each dialogue connection. According to Fig. 2A it is seen that a part of the storage area of the real storage 200 is reserved for rows 0-3. Each line has 64 bytes and the total of 4 lines 0-3 contains the storage space for the logic table LCT. Each line 0-3 is further divided into two channels, each with 32 bytes. Accordingly, there are 8 channels with 32 bytes that comprise the 4 lines with 64 bytes of the logic table LCT. The next 256 bytes are reserved for channel instruction programs CCP. There are also 3 to 4 K bytes which are reserved together with the unused memory space for channel instruction programs CCP. Below this storage space there are an additional 256 bytes reserved for the CCB channel control block. As with the storage space for the logic table LCT, each line 0-3 is assigned a control block CCB of 64 bytes, which is divided into two channels with 32 bytes each. Below this memory space, memory space is reserved for the firmware main memory. Accordingly, it can be seen that each line 0-3 is assigned a memory space of the logic table LCT and the control block CCB, which is each divided into two channels. A portion of the addressing mechanism described in connection with Figure 1A addresses all of these memory locations. In order to do this, however, the two address bytes a and b must be taken, since an address byte comprises 8 bits and only 256 memory locations can be addressed with 8 bits. As can be seen in FIG. 2A, however, 768 storage locations (3 × 256) are provided, the 3K / 4K storage locations having not yet been taken into account. These 256 memory locations are the most frequently addressed memory locations, since lines 0-3 have to maintain a constant dialog with the logic tables LCD, the control blocks CCB and the firmware. To address the 768 memory locations, it is very ineffective to use the 16 bit address, which can normally address over 64,000 memory locations. With an 8-bit address, however, only 256 memory locations can be addressed. The exemplary embodiment of the present invention permits the addressing of the 768 memory locations by the first 5 bits 8-12 of the b-byte 103 by allowing the modification of the virtual address of FIG. 2B in the manner explained above. This short form of addressing saves cycle time and memory space.

Gemäß Fig. 1C ist das Logikschema des Seitenunterteilungs-Signalgenerators 105, d. h. des Seitenunterteilungs-PROM 300 dargestellt. Das Schema ist aus sich selbst heraus verständlich. Die Adreß-Speicherplätze sind in verschiedenen Zahlensystemen in den ersten drei Spalten dargestellt, während die letzte Spalte, die an diesem Adreß-Speicherplatz tatsächlich gespeicherte Information enthält. Die vierte Spalte legt die hexadezimalen Speicherplätze fest, die den gleichen Inhalt aufweisen.Referring to FIG. 1C is a logic diagram of the page division signal generator 105, the side-division PROM that is shown 300th The scheme is self-explanatory. The address memory locations are shown in different number systems in the first three columns, while the last column contains the information that is actually stored in this address memory location. The fourth column specifies the hexadecimal storage locations that have the same content.

Gemäß Fig. 2B sind 256 Speicherplätze in dem Speicher 201 dargestellt, der als virtueller Speicher reserviert ist. Die ersten 64 Speicherplätze bzw. Bytes sind dezimal von 0 bis 63 und hexadezimal von 0 bis 3F numeriert und sie umfassen die Logiktabelle LCT der laufenden von dem Anweisungsprogramm CCP benutzten Zeile. Die nächsten 32 Speicherplätze bzw. Bytes an den dezimalen Speicherplätzen 64-95 und den hexadezimalen Speicherplätzen 40-5F sind für die Logiktabelle LCD des laufenden von der Firmware benutzten Kanales reserviert. Die nächsten 8 Speicherplätze bzw. Bytes enstperechend den dezimalen Speicherstellen 96-102 bzw. den hexadezimalen Speicherplätzen 60-67 sind für den aktiven Steuerblock CCB des laufenden Kanales reserviert. Es folgt sodann ein unbenutzter Speicherraum und danach drei Speicherplätze für jeweils 8 Byte, die für den Empfänger/Sender USART der laufenden Zeile den abgedeckten Empfänger/Sender USART der laufenden Zeile und die Erweiterung der Logiktabelle LCT des laufenden Kanals reserviert sind.According to Fig. 2B 256 memory locations are shown in the memory 201, which is reserved as virtual memory. The first 64 memory locations or bytes are numbered decimally from 0 to 63 and hexadecimally from 0 to 3F and they include the logic table LCT of the current line used by the instruction program CCP. The next 32 memory locations or bytes at the decimal memory locations 64-95 and the hexadecimal memory locations 40-5F are reserved for the logic table LCD of the current channel used by the firmware. The next 8 memory locations or bytes corresponding to the decimal memory locations 96-102 or the hexadecimal memory locations 60-67 are reserved for the active control block CCB of the current channel. This is followed by an unused storage space and then three storage spaces for 8 bytes each, which are reserved for the receiver / transmitter USART of the current line, the covered receiver / transmitter USART of the current line and the expansion of the logic table LCT of the current channel.

Ein typisches Beispiel veranschaulicht, wie das verbesserte Adressierschema der Erfindung arbeitet. Es sei daher angenommen, daß der Speicherplatz 5 der Zeile 0 des virtuellen Speichers 201 zu adressieren ist. Dementsprechend weisen alle Bits 0 bis 7 des Bytes a des Registers 103 den Wert "0" auf, wodurch das NOR-Gatter 104 und der Seitenunterteilungs-Signalgenerator 105 freigegeben werden. Die nächsten 5 Bit 8 bis 12 besitzen ebenfalls den Wert "0", während das Bit 13 den Wert "1", das Bit 14 den Wert "0" und das Bit 15 den Wert "1" aufweist, wodurch sich die Binäradresse 101 bzw. die Dezimaladresse 5 ergibt. Die virtuelle Adresse 106 weist ferner in den Bits 0 bis 12 den Wert "0" auf, wobei das Bit 13 den Wert "1", das Bit 14 den Wert "0" und das Bit 15 den Wert "1" aufweist. Das Steuersignal CPGLIN ist jedoch zusätzlich aktiv, da die Bits 8 bis 12 des Bytes b in dem Register 103 den Wert "0" besitzen. Es wurde vorher gezeigt, daß bei der Verwendung der Bits 8-12 zur Adressierung der ersten 8 Worte in dem Seitenunterteilungs-Signalgenerator 105 das Signal CPGLIN aktiv ist bzw. den niedrigen Pegel aufweist. Bei aktivem Signal CPGLIN werden die Bits 8 und 9 der virtuellen Adresse 106 durch die Bits H und M des Kanalregisters 114 enstprechend ersetzt. Mit der anfänglichen Annahme, daß der Speicherplatz 5 der Zeile 0 adressiert wird, besitzen die Bits H und M des Kanalregisters 114 den Wert "0" und dementsprechend besitzen die Bits 8 und 9 der realen Adresse 107 ebenfalls den Wert "0". Die endgültige reale Adresse besitzt daher Bits 0-12 mit dem Wert "0", das Bit 13 besitzt den Wert "1", das Bit 14 besitzt den Wert "0" und das Bit 15 besitzt den Wert "1", wodurch der fünfte Speicherplatz der Zeile 0 des realen Speichers adressiert wird.A typical example illustrates how the improved addressing scheme of the invention works. It is therefore assumed that memory location 5 of line 0 of virtual memory 201 is to be addressed. Accordingly, all bits 0 to 7 of byte a of register 103 are "0", thereby enabling NOR gate 104 and page division signal generator 105 . The next 5 bits 8 to 12 also have the value "0", while bit 13 has the value "1", bit 14 has the value "0" and bit 15 has the value "1", which means that the binary address 101 or the decimal address is 5. The virtual address 106 also has the value "0" in bits 0 to 12, bit 13 having the value "1", bit 14 the value "0" and bit 15 the value "1". However, the control signal CPGLIN is additionally active since bits 8 to 12 of byte b in register 103 have the value "0". It has previously been shown that when bits 8-12 are used to address the first 8 words in the page division signal generator 105, the CPGLIN signal is active or low. When the CPGLIN signal is active, bits 8 and 9 of virtual address 106 are replaced accordingly by bits H and M of channel register 114 . With the initial assumption that memory location 5 of row 0 is addressed, bits H and M of channel register 114 have the value "0" and accordingly bits 8 and 9 of real address 107 also have the value "0". The final real address therefore has bits 0-12 with the value "0", bit 13 has the value "1", bit 14 has the value "0" and bit 15 has the value "1", making the fifth Memory location of line 0 of the real memory is addressed.

Um das Problem einen Schritt weiter zu entwickeln, sei nunmehr angenommen, daß der fünfte Speicherplatz in der Zeile 1 zu adressieren ist. Der Bitinhalt des Registers 103 und die virtuelle Adresse 106 werden sich gegenüber dem vorangegangenen Beispiel nicht geändert haben. Da jedoch nunmehr die Zeile 1 zu adressieren ist, besitzt das Kanalregister 114 den Wert "0" in seinem hochwertigen Bit H und einen Wert "1" in dem Bit M. Wenn dementsprechend das Signal CPGLIN erneut aktiviert wird, da die Bits 8-12 des Bytes b des Registers 103 alle den Wert "0" aufweisen, wird das Bit 8 der virtuellen Adresse 106 durch das Bit H des Kanalregisters 114 ersetzt, welches den Wert "0" aufweist und das Bit 9 der virtuellen Adrese 106 wird durch das mittlere Bit M des Kanalregisters 114 ersetzt, welches in diesem Beispiel den Wert "1" aufweist, da die Zeile 1 adressiert wird. Die reale Adresse 107 wird somit den Wert "0" in den Bitpositionen 0 bis 8 aufweisen, das Bit 9 wird den Wert "1" besitzen, die Bits 10-12 verbleiben auf dem Wert "0", das Bit 13 besitzt noch den Wert "1", das Bit 14 besitzt noch den Wert "0" und das Bit 15 besitzt noch den Wert "1". Dementsprechend wird nunmehr der hexadezimale Speicherplatz 45 im realen Speicher adressiert, welcher der fünfte Speicherplatz der Zeile 1 ist. Es ist durch diese Überlegung leicht ersichtlich, daß am Speicherplatz 5 der Zeile 2 oder der Zeile 3 eine gleiche Adressierung erfolgen kann, indem lediglich die Bits H und M des Kanalregisters 114 durch die Bits 8 und 9 der virtuellen Adresse 106 ersetzt werden, um die reale Adresse 107 zu erhalten.In order to develop the problem one step further, it is now assumed that the fifth memory location in line 1 is to be addressed. The bit content of register 103 and virtual address 106 will not have changed compared to the previous example. However, since row 1 is now to be addressed, channel register 114 has the value "0" in its high-quality bit H and a value "1" in bit M. If the signal CPGLIN is reactivated accordingly, since bits 8-12 of byte b of register 103 all have the value "0", bit 8 of virtual address 106 is replaced by bit H of channel register 114 , which has the value "0", and bit 9 of virtual address 106 is replaced by the middle one Bit M of channel register 114 is replaced, which in this example has the value "1", since line 1 is addressed. The real address 107 will therefore have the value "0" in bit positions 0 to 8, bit 9 will have the value "1", bits 10-12 will remain at the value "0", bit 13 will still have the value "1", bit 14 still has the value "0" and bit 15 still has the value "1". Accordingly, the hexadecimal memory location 45 is now addressed in real memory, which is the fifth memory location in line 1. It can easily be seen from this consideration that the same addressing can be carried out at memory location 5 of line 2 or line 3, by only replacing bits H and M of channel register 114 with bits 8 and 9 of virtual address 106 in order to achieve the to get real address 107 .

Gemäß Fig. 3 ist das detaillierte logische Blockdiagramm der Seitenunterteilungseinrichtung für die verbesserte Zuteilung von virtuellen Adressen zu realen Adressen dargestellt. Zunächst sei eine strukturelle Beschreibung gegeben, wobei die verschiedenen Strukturen von Fig. 3, dort wo es möglich ist, durch Elemente in Fig. 1A identifiziert werden. Danach sei die Betriebsweise der Struktur gemäß Fig. 3 beschrieben, um die verschiedenen ausgeführten Funktionen aufzuzeigen. Es sei der zuvor beschriebenen Fig. 1A entnommen, daß der Seitenunterteilungsmechanismus ausgelegt ist, um die Bits 4 bis 12 des virtuellen Adressformates 106 zu modifizieren und die endgültige reale Adresse 107 zu bilden, wobei die Bits 4 bis 12 entweder in Übereinstimmung mit den dargebotenen Signalen modifiziert werden oder nicht. Gemäß Fig. 3 sei vermerkt, daß die Multiplexer (MUX) 302, 303 und 304 und der Treiber 305 die Ausgangssignale auf den Leitungen 302 A, 303 A, 304 A, 305 A und 305 B liefern, wobei diese Leitungen die modifizierten Bits 8 bis 12 der realen Adresse 107 darstellen. Der Multiplexer 301 und der Treiber 308 bilden die Ausgangssignale auf den Leitungen 301 A, 308 A, 308 B und 308 C, die die Bits 4 bis 7 der modifizierten realen Adresse 107 darstellen. Das Register 309 entspricht dem Register 114 in Fig. 1A und es speichert die Bits H, M und D und liefert diese Bits als Ausgangssignale auf die Leitungen 309 A, 309 B und 309 C. Das Register enspricht dem CCB-Register 115 in Fig. 1A und es speichert und liefert die α- und β-Bits als Signalausgänge auf den Leitungen 310 A und 310 B. Referring to FIG. 3, the detailed logic block diagram of the page dividing means for improved allocation of virtual addresses to physical addresses is shown. First, a structural description is given, where the various structures of FIG. 3, where possible, are identified by elements in FIG. 1A. The operation of the structure of FIG. 3 is then described to show the various functions performed. It can be seen from Fig. 1A previously described that the page division mechanism is designed to modify bits 4 through 12 of the virtual address format 106 and form the final real address 107 , bits 4 through 12 either in accordance with the signals presented be modified or not. Referring to FIG. 3, it is noted that the multiplexer (MUX) 302, 303 and 304 and driver 305 provide the output signals on lines 302 A, 303 A, 304 A, 305 A and 305 B, which lines the modified bits 8 to represent the real address 107 . The multiplexer 301 and the driver 308 form the output signals on lines 301 A , 308 A , 308 B and 308 C , which represent bits 4 to 7 of the modified real address 107 . The register 309 corresponds to the register 114 in FIG. 1A and it stores the bits H, M and D and supplies these bits as output signals on the lines 309 A , 309 B and 309 C. The register corresponds to the CCB register 115 in FIG. 1A and it stores and supplies the α and β bits as signal outputs on the lines 310 A and 310 B.

Der Festwertspeicher PROM 300 entspricht dem Seitenunterteilungs- Signalgenerator 105. Wie zuvor beschrieben, liefert er die verschiedenen Signale für die Übertragung der virtuellen Adresse 106 in die reale Adresse 107. Die Aufteilung des Festwertspeichers PROM 300 entspricht derjenigen in Fig. 1C. Die Treiber 305 und 306 sind an ein UND-Gatter 311 A angeschlossen, um die realen Speicher- Adressenbits 11 und 12 zu bilden. Das Register 311 wir für die Speicherung verschiedener Signale verwendet.The read only memory PROM 300 corresponds to the page division signal generator 105 . As described above, it delivers the various signals for the transmission of the virtual address 106 into the real address 107 . The division of the read-only memory PROM 300 corresponds to that in FIG. 1C. The drivers 305 and 306 are connected to an AND gate 311 A to form the real memory address bits 11 and 12. Register 311 is used to store various signals.

Jede dieser Einrichtungen ist im Handel von Herstellern, wie beispielsweise Texas Instruments, Motorola, Intel und anderen Halbleiterherstellern erhältlich, wobei in der nachfolgenden Tabelle I die Typnummern der verschiedenen Komponenten angegeben sind:Each of these facilities is commercially available from manufacturers such as Texas Instruments, Motorola, Intel and other semiconductor manufacturers available in the table below I the type numbers of the various components are given:

Tabelle ITable I

Komponente mit BezugszifferHandeslübliche IdentifikationsnummerComponent with reference number

MUX 301, 302, 303 und 30474LS253 Treiber 305, 306, 307 und 30874LS241 Register 114, 115, 120, 121, 122, 123, 123 A, 309, 310, 311 360, 361, 370, 371, 372 und 38274LS374 UND-Gatter 311 A, 354, 358 A, 371 und 37274LS08 PROM 300 und 3845610 Decoder 351, 352, 353, 355, 356, 357 und 38074LS139 Vergleicher 358 und 358 B74LS08 USART 116 und 117- Bustreiber 110 und 111-MUX 301, 302, 303 and 304 74LS253 drivers 305, 306, 307 and 308 74LS241 registers 114, 115, 120, 121, 122, 123, 123 A , 309, 310, 311 360, 361, 370, 371, 372 and 382 74LS374 AND gate 311 A , 354, 358 A , 371 and 372 74LS08 PROM 300 and 384 5610 decoders 351, 352, 353, 355, 356, 357 and 380 74LS139 comparators 358 and 358 B 74LS08 USART 116 and 117 - bus drivers 110 and 111 -

Unter erneuter Bezugnahme auf Fig. 3 sei die Wirkungsweise und Funktion der Seitenunterteilungseinrichtung für die verbesserte Zuteilung von virtuellen Adressen zu realen Adressen in näheren Einzelheiten beschrieben. Wie zuvor im Zusammenhang mit Fig. 1A näher beschrieben wurde, nimmt das Dialog-Seitenunterteilungs- Zeilensignal CPGLIN den aktiven Zustand ein, indem es den niedrigen Pegel annimmt, wenn die Adressen 0 bis 7 des PROM-Chips 300 adressiert werden. Dies ist in der Seitenunterteilungs PROM-Liste in Fig. 1C dargestellt, in welcher der Inhalt der Liste in den ersten 8 Positionen den Wert 01111111 besitzt. Die Bitposition 7 besitzt den Wert "0", wodurch das Signal CPGLIN aktiviert wird. Dieses Signal wird sodann dem Eingangsanschluß 2ag und 2ah der Multiplexer 302 und 303 entsprechend zugeführt. Das andere Eingangs-Steuersignal an den Eingangsanschlüssen 1ag und 1ah der Multiplexer 302 und 303 ist durch das Logiksignal "1" (LOGIC 1) vorgegeben, welches so geschaltet ist, daß es immer den hohen Pegel aufweist. Wenn das Signal CPGLIN aktiv ist, d. h. den niedrigen Pegel aufweist, so adressiert es die Eingangsanschlüsse 1ag und 1ah der Multiplexer 302 und 303, was bedeutet, daß die Signale an den Eingangsanschlüssen 1g und 1h durchgereicht werden und als Ausgangssignale 302 A und 303 A entsprechend auftreten. Durch Zurückverfolgung des Signales CPGCNH an dem Eingangsanschluß 1g des Multiplexers 302 zu seiner Quelle ist festzustellen, daß es von dem hochwertigen Bit auf der Leitung 309 A des Kanalregisters 309 kommt. In gleicher Weise ist durch Zurückverfolgung des Eingangssignales CPGCNL an dem Eingangsanschluß 1h des Multiplexers 303 festzustellen, daß es von der Ausgangsleitung 309 B mit mittlerer Wertigkeit kommt. Dies entspricht den Bits H und M des Kanalregisters 114 in Fig. 1A. Dementsprechend wird bei einer Aktivierung des Signales CPGLIN das Bit H und M des Registers 114 und 309 für die virtuellen Adreßbits 8 und 9 auf den Ausgangsleitungen 302 A und 303 A entsprechend eingesetzt. Umgekehrt werden, wenn das Signal CPGLIN nicht aktiviert ist, die Adreßbits 8 und 9 der virtuellen Adresse nicht modifiziert und diese werden so wie sie sind zu den Ausgangsleitungen 302 A und 303 A der Multiplexer 302 und 303 entsprechend weitergereicht. Dies ist darauf zurückzuführen, daß bei hohem Pegel für das Signal CPGLIN und für das Signal LOGIC 1 die Adresse 3g und 3h dezimal (binär 11) an den Multiplexern 302 und 303 adressiert wird. Die Eingangsadresse 3g des Multiplexers 302 wird durch das Signal CADU08 vorgegeben, welches als Dialogadresse des Mikroprozessor-Bits 8 interpretiert wird. Die Eingangsadresse 3h des Multiplexers 303 ist durch das Signal CADU09 vorgegeben, welches als Dialogadreß-Mikroprozessorbit 9 interpretiert wird. Wenn die Eingangsanschlüsse 3g und 3h adressiert werden, so werden diese Anschlüsse aktiviert und es können die Adressen an diesen Anschlüssen zu den Ausgangsleitungen 302 A und 303 A der Multiplexer 302 und 303 weitergereicht werden.Referring again to FIG. 3, the operation and function of the page subdivision device for the improved assignment of virtual addresses to real addresses will be described in more detail. As previously described in connection with FIG. 1A, the dialog page division line signal CPGLIN assumes the active state by assuming the low level when the addresses 0 to 7 of the PROM chip 300 are addressed. This is shown in the page division PROM list in FIG. 1C, in which the content of the list has the value 01111111 in the first 8 positions. Bit position 7 has the value "0", which activates the signal CPGLIN. This signal is then fed to input terminals 2ag and 2ah of multiplexers 302 and 303, respectively. The other input control signal at the input connections 1ag and 1ah of the multiplexers 302 and 303 is predetermined by the logic signal "1" (LOGIC 1), which is switched so that it is always at the high level. If the signal CPGLIN is active, ie has the low level, it addresses the input connections 1ag and 1ah of the multiplexers 302 and 303 , which means that the signals are passed on at the input connections 1g and 1h and as output signals 302 A and 303 A accordingly occur. By tracing the signal CPGCNH at the input terminal 1g of the multiplexer 302 to its source, it can be seen that it comes from the high quality bit on the line 309 A of the channel register 309 . In the same way, by tracing back the input signal CPGCNL at the input terminal 1h of the multiplexer 303, it can be determined that it comes from the output line 309 B of medium significance. This corresponds to bits H and M of channel register 114 in Fig. 1A. Accordingly, when the signal CPGLIN is activated, bits H and M of registers 114 and 309 are used accordingly for virtual address bits 8 and 9 on output lines 302 A and 303 A. Conversely, if the signal CPGLIN is not activated, the address bits 8 and 9 of the virtual address are not modified and these are passed on as they are to the output lines 302 A and 303 A of the multiplexers 302 and 303 . This is due to the fact that when the CPGLIN signal and the LOGIC 1 signal are high, addresses 3g and 3h are addressed decimally (binary 11) to multiplexers 302 and 303 . The input address 3g of the multiplexer 302 is predetermined by the signal CADU08, which is interpreted as the dialog address of the microprocessor bit 8. The input address 3h of the multiplexer 303 is predetermined by the signal CADU09, which is interpreted as a dialog address microprocessor bit 9. If the input connections 3g and 3h are addressed, these connections are activated and the addresses on these connections can be passed on to the output lines 302 A and 303 A of the multiplexers 302 and 303 .

Das nächste Steuerbit für die Modifizierung der virtuellen Adresse 106, welches dem PROM-Chip 300 entnommen wird, ist das Direktionalbit CPGDIR. Das Direktionalbit ist das niedrigrangige Bit D in dem Kanalregister 114 bzw. das Bit auf der Leitung 309 C am Ausgang des Kanalregisters 309. Das Direktionalbit wird aktiviert, wenn die Adressen 8, 9, 10 und 11 (dezimal) des Festwertspeichers PROM 300 adressiert werden (siehe Fig. 1C). Wenn diese Bits 8-11 adressiert werden, so wird zusätzlich das Ausgangssignal CPGLIN aktiv. Dementsprechend wird zusätzlich zu dem Signal CPGLIN, das an die Multiplexer 302 und 303 angelegt wird, das Signal CPGDIR den Eingangsanschlüssen 1d und 1ai der Multiplexer 301 und 304 zugeführt. Bei inaktivem Signal CPGDIR am Eingangsanschluß 1 des Multiplexers 304 spielt es keine Rolle, ob das Eingangssignal CPGAD8 am Eingangsanschluß 2ai des Multiplexers 304 den hohen oder niedrigen Pegel aufweist, da bei beiden Zuständen entweder der Eingangsanschluß 0b oder 2b (Binäradressen 0 oder 11) aktiviert wird und das Signal CPGCND diesen beiden Adressen zugeführt wird. Das Signal CPGCND stammt von der Ausgangsleitung 309 C des Kanalregisters 309, welches dem Bit D des Kanalregisters 114 und 309 entspricht. Wenn demgemäß das Direktionalbit CPGDIR aktiviert wird, so wird das 10. Bit (dezimal) der virtuellen Adresse 106 in Übereinstimmung mit dem Inhalt des Bits D des Kanalregisters 114 modifiziert. Es ergibt sich kein Einfluß auf das Signal CPGDIR an dem Eingangsanschluß 1d des Mulitplexers 301 es sei denn, das Signal CPGAD8 ist ebenfalls aktiviert. Dies ist darauf zurückzuführen, daß bei inaktivem Signal CPGAD8 (hoher Pegel) nur die Adressen 2e oder 3e (binär 10 oder 11) des Multiplexers 301 adressiert werden können und diese beiden einander gleich sind und das Bit 7 der Dialogadresse des Mikroprozessors repräsentieren. Wenn jedoch das Signal CPGAD8 von dem Festwertspeicher PROM 300 ebenfalls aktiviert ist (niedriger Pegel), so werden nur die Adressen 0e oder 1e (binär 00 oder 01) des Multiplexers 301 adressiert und aktiv. Beiden Adressen wird das Logiksignal LOGIC 1 mit dem Wert "1" zugeführt und dieses Signal wird zu der Ausgangsleitung 301 A des Multiplexers 301 weitergereicht, wenn beide Signale CPGAD8 und CPGDIR aktiv sind oder wenn nur das Signal CPGAD8 aktiv ist.The next control bit for the modification of the virtual address 106 , which is taken from the PROM chip 300 , is the directional bit CPGDIR. The directional bit is the low-order bit D in the channel register 114 or the bit on the line 309 C at the output of the channel register 309 . The directional bit is activated when the addresses 8, 9, 10 and 11 (decimal) of the read-only memory PROM 300 are addressed (see FIG. 1C). If these bits 8-11 are addressed, the output signal CPGLIN also becomes active. Accordingly, in addition to the signal CPGLIN applied to the multiplexers 302 and 303 , the signal CPGDIR is supplied to the input terminals 1d and 1ai of the multiplexers 301 and 304 . If the signal CPGDIR at input terminal 1 of multiplexer 304 is inactive, it does not matter whether the input signal CPGAD8 at input terminal 2ai of multiplexer 304 is high or low, since either state activates input terminal 0b or 2b (binary addresses 0 or 11) and the signal CPGCND is supplied to these two addresses. The signal CPGCND comes from the output line 309 C of the channel register 309 , which corresponds to the bit D of the channel register 114 and 309 . Accordingly, when the directional bit CPGDIR is activated, the 10th bit (decimal) of the virtual address 106 is modified in accordance with the content of the bit D of the channel register 114 . There is no influence on the signal CPGDIR at the input connection 1d of the multiplexer 301 , unless the signal CPGAD8 is also activated. This is due to the fact that when the signal CPGAD8 (high level) is inactive, only the addresses 2e or 3e (binary 10 or 11) of the multiplexer 301 can be addressed, and these two are the same and represent bit 7 of the dialog address of the microprocessor. However, if the signal CPGAD8 from the read-only memory PROM 300 is also activated (low level), only the addresses 0e or 1e (binary 00 or 01) of the multiplexer 301 are addressed and active. The logic signal LOGIC 1 with the value "1" is supplied to both addresses and this signal is passed on to the output line 301 A of the multiplexer 301 if both signals CPGAD8 and CPGDIR are active or if only the signal CPGAD8 is active.

Somit wird bei aktivem Signal CPGAD8 das Bit 7 der virtuellen Adresse modifiziert und auf den Wert "1" gesetzt.Thus, when the CPGAD8 signal is active, bit 7 becomes the virtual one Modified address and set to the value "1".

Wie zuvor anhand von Fig. 1A beschrieben wurde, werden die Bits 11 und 12 der virtuellen Adresse 106 durch die Kanalbits α und β des Registers 115 ersetzt, wenn das Kanalregisterbit CPGCCB aktiv ist, d. h. den niedrigen Pegel aufweist. Das das Register 310 in Fig. 3 dem Kanalregister 115 entspricht und das Bit CPGCCH auf der Ausgangsleitung 310 A dem Bit α des Kanalregisters 115 und das Bit CPGCCL auf der Ausgangsleitung 310 B dem Bit β des Registers 115 entspricht, ersetzen diese Bits die Bits 11 und 12 der virtuellen Adresse, wenn das Signal CPGCCB aktiv ist, d. h. den niedrigen Pegel aufweist. Es sei nun betrachtet was geschieht. Wenn das Signal CPGCCB aktiviert ist, so wird es dem Eingangsanschluß 11 des Treibers 306 und einem Eingangsanschluß des UND-Gatters 311 A zugeführt. Demgemäß wird der Treiber 306 durchgeschaltet und die Kanal-Steuerbitsignale CPPGCCH und CPGCCL auf den Ausgangsleitungen 310 A und 310 B werden an die Anschlüsse 1h und 0h des Treibers 306 entsprechend angelegt und zu den Ausgangsleitungen 306 A und 306 B des Treibers 306 weitergereicht, um die Bits 11 und 12 der virtuellen Speicheradresse zu ersetzen. Es sei vermerkt, daß bei einem niedrigen Pegel für das Signal CPGCCB an dem Eingangsanschluß 1 des Treibers 306 dieser freigegeben wird, daß aber das gleiche dem Eingangsanschluß 19 des Treibers 305 zugeführte Signal diesen Treiber sperrt. Somit werden die Signale CADU an den Eingangsanschlüssen 24 und 25 des Treibers 305 nicht zu den Ausgangsanschlüssen 305 A und 305 B weitergereicht, sondern durch die Bits des Kanalregisters 310 in der zuvor beschriebenen Weise ersetzt. Es ist somit ersichtlich, daß entweder der Treiber 306 oder der Treiber 305, nicht aber beide, freigegeben wird und daß entweder die Kanalregisterbits über den Treiber 306 oder die Mikroprozessor-Adreßbits über den Treiber 305 zu dem Ausgang weitergereicht werden.As previously described with reference to FIG. 1A, bits 11 and 12 of virtual address 106 are replaced by channel bits α and β of register 115 when channel register bit CPGCCB is active, ie at the low level. The register 310 in Figure 3 corresponds to. The channel register 115 and the bit CPGCCH on the output line 310 A the bit α of the channel register 115 and the bit CPGCCL on the output line 310 B the bit β of the register 115 corresponds to these bits replace the bits 11 and 12 the virtual address when the signal CPGCCB is active, ie at the low level. Let us now consider what happens. If the signal CPGCCB is activated, it is fed to the input terminal 11 of the driver 306 and an input terminal of the AND gate 311 A. Accordingly, the driver 306 is turned on and the channel Steuerbitsignale CPPGCCH and CPGCCL on the output lines 310 A and 310 B are applied to the terminals 1 h and 0h the driver 306 accordingly and passed to the output lines 306 A and 306 B of the driver 306 to the Replace bits 11 and 12 of the virtual memory address. It should be noted that if the signal CPGCCB is low at input terminal 1 of driver 306, it is enabled, but the same signal applied to input terminal 19 of driver 305 blocks this driver. Thus, the signals CADU on the input connections 24 and 25 of the driver 305 are not passed on to the output connections 305 A and 305 B , but are replaced by the bits of the channel register 310 in the manner described above. It can thus be seen that either driver 306 or driver 305 , but not both, is enabled and that either the channel register bits are passed through driver 306 or the microprocessor address bits are passed through driver 305 to the output.

Schließlich sei noch im Hinblick auf die virtuelle Adressenmodifikation die Modifikation der Bits 4, 5 und 6 erläutert. Wie zuvor anhand von Fig. 1A festgestellt wurde, geschieht dies über das Signal CPGAD4. Wenn die Adresse 12 (dezimal) des Seitenunterteilungs-Signalgenerators adressiert wird, so werden alle folgenden Signale aktiv: CPGLIN, CPGDIR CPGCCB und CPGAD4. Dies ist aus Fig. 1C erkennbar, in welcher die Adresse 12 (dezimal) die folgende Bitkombination 00001111 aufweist. Somit weisen die Bitpositionen 4, 5, 6 und 7 den niedrigen Pegel auf und sind aktiv, so daß der Signalgenerator 105 in Fig. 1A die Signale CPGAD4, CPGCCB, CPGDIR und CPGLIN ausgibt. Es ist bereits gezeigt worden, wie die ersten 3 Signale die virtuelle Adresse in ihrem aktiven Zustand modifizieren und es soll nunmehr noch gezeigt werden, wie das Signal CPGAD4 die virtuelle Adresse modifiziert und den Wert "1" in die Bits 4, 5 und 6 der virtuellen Adresse einfügt. Das Signal CPGAD4 wird dem Freigabeanschluß 19 des Treibers 308 zugeführt. Wenn der Treiber 308 freigegeben wird, so wird der Binärwert "1" in den Bits 4, 5 und 6 entsprechend gesetzt. Ist er nicht freigegeben, so wird die Mikroprozessoradresse CADU für die Bits 4, 5 und 6 entsprechend durchgereicht. Der Grund hierfür liegt darin, daß der Treiber 308 ein handelsüblicher Tri-state-Schaltkreis des Typs LS 241 ist, der Hochziehwiderstände für das angelegte Signal aufweist. Wenn dementsprechend ein Signal mit niedrigem Pegel, wie beispielsweise das Signal CPGAD4 angelegt wird, so gibt dieses Signal den Treiber 308 nicht frei und die Ausgangssignale werden auf +5V hochgezogen, wodurch sich der Logikpegel "1" ergibt. Wenn andererseits das Signal CPGAD4 inaktiv ist, d. h. den hohen Pegel aufweist, so wird der Treiber 308 freigegeben und gestattet die Weiterreichung der Adreßsignale an den Eingangsanschlüssen 1k, 2k und 3k des Treibers 308.Finally, the modification of bits 4, 5 and 6 will be explained with regard to the virtual address modification. As was previously determined with reference to FIG. 1A, this is done via the signal CPGAD4. When address 12 (decimal) of the page division signal generator is addressed, all of the following signals become active: CPGLIN, CPGDIR, CPGCCB and CPGAD4. This can be seen from FIG. 1C, in which the address 12 (decimal) has the following bit combination 00001111. Thus, bit positions 4, 5, 6 and 7 are at the low level and are active, so that the signal generator 105 in Fig. 1A outputs the signals CPGAD4, CPGCCB, CPGDIR and CPGLIN. It has already been shown how the first 3 signals modify the virtual address in its active state and it will now be shown how the signal CPGAD4 modifies the virtual address and the value "1" in bits 4, 5 and 6 of the inserts virtual address. The signal CPGAD4 is fed to the enable terminal 19 of the driver 308 . When driver 308 is enabled, binary value "1" in bits 4, 5 and 6 is set accordingly. If it is not released, the microprocessor address CADU for bits 4, 5 and 6 is passed on accordingly. The reason for this is that driver 308 is a commercially available tri-state circuit of type LS 241, which has pull-up resistors for the applied signal. Accordingly, when a low level signal such as the CPGAD4 signal is asserted, this signal does not enable driver 308 and the output signals are pulled up to + 5V, resulting in logic level "1". If, on the other hand, the signal CPGAD4 is inactive, that is to say the high level, the driver 308 is released and allows the address signals to be passed on to the input connections 1k, 2k and 3k of the driver 308 .

Der Seitenunterteilungs-Signalgenerator 105 in Fig. 1A und sein Äquivalent in Form des Festwertspeichers PROM 300 in Fig. 3 erzeugen nicht nur Signale, durch die der Speicher 109 wirksamer adressiert werden kann, sondern sie erzeugen ferner Signale, die eine wirksamere Adressierung und einen wirksameren Dialog zwischen dem Haptspeicher 108, dem Mikroprozessor 101 und den verschiedenen Registern und peripheren Geräten an dem I-Bus und dem U-Bus ermöglichen. Dieser Dialog zwischen den verschiedenen Geräten, wie beispielsweise zwischen den Registern und dem Speicher und den Registern unter Verwendung des U-Busses und des I-Busses wird ausgelöst, indem das Signal CEU2I0 aktiviert wird. Das Signal CEU2I0 besitzt den niedrigen Pegel und ist aktiviert, wenn das zugeordnete Bit in dem Speicherplan gemäß Fig. 1C den Wert "0" aufweist. Es sei darauf verwiesen, daß das Signal CEU2I0 der Bitposition 1 des Seitenunterteilungs-Signalgenerators 105 entspricht. Gemäß Fig. 1C, welche die Speicherbelegung des Seitenunterteilungs- Signalgenerators 105 und seines entsprechenden Festwertspeichers PROM 300 zeigt, ist erkennbar, daß es 3 Adressen gibt, an denen eine "0" in der Bitposition 1 gespeichert ist. Diese Adressen entsprechen den dezimalen Speicherplätzen 18, 21 und 22 bzw. den virtuellen hexadezimalen Speicherplätzen 90, A8 und B0. Wenn daher irgendeiner dieser Speicherplätze des Seitenunterteilungs- Signalgenerators 105 bzw. des Festwertspeichers PROM 300 durch den Mikroprozessor 101 adressiert wird, so wird das Signal CEU2I0 aktiv und besitzt den niedrigen Pegel. Das Signal DEU2I0 löst den Dialogprozeß aus und steuert die Freigabe des Bustreibers 111 in Fig. 1A bzw. des Bustreibers 711 A in Fig. 7. Das Signal wird ferner als ein Eingang dem UND-Gatter 354 in Fig. 4 zugeführt und gewährleistet eine Impulsabgabe, nachdem die Daten auf dem Bus gültig geworden sind. The page division signal generator 105 in FIG. 1A and its equivalent in the form of the read-only memory PROM 300 in FIG. 3 not only generate signals by which the memory 109 can be addressed more effectively, but also generate signals which are more effective addressing and more effective Enable dialogue between the latch 108 , the microprocessor 101 and the various registers and peripheral devices on the I-bus and the U-bus. This dialogue between the various devices, such as between the registers and the memory and the registers using the U-bus and the I-bus, is triggered by activating the signal CEU2I0. The signal CEU2I0 has the low level and is activated when the assigned bit in the memory map according to FIG. 1C has the value "0". It should be noted that the signal CEU2I0 corresponds to the bit position 1 of the page division signal generator 105 . According to Fig. 1C, showing the memory map of the Seitenunterteilungs- signal generator 105 and its corresponding read-only memory PROM 300, it is seen that there are 3 addresses at which one is stored in bit position 1 is "0". These addresses correspond to the decimal storage locations 18, 21 and 22 or the virtual hexadecimal storage locations 90, A8 and B0. Therefore, if any of these memory locations of the page division signal generator 105 or the read-only memory PROM 300 are addressed by the microprocessor 101 , the signal CEU2I0 becomes active and has the low level. The signal DEU2I0 triggers the dialog process and controls the release of the bus driver 111 in FIG. 1A and the bus driver 711 A in FIG. 7. The signal is also fed as an input to the AND gate 354 in FIG. 4 and ensures a pulse output after the data on the bus has become valid.

Gemäß den Fig. 3 und 4 wird ein Signal CEU2I0 in der Bitposition 1 des Speichers PROM 300 erzeugt, wenn die Freigabe des I-Bustreibers 711 A gewünscht ist, um Daten von dem U-Bus zu dem I-Bus zu übertragen und diese entweder in das Kanalregister 114, das CCB-Register 115 oder das S-Register 123 A einzuschreiben. Gemäß Fig. 4 ist erkennbar, daß das Signal CEU2I0 einem Eingangsanschluß des UND-Gatters 354 zugeführt wird und einer UND-Verknüpfung mit einem Tastsignal CTPHZD unterzogen wird, um das Signal CEU2I0-10 am Ausgang des UND-Gatters 354 zu erzeugen. Dieses Signal wird sodann dem Freigabeeingang des Decodierers 355 zugeführt. Ferner werden den Eingangsanschlüssen 20A und 10A des Decodierers 355 die Bits 10 und 11 der Adresse 103 der Dialogadresseneinheit zugeführt. Diese Bits werden sodann decodiert, um eines von 4 Signalen an den Ausgangsanschlüssen des Decodierers 355 zu aktivieren. Wenn die Bits 10 und 11 an den Eingangsanschlüssen 20A und 10A des Decodierers 355 den Wert 10 oder den binärdezimalen Wert 3 aufweisen, so wird das Ausgangssignal CEU2I0-A2 freigegeben und an den Freigabeeingang des Decodierers 357 angelegt. Zusätzlich werden die Bits 13 und 14 der Dialogadresseneinheit, d. h. die Signale CADU13 und CADU14 an die Eingangsanschlüsse 2PA und 1PA des Deodierers 357 angelegt. Wenn beide Bits 13 und 14 den Wert "0" aufweisen, so wird am Ausgang des Decodierers 357 das Signal CEI2CN aktiviert und verwendet, um in das Kanalregister 114 in Fig. 1A bzw. 309 in Fig. 3 einzuschreiben. Wenn andererseits die Bits 13 und 14 die Werte "0" und "1" aufweisen und als Signale CADU13 und CADU14 den Eingangsanschlüssen 2PA und 1PA des Decodierers 357 zugeführt werden, so wird am Ausgang des Decodierers 357 das Signal CEI2CB aktiv und benutzt, um das CCB-Register 115 in Fig. 1A bzw 310 in Fig. 3 zu adressieren. Wenn schließlich die Bits 13 und 14, die als Signale CADU13 und CADU14 den Eingangsanschlüssen 2PA und 1PA des Decodierers 357 zugeführt werden, den Wert "1" und "0" bzw. den Dezimalwert 2 aufweisen, so wird am Ausgang des Decodierers 357 das Signal CEI2SR aktiviert und benutzt, um das S-Register 123 A zu adressieren. Das Signal CEU2I0 wird somit verwendet, um den Bustreiber 111 und die Adressregister 114, 115 und 322 A freizugeben. Wenn dementsprechend der Mikroprozessor 101 einen Schreibbefehl bearbeitet, der das Einschreiben des Akkumulatorinhaltes des Mikroprozessors in den hexadezimalen Speicherplatz A8 vorgibt, so legt der Mikroprozessor den Inhalt des Akkumulators an den U-Bus an und gibt den Bustreiber 11 in der Schreibrichtung frei, worauf die Businformation in die geeignete Registeradresse eingetastet wird.Referring to FIGS. 3 and 4 a signal CEU2I0 in bit position 1 of the memory PROM is generated 300 when the release of the I-bus driver 711 A is desired to transmit data from the U-bus to the I-bus and this either write in the channel register 114 , the CCB register 115 or the S register 123 A. In accordance with Fig. 4 it can be seen that the signal CEU2I0 an input terminal of the AND gate 354 is supplied to an AND operation with a key signal CTPHZD is subjected, to generate the signal CEU2I0-10 at the output of AND gate 354. This signal is then fed to the enable input of decoder 355 . Furthermore, the bits 10 and 11 of the address 103 of the dialog address unit are fed to the input connections 20 A and 10 A of the decoder 355 . These bits are then decoded to activate one of 4 signals at the output ports of decoder 355 . If the bits 10 and 11 at the input connections 20 A and 10 A of the decoder 355 have the value 10 or the binary decimal value 3, then the output signal CEU2I0-A2 is released and applied to the release input of the decoder 357 . In addition, bits 13 and 14 of the dialog address unit, ie the signals CADU13 and CADU14, are applied to the input connections 2PA and 1PA of the deodoriser 357 . If both bits 13 and 14 have the value "0", the signal CEI2CN is activated at the output of decoder 357 and used to write into channel register 114 in FIG. 1A and 309 in FIG. 3, respectively. On the other hand, the bits 13 and 14 have the values "0" and "1" and supplied as signals CADU13 and CADU14 the input terminals 2PA and 1PA of the decoder 357, so at the output of the decoder is 357, the signal CEI2CB and used actively to the CCB register 115 in Fig. 1A and 310 in Fig. 3 to address. Finally, if bits 13 and 14, which are supplied as signals CADU13 and CADU14 to the input connections 2PA and 1PA of the decoder 357 , have the value "1" and "0" or the decimal value 2, then the signal at the output of the decoder 357 CEI2SR activated and used to address the S register 123 A. The signal CEU2I0 is thus used to enable the bus driver 111 and the address registers 114, 115 and 322 A. Accordingly, when the microprocessor 101 processes a write command which specifies the writing of the accumulator contents of the microprocessor into the hexadecimal storage space A8, the microprocessor applies the contents of the accumulator to the U-bus and releases the bus driver 11 in the writing direction, whereupon the bus information is released is keyed into the appropriate register address.

Wenn ein Schreibbefehl bearbeitet wird und Information in irgendeines der Register an dem I-Bus geschrieben wird, so gibt der Bustreiber 110 gemäß Fig. 1A ebenfalls den M-Bus 109 frei und die gleiche in das Adreßregister eingeschriebene Information wird ebenfalls in einen adressierten Abschnitt des Speichers 108 eingeschrieben. Es sei in diesem Zusammenhang ebenfalls auf die Fig. 2A und 2B verwiesen. Der Bustreiber 110 wird durch ein fehlendes Signal CEMB2U freigegeben und er schaltet den M-Bus in Richtung auf den Speicher 108 durch. Somit wird die in die Register eingeschriebene Information ebenfalls in einen "Schattenspeicher" eingeschrieben, der die Information für Diagnosezwecke oder für den Test aufbewahrt und der ein Speicherplatz zur Aufbewahrung von Daten bildet, wenn eine externe Wartung ausgeführt wird.If a write command is being processed and information is being written to any of the registers on the I-bus, then the bus driver 110 of FIG. 1A also enables the M-bus 109 and the same information written in the address register is also written into an addressed section of the I-bus Memory 108 inscribed. In this connection, reference is also made to FIGS. 2A and 2B. The bus driver 110 is released by a missing signal CEMB2U and it switches the M-Bus through in the direction of the memory 108 . Thus, the information written in the registers is also written into a "shadow memory" which stores the information for diagnostic purposes or for the test and which forms a storage space for storing data when external maintenance is performed.

Beim Lesen von Daten von dem I-Bus zu dem U-Bus ist es erforderlich, die Datenübertragung von dem M-Bus zu dem U-Bus zu sperren. Die gestattet dem I-Bus die Steuerung der Daten auf dem U-Bus. Diese Funktion wird ausgeführt durch Erzeugung des Signales CEI02U in dem Seitenunterteilungs-Signalgenerator 105. Dieses Signal wird sodann dem Freigabeanschluß des Decodierers 351 in Fig. 4 zugeführt und zur gleichen Zeit werden die Bits 9 und 10 der Adresse 103 an die Eingangsanschlüsse 2K und 1K als Signale CADU09 und CADU10 angelegt. Diese Signale werden einem ersten Decodierpegel unterworfen, um ein Ausgangssignal CEI02U-A1 am Ausgangsanschluß 01 des Decodierers 351 zu erzeugen, wenn die Eingangsbits 9 und 10 die Werte "0" und "1" entsprechend aufweisen. Das Signal CEI02U-A1 wird sodann an den Freigabeanschluß des Decodierers 352 zusammen mit den Bits 14 und 15 an den Eingangsanschlüssen 2LA und 1LA angelegt. In Abhängigkeit von dem Binärwert der Bits 14 und 15 wird eines von 4 Subanweisungssignalen an den Ausgangsanschlüssen des Decodierers 352 erzeugt. Wenn die Bits 14 und 15 den Wert "0" aufweisen, was der Adressierung des hexadezimalen Speicherplatzes A8 in dem virtuellen Speicher entspricht, so wird eine Subanweisung CEDH2I-00 am Ausgangsanschluß 00 des Decodierers 352 erzeugt. Dieses Signal wird sodann dem Freigabeanschluß des Registers 360 zugeführt. Das Register 360 entspricht dem Hochwertigkeit-Datenregister 120 in Fig.1A. Das Signal CEI02U stellt dementsprechend ein Mittel zum Auslesen von Daten aus dem Hochwertigkeits-Datenregister 120 auf den I-Bus und auf den U-Bus dar. Da jedoch der Bustreiber 110 durch die Gegenwart des Signales CEMB2U gesperrt worden ist, wird der durch die Adresse 103 adressierte Speicherplatz nicht gelesen und es wird nur das Hochwertigkeits-Datenregister 120 gelesen. In gleicher Weise wird das Niedrigwertigkeits-Datenregister 121 gelesen, wenn die Bits 14 und 15 den Wert 01 aufweisen, wodurch der Ausgangsanschluß 01 des Decodierers 352 adressiert wird. Somit wird das Signal CEDL2I-00 erzeugt, welches an den Freigabeanschluß des Registers 361 in Fig. 4A angelegt wird. Es ist somit erkennbar, daß die Register 360 und 361 gemäß Fig. 4A den Registern 120 und 121 in Fig. 1A entsprechen.When reading data from the I-bus to the U-bus, it is necessary to block the data transmission from the M-bus to the U-bus. This allows the I-bus to control the data on the U-bus. This function is carried out by generating the signal CEI02U in the page division signal generator 105 . This signal is then fed to the enable terminal of decoder 351 in Fig. 4 and at the same time bits 9 and 10 of address 103 are applied to input terminals 2K and 1K as signals CADU09 and CADU10. These signals are subjected to a first decoding level to produce an output signal CEI02U-A1 at the output terminal 01 of the decoder 351 when the input bits 9 and 10 have the values "0" and "1", respectively. The CEI02U-A1 signal is then applied to the enable terminal of decoder 352 along with bits 14 and 15 on input terminals 2LA and 1LA. Depending on the binary value of bits 14 and 15, one of 4 subinstruction signals is generated at the output terminals of decoder 352 . If bits 14 and 15 have the value "0", which corresponds to the addressing of the hexadecimal memory location A8 in the virtual memory, a sub-instruction CEDH2I-00 is generated at the output terminal 00 of the decoder 352 . This signal is then fed to the enable terminal of register 360 . Register 360 corresponds to high quality data register 120 in FIG. 1A. The signal CEI02U accordingly represents a means for reading data from the high-quality data register 120 onto the I-bus and onto the U-bus. However, since the bus driver 110 has been blocked by the presence of the signal CEMB2U, it is blocked by the address 103 addressed memory location is not read and only the high-quality data register 120 is read. Similarly, low order data register 121 is read when bits 14 and 15 are 01, thereby addressing output terminal 01 of decoder 352 . Thus, the CEDL2I-00 signal is generated which is applied to the enable terminal of register 361 in Fig. 4A. It can thus be seen that registers 360 and 361 according to FIG. 4A correspond to registers 120 and 121 in FIG. 1A.

Der Bustreiber 110 in Fig. 1A entspricht dem Treiber 370 in Fig. 4B. Dies ist ein Zweirichtungstreiber und er kann entweder Daten von dem Speicherbus 109 zu dem U-Bus 112 oder umgekehrt treiben. Die Richtung der Datenübertragung wird durch das Signal CEMB2U gesteuert. Wenn das Signal vorliegt, so wird ein Datenfluß von dem Speicherbus 109 zu dem Mikroprozessorbus 112 gestattet und wenn das Signal nicht vorliegt, so wird eine Datenübertragung in der umgekehrten Richtung gestattet. Das Signal CEMB2U wird über die UND-Gatter 371 und 372 in Fig. 4 erzeugt. Diese UND-Gatter führen eine einfache UND-Verknüpfung verschiedener Signale durch, wobei diese Signale durch das Mikroprozessor-Lesesignal CUREAD, das Tastsignal CIPHZ2 und die Dialog-Freigabesignale CESR2U und CEIN2U vorgegeben sind. Aus diesen Signalen wird das Signal CEMB2U erzeugt, das sodann dem einen Eingangsanschluß des UND-Gatters 371 zugeführt wird. Es sei darauf verwiesen, daß bei einer Übertragungsoperation von dem I-Bus zu dem U-Bus, d. h. mit anderen Worten bei einer Leseoperation von einem Register an dem I-Bus zu dem U-Bus dieses Signal am Eingang des UND-Gatters 371 den hohen Pegel aufweist und daß das Signal CEMB2U den hohen Pegel besitzt, wenn auch die restlichen Signale den hohen Pegel aufweisen. Wenn dieses Signal mit hohem Pegel dem Eingangsanschluß des Treibers 370 in Fig. 4B zugeführt wird, so sperrt es den Informationsdurchgang über den Bustreiber 110 von dem I-Bus zu dem M-Bus.The bus driver 110 in Fig. 1A corresponds to the driver 370th in Figure 4B. This is a bidirectional driver and it can either drive data from the memory bus 109 to the U-bus 112 or vice versa. The direction of the data transfer is controlled by the signal CEMB2U. If the signal is present, data flow from memory bus 109 to microprocessor bus 112 is permitted, and if the signal is not present, data transfer in the opposite direction is permitted. The CEMB2U signal is generated via the AND gates 371 and 372 in FIG. 4. These AND gates perform a simple AND operation of various signals, these signals being predetermined by the microprocessor read signal CUREAD, the key signal CIPHZ2 and the dialog enable signals CESR2U and CEIN2U. From these signals, the signal CEMB2U is generated, which is then fed to the one input terminal of the AND gate 371 . It should be noted that in the case of a transfer operation from the I-bus to the U-bus, that is to say in other words in the case of a read operation from a register on the I-bus to the U-bus, this signal at the input of AND gate 371 has a high level and that the signal CEMB2U has the high level, even if the remaining signals have the high level. When this high level signal is applied to the input terminal of driver 370 in Fig. 4B, it blocks the passage of information through bus driver 110 from the I-bus to the M-bus.

Anhand der Fig. 1A, 1C und 4 sei nunmehr die Adressierung der Empfänger/Sender USART 116 und 117 beschrieben. Das Signal, welches diese Adressierung auslöst, ist durch das Signal CE$U2U gegeben, das als Bit 3 an dem Seitenunterteilungs-Signalgenerator 105 in Fig. 1A auftritt. Es sei Fig. 1C entnommen, daß die einzige Adresse, die den Wert "0" in der Bitposition 3 aufweist, die hexadezimale Adresse 88 ist. Wenn daher dieser Speicherplatz adressiert wird, so werden die Bits 0, 3, 4, und 7 aktiv. Wie zuvor erwähnt, wird durch das Bit 3 das Signal CE$U2U vorgegeben, welches dem Freigabeanschluß des Decodierers 350 A in Fig. 4 zugeführt wird und welches an der Decodierung des mittleren Bits der Kanalnummer CPGCNL teilnimmt. In Abhängigkeit von dem Wert dieses Bits wird eines von zwei Ausgangssignalen CE0U2U und CE1U2U an den Ausgangsanschlüssen 0 und 1 des Decodierers 350 A wirksam. Wenn das Signal CE0U2U aktiv ist, so wird der Empfänger/Sender USART 116 freigegeben, während bei aktivem Signal CE1U2U der Empfänger/Sender USART 117 freigegeben wird. Wenn Information in den freigegebenen Empfänger/Sender USART eingschrieben wird, so wird sie ebenfalls in den Teil des Speichers eingeschrieben, der durch die Adresse 103 adressiert ist. Diese Art der dualen Adressierung verwendet zwei virtuelle Adressen, die in die gleiche physikalische Adresse umgewandelt werden, um eine Duplikatadresse bzw. eine Schattenabbildung des tatsächlich adressierten physikalischen Gerätes zu bilden. Es wurde beispielsweise gezeigt, wie die hexadezimale Adresse 88 den Empfänger/Sender USART adressiert, indem ein Freigabesignal für den richtigen Empfänger/Sender USART gebildet wird. Gemäß Fig. 1C ist erkennbar, daß die hexadezimale Adresse C8 den gleichen Binärwert, wie die hexadezimale Adresse 88 aufweist, mit einer Ausnahme, die darin besteht, daß die Bitnummer 3 der hexadezimalen Adresse 88 den Wert "0" aufweist, während die Bitnummer 3 der hexadezimalen Adresse C8 den Wert "1" aufweist. Demgemäß ist ersichtlich, daß mit Ausnahme des dritten Bits die hexadezimale Adresse 88 die gleichen Signale wie die hexadezimale Adresse C8 liefert, so daß die Adresse C8 als Schatten des adressierten Empfänger/Senders USART betrachtet werden kann, wenn das Signal CESU2U durch die hexadezimale Adresse 88 geliefert wird. Es ist somit ersichtlich, daß die hexadezimale Adresse 88 bzw. die Dezimaladresse 17 die tatsächlichen USART-Daten adressiert, während die hexadezimale Adresse C8 bzw. die Dezimaladresse 25 deren Schatten adressiert. Wenn dementsprechend unter der hexadezimalen Adresse 88 eingeschrieben wird, so wird in den Empfänger/Sender USART eingeschrieben und es wird der geeignete Speicherplatz adressiert, der durch die hexadezimale Adresse C8 vorgegeben ist, was in Übereinstimmung mit den zuvor erläuterten Prinzipien geschieht. Dies sei an einem typischen Beispiel erläutert. Zunächst sei der Seitenunterteilungs- Signalgenerator 105 bezüglich des dezimalen Speicherplatzes 17 adressiert. Unter Verwendung des Adressenformates 103 ergibt sich die Adresse folgendermaßen: 0000000010001000. Es sei vermerkt, daß die Bits 8 bis 12, welche die tatsächliche Adressierung bewirken, die Dezimalnummer 17 im Binärformat enthalten. Gemäß Fig. 1C ist erkennbar, daß der dezimale Speicherplatz 17 aktive Bits in den Stellen 0, 3, 4 und 7 aufweist. Das Bit 0 erzeugt das Signal CPGAD8 in dem Seitenunterteilungs-Signalgenerator 105 und dieses Signal setzt im aktiven Zustand das Bit 7 auf den Wert "1". Das Bit 3 bildet das Signal, welches den Empfänger/Sender USART adressiert und welches an der Veränderung der virtuellen Adresse in eine reale Adresse nicht teilnimmt. Das Bit 4 des Seitenunterteilungs-Signalgenerators gibt das Signal CPGAD4 vor, welches in seinem akiven Zustand die Bits 4, 5 und 6 auf den Wert "1" setzt. Schließlich liefert das Bit 7 des Signalgenerators 105 im aktiven Zustand das Signal CPGLIN und setzt das hochwertige Bit und das mittelwertige Bit des Kanalregisters auf die Bitpositionen 8 und 9 der realen Adresse. Unter der Annahme im vorliegenden Beispiel, daß jede Bitpositionen den Weert "0" aufweisen, ergeben sich die Bits 8 und 9 mit dem Wert "0" und die endgültige reale Adresse besitzt den Wert: 000011110000000. Wenn nun die Dezimaladresse 25 adressiert wird, so nimmt das Adressenformat 103 folgende Gestalt an: 0000000011001000. Erneut kann Fig. 1C entnommen werden, daß die folgenden Signale aktiv sind: CPGAD8, CPGAD4 und CPGLIN. Da das Signal CE$U2U, das in dem vorangegangenen Beispiel ebenfalls vorhanden war, an der Veränderung der Adressen nicht teilnimmt, ist die endgültige reale Adresse gleich mit der zuvor angegebenen Adresse und weist folgende Form auf: 000011110000000. Es ist somit ersichtlich, daß die gleiche Adresse im Speicher adressiert wird. Wenn demgemäß externe Wartungs- oder Diagnoseoperationen erforderlich sind, so kann lediglich der Schattenspeicher adressiert werden und eine Adressierung des tatsächlichen Empfängers/Senders USART ist nicht erforderlich. Das Gleiche gilt im Prinzip für andere periphere Geräte oder Register, die ebenfalls an den I-Bus angeschlossen sind.The addressing of the receiver / transmitter USART 116 and 117 will now be described with reference to FIGS . 1A, 1C and 4. The signal that triggers this addressing is given by the signal CE $ U2U, which occurs as bit 3 on the page division signal generator 105 in FIG. 1A. It is to be removed Fig. 1C that the only address having the value "0" in bit position 3, the hexadecimal Address 88. If this memory location is therefore addressed, bits 0, 3, 4, and 7 become active. As previously mentioned, bit 3 specifies the signal CE $ U2U, which is fed to the enable terminal of the decoder 350 A in FIG. 4 and which participates in the decoding of the middle bit of the channel number CPGCNL. Depending on the value of this bit, one of two output signals CE0U2U and CE1U2U is effective at the output connections 0 and 1 of the 350 A decoder. If the signal CE0U2U is active, the receiver / transmitter USART 116 is released, while if the signal CE1U2U is active, the receiver / transmitter USART 117 is released. If information is written into the released receiver / transmitter USART, it is also written into the part of the memory which is addressed by the address 103 . This type of dual addressing uses two virtual addresses that are converted to the same physical address to form a duplicate address or a shadow image of the physical device actually addressed. For example, it has been shown how the hexadecimal address 88 addresses the receiver / transmitter USART by generating an enable signal for the correct receiver / transmitter USART. Referring to FIG. 1C is seen that the hexadecimal address C8 has the same binary value, such as hexadecimal address 88, with one exception, which is that the bit number 3 of the hexadecimal address 88 has the value "0", while the bit number 3 the hexadecimal address C8 has the value "1". Accordingly, it can be seen that, with the exception of the third bit, the hexadecimal address 88 supplies the same signals as the hexadecimal address C8, so that the address C8 can be regarded as the shadow of the addressed receiver / transmitter USART if the signal CESU2U through the hexadecimal address 88 is delivered. It can thus be seen that the hexadecimal address 88 or decimal address 17 addresses the actual USART data, while the hexadecimal address C8 or decimal address 25 addresses their shadows. Accordingly, when writing under the hexadecimal address 88, USART is written into the receiver / transmitter and the appropriate memory location is addressed, which is specified by the hexadecimal address C8, which is done in accordance with the principles explained above. This is explained using a typical example. First, the page division signal generator 105 is addressed with respect to the decimal storage space 17. Using the address format 103 , the address is as follows: 0000000010001000. It should be noted that bits 8 to 12, which effect the actual addressing, contain the decimal number 17 in binary format. Referring to FIG. 1C it is seen that the decimal space has 17 active bits in the positions 0, 3, 4 and 7. Bit 0 generates the signal CPGAD8 in the page division signal generator 105 and this signal sets the bit 7 to the value "1" in the active state. Bit 3 forms the signal which addresses the receiver / transmitter USART and which does not take part in changing the virtual address to a real address. Bit 4 of the page division signal generator specifies the signal CPGAD4, which in its active state sets bits 4, 5 and 6 to the value "1". Finally, bit 7 of signal generator 105 supplies the signal CPGLIN in the active state and sets the high-quality bit and the medium-value bit of the channel register to bit positions 8 and 9 of the real address. Assuming in the present example that each bit position has the value "0", bits 8 and 9 result in the value "0" and the final real address has the value: 000011110000000. If the decimal address 25 is now addressed, then Address format 103 takes the following form: 0000000011001000. Again, FIG. 1C shows that the following signals are active: CPGAD8, CPGAD4 and CPGLIN. Since the signal CE $ U2U, which was also present in the previous example, does not participate in the change of the addresses, the final real address is the same as the previously specified address and has the following form: 000011110000000. It can thus be seen that the same address is addressed in memory. Accordingly, if external maintenance or diagnostic operations are required, only the shadow memory can be addressed and addressing the actual receiver / transmitter USART is not necessary. The same applies in principle to other peripheral devices or registers that are also connected to the I-bus.

Diese Schattierungstechnik bei der Adressierung einer Hardwarekomponente wie beispielsweise dem Empfänger/Sender USART, des Kanalregisters oder des Kanal-Steuerblockregisters usw. ist besonders nützlich und spart Zykluszeit, wenn eine Unterbrechung auftritt, bei welcher der Inhalt eines Registers, beispielsweise des CCB-Registers ersetzt werden muß. In der herkömmlichen Ausführung wird der Inhalt des Registers ausgelesen und in einem temporären Speicher gespeichert und es wird die neue Information in das Register eingeschrieben. Wenn der ursprüngliche Inhalt des Registers zurückgeschrieben werden soll, so muß das Register zunächst erneut ausgelesen und der Inhalt in einem temporären Speicher gespeichert werden und sodann kann der ursprüngliche Inhalt zurückgeschrieben werden. Mit dem erfindungsgemäßen Schattierungskonzept muß bei einem Unterbrechungsmodus lediglich die neue Information in das Register eingeschrieben werden, da ein Schatten bzw. ein Abbild der ursprünglichen Information in dem Register in einem vorbestimmten Speicherplatz des Hauptspeichers gespeichert ist. Die alte Information bleibt in dem Schatten-Speicherplatz erhalten und wenn diese in das Register zurückgeschrieben werden soll, kann sie direkt aus dem Schatten- Speicherplatz ausgelesen werden. Da ungefähr 3 µs für eine Leseoperation und 4µs für eine Schreiboperation erforderlich sind, können während jedes vollständigen Zyklus insgesamt 4µs gespart werden.This shading technique when addressing a hardware component such as the receiver / transmitter USART, des Channel register or channel control block register, etc. is special useful and saves cycle time when there is an interruption occurs in which the content of a register, for example of the CCB register must be replaced. In the conventional version the content of the register is read out and in a temporary memory is saved and it becomes the new information registered in the register. If the original content of the register is to be written back, the register must first read out again and the content in a temporary Memory can be saved and then the original Content to be written back. With the invention The shading concept only has to be used in an interrupt mode the new information is written into the register,  there is a shadow or an image of the original information in the register in a predetermined memory location of the main memory is saved. The old information remains in that Receive shadow storage space and if this is in the register can be written back directly from the shadow Storage space can be read out. Since about 3 µs for a read operation and 4µs are required for a write operation, can save a total of 4µs during each complete cycle will.

Anhand der Fig. 5 und 6 sei im folgenden das bevorzugte Ausführungsbeispiel einer vektoriellen Unterbrechung beschrieben. Fig. 6B zeigt das Zeittaktdiagramm der Unterbrechungsfolge. Das Signal PTIME3 ist ein massewirksames TTL-Signal, das alle 500 ns durch die Zentraleinheit CPU 600 erzeugt wird und eine Impulsbreite von 100 ns aufweist. Dieses Signal wird in großem Umfang durch periphere Steuerungen des Systems 600 a benutzt, um Zustände auf den Bussen 620, 621 und 622 zu setzen und zurückzustellen und um als Daten-Tastimpuls zu wirken. Das Signal BINTR ist das Unterbrechungs-Anforderungssignal, das auf einer Offenkollektor-Treiberleitung auf den Bussen vorliegt und durch irgendeine periphere Steuerung des Systems an Masse geschaltet wird, wenn diese Steuerung eine Unterbrechung versucht. Das Signal PIOCT ist ebenfalls ein massewirksames TTL-Signal, das von der Zentraleinheit CPU 600 benutzt wird, um einer ausgewählten Steuerung anzuzeigen, daß codierte Zustände auf dem Bus vorliegen, welche die Busdialog-Steuerinformation zu der Steuerung übertragen. Das Datenbus-Gültigkeitssignal zeigt an, daß die Daten auf dem Bus stabilisiert sind. Das Signal PBYTE liefert, wenn es durch die Zentraleinheit CPU 600 aktiviert ist, das niedrigrangige Byte, d. h. die Bits 8-15 des adressierten Wortes an eine Steuerung wie beispielsweise den Mikroprozessor 601. Schließlich zeigen die Signale PBBUSY bzw. PROCED im aktiven Zustand an, daß entweder eine Steuerung belegt ist und die Anweisung zurückweist oder daß diese die letzte Unterbrechung angenommen hat, die auf dem Bus vorlag. The preferred embodiment of a vectorial interruption will be described below with reference to FIGS. 5 and 6. Fig. 6B shows the timing diagram of the interrupt sequence. The PTIME3 signal is a mass-effective TTL signal that is generated by the CPU 600 every 500 ns and has a pulse width of 100 ns. This signal is used extensively by system 600 a peripheral controls to set and reset states on buses 620, 621 and 622 and to act as a data strobe. The BINTR signal is the interrupt request signal that is on an open collector driver line on the buses and is grounded by some peripheral control of the system when that controller attempts to interrupt. The PIOCT signal is also a mass TTL signal that is used by the CPU 600 to indicate to a selected controller that there are coded states on the bus that transmit the bus dialog control information to the controller. The data bus valid signal indicates that the data on the bus is stabilized. When activated by the CPU 600 , the PBYTE signal provides the low-order byte, ie bits 8-15 of the addressed word, to a controller such as the microprocessor 601 . Finally, the PBBUSY or PROCED signals indicate in the active state that either a controller is busy and rejects the instruction or that it accepted the last interrupt that was on the bus.

Der hier beschriebene Mikroprozessor-Unterbrechungsmechanismus wird aktiviert, wenn die Zentraleinheit CPU 600 einen Ein/Ausgabe- Befehl auslöst, der über die Kanalnummer an eines der E/A-Geräte 620 bzw. 601 über den E/A-Bus gerichtet ist. Sollte der Befehl an diesen Mikroprozessor 601 gerichtet sein, so erkennt ein Decodierer die Kanalnummer und setzt die Mikroprozessor- Unterbrechungsanforderung. Die 16 Bit der Information auf dem Systembus während der Anweisungsauslösung (siehe Fig. 6B, Signal PIOCT) umfassen die 10 Bit-Kanalnummer und den Funktionscode a und b. Zu dem Zeitpunkt wo die Kanalnummer verglichen wird und wo festgestellt wird, daß es die Kanalnummer des Mikroprozessors ist, wird diese Information in dem Register 362 (Kanalnummer) und dem Register 311 (FCN) gespeichert und eine Unterbrechungsanforderung an den Mikroprozessor wird in einem Flip-Flop gespeichert. Da der Mikroprozessor diese Anforderung als eine maskierte Unterbrechung behandelt, kann seine Maßnahme verschoben werden. Die zeitliche Folge dieser Maßnahmen ist in Fig. 6B dargestellt.The microprocessor interrupt mechanism described here is activated when the CPU 600 triggers an I / O command that is directed to one of the I / O devices 620 and 601 via the I / O bus via the channel number. Should the command be directed to this microprocessor 601 , a decoder recognizes the channel number and sets the microprocessor interrupt request. The 16 bits of information on the system bus during instruction initiation (see Fig. 6B, signal PIOCT) include the 10 bit channel number and the function codes a and b. At the time the channel number is compared and it is determined that it is the microprocessor's channel number, this information is stored in register 362 (channel number) and register 311 (FCN) and an interrupt request to the microprocessor is made in a flip-flop. Flop saved. Since the microprocessor treats this request as a masked interrupt, its action can be postponed. The chronological sequence of these measures is shown in FIG. 6B.

Typischerweise adressiert der Mikroprozessor 601, wenn er einen Unterbrechungsbefehl empfängt, der Reihe nach hexadezimale Speicherplätze FFF8 und FFF9 im Hauptspeicher 108, in welchem das hochwertige Byte und das niedrigwertige Byte des Unterbrechungsvektors gespeichert sind. Es ist ersichtlich, daß die hexadezimale Adresse FFF8 bei binärer Notierung in dem Adressenformat 103 folgende Bitkombination aufweist: 1111111111111000. In gleicher Weise ergibt sich die hexadezimale Adresse FFF9 bei binärer Notierung folgendermaßen: 1111111111111001. Wenn demgemäß die Adresse FFF9 adressiert wird, nachdem das hochwertige Byte des Unterbrechungsregisters abgerufen worden ist, so werden die Bits mit dem Wert "1" der Adresse FFF9 wirksam. Diese Bitsignale werden in verschiedenen Kombinationen oder einzelnen den verschiedenen Hardware-Schaltkreiselementen in Fig. 3 zugeführt. Mit anderen Worten werden diese Adreßbits anstelle der hexadezimalen Adresse FFF9 im Hauptspeicher 608 A und 608B benutzt, um a) den Seitenunterteilungs-Adreßmechanismus zu sperren und b) den Decodierer 380 in der Zentraleinheit CPU freizugeben, welcher seinerseits c) das Register 311 freigibt, um eine vorbestimmte Basisadresse an den PROM/RAM 601 B zu liefern und der e) seinerseits die Adresse eines ausgewählten Funktionscodes innerhalb von 64 Funktionscodes enthält. Die geschieht, wenn die Bits 0, 1, 2, 13, 14 und 15 der zuvor erwähnten Adresse den Eingangsanschlüssen des Decodierers 380 gemäß Fig. 4C zugeführt werden. Wie zuvor erwähnt, weisen bei der Adressierung der hexadezimalen Adresse FFF9 die Bits 13 und 14 den Wert "0" und das Bit 15 den Wert "1" auf, wobei diese Bits den Freigabeanschlüssen des Decodierers 380 zugeführt werden. Darüber hinaus werden die Bits 0, 1 und 2 der Adresse, die alle den Wert "1" besitzen, den Anschlüssen 1, 2 und 4 des Decodierers 380 in Fig. 4C zugeführt. Da die Anschlüsse, denen die Bits 13 und 14 in Form der Signale CADU13 und CADU14 zugeführt werden, eine Invertierung aufweisen und die Information an den Anschlüssen 1, 2 und 4 des Decodierers 380 jeweils den Wert "1" aufweist, ergibt sich ein aktives Signal CADUH7 an Ausgangsanschluß 7 des Decodierers 380. Dies ist der Fall, da der Binärwert 111 als Dezimalwert 7 decodiert wird. Das Signal CADUH7 wird sodann dem Freigabeanschluß F des Registers 311 in Fig. 3 zugeführt und es wird ferner gleichzeitig an den Freigabe/Sperr-Eingangsanschluß der Multiplexer 301, 302 und 303 und an das UND-Gatter 311 A angelegt, wodurch der Seitenunterteilungs- Adressiermechanismus gesperrt wird. Anstatt des Zugriffs auf den hexadezimalen Speicherplatz FFF9 wird dementsprechend das Register 311 freigegeben und es liefert die niedrigwertigen Bits 10 bis 15 an seinen Ausgangsanschlüssen. Diese Bits bilden eine Adresse für die Adressierung des Speichers RAM bzw. des Speichers PROM 601 B. Der Inhalt an der Adresse des Speichers 601 B wird in der niedrigwertigen Byteposition des Programmzählers 601 D abgelegt. Die Information in dem Register 311 stellt die Funktionscodeinformation gemäß Fig. 5B dar, die durch die Zentraleinheit CPU abgeliefert worden ist, wenn eine Unterbrechung ausgelöst wurde (siehe Signal PBYTE in Fig. 6B). Da der Seitenunterteilungs-Adressiermechanismus gesperrt worden ist und da das Signal CADUH7 erneut die Adressierung des hexadezimalen Speicherplatzes FFF9 an das Register 311 richtet und da das Signal CADUH7 zusätzlich das Register 311 freigibt, werden die niedrigwertigen Bits 10 bis 15 des Registers 311 benutzt, um auf Information in dem Speicher 601 B zuzugreifen, die in der niedrigwertigen Byteposition des Programmzählers 601 D abgelegt wird. Da es 6 Bits in dem niedrigwertigen Byte des Funktionscodes gibt, können hiermit bis zu 64 Speicherplätze in dem Speicher RAM bzw. PROM 601 B adressiert werden. Jeder dieser Speicherplätze enthält das niedrigwertige Byte des Unterbrechungsvektors, dem sein Funktionscode zugeordnet ist, welcher bei Ergänzung die Unterbrechungsadresse umfaßt.Typically, when the microprocessor 601 receives an interrupt command, it sequentially addresses hexadecimal locations FFF8 and FFF9 in main memory 108 , in which the high and low bytes of the interrupt vector are stored. It can be seen that the hexadecimal address FFF8 with binary notation in the address format 103 has the following bit combination: 1111111111111000. In the same way, the hexadecimal address FFF9 with binary notation results as follows: 1111111111111001. If the address FFF9 is accordingly addressed after the high-quality byte of the interrupt register has been fetched, the bits with the value "1" of the address FFF9 take effect. These bit signals are supplied in various combinations or individually to the various hardware circuit elements in FIG. 3. In other words, these address bits are used instead of the hexadecimal address FFF9 in the main memory 608 A and 608 B to a) disable the page division address mechanism and b) enable the decoder 380 in the CPU, which in turn c) releases the register 311 , to deliver a predetermined base address to the PROM / RAM 601 B and which e) in turn contains the address of a selected function code within 64 function codes. This happens when bits 0, 1, 2, 13, 14 and 15 of the aforementioned address are applied to the input ports of decoder 380 as shown in FIG. 4C. As previously mentioned, when addressing the hexadecimal address FFF9, bits 13 and 14 have a value of "0" and bit 15 have a value of "1", these bits being fed to the decoder 380 enable ports. In addition, bits 0, 1 and 2 of the address, all of which have the value "1", are applied to terminals 1, 2 and 4 of decoder 380 in Fig. 4C. Since the connections to which bits 13 and 14 are supplied in the form of signals CADU13 and CADU14 have an inversion and the information at connections 1, 2 and 4 of decoder 380 each has the value "1", an active signal results CADUH7 at output terminal 7 of decoder 380. This is the case since binary value 111 is decoded as decimal value 7. The CADUH7 signal is then applied to the enable terminal F of the register 311 in Fig. 3 and is also applied simultaneously to the enable / disable input terminal of the multiplexers 301, 302 and 303 and to the AND gate 311 A , thereby causing the page division addressing mechanism is blocked. Instead of accessing the hexadecimal memory location FFF9, the register 311 is released accordingly and it supplies the low-order bits 10 to 15 at its output connections. These bits form an address for addressing the RAM or the PROM 601 B memory. The content at the address of the memory 601 B is stored in the least significant byte position of the program counter 601 D. The information in the register 311 represents the function code information according to FIG. 5B, which was delivered by the central processing unit CPU when an interruption was triggered (see signal PBYTE in FIG. 6B). Since the page division addressing mechanism has been disabled and since the CADUH7 signal again addresses the hexadecimal memory location FFF9 to the register 311 and because the CADUH7 signal also enables the register 311 , the least significant bits 10 to 15 of the register 311 are used to open Access information in the memory 601 B , which is stored in the low byte position of the program counter 601 D. Since there are 6 bits in the least significant byte of the function code, up to 64 memory locations in the RAM or PROM 601 B can be addressed. Each of these memory locations contains the low-order byte of the interrupt vector, to which its function code is assigned, which, when supplemented, includes the interrupt address.

In Abhängigkeit von dem Informationsinhalt des Funktionscodes wird dementsprechend eine Unterbrechung erzielt, die an irgendeinem von 64 verschiedenen Speicherplätzen in dem Speicher PROM 601 B starten kann und dementsprechend bis zu 64 verschiedene Unterbrechungsoperationen ausführen kann. Darüber hinaus erhalten der Programmzähler 601 D bzw. andere Register ihre Information von einem Schattenspeicherplatz und dementsprechend ist es nicht erforderlich, zunächst die alte Information zu entladen und sodann zu sichern und sodann die neue Information zu laden und den gleichen Prozeß erneut zu wiederholen, wenn die Unterbrechungsschleife verlassen wird. Es sei ferner vermerkt, daß die normale Unterbrechungsprozedur des Mikroprozessors, welche den Mikroprozessor an die Adresse FFF9 verweist, umgangen wird und eine Adresse von 64 eindeutigen Adressen automatisch durch den Funktionscode geliefert wird, wodurch eine wirksame Beschneidung auf 64 verschiedene Vektoren oder Routinen erzielt wird.Depending on the information content of the function code, an interrupt is accordingly achieved which can start in any of 64 different storage locations in the PROM 601 B memory and can accordingly carry out up to 64 different interrupt operations. In addition, the program counter 601 D or other registers receive their information from a shadow memory location and accordingly it is not necessary to first unload and then save the old information and then load the new information and repeat the same process again if the Interrupt loop is exited. It should also be noted that the normal microprocessor interrupt procedure which directs the microprocessor to address FFF9 is bypassed and an address of 64 unique addresses is automatically provided by the function code, thereby effectively clipping to 64 different vectors or routines.

Anhand der Fig. 4 und 6B sei vermerkt, daß bei einer Aktivierung des Signales CADUH7 dieses zusammen mit einem Phasensignal CTPHZD dem UND-Gatter 358 A zugeführt wird, wodurch das Signal CEI2CN ausgelöst wird. Darüber hinaus wird das Signal CADUH7 mit dem Signal CECN2I in dem Gatter 358 B einer Oder-Verknüpfung unterzogen, um das Signal CECN2I auszulösen. Das Signal CEI2CN wird dem Anschluß C des Kanalregisters 309 in Fig. 3 zugeführt, das wie zuvor erläutert, dem Kanalregister 115 A in Fig. 1A entspricht. In gleicher wird das Signal CECN2I benutzt, um den Inhalt des Kanalnummernregisters 122 in Fig. 1A auf den I-Bus oder umgekehrt zu takten.Referring to Figs. 4 and 6B should be noted that this AND gate 358 A is supplied with an activation of the signal CADUH7 together with a phase signal CTPHZD, whereby the signal CEI2CN triggered. In addition, the CADUH7 signal is ORed with the CECN2I signal in gate 358 B to trigger the CECN2I signal. The signal CEI2CN is applied to the terminal C of the channel register 309 in FIG. 3, which, as previously explained, corresponds to the channel register 115 A in FIG. 1A. In the same way, the signal CECN2I is used to clock the content of the channel number register 122 in FIG. 1A on the I-bus or vice versa.

Die Vektorunterbrechung erledigt dementsprechend zwei Dinge: Zunächst adressiert sie automatisch irgendeinen von 64 Speicherplätzen gemäß einem eindeutigen Funktionscode und sodann lädt sie das Hardware-Kanalnummerregister mit der Kanalnummer, die für die Behandlung erforderlich ist. Das Kanal-Steuerblockregister CCB-115 kann ebenfalls bei einer Unterbrechung verändert werden, was von dem Funktionscode abhängt.The vector break accordingly does two things: First, it automatically addresses any of 64 memory locations according to a unique function code and then loads the hardware channel number register with the channel number that is required for treatment. The Channel control block register CCB-115 can also be used in one Interruption can be changed, what of the function code depends.

Claims (4)

1. Datenverarbeitungsanlage mit wenigstens einem Mikroprozessor, mehreren Adressenmodifiktationsregistern und einem Speicher, dessen Speicherplätze durch reale Adressen adressierbar sind und der durch den Mikroprozessor ausführbare Befehlsworte enthält, wobei einige Befehlsworte vom kurzen Typ sind, d. h. kürzere Adreßfelder als andere Befehlsworte aufweisen und der Adressierung einer ersten Anzahl von Speicherplätzen dienen, welche geringer als die Gesamtanzahl der Speicherplätze ist, gekennzeichnet durch eine Einrichtung zur Erweiterung der durch die Befehlsworte vom kurzen Typ vorgegebenen Adressiermöglichkeiten, welche in Kombination folgende Merkmale aufweist:
  • a) eine Einrichtung (104) zur Feststellung, ob ein gerade von dem Mikroprozessor (101) bearbeitetes Befehlswort vom kurzen Typ ist;
  • b) eine durch diese Feststelleinrichtung (104) aktivierbare Signalerzeugungseinrichtung (105), die beim Vorliegen eines Befehlswortes vom kurzen Typ eine vorbestimmte Anzahl von Steuersignalen (CPGLIN bis CPGAD8) aus einem Teil des kurzen Adreßfeldes erzeugt; und
  • c) eine an die Signalerzeugungseinrichtung (105) und die Adressenmodifikationsregister (114, 115) angeschlossene Einrichtung (106, 107) zur Ergänzung des Adreßfeldes vom kurzen Typ in reale Adressen zwecks Adressierung des Speichers (108), wobei die durch diese Einrichtung gebildete Anzahl von Adressen größer als die erste Anzahl von Speicherplätzen ist.
1. Data processing system with at least one microprocessor, a plurality of address modification registers and a memory, the memory locations of which can be addressed by real addresses and which contains command words that can be executed by the microprocessor, some command words being of short type, ie having shorter address fields than other command words and addressing a first one Serve the number of memory locations, which is less than the total number of memory locations, characterized by a device for expanding the addressing options specified by the short-word command words, which in combination has the following features:
  • a) means ( 104 ) for determining whether a command word currently being processed by the microprocessor ( 101 ) is of the short type;
  • b) a signal generating device ( 105 ) which can be activated by this determining device ( 104 ) and which generates a predetermined number of control signals (CPGLIN to CPGAD8) from a part of the short address field when a short-word command word is present; and
  • c) a device ( 106, 107 ) connected to the signal generating device ( 105 ) and the address modification registers ( 114, 115 ) for supplementing the address field of the short type into real addresses for addressing the memory ( 108 ), the number of which is formed by this device Addresses is greater than the first number of memory locations.
2. Datenverarbeitungsanlage nach Anspruch 1, gekennzeichnet durch
eine erste Einrichtung (103) zur Erzeugung einer vorbestimmten Anzahl von virtuellen Adressen (in Bits 8-12 im b-Byte), aufgrund derer die Signalerzeugungseinrichtung (105) bei ihrer Aktivierung die vorbestimmten Steuersignale (CPGLIN bis CPGAD8) erzeugt, welche im gesetzten Zustand mehrere vorbestimmte Unterzustände vorgeben, und
eine Gattereinrichtung (301-308), die an die Steuersignale (CPGLIN bis CPGAD8) und die Adressenmodifikationsregister (114, 115) angeschlossen ist, um reale Adressen zu bilden, wobei die Gattereinrichtung (301-308) im ungesetzten Zustand der Steuersignale (CPGLIN bis CPGAD8) eine reale Adresse entsprechend einer ersten virtuellen Adresse bildet, und im gesetzten Zustand der Steuersignale (CPGLIN bis CPGAD8) aufgrund eines vorbestimmten Unterzustandes eine reale Adresse aus Bits der Adressenmodifikationsdaten und aus Bits einer zweiten virtuellen Adresse bildet, wobei die Anzahl der Bits der Adressenmodifikationsdaten und die Anzahl der Bits der benutzten zweiten virtuellen Adresse durch den ausgewählten Unterzustand der Steuersignale bestimmt wird.
2. Data processing system according to claim 1, characterized by
a first device ( 103 ) for generating a predetermined number of virtual addresses (in bits 8-12 in the b-byte), on the basis of which the signal generating device ( 105 ) generates the predetermined control signals (CPGLIN to CPGAD8) when activated, which in the set state specify multiple predetermined substates, and
a gate device ( 301-308 ) which is connected to the control signals (CPGLIN to CPGAD8) and the address modification registers ( 114, 115 ) to form real addresses, the gate device ( 301-308 ) in the non-set state of the control signals (CPGLIN to CPGAD8) forms a real address corresponding to a first virtual address, and in the set state of the control signals (CPGLIN to CPGAD8) forms a real address from bits of the address modification data and from bits of a second virtual address based on a predetermined substate, the number of bits of the address modification data and the number of bits of the second virtual address used is determined by the selected substate of the control signals.
3. Datenverarbeitungsanlage nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Signalerzeugungseinrichtung (105) durch einen programmierbaren Festwertspeicher (PROM) vorgegeben ist.3. Data processing system according to claim 1 or 2, characterized in that the signal generating device ( 105 ) is predetermined by a programmable read-only memory (PROM). 4. Datenverarbeitungsanlage nach Anspruch 2, dadurch gekennzeichnet, daß die Gattereinrichtung Multiplexer (301-304) und Treiber (305-308) umfaßt.4. Data processing system according to claim 2, characterized in that the gate device comprises multiplexers ( 301-304 ) and drivers ( 305-308 ).
DE19792952314 1979-01-02 1979-12-24 ADDRESSING DEVICE FOR A COMPUTER SYSTEM Granted DE2952314A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US30479A 1979-01-02 1979-01-02
US06/000,463 US4290104A (en) 1979-01-02 1979-01-02 Computer system having a paging apparatus for mapping virtual addresses to real addresses for a memory of a multiline communications controller
US06/000,314 US4257101A (en) 1979-01-02 1979-01-02 Hardware in a computer system for maintenance by a remote computer system

Publications (2)

Publication Number Publication Date
DE2952314A1 DE2952314A1 (en) 1980-07-17
DE2952314C2 true DE2952314C2 (en) 1987-11-05

Family

ID=27356644

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19792952314 Granted DE2952314A1 (en) 1979-01-02 1979-12-24 ADDRESSING DEVICE FOR A COMPUTER SYSTEM

Country Status (3)

Country Link
DE (1) DE2952314A1 (en)
FR (1) FR2445988A1 (en)
GB (1) GB2057729B (en)

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1160222B (en) * 1962-01-04 1963-12-27 Siemens Ag Circuit arrangement for address modification in a program-controlled digital calculating machine
US3251041A (en) * 1962-04-17 1966-05-10 Melpar Inc Computer memory system
US3267462A (en) * 1963-08-13 1966-08-16 Keltec Ind Inc Transponder incorporating negative resistance amplifiers and multiport directional couplers
US3461433A (en) * 1967-01-27 1969-08-12 Sperry Rand Corp Relative addressing system for memories
FR1567705A (en) * 1967-06-09 1969-04-08
US3764996A (en) * 1971-12-23 1973-10-09 Ibm Storage control and address translation
US4010451A (en) * 1972-10-03 1977-03-01 National Research Development Corporation Data structure processor
FR122199A (en) * 1973-12-17
US3909798A (en) * 1974-01-25 1975-09-30 Raytheon Co Virtual addressing method and apparatus
US3914747A (en) * 1974-02-26 1975-10-21 Periphonics Corp Memory having non-fixed relationships between addresses and storage locations
US3976978A (en) * 1975-03-26 1976-08-24 Honeywell Information Systems, Inc. Method of generating addresses to a paged memory
US4057847A (en) * 1976-06-14 1977-11-08 Sperry Rand Corporation Remote controlled test interface unit

Also Published As

Publication number Publication date
FR2445988A1 (en) 1980-08-01
GB2057729A (en) 1981-04-01
FR2445988B1 (en) 1985-04-19
DE2952314A1 (en) 1980-07-17
GB2057729B (en) 1983-08-10

Similar Documents

Publication Publication Date Title
DE2448212C2 (en) Asynchronous bus line for communication with self-determined priority between mother computer devices and daughter computer devices
DE2756890C2 (en) Circuit arrangement for controlling the data transmission between a central processing unit and a plurality of peripheral units
DE2635592A1 (en) MULTIPROCESSOR POLLING SYSTEM
DE3232600C2 (en)
DE2719635A1 (en) ARRANGEMENT FOR AN EXTENSION OF A MICROPROGRAM CONTROL OF A DATA PROCESSING SYSTEM
CH656729A5 (en) INTERFACE CIRCUIT ARRANGEMENT FOR CONNECTING A PROCESSOR TO A MESSAGE CHANNEL.
DE3146356A1 (en) DATA PROCESSING SYSTEM
DE2363846C2 (en) Data processing system with a circuit arrangement for controlling the data transfer between the main memory and several peripheral devices
DE1774052B1 (en) COMPUTER
DE2813080A1 (en) DEVICE FOR MEMORY ADDRESSING
DE3013070C2 (en) Circuit arrangement for processing request signals brought in from several peripheral devices within a data processing device
EP0185260B1 (en) Interface for direct information transfer
DE2900586C2 (en) Arrangement for decoding code words of variable length
DE2935101C2 (en)
DE2218630B2 (en) Circuit arrangement for controlling interrupt signals in data processing systems
DE1499191B2 (en) ELECTRONIC DEVICE FOR A DATA PROCESSING SYSTEM
DE2522343B2 (en) ARRANGEMENT FOR CONTROLLING PROCEDURES
DE2558417A1 (en) DATA PROCESSING SYSTEM
DE1294429B (en) Circuit arrangement for data transmission between several outstations of a data processing system and the main memory of the central processing unit
DE2749884C2 (en)
DE2952314C2 (en)
DE1549422B2 (en) DATA PROCESSING SYSTEM WITH VARIABLE PRE-SELECTABLE WORD LENGTH
DE2630711A1 (en) MEMORY CONTROL SYSTEM
DE2606295A1 (en) PROCEDURE FOR EXECUTING A DATA TRANSFER BETWEEN PERIPHERAL UNITS AND A WORKING MEMORY VIA A MULTIPLEX CHANNEL
DE3030887C2 (en) Method for establishing connections from subscriber stations or transmission lines connected to a data switching system to signal converters

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G06F 9/36

D2 Grant after examination
8327 Change in the person/name/address of the patent owner

Owner name: HONEYWELL BULL INC., MINNEAPOLIS, MINN., US

8363 Opposition against the patent
8365 Fully valid after opposition proceedings
8339 Ceased/non-payment of the annual fee