DE3247083A1 - MULTI-PROCESSOR SYSTEM - Google Patents
MULTI-PROCESSOR SYSTEMInfo
- Publication number
- DE3247083A1 DE3247083A1 DE19823247083 DE3247083A DE3247083A1 DE 3247083 A1 DE3247083 A1 DE 3247083A1 DE 19823247083 DE19823247083 DE 19823247083 DE 3247083 A DE3247083 A DE 3247083A DE 3247083 A1 DE3247083 A1 DE 3247083A1
- Authority
- DE
- Germany
- Prior art keywords
- memory
- data
- address
- unit
- input
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0615—Address space extension
- G06F12/0623—Address space extension for memory modules
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Multi Processors (AREA)
- Information Transfer Systems (AREA)
- Small-Scale Networks (AREA)
Description
Die Erfindung betrifft ein Mehrprozessorsystem naeh dem Oberbegriff des Patentanspruchs 1.The invention relates to a multiprocessor system according to the preamble of claim 1.
Datenverarbeitungssysteme mit einem einzigen Prozessor, der oft auch als Zentraleinheit bezeichnet wird, sind durch die Größe und Arbeitsgeschwindigkeit der Zentraleinheit selbst begrenzt. Um die Leistungsfähigkeit eines Systemes zu erhöhen, hat man anstelle einer Vergrößerung oder Erhöhung der Arbeitsgeschwindigkeit der einzelnen Zentraleinheit einen oder mehrere Prozessoren hinzugefügt. Systeme mit mehr als einem Prozessor werden oft als Mehrprozessorsysteme bezeichnet. Die Architektur eines solchen Systems kann verschiedene Formen haben.Data processing systems with a single processor, which is often also referred to as a central processing unit, are limited by the size and speed of operation of the central unit itself. To the efficiency of a The system has to be increased instead of an enlargement or increase of the working speed of the individual Central unit added one or more processors. Systems with more than one processor often will referred to as multiprocessor systems. The architecture of such a system can take various forms.
Eine Möglichkeit besteht darin, daß man jede zusätzliche Zentraleinheit mit dem Systembus koppelt, der die Hauptzentraleinheit mit Speichern und Ein-Ausgabevorrichtungen verbindet. Hiermit ist jedoch ein Nachteil verbunden, denn jede Zentraleinheit muß'mit den anderen Zentraleinheiten beim Zugriff zum Systembus zwecks Datenaustausch mit dem Systemspeicher oder einer Ein-Ausgabevorrichtung konkurrenzfähig sein. Ein weiterer Nachteil besteht darin, daß bei diesem Prinzip allgemein die Komplexität der Programme erhöht wird. Beide Nachteile können die Arbeitsgeschwindigkeit einer jeden Zentraleinheit herabsetzen. Sie wirken sich besonders schwerwiegend bei bestimmten Realzeitanwendungen wie beispielsweise Nachrichtenübertragungssteuerungen aus, bei denen oft große Datenmengen zwischen Ein /Ausgabevorrichtungen ausgetauscht und verarbeitet werden und größere Verzögerungen durch die Belegung des Systembus nicht zulässig sind.One option is to have each additional The central unit connects to the system bus, which connects the main central unit with memories and input / output devices connects. However, this is associated with a disadvantage, because each central unit must 'mit'mit the other central units Competitive in accessing the system bus for data exchange with the system memory or an input-output device be. Another disadvantage is that this principle generally increases the complexity of the programs is increased. Both disadvantages can reduce the speed of operation of any central processing unit. they seem are particularly severe in certain real-time applications, such as messaging controls, which often have large amounts of data between I / O devices are exchanged and processed and there are major delays due to occupancy of the system bus are not permitted.
Eine Modifikation dieser Architektur besteht darin, jedeA modification of this architecture is to use each
zusätzliche Zentraleinheit mit einer Ein/Ausgabevorrichtung zu kombinieren und dadurch einen Einzelmodul zu bilden. Jeder Modul kann eine Logik für direkten Speicherzugriff und in einigen Fällen auch einen Arbeitsspeicher für die Zentraleinheit enthalten. Dadurch kann die Busbelegung teilweise verringert werden, da Datenübertragungen zwischen der Ein-Ausgabevorrichtung und der Zentraleinheit des Moduls nicht über den Systembus laufen müssen. Auch hierbei können jedoch noch beachtliche Verzögerungen infolge der Busbelegung auftreten, die bei der Programmierung .der Zentraleinheit in Kauf zu nehmen sind. Außerdem vergrößert jeder zusätzliche Modul aus Zentraleinheit und Ein/Ausgabevorrichtung die Komplexität der Programmierung.to combine an additional central unit with an input / output device and thus a single module to build. Each module can have a logic for direct memory access and in some cases also a working memory for the central unit included. This can partially reduce the bus occupancy, since Data transfers between the input / output device and the central processing unit of the module do not take place via the System bus must run. Here too, however, there can still be considerable delays due to bus occupancy occur that have to be accepted when programming the central unit. Plus, each additional enlarges A module made up of a central processing unit and an input / output device reduces the complexity of the programming.
Um die Busbelegung zu verringern, wurden bereits verschiedene Verbindungsprinzipien für Prozessoren vorgeschlagen. Beispielsweise beschreibt die US-PS 3 551 ein System, bei dem jeder Prozessor seinen eigenen seriellen Datenbus hat, um ihn mit jeder Vorrichtung zu verbinden, zu der Daten übertragen werden sollen. Ferner zeigt die US-PS 3 815 095 ein System, bei dem jeder Prozessor einen Multiplexer enthält,' der wahlweise Daten von mehreren Datenbussen"aufnimmt, wobei jeder Datenbus mit dem Ausgang eines Prozessors verbunden ist. Bei beiden Systemen sind die Probleme der Busbelegung verringert, da jeder Prozessor seinen eigenen Ausgangsbus hat, der mit jedem Datenzielpunkt verbunden ist. Die physikalischen Verbindungen zwischen den Prozessoren sind jedoch durch die große Zahl von Datenbussen relativ kompliziert. Außerdem eignet sich dieses System nicht leicht für die Hinzufügung weiterer Prozessoren, da der Datenbus eines jeden Prozessors mit jeder Vorrichtung verbunden sein muß, mit der er in Verbindung treten soll.In order to reduce the bus occupancy, various Proposed connection principles for processors. For example, U.S. Patent 3,551 describes a system in which each processor has its own serial data bus to connect to each device to which the data is to be transferred. Further, U.S. Patent 3,815,095 shows a system in which each processor contains a multiplexer 'which selectively receives data from multiple data buses', each data bus is connected to the output of a processor. With both systems the problems of bus occupancy are reduced, since each processor has its own output bus connected to each data destination. the however, physical connections between the processors are relative due to the large number of data buses complicated. In addition, this system does not lend itself easily to adding more processors as the Each processor's data bus must be connected to each device with which it is to communicate.
Eine weitere Möglichkeit zur Verbesserung der Datenübertragung zwischen mehreren Prozessoren besteht darin, jeden Prozessor mit einem gemeinsamen (oder Doppelkanal-) Speicher zu versehen, über den alle Datenübertragungen zu anderen Prozessoren innerhalb des Systems geleitet werden. Der Vorteil einer solchen Architektur besteht darin, daß nach der Verarbeitung eines Teils der anstehenden Daten.durch den Prozessor diese Daten in dem gemeinsamen Speicher zur Übertragung zu einem anderen Prozessor abgelegt werden können. Der Quellenprozessor kann dann andere Aufgaben erfüllen, und es tritt keine Verzögerung dadurch ein,daß er auf den Bus warten muß, bis dieser zur Übertragung von Daten verfügbar ist. Eine solche Architektur beschreibt die US-PS 4 149 242. Dieses System hat auch einen separaten Datenbus, der jeden Prozessormodul mit dem Prozessormodul verbindet, mit dem er kommunizieren soll .Another way to improve data transfer between multiple processors is to have each Provide processor with a common (or dual channel) memory through which all data transfers routed to other processors within the system. The advantage of such an architecture is there in that after the processing of part of the pending data by the processor this data in the common Memory can be stored for transmission to another processor. The source processor can then perform other tasks and there is no delay in having to wait for the bus until this is available for the transmission of data. Such an architecture is described in US Pat. No. 4,149,242. This system also has a separate data bus that connects each processor module to the processor module to whom he should communicate.
Um die Komplexität mehrerer Datenbusse zur Verbindung der Prozessoren zu vermeiden, können die gemeinsamen Speicher der Prozessormodule durch einen einzelnen Systembus untereinander verbunden sein. Datenübertragungen zwischen solchen Speichern können mit einem zusätzlichen Rechner oder einer zentralen Datenübertragungseinheit durchgeführt werden, die mit dem Systembus gekoppelt ist. Eine solche Architektur beschreibt die US-PS 4 181 936 sowie ein Aufsatz mit dem Titel "Dual Port RAM Hikes Throughput In Input/Output Controller Board" in der Zeitschrift Electonics vom 17. August 1978.To reduce the complexity of multiple data buses to connect the To avoid processors, the shared memory of the processor modules can be interconnected by a single system bus be connected. Data transfers between such memories can be made with an additional computer or a central data transmission unit, which is coupled to the system bus. Such Architecture is described in US Pat. No. 4,181,936 and an article entitled "Dual Port RAM Hikes Throughput In Input / Output Controller Board "in Electonics magazine August 17, 1978.
Bei dem in diesem Aufsatz beschriebenen System hat jeder Prozessor einen Ein/Ausgabeabschnitt und einen gemeinsamen Speicher, wodurch ein Prozessormodul gebildet wird. Alle Datenübertragungen zwischen dem Prozessor und dem SystemIn the system described in this paper, each processor has an input / output section and a common one Memory, which forms a processor module. All data transfers between the processor and the system
COPYCOPY
- ι.- ι.
laufen über den gemeinsamen Speicher des Moduls. Jeder gemeinsame Speicher ist einem Abschnitt des Adressraums des Systems zugeordnet, der durch alle mit dem Zusatzrechner oder einer anderen zentralen Datenübertragungseinheit über den Systembus adressierbaren Speicherplätzen definiert ist. Um Daten von einem gemeinsamen Speicher eines Prozessors zu einem anderen zu übertragen, adressiert der Zusatzrechner den Quellenspeicher und liest die Daten. Der Zielspeicher wird dann zum Schreiben der Daten adressiert, Da jeder Prozessormodul für das System lediglich als ein Speicherblock erscheint, können weitere Module hinzugefügt werden, wobei der Systembus und die Programmierung des Systems minimal belastet wird. Ein Nachteil dieser Möglichkeit besteht jedoch darin, daß jeder gemeinsame Speicher einen bestimmten Abschnitt des Adressraums des Systems besetzt. Somit ist die Anzahl der dem Systembus hinzuzufügenden Module durch den Gesamtadressraum der zusätzlichen Zentraleinheit begrenzt. Hat die zusätzliche Zentraleinheit beispielsweise einen Adressraum von 64 K (d.h. 65536 adressierbare Speicherplätze) und beansprucht jeder Block eines gemeinsamen Speichers 8 K (8192 Adressen) dieses Adressraums, so kann das System nur 8 derartige Module aufnehmen, und der zusätzlichen Zentraleinheit verbleibt kein Adressraum zur Adressierung anderer Vorrichtungen wie beispielsweise des Zusatzspeichers. Da ferner jeder gemeinsame Speicher einen einheitlichen Adressenblock aufweist, kann die zusätzliche Zentraleinheit nur jeweils einen gemeinsamen Speicher zu einem Zeitpunkt adressieren. Für viele Anwendungen ist es jedoch wünschenswert, Daten gleichzeitig in mehreren .Prozessoren zu schreiben.run via the shared memory of the module. Everyone common Memory is allocated to a portion of the system's address space that is shared by all with the auxiliary computer or another central data transmission unit defined via the system bus addressable memory locations is. In order to transfer data from a shared memory of one processor to another, the addresses The auxiliary computer stores the source and reads the data. The target memory is then addressed to write the data, Since each processor module appears to the system as just a block of memory, additional modules can be added the system bus and the programming of the system are minimally loaded. A disadvantage of this option however, each shared memory has a certain portion of the address space of the system occupied. Thus, the number of modules to be added to the system bus is determined by the total address space of the additional Central unit limited. For example, if the additional central unit has an address space of 64 K (i.e. 65536 addressable memory locations) and each block of a shared memory occupies 8 K (8192 addresses) of this Address space, the system can only accommodate 8 such modules, and the additional central unit remains no address space for addressing other devices such as additional memory. Since furthermore everyone shared memory has a uniform address block, the additional central unit can only address one shared memory at a time. For many applications, however, it is desirable to write data to several processors at the same time.
Es ist Aufgabe der Erfindung, ein verbessertes Mehrprozessorsystem anzugeben",- das mit einer großen Anzahl ein-It is an object of the invention to provide an improved multiprocessor system to specify ", - that with a large number of
COPYCOPY
zelner Prozessoren arbeiten kann und insbesondere das gleichzeitige Schreiben von Daten in einen oder mehrere gemeinsame Speicher ermöglicht. Ferner soll durch eine verbesserte Übertragungsteuerung das Hinzufügen weiterer Prozessormodule erleichtert werden.Individual processors can work and in particular the simultaneous writing of data in one or more shared memory enables. Furthermore, through an improved transmission control, the addition of further Processor modules are facilitated.
Diese Aufgabe wird durch die Merkmale des Patentanspruchs gelöst. Vorteilhafte Weiterbildungen sind Gegenstand der Unteransprüche.This problem is solved by the features of the patent claim. Advantageous further developments are the subject of Subclaims.
Bei einem Mehrprozessorsystem nach der Erfindung ist eine Vielzahl von Prozessormodulen mit einem Systembus verbunden. Jeder Prozessormodul hat einen gemeinsamen Speicher und einen Prozessor, der mit den anderen Prozessormodulen über diesen Speicher in Verbindung tritt. Der gemeinsame Speicher eines jeden Prozessormoduls ist mit dem Systembus gekoppelt, und zu ihm kann entweder der Prozessor des jeweiligen Moduls oder eine Hauptsteuerung zugreifen, die gleichfalls mit dem Systembus gekoppelt ist. Die Hauptsteuerung bewirkt die Übertragung von Daten von dem gemeinsamen Speicher eines Prozessormoduls zu dem gemeinsamen Speicher eines weiteren Prozessormoduls über den Systembus. Die Hauptsteuerung überträgt die Daten durch Adressierung des gemeinsamen Speichers des sendenden Prozessormoduls (d.h. des Quellenspeichers), Lesen der Daten und nachfolgendes Adressieren des Zielspeichers zwecks Schreibens der Daten in diesen gemeinsamen Speicher.In a multiprocessor system according to the invention is one Multiple processor modules connected to a system bus. Each processor module has a shared memory and a processor that communicates with the other processor modules through this memory. The common one The memory of each processor module is coupled to the system bus, and either the processor of the respective module or a main controller that is also coupled to the system bus. The main controller causes the transfer of data from the shared memory of a processor module to the shared memory another processor module via the system bus. The main controller transfers the data by addressing the shared memory of the sending processor module (i.e. the source memory), reading of the data and subsequent Addressing the target memory for the purpose of writing the data in this shared memory.
Jeder gerneinsame Speicher des Systembus kann für die Hauptsteuerung dieselbe Adresse haben. Dies bedeutet, daß jeder dieser Speicher demselben Abschnitt des Adressraums der Hauptsteuerung auf dem Systembus zugeordnet ist. Somit beanspruchen die gemeinsamen Speicher denselben Anteil dieses Adressraums unabhängig von der Zahl vorhandenerAny shared memory on the system bus can be used for the main control have the same address. This means that each of these memories have the same section of address space is assigned to the main controller on the system bus. This means that the shared memories take up the same share this address space regardless of the number of existing ones
r-r-
Speicher am Systembus.Memory on the system bus.
Zur Adressierung eines bestimmten gemeinsamen Speichers zwecks Lesens oder Schreibens von Daten steuert die Hauptsteuerung diesen Speicher zur Übernahme und Erkennung der von ihr abgegebenen Adressensignale an, während die anderen gemeinsamen Speicher des Systembus für diesen Vorgang gesperrt bleiben. Vor einem Schreibvorgang kann die Hauptsteuerung jede Zahl gemeinsamer Speicher zur Übernahme der Adressensignale ansteuern, wodurch gleichzeitig Daten in jede Zahl dieser Speicher am Systembus eingeschrieben werden können.To address a specific shared memory for reading or writing data, the controls The main controller sends this memory to accept and recognize the address signals it emits, while the other shared memories of the system bus remain blocked for this process. Before a write operation the main control can control any number of shared memories to take over the address signals, whereby data can be written into any number of these memories on the system bus at the same time.
Die Erfindung wird im folgenden anhand der Figuren näher erläutert. Es.zeigen:The invention is explained in more detail below with reference to the figures. Show it:
Figur 1 ein schematisches Blockdiagramm eines Ausführungsbeispiels einer Verbindungssteuerung nach der ErfindungFIG. 1 shows a schematic block diagram of an exemplary embodiment of a connection controller according to FIG invention
Figur 2 ein schematisches Blockdiagramm einer Steuereinheit innerhalb der Übertragungssteuerung nach Figur 1,FIG. 2 is a schematic block diagram of a control unit within the transmission controller according to Figure 1,
Figur 3 ein schematisches Blockdiagramm einer Hauptsteuerung innerhalb der Übertragungssteuerung nach Figur 1,Figure 3 is a schematic block diagram of a main controller within the transmission control according to Figure 1,
Figur 4 eine schematische Darstellung der Kartierung, von Teilen zweier gemeinsamer Speicher in das Speicherfenster des Haupt'steuerungsadressraums,Figure 4 is a schematic representation of the mapping of Dividing two shared memories into the memory window of the main control address space,
Figur 5 ein Blockdiagramm der parallelen Ein-Ausgabekanäle und des gemeinsamen Speichers der in Figur 2 gezeigten Steuereinheit,FIG. 5 is a block diagram of the parallel input / output channels and the shared memory of the FIG 2 control unit shown,
Figur 6 eine schematische Darstellung der Speicherauswahllogik nach Figur 5,FIG. 6 shows a schematic representation of the memory selection logic according to Figure 5,
Figur 7 eine schematische Darstellung der Belegungslogik nach Figur 5 undFIG. 7 a schematic representation of the occupancy logic according to FIG. 5 and FIG
Figur 8 ein schematisches Blockdiagramm eines Schnittstellenmoduls der in Figur 1 gezeigten Steuerung.FIG. 8 is a schematic block diagram of an interface module the control shown in Figure 1.
In Figur 1 ist eine Übertragungssteuerung 10 dargestellt, die eine Mehrprozessorarchitektur aufweist, welche mehrere Prozessormodule 12 in Verbindung mit einem Systembus 14 aufweist. Jeder Prozessormodul hat mehrere Eingabe/Ausgabekanäle 16, die mit verschiedensten Datenendgeräten wie beispielsweise Datensichtgeräten 22 und Druckern 24 verbunden sind. Zusätzlich können.ein oder mehrere Zusatzrechner 26 mit einem Ein/Ausgabekanal 16 verbunden sein.In Figure 1, a transmission controller 10 is shown, which has a multiprocessor architecture, which several Has processor modules 12 in connection with a system bus 14. Each processor module has several input / output channels 16, which are connected to various data terminals such as data display devices 22 and printers 24 are. In addition, one or more additional computers 26 can be connected to an input / output channel 16.
Die Steuerung 10 leitet und schaltet zu übertragende Daten über die verschiedenen mit den Ein/Ausgangskanälen verbundenen Vorrichtungen. Beispielsweise kann die Steuerung 10 als Bündel steuerung für mehrere Sichtgeräte 22 : und als Vorprozessor für einen Zusatzrechner 26 arbeiten.The controller 10 directs and switches data to be transmitted via the various connected to the input / output channels Devices. For example, the controller 10 can be used as a bundle control for multiple viewing devices 22: and as Preprocessor for an additional computer 26 work.
Jeder Prozessormodul hat eine Datenverbindungssteuereinheit DLCU 20 und einen oder mehrere Leitungsschnittstellenmodule LIM 18, die Schnittstellen zwischen den Ein/Ausgabekanälen 16 und der Datenverbindungssteuereinheit DLCU des Moduls 12 bilden. Die Steuereinheit 20 gibt Daten von den Ein/Ausgabekanälen 16 der Module 18 ein, führt jede erforderliche Verarbeitung durch und überträgt die Daten zu dem Prozessormodul, mit dem die Zielvorrichtung (beispielsweise der Drucker 24) verbunden ist. Die Steuereinheit DLCU des Zielortes führt eine weitere Verarbeitung der Daten je nach Erfordernis durch und überträgt sie zur Zielvorrichtung über die entsprechende Schnittstelle 18 und die Ein/Ausgabekanäle 16.Each processor module has a data link control unit DLCU 20 and one or more line interface modules LIM 18, the interfaces between the input / output channels 16 and the data link control unit DLCU des Form module 12. The control unit 20 inputs data from the input / output channels 16 of the modules 18, performs any required Processing and transmits the data to the processor module with which the target device (e.g. the printer 24) is connected. The control unit DLCU of the destination carries out further processing of the data as required and transmits them to the target device via the corresponding interface 18 and the input / output channels 16.
Jeder Schnittstellenmodul 18 enthält Entkopplungs-, Schutz- und Spannungswandlerschaltungen, wie sie für die jeweilige Vorrichtung oder Klasse von Vorrichtungen erforderlich sind, die mit den Ein/Ausgabekanälen 16 verbunden sind. Ferner enthält jeder Schnittstellenmodul 18 Schaltungen zur Durchführung von Verbindungspegelfunktionen gemäß den "Protokollen" der mit diesem Schnittstellenmodul 18 verbundenen Vorrichtungen. Ein Protokoll ist eine Folge von Vorschriften oder Prozeduren zur Übertragung von Daten, die durch die Sende- und Empfangsvorrichtungen befolgt werden. Entsprechend muß die Übertragungssteuerung 10 die Datenübertragungsprozeduren befolgen, die durch die sendenden und empfangenden Vorrichtungen zu erwarten sind, welche mit den Ein/Ausgabekanälen der Steuerung 10 verbunden sind.Each interface module 18 contains decoupling, Protection and voltage conversion circuits as required for the particular device or class of devices connected to the input / output channels 16. Each interface module also contains 18 Circuits for performing link level functions according to the "protocols" of this interface module 18 connected devices. A protocol is a sequence of rules or procedures for transmission of data followed by the sending and receiving devices. The transmission control must accordingly 10 Follow the data transfer procedures used by the sending and receiving devices which are connected to the input / output channels of the controller 10 are to be expected.
Die Verbindungspegelfunktionen sind eine Untergruppe solcher Vorschriften und enthalten das Aufstellen und das Unterbrechen einer Verbindung sowie die Datenformatierung. Diese Verbxndungspegelfunktionen werden durch die Schnitt-Stellenmodule 18 unter Steuerung durch die Einheiten 20 implementiert. Die höheren Pegelaspekte der Protokolle, die vom jeweiligen Anwendungsfall abhängen, werden durch die Einheiten 20'erledigt. Wenn die Zielvorrichtung für die eingegebenden Daten ein anderes Protokoll als die Quellenvorrichtung benutzt, so können die Einheiten 20 so programmiert sein, daß das Protokoll der Quellenvorrichtung in das Protokoll der Zielvorrichtung umgesetzt wird.The link level functions are a subset of such regulations and include pitching and the Interrupting a connection and data formatting. These link level functions are provided by the interface modules 18 implemented under the control of the units 20. The higher level aspects of the protocols, which depend on the particular application are dealt with by the units 20 ′. If the aiming device is for the input data uses a different protocol than the source device, the units 20 be programmed to translate the source device's protocol to the target device's protocol will.
Jede Steuereinheit 20 hat einen gemeinsamen Speicher, zu dem der örtliche DLCU-Prozessor und auch eine Hauptsteuerung 29 zugreifen kann, die die Übertragung von Datenblöcken zwischen den Einheiten 20 bewirkt. Um einen Daten-Each control unit 20 has a common memory, too which the local DLCU processor and also a main controller 29 can access, which is responsible for the transmission of data blocks between the units 20 causes. To get a data
block zu übertragen, informiert die Quelleinheit DLCU die Hauptsteuerung über den Systembus darüber, daß sie in ihrem gemeinsamen Speicher Daten enthält, die zu übertragen sind...Wie aus der folgenden Beschreibung noch hervorgeht,kartiert die Hauptsteuerung 29 einen Block des gemeinsamen Speichers der Quelleinheit DLCU (die die Daten enthält) in einen Abschnitt des Adressraums der Hauptsteuerung Dieser Abschnitt des Adressraums wird auch als "Teilspeicherfenster" des Adressraums der Hauptsteuerung bezeichnet..Nach Bestimmung der Identität der Zieleinheit DLCU kartiert die Hauptsteuerung auch einen Block des gemeinsamen DLCU-ZielSpeichers in das Teilspeicherfenster der Hauptsteuerung und liest dann die Daten aus dem Quellspeicher und schreibt sie in den Zielspeicher, wobei jedes Datenwort über den Systembus 14 übertragen wird.block, the source unit DLCU informs the main controller via the system bus that it contains data in their shared memory that needs to be transferred are ... As can be seen from the following description, mapped the main controller 29 a block of the common memory of the source unit DLCU (which the data contains) into a section of the address space of the main control This section of the address space is also called "Partial memory window" of the address space of the main controller. After determining the identity of the target unit DLCU, the master controller also maps a block of the shared DLCU target memory into the partial memory window of the Main controller and then reads the data from the source storage and writes them to the destination storage, each Data word is transmitted via the system bus 14.
Jeder Prozessormodul 12 enthält auch einen DLCU/LIM-Bus 30, über den die Eingangs-Ausgangsdaten sowie Steuersignale zwischen der Einheit DLCU des Prozessormoduls und den Schnittstellenmodulen 18 übertragen werden, die dieser Einheit DLCU zugeordnet sind. Eine typische Einheit DLCU ist in Figur 2 dargestellt und enthält eine Mikroprozessoreinheit MPU 32, die mit den Schnittstelleneinheiten 18 sowie mit anderen Elementen der Einheit DLCU über einen internen Bus 34 kommuniziert. Eine Schnittstellenschaltung puffert den internen Bus 34 gegenüber dem DLCU/LIM-Bus Die Mikroprozessoreinheit 32 enthält einen schnellen Mikroprozessor, der beispielsweise vom Typ Zilog Z80A sein kann und in dem "Z80A CPU Technical Manual" beschrieben ist. Die Mikroprozessoreinheit 32 enthält auch logische Schaltungen zum Puffern der Daten-, Adressen- und Steuerleitungen des internen Bus 34.Each processor module 12 also contains a DLCU / LIM bus 30, via which the input / output data and control signals between the DLCU unit of the processor module and the Interface modules 18 are transmitted, which this Unit DLCU are assigned. A typical DLCU unit is shown in FIG. 2 and contains a microprocessor unit MPU 32, which communicates with the interface units 18 and with other elements of the unit DLCU via an internal Bus 34 communicates. An interface circuit buffers the internal bus 34 against the DLCU / LIM bus The microprocessor unit 32 contains a high-speed microprocessor, for example of the type Zilog Z80A and is described in the "Z80A CPU Technical Manual". The microprocessor unit 32 also includes logic Circuits for buffering the data, address and control lines of the internal bus 34.
Die Mikroprozessoreinheit 32 liest die Eingabedaten vonThe microprocessor unit 32 reads the input data from
• O it• O it
> ο „> ο "
-γ--γ-
den Schnittstelleneinheiten 18 unter Steuerung durch das Programm, welches in einem Festwertspeicher ROM 36 und einem lokalen Speicher 38 mit wahlfreiem Zugriff gespeichert ist. Die Daten werden dann in dem lokalen Speicher 38 zur weiteren Verarbeitung gespeichert oder direkt zu dem geteilten Speicher 28 zwecks Übertragung an die gewünschte Zieleinheit DLCU übertragen.the interface units 18 under the control of the program which is stored in a read-only memory ROM 36 and a local random access memory 38 is stored. The data is then in local storage 38 stored for further processing or directly to the shared memory 28 for transmission to the desired destination unit DLCU.
Bei dem dargestellten Ausführungsbeispiel enthält der gemeinsame Speicher 28 einen Block von 8 K (8192) Bytes eines Speicherraums mit wahlfreiem Zugriff. Die 8 K Bytes des gemeinsamen Speichers sind in zwei Abschnitte unterteilt, einen Eingangsabschnitt und einen Ausgangsabschnitt von jeweils 4 K Bytes. Der gemeinsame Speicher 28 hat Doppelkanäle zum Zugriff durch die Mikroprozessoreinheit 32 und die Hauptsteuerung 29. Zu einer anderen Einheit DLCU zu übertragende Daten werden in den Eingangsabschnitt des gemeinsamen Speichers 28 eingegeben. Diese Daten werden dann durch die Hauptsteuerung gelesen und in den Ausgangsabschnitt der Zieleinheit DLCU eingeschrieben. Jeder gemeinsame Speicher 28 hat eine Logik zur Auflösung jeglicher Belegungen, die durch einen Versuch der Hauptsteuerung 29 und der lokalen Mikroprozessoreinheit 32 entstehen könnten, gleichzeitig zum gemeinsamen Speicher 28 der Einheit DLCU zuzugreifen.In the illustrated embodiment, shared memory 28 contains a block of 8K (8192) bytes of one Random access storage space. The 8 K bytes of the shared memory are divided into two sections, an input section and an output section of 4 K bytes each. The common memory 28 has dual channels for access by the microprocessor unit 32 and the main control 29. To another unit DLCU data to be transmitted are input to the input section of the common memory 28. This data is then read by the main controller and written into the output section of the destination unit DLCU. Everyone common Memory 28 has a logic for the resolution of any occupancies caused by an attempt by the main controller 29 and the local microprocessor unit 32 could arise at the same time as the shared memory 28 of the unit DLCU to access.
Steuersignale zwischen der Hauptsteuerung 29 und einer Einheit DLCU laufen über einen parallelen Ein/Ausgabekanal einer jeden Einheit DLCU. Beispielsweise kann die Mikroprozessoreinheit 32 ein Interruptsignal über den parallelen Ein/Ausgabekanal 40 und den Systembus 14 zur Hauptsteuerung übertragen oder umgekehrt. Zusätzlich speichert die Hauptsteuerung zur Kartierung eines Eingangsabschnitts oder einesControl signals between the main controller 29 and a unit DLCU run via a parallel input / output channel of each unit DLCU. For example, the microprocessor unit 32 an interrupt signal via the parallel input / output channel 40 and the system bus 14 to the main controller transferred or vice versa. In addition, the main control saves for mapping an entrance section or a
Ausgangsabschnitts des gemeinsamen Speichers 28 in den Adressraum der Hauptsteuerung ein Ansteuersignal in dem parallelen Ein/Ausgabekanal 40. Der Kartierungsvorgang wird im folgenden noch genauer beschrieben, und als Abbildung bezeichnet.Output section of the common memory 28 in the address space the main control a control signal in the parallel input / output channel 40. The mapping process is in the following described in more detail and referred to as a figure.
Die Einheit DLCU enthält auch eine Zähler/Zeitschaltung zur Abgabe von Zeitsteuersignalen an den Prozessormodul 12. Beim dargestellten Ausführungsbeispiel ist diese Schaltung vom Typ Zilog Z80A-CTC, die mit dem Zilog Z80A Mikroprozessor kompatibel ist. Die Schaltung Z80A-CTC hat vier unabhängige Kanäle, von denen zwei zur Abgabe taktgesteuerter Interruptsignale an die Mikroprozessoreinheit 32 dienen. Die anderen beiden Kanäle liefern einen Echtzeittakt.The DLCU unit also contains a counter / timer for the delivery of timing signals to the processor module 12. In the illustrated embodiment, this circuit is of the Zilog Z80A-CTC type, which is compatible with the Zilog Z80A microprocessor. The circuit Z80A-CTC has four independent ones Channels, two of which are used to output clock-controlled interrupt signals to the microprocessor unit 32. The other two channels provide a real-time clock.
Wie in Figur 3 gezeigt, enthält die Hauptsteuerung eine Mikroprozessoreinheit 44, die ähnlich der Mikroprozessoreinheit 32 einer jeden Einheit DLCU sein kann. Die Hauptsteuerung 29 hat auch ihren eigenen lokalen Speicher 46, der mit der Mikroprozessoreinheit 44 über den Systembus 14 verbunden ist. Zur Steuerung einer flexiblen Magnetspeicherplatte (nicht dargestellt) kann eine Steuereinheit 47 vorgesehen sein, die Programme in den Hauptsteuerungsspeicher 46 und den lokalen Speicher 38 (Figur 2) einer jeden Einheit DLCU lädt.As shown in Figure 3, the main controller includes a microprocessor unit 44 which is similar to the microprocessor unit 32 of each unit can be DLCU. The main controller 29 also has its own local memory 46, which is connected to the microprocessor unit 44 via the system bus 14. For controlling a flexible magnetic storage disk (not shown) a control unit 47 can be provided which stores the programs in the main control memory 46 and the local memory 38 (Figure 2) of each unit DLCU loads.
Beim dargestellten Ausführungsbeispiel hat die Mikroprozessoreinheit 44 einen Speicheradressraum von 64 K Bytes. Dies bedeutet, daß sie bis zu 65536 individuelle Speicherplätze für Schreib- und Lesevorgänge adressieren, kann. In Figur 4 ist ein Adressraum für die Mikroprozessoreinheit der Hauptsteuerung von 64 K Bytes graphisch als Rechteck 48 dargestellt. Der obere Rand des Rechtecks 48 repräsentiert die Adresse Null, der untere Rand die letzte Adresse 65536 des Adressraums, die mit 64 K bezeichnet ist.In the illustrated embodiment, the microprocessor unit 44 has a memory address space of 64 K bytes. This means that they can be up to 65536 individual Addressing memory locations for writing and reading processes. In Figure 4 is an address space for the microprocessor unit the main control of 64 K bytes graphically represented as rectangle 48. The top of the rectangle 48 represents the address zero, the lower edge the last address 65536 of the address space, which is designated with 64K is.
BAD ORIGINALBATH ORIGINAL
-r--r-
Ein Teil des Adressraums ist für ein Teilspeicherfenster reserviert, welches zur Adressierung der geteilten Speicher 28 der Einheiten DLCU 20 dient. Hier sind 8 K Bytes des Adressraums der Hauptsteuerung für das Teilspeicherfenster 50 reserviert, da jeder DLCÜ-Speicher 8 K Speicherplätze hat. Das Teilspeicherfenster 50 ist in einen Eingangsabschnitt 52 und einen Ausgangsabschnitt 54 unterteilt, die jeweils einen Block von 4 K Adressen aufweisen.Part of the address space is for a partial memory window reserved, which is used to address the shared memory 28 of the DLCU 20 units. Here are 8K bytes the address space of the main controller for the partial memory window 50 reserved, as each DLCÜ memory has 8 K storage spaces. The partial storage window 50 is in one Input section 52 and an output section 54, each having a block of 4K addresses.
Die Mikroprozessoreinte'it. 32 einer jeden Einheit DLCU hat gleichfalls einen Adressraum von 64 K Bytes. Zwei derartige Blöcke von 64 K Speicherplätzen für zwei Einheiten DLCU 20a und 20b sind durch zwei Rechtecke 56 und 58 in Figur 4 dargestellt. Innerhalb eines jeden DLCU-Speicherraums befindet sich ein gemeinsamer Speicher, der mit 28a und 28b bezeichnet ist. Wie bereits ausgeführt, ist jeder gemeinsame Speicher in einen Eingangsabschnitt und einen Ausgangsabschnitt von jeweils 4 K Bytes unterteilt. In Figur 4 sind die Eingangsabschnitte für die geteilten Speicher 28a und 28b mit 60a und 60b bezeichnet, während die Ausgangsabschnitte mit 62a und 62b bezeichnet sind.The microprocessor unit. 32 of each unit DLCU also has an address space of 64 K bytes. Two such blocks of 64K storage space for two units DLCU 20a and 20b are represented by two rectangles 56 and 58 shown in FIG. Within each DLCU storage space there is a shared memory designated by 28a and 28b. As stated earlier, is each shared memory into an input section and divides an output section of 4 K bytes each. In Figure 4 are the input sections for the split Memories 28a and 28b are denoted by 60a and 60b, while the output sections are denoted by 62a and 62b.
Damit die Hauptsteuerung 29 Daten von einer Quelleneinheit DLCU. beispielsweise von der Einheit 20a, zu einer Zieleinheit DLCU-, beispielsweise zur Einheit 20b, überträgt, bildet sie den Eingangsabschnitt 60a des gemeinsamen Speichers der Einheit 20a in den Eingangsabschnitt 52 des Adressraums der Hauptsteuerung ab. Die Hauptsteuerung 26 bildet dann den Ausgangsabschnitt 62b des Speicherraums der Einheit 20b in den Ausgangsabschnitt 54 des Adressraums der Hauptsteuerung ab. Die Hauptsteuerung kann dann die in dem Eingangsabschnitt 60a gespeicherten Daten zum Lesen so adressieren, als ob· die Speicherplätze des Eingangsabschnitts 60a ein Teil des lokalen Speichers derSo that the main control 29 receives data from a source unit DLCU. for example from the unit 20a, to a Target unit DLCU-, for example to unit 20b, transmits, it forms the input section 60a of the shared memory of the unit 20a in the input section 52 of the Address space of the main control. The main controller 26 then forms the output section 62b of the memory space of the unit 20b in the output section 54 of the address space the main control. The main controller can then transfer the data stored in the input section 60a to the Address reading as if · the memory locations of the input section 60a part of the local memory of the
• ·• ·
Hauptsteuerung wären. Ähnlich adressiert die Hauptsteuerung die Speicherplätze in dem Ausgangsabschnitt 62b der Einheit 20b zum Schreiben der von der Einheit 20a ausgelesenen Daten in den Ausgangsabschnitt 62b der Einheit 20b. Die Art und Weise, in der die Hauptsteuerung 29 einen Eingangsab — schnitt oder einen Ausgangsabschnitt eines gemeinsamen Speichers einer Einheit DLCU in den Adressraum der Hauptsteuerung abbildet, wird im folgenden noch genauer beschrieben. Main controls would be. The main controller addresses similarly the memory locations in the output section 62b of the unit 20b for writing the data read out by the unit 20a Data into output section 62b of unit 20b. The manner in which the main controller 29 has an input output Section or an output section of a shared memory of a unit DLCU in the address space of the main controller is described in more detail below.
Obwohl der Adressenblock, der für das TeilSpeicherfenster reserviert ist, in Figur 4 innerhalb des letzten 8 K Adressenblocks des Adressraums der Hauptsteuerung gezeigt ist, kann das Teilspeicherfenster 50 auch an anderer Stelle innerhalb des Adressraums angeordnet sein. Ähnlich kann der Block der Teilspeicherplätze an anderer Stelle innerhalb des Speicherraums der Einheit DLCU angeordnet sein. Ferner sind die Größen der Adressräume des gemeinsamen Speichers und der Hauptsteuerung lediglich beispielsweise gezeigt und sollen den Erfindungsgedanken in keiner Weise einschränken.Although the address block used for the partial memory window is reserved, is shown in Figure 4 within the last 8 K address block of the address space of the main controller, the partial memory window 50 can also be located elsewhere within of the address space. Similarly, the block of partial storage locations can be elsewhere within the storage space the unit DLCU be arranged. Furthermore, the sizes of the address spaces of the shared memory and the main controller are shown by way of example only and are not intended to limit the concept of the invention in any way.
Zur Einteilung des Abbildungsvorganges und der Übertragung von Daten zwischen zwei Einheiten DLCU gibt die Quelleneinheit DLCU, welche die zu übertragenden Daten bereit hält, ein Signal INTERRUPT ANFRAGE an die Hauptsteuerung 29 über den parallelen Ein/Ausgabekanal 40 (Figur 2) der Einheit DLCU ab. Wie in Figur 5 gezeigt, enthält der parallele Ein/Ausgabekanal 40 eine parallele Ein/Ausgabeschaltung PIO 64. Beim dargestellten Ausfuhrungsbeispiel ist dies eine programmierbare Zweikanalschaltung, die eine TTL (Transistor-Transistor-Logik) - kompatible Schnittstelle zwischen der Hauptsteuerung 29 und der Mikroprozessoreinheit 32 der Einheit DLCU bildet. Die Schaltung 64 kann beispielsweise eine integrierte Zilog Parallelein/Ausgabesteuerung sein, die mit dem Mikroprozessor Zilog Z80A kompatibel ist.The source unit provides the division of the mapping process and the transmission of data between two units DLCU DLCU, which holds the data to be transmitted ready, sends an INTERRUPT REQUEST signal to the main controller 29 the parallel input / output channel 40 (Figure 2) of the unit DLCU. As shown in Figure 5, the parallel input / output channel includes 40 a parallel input / output circuit PIO 64. In the exemplary embodiment shown, this is a programmable one Two-channel circuit that has a TTL (transistor-transistor logic) compatible interface between the Main control 29 and the microprocessor unit 32 of the unit DLCU forms. The circuit 64 can, for example be an integrated Zilog parallel input / output control, compatible with the Zilog Z80A microprocessor.
Die Schaltung 64 hat mehrere Steuerregister zur Speicherung von Steuersignalen wie Interruptsignalen und Freigabesignalen. Damit eine Einheit DLCU einen Interrupt bei der Hauptsteuerung bewirkt, setzt die Mikroprozessoreinheit 32 der Einheit DLCU ein Bit in einem Steuerregister der Schaltung 64, wodurch ein Signal INTERRUPT ANFRAGE auf einer Leitung 66 abgegeben und über eine Interruptlogik 70 und den Systembus 14 zur Mikroprozessoreinheit 44 der Hauptsteuerung übertragen wird. The circuit 64 has a plurality of control registers for storing control signals such as interrupt signals and enable signals. So that a unit DLCU causes an interrupt in the main control, the microprocessor unit 32 sets the unit DLCU a bit in a control register of the circuit 64, whereby a signal INTERRUPT REQUEST on a Line 66 released and via an interrupt logic 70 and the system bus 14 is transmitted to the microprocessor unit 44 of the main control.
Wenn die Mikroprozessoreinheit 44 der Hauptsteuerung ein Signal INTERRUPT ANFRAGE erhält, so gibt sie ein Signal INTERRUPT BESTÄTIGUNG über den Systembus 14 ab. Die Schaltung 64 der Einheit DLCU, die die Anfrage abgegeben hat, reagiert hierauf, indem sie den Inhalt eines Steuerregisters über eine Gruppe von Sendern 6 8 auf den Systembus 14 abgibt. When the main control microprocessor unit 44 receives an INTERRUPT REQUEST signal, it issues a signal INTERRUPT CONFIRMATION via system bus 14. The circuit 64 of the DLCU unit that issued the request, responds to this by sending the content of a control register to the system bus 14 via a group of transmitters 6 8.
Die auf den Systembus 14 durch ein Signal INTERRUPT BESTÄTIGUNG geschalteten Daten werden als INTERRUPT VEKTOR bezeichnet und durch die Mikroprozessoreinheit 44 der Hauptsteuerung eingegeben. Dieser Vektor unterrichtet die Hauptsteuerung über die Identität der Schaltung 64 (und damit der Einheit DLCU 20), die die Interruptanfrage erzeugt hat, und über die zur Verarbeitung der Anfrage geeignete Subroutine. Der Inhalt des Steuerregisters für den Interruptvektor wird durch die Mikroprozessoreinheit 44 der Hauptsteuerung gesetzt, wenn das System eingeschaltet wird.The data switched to the system bus 14 by an INTERRUPT CONFIRM signal are referred to as INTERRUPT VECTOR and input through the microprocessor unit 44 of the main controller. This vector teaches the main control about the identity of the circuit 64 (and thus the unit DLCU 20) that generated the interrupt request, and the appropriate subroutine to process the request. The contents of the control register for the interrupt vector is set by the main controller microprocessor unit 44 when the system is turned on.
Die Schaltungen 64 haben eine eigene Logik zur Bestimmung des prioritätshöchsten Kanals der Schaltungen, die gleichzeitig einen Interrupt fordern. Unter Ausnutzung der internen Interruptlogik können die Schaltungen 64 der Einheiten DLCUThe circuits 64 have their own logic for determining the highest priority channel of the circuits that simultaneously request an interrupt. Using the internal interrupt logic, the circuits 64 of the units DLCU
in Kette geschaltet sein,., um eine automatische Vorrangsteuerung für den Interrupt ohne externe Logik zu verwirklichen. Es kann jedoch bei einer großen Anzahl von Einheiten DLCU 20 und damit vielen Schaltungen 64 in Verbindung mit dem Systembus 14 günstig sein, zur Anpassung an eine solch große Zahl von Schaltungen 64 eine "vorausschauende" Logik vorzusehen. Ein Beispiel einer solchen Logik ist in dem "PIO Technical Manual" beschrieben und in Figur 5 durch die Interruptlogik 70 für jede Einheit DLCU und die Interrupt-Steuerlogik 72 (Figur 3) der Hauptsteuerung 29 dargestellt.be connected in a chain,. to an automatic priority control for the interrupt to be realized without external logic. However, it can be applied to a large number of Units DLCU 20 and thus many circuits 64 in connection with the system bus 14 are favorable for adaptation to provide "look-ahead" logic to such a large number of circuits 64. An example of one such logic is described in the “PIO Technical Manual” and in FIG. 5 by the interrupt logic 70 for each unit DLCU and the interrupt control logic 72 (FIG. 3) of the main control 29 are shown.
Wie aus Figur 5 weiter hervorgeht, enthält der geteilte Speicher 28 einer jeden Einheit DLCU einen Zweikanalspeicher mit wahlfreiem Zugriff RAM 74, zu dem durch die lokale Mikroprozessoreinheit 32 und durch die Hauptsteuerung 29 zugegriffen.werden kann. Ein Kanal des Speichers 74 ist über eine Gruppe von Sendeempfängern 76 mit dem internen Bus 34 der Einheit DLCU verbunden, während der andere Kanal über eine Gruppe von Sendeempfängern 78 mit dem Systembus 14 verbunden ist. Die Sendeempfänger 68, 76 und 78 können beispielsweise mit integrierten Schaltungen des Typs LS 244 und LS 245 verwirklicht sein.As can also be seen from FIG. 5, the divided memory 28 of each unit DLCU contains a two-channel memory random access RAM 74, to which is provided by the local microprocessor unit 32 and by the master controller 29 can be accessed. One channel of memory 74 is connected to the internal bus 34 of the unit DLCU via a group of transceivers 76, while the other channel is connected to the system bus 14 through a group of transceivers 78. The transceivers 68, 76 and 78 can be implemented with integrated circuits of the type LS 244 and LS 245, for example.
Um zum Speicher 74 des gemeinsamen Speichers 28 zuzugreifen, adressiert die lokale Mikroprozessoreinheit 32 den Speicher 74, indem Adressignale (die den Speicherplätzen des Speichers 74 entsprechen) auf den internen Bus 34 gegeben werden. Eine Speicherauswahllogik 80 dekodiert die Bits höherer Ordnung der Adressignale und erzeugt ein Auswahlsignal auf einer Leitung 82, welches einer Belegungslogik 84 zugeführt wird, die dem Speicher 74 zugeordnet ist. Wenn der Speicher 74 nicht auch durch die Hauptsteuerung adressiert wird, erzeugt die Belegungslogik 84 ein Freiga-In order to access the memory 74 of the shared memory 28, the local microprocessor unit 32 addresses the memory 74 by sending address signals (which correspond to the memory locations of the memory 74) to the internal bus 34 will. Memory select logic 80 decodes the higher order bits of the address signals and generates a select signal on a line 82 which is fed to an occupancy logic 84 which is assigned to the memory 74. If the memory 74 is not also addressed by the main control, the occupancy logic 84 generates a release
besignal auf einer Leitung 86 zu den Sendeempfangern 76, wodurch diese die Adressignale und die Datensignale vom internen Bus 34 auf den Speicher 74 schalten. Auf diese Weise kann die lokale Mikroprozessoreinheit 32 den Speicher 74 des gemeinsamen Speichers 28 adressieren und Daten in den Eingangsabschnitt des Speichers 74 zwecks Übertragung zu einer anderen Einheit DLCIf einschreiben. Nachdem die Daten in den Eingangsabschnitt eingeschrieben sind, setzt die lokale Mikroprozessoreinheit 32 ein Steuerbit in der Schaltung 6 4 zur Erzeugung eines Signals INTERRUPT ANFRAGE wie bereits beschrieben. Zu diesem Zeitpunkt setzt die Mikroprozessoreinheit 32 auch die Zähler/Zeitschaltung 42 zur Erzeugung eines lokalen Signals INTERRUPT ANFRAGE auf einer Leitung 88 zur lokalen Mikroprozessoreinheit 32, wenn der Interrupt nicht durch die Hauptsteuerung 29 innerhalb einer vorbestimmten Zeit bestätigt wird.besignal on a line 86 to the transceivers 76, whereby these switch the address signals and the data signals from the internal bus 34 to the memory 74. To this Thus, the local microprocessor unit 32 can address the memory 74 of the shared memory 28 and provide data write DLCIf in the input section of the memory 74 for transfer to another unit. After this the data is written in the input section, the local microprocessor unit 32 sets a control bit in the circuit 6 4 for generating a signal INTERRUPT REQUEST as already described. At this time the microprocessor unit 32 also sets the counter / timer 42 for generating a local signal INTERRUPT REQUEST on a line 88 to the local microprocessor unit 32 if the interrupt is not acknowledged by the main controller 29 within a predetermined time will.
Nach Bestätigung der Interruptanfrage und Bestimmung der Identität der Einheit DLCU, die den Interrupt wünscht, bildet die Hauptsteuerung 29 den Eingabeabschnitt des gemeinsamen Speichers 28 dieser Einheit DLCU in den Eingangsabschnitt 52 des.Teilspeicherfensters 50 im Adressraum der Hauptsteuerung ab. Hierzu adressiert die Hauptsteuerung 29 die Schaltung 64 der anfragenden Einheit DLCU. und setzt ein Eingangsabschnitt-Steuerbit eines Abbildungssteuerregisters in der Schaltung 64 des parallelen Ein/Ausgabekanals 40.After confirming the interrupt request and determining the Identity of the DLCU unit that requests the interrupt, the main controller 29 forms the input section of the shared memory 28 of this unit DLCU in the input section 52 of the partial storage window 50 in the address space the main control. For this purpose, the main control 29 addresses the circuit 64 of the requesting unit DLCU. and sets an input section control bit of a mapping control register in the parallel input / output channel circuit 64 40.
Der Kanal 40 hat einen Ein/Ausgabeadressendekodierer 90, der die Adressignale der Hauptsteuerung dekodiert und ein PIO-Freigabesignal auf einer Leitung 92 zur Schaltung 64 erzeugt, wenn die Adressignale der Adresse des Äbbildungs-The channel 40 has an I / O address decoder 90 which decodes the address signals of the main controller and a PIO enable signal on line 92 to circuit 64 generated when the address signals of the address of the mapping
Steuerregisters der Schaltung 64 entsprechen. Das ρχο -Freigabesignal bewirkt die Übernahme der Daten von der Hauptsteuerung auf den Systembus 14 über die Sendeempfänger in das Abbildungssteuerregister.Control register of circuit 64 correspond. The ρχο release signal causes the data to be transferred from the main controller to the system bus 14 via the transceivers into the mapping control register.
Im gesetzten Zustand erzeugt das Eingangsabschnitt-Steuerbit des Abbildungssteuerregisters ein Abbildungssteuersignal auf einer Leitung 94 zu einer Speicherauswahllogik Das Steuersignal bewirkt die Freigabe des Eingangsabschnitts des gemeinsamen Speichers 28 dieser Einheit DLCU zur Übernahme der Adressignale von der Hauptsteuerung über den Systembus 14, wie in Figur 4 gezeigt. Das Abbildungssteuerregister hat ein zweites Bit, welches durch die Hauptsteuerung 29 gesetzt wird, um ein Eingabe-Bestätig.ungssignal auf einer Leitung 93 zur Zähler/Zeitschaltung 42 zu erzeugen. Bei Eintreffen des Eingabe-Bestätigungssignals wird mit der Zähler/Zeitschaltung 42 ein lokales Interrupt-Anfragesignal auf einer Leitung 88 zur lokalen Mikroprozessoreinheit erzeugt.When set, the input section control bit of the mapping control register generates a mapping control signal on line 94 to memory selection logic. The control signal causes the input section to be enabled of the common memory 28 of this unit DLCU for takeover of the address signals from the main controller via the system bus 14 as shown in FIG. The mapping control register has a second bit which is set by the main controller 29 to be an input confirmation signal on a line 93 to the counter / timer circuit 42. When the input confirmation signal arrives, with the counter / timer circuit 42 a local interrupt request signal generated on a line 88 to the local microprocessor unit.
Wenn der Eingangsabschnitt in ihren Adressraum abgebildet ist, kann die Hautpsteuerung den Eingangsabschnitt durch Adressignale auf dem Systembus 14 adressieren. Dieselben Adressignale werden dem gemeinsamen Speicher 28 einer jeden ; Einheit DLCU zugeführt, jedoch wird nur der Eingangsabschnitt, der" in den Adressraum der Hauptsteuerung abgebildet ist, auf die Adressignale der Hauptsteuerung ansprechen. Die Bits höherer Ordnung der Adressignale werden durch die . Speicherauswahllogik 96 des geteilten Speichers 28 dekodiert, welche ein Auswahlsignal auf eine Leitung 98 zur Belegungslogik 84 abgibt, wenn das Abbildungssteuersignal auf der"Leitung 94 aktiv ist. Wenn die lokale Mikroprozessoreinheit nicht schon zum gemeinsamen SpeicherWhen the input section is mapped into its address space, the main control can pass through the input section Address the address signals on the system bus 14. The same address signals are sent to the common memory 28 of each; Unit DLCU is supplied, but only the input section that is "mapped into the address space of the main controller, respond to the address signals of the main control. The higher order bits of the address signals are identified by the . Memory selection logic 96 of shared memory 28 decoded, which emits a selection signal on a line 98 to the occupancy logic 84 when the mapping control signal on the "line 94 is active. When the local microprocessor unit not already to the shared memory
zugreift, erzeugt die Belegungslogik 84 ein Freigabesignal auf einer Leitung 100 zu den Sendeempfängern 78, wodurch die Adressbits niederer Ordnung über die Sendeempfänger 78 in den Speicher 74 mit wahlfreiem Zugriff eingegeben werden.accesses, the occupancy logic 84 generates a release signal on a line 100 to the transceivers 78, thereby transferring the lower order address bits through transceivers 78 to random access memory 74 can be entered.
Bei Zugriff zum Eingangsabschnitt der Quelleneinheit DLCU kann die Hauptsteuerung den Anfangsabschnitt der darin gespeicherten Daten lesen, um die Identität der Zieleinheit DLCU zu bestimmen. Diese Datensignale werden über die von der Hauptsteuerung aktivierten Sendeempfänger 78 auf den Systembus 14 geleitet.When accessing the input section of the source unit DLCU the main controller can control the initial section of it read stored data in order to determine the identity of the target unit DLCU. These data signals are over the transceivers 78 activated by the main controller are routed to the system bus 14.
Der Ausgangsabschnitt des gemeinsamen Speichers der Zieleinheit DLCU wird dann in den Ausgangsabschnitt 54 des TeilSpeicherfensters des Adressraums der Hauptsteuerung ähnlich wie beim Eingangsabschnitt abgebildet. Somit adressiert die Hauptsteuerung das Abbildungssteuerregister der ΡΙΟ-Schaltung 64 der Zieleinheit DLCU zum Setzen eines Ausgangsabschnitts-Steuerbits des Abbildungssteuerregisters, welches ein Ausgangsabschnitt-Abbildungssteuersignal auf der Leitung 95 zu dieser Einheit DLCU erzeugt. Dieses Steuersignal gibt den Ausgangsabschnitt des gemeinsamen Speichers 28 der Zieleinheit DLCU frei, um die Adresssignale und Datensignale von der Hauptsteuerung über die Sendeempfänger 78 zu übernehmen.The output section of the target device's shared memory The DLCU is then placed in the output section 54 of the partial memory window of the address space of the main controller similar to the one shown in the entrance section. Thus, the main controller addresses the mapping control register the ΡΙΟ circuit 64 of the target unit DLCU for setting an output section control bit of the mapping control register, which generates an output section mapping control signal on line 95 to this unit DLCU. This Control signal enables the output section of the shared memory 28 of the destination unit DLCU to receive the address signals and accept data signals from the master controller via transceivers 78.
Es kann auch mehr als ein Ausgangsabschnitt in das Teil-, speicherfenster der Hauptsteuerung abgebildet werden. Die Hauptsteuerung kann das Abbildungssteuerbit für den Ausgangsabschnitt von mehr als einer Einheit DLCU vor dem Adressieren der Ausgangsabschnitte der gemeinsamen Speicher dieser Einheiten setzen. Auf diese Weise kann die Hauptsteuerung Daten aus dem Eingangsabschnitt der QuelleneinheitThere can also be more than one output section in the part, memory window of the main control can be mapped. The main controller can use the mapping control bit for the output section of more than one DLCU before addressing the output sections of the shared memories of these units. In this way the main controller can receive data from the input section of the source unit
<2Ζ·<2Ζ ·
DLCU lesen und Daten in eine oder mehrere Zieleinheiten DLCU einschreiben.Read DLCU and write data to one or more target units DLCU.
Nachdem die Hauptsteuerung 29 die Daten vom Eingangsabschnitt der Quelleneinheit DLCU zum Ausgangsabschnitt einer Ziel-· einheit DLCU übertragen hat, setzt sie ein viertes Bit in dem Abbildungssteuerregister der ΡΙΟ-Schaltung 64 der Zieleinheit DLCU zur Erzeugung eines Signals AUSGANG ANFRAGE auf einer Leitung 104 der ΡΙΟ-Schaltung 64 zur Zähler/Zeitschaltung 42. Diese erzeugt dadurch ein Signal INTERRUPT ANFRAGE auf der Leitung 88 zur Mikroprozessoreinheit 32, welches diese darüber informiert, daß Daten zum Ausgangsabschnitt des zugehörigen gemeinsamen Speichers 28 übertragen wurden. Die Mikroprozessoreinheit 32 liest bei Auftreten dieses Signals die Daten aus dem Ausgangsabschitt ihres gemeinsamen Speichers, verarbeitet sie und überträgt sie zu der externen Zielvorrichtung über die entsprechende Schnittstelleneinheit 18 und den Ein/Ausgabekanal 16 des Prozessormoduls. After the main control 29 has transferred the data from the input section of the source unit DLCU to the output section of a destination unit DLCU, it sets a fourth bit in the mapping control register of the ΡΙΟ circuit 64 of the destination unit DLCU to generate an OUTPUT INQUIRY signal on a line 104 of the ΡΙΟ Circuit 64 to counter / timer circuit 42. This thereby generates an INTERRUPT REQUEST signal on line 88 to microprocessor unit 32, which informs the microprocessor unit that data has been transmitted to the output section of the associated shared memory 28. When this signal occurs, the microprocessor unit 32 reads the data from the output section of its shared memory, processes it and transmits it to the external target device via the corresponding interface unit 18 and the input / output channel 16 of the processor module.
Die Speicherauswahl logik 96 des gmeinsamen Speichers 28 ist in Figur 6 genauer dargestellt. Sie enthält einen 1-aus 8-Dekodierer 110, der beipielsweise vom Typ LS 138 sein kann. Er hat drei Auswahleingänge A, B und C, die mit drei Systemadressbits SA 12 bis SA 14 höherer Ordriung verbunden sind. Ferner ist ein Freigabeeingang vorgesehen, der mit dem höchstwertigen Adressbit SA 15 des Systembus 14 verbunden ist. Diese vier Systemadressbits höherer Ordnung werden zur Auswahl eines bestimmten 4 K-Blocks von Speicherstellen verwendet, die durch die Hauptsteuerung adressierbar sind.The memory selection logic 96 of the shared memory 28 is shown in more detail in FIG. It contains a 1 of 8 decoder 110, which can be of the LS 138 type, for example. It has three selection inputs A, B and C, those with three system address bits SA 12 to SA 14 of higher order are connected. Furthermore, a release input is provided, which is connected to the most significant address bit SA 15 of the system bus 14 is connected. These four higher order system address bits become the Selection of a specific 4K block of memory locations used, which are addressable by the main controller.
Die Speicherauswahllogik 96 enthält ferner ein UND-Glied 112, dessen einer invertierender Eingang mit der Eingangsabschnitt-Abbildungssteuerleitung 94 der ΡΙΟ-Schaltung 64 (Figur 5) und dessen zweiter invertierender Eingang über einenThe memory selection logic 96 also includes an AND gate 112, one inverting input of which is connected to the input section mapping control line 94 of the ΡΙΟ circuit 64 (Figure 5) and its second inverting input via a
COPYCOPY
Umschalter 114 mit einem von acht Ausgängen des Dekodierers 110 verbunden ist. Beim dargestellten Ausführungsbeispiel ist der Umschalter .114 mit einem Ausgang 116 des Dekodierers 110 verbunden. Die Ausgangsleitung 116 ist aktiv, d.h. im logisch niedrigen Zustand, wenn eine bestimmte Kombination von Zuständen der Adressbits SA 12 bis SA 15 vorliegt. Diese Kombination von Zuständen ist die Adresse des Eingangsabschnitts des gemeinsamen Speichers einer jeden Einheit DLCU. Die Adresse des Eingangsabschnitts gegenüber der Hauptsteuerung wird leicht verändert, indem lediglich der Umschalter mit einem anderen Ausgang des Dekodierers 110 verbunden wird.Changeover switch 114 having one of eight outputs of the decoder 110 is connected. In the illustrated embodiment, the switch is .114 with an output 116 of the decoder 110 connected. The output line 116 is active, i.e., a logic low state, when a certain combination of the states of the address bits SA 12 to SA 15 are present. This combination of states is the address of the input section of the shared memory of each unit DLCU. The address of the input section opposite the main control is easily changed by simply pressing the switch is connected to another output of the decoder 110.
Der Ausgang des UND-Gliedes 112 ist mit dem Eingang eines NOR-Gliedes 118 verbunden, dessen Ausgang 120 mit dem invertierenden Eingang eines zweiten UND-Gliedes 122 verbunden ist.Der Ausgang des UND-Gliedes 122 ist die Speicherauswahlleitung 98 für die Zugriffe der Hauptsteuerung, die mit der Belegungslogik 84 (Figur 5) verbunden ist. Wenn das Eingangsabschnitt-Abbildungssteuersignal auf der Leitung 94 aktiv (logisch niedrig) ist und die Adresse des Eingangsabschnitts des gemeinsamen Speichers an den Eingängen des Dekodierers 110 auftritt, so wird das Speicherauswahlsignal bei 98 aktiv (logisch niedrig), wenn die Hauptsteuerung zum Speicher zugreift (d.h. wenn SMREQ aktiv ist). Wenn die lokale Mikroprozessoreinheit 32 zum gemeinsamen Speicher nicht schon zugreift, so gibt die Belegungslogik 84 (Figur 5) den Sendeempfänger 78 frei zur Übergabe der Adressignale (und Datensignale) von der Hauptsteuerung zum Speicher 74 des gemeinsamen Speichers 28. Auf diese Weise steuert das Eingangsabschnitt-Abbildungssteuersignal den Eingangsabschnitt des gemeinsamen Speichers zur Übernahme der Adresssignale von der Hauptsteuerung an. '. ^ \ :The output of the AND gate 112 is connected to the input of a NOR gate 118, the output 120 of which is connected to the inverting The input of a second AND gate 122 is connected. The output of the AND gate 122 is the memory selection line 98 for the accesses of the main control, which is connected to the occupancy logic 84 (FIG. 5). If that Input section mapping control signal on line 94 is active (logic low) and the address of the input section of the shared memory on the inputs of the decoder 110 occurs, the memory select signal at 98 becomes active (logic low) when the main controller is to Memory accesses (i.e. when SMREQ is active). If the local microprocessor unit 32 fails to share memory already accesses, the allocation logic 84 (FIG. 5) enables the transceiver 78 to transfer the address signals (and data signals) from the main controller to memory 74 of shared memory 28. In this way it controls Input section mapping control signal the input section of the common memory for receiving the address signals from the main control. '. ^ \:
Die Speicherauswahllogik 96 enthält ferner "ein weiteresThe memory select logic 96 also includes "another
32A708332A7083
UND-Glied 124, dessen invertierende Eingänge mit der Ausgangsabschnitt-Abbildungssteuerleitung 95 und mit einem der acht Ausgänge des Dekodierers 110 über einen Umschalter 126 verbunden sind. Der Ausgang des UND-Gliedes 124 ist mit dem zweiten Eingang des NOR-Gliedes 118 verbunden. Die Logik arbeitet in ähnlicher Weise zur Erzeugung eines Speicherauswahlsignals auf der Leitung 98, wenn die Adresse des Ausgangsabschnitts dem Dekodierer 110 zugeführt wird, während das Ausgangsabschnitt-Abbildungssteuersignäl auf der Leitung 95 bei einer Speicheranfrage durch die Hauptsteuerung 29 aktiv ist. Hier können gleichfalls die Ausgangsabschnitte der gemeinsamen Speicher 28 jedem 4 κ-Block von Adressen innerhalb des Adressraums der. Hauptsteuerung durch die wahlweise Verbindung der Umschalter mit den Dekodierern 110 der Einheiten DLCU zugeordnet werden.AND gate 124 whose inverting inputs are connected to the output section mapping control line 95 and are connected to one of the eight outputs of the decoder 110 via a changeover switch 126. The output of AND gate 124 is connected to the second input of the NOR gate 118. The logic works in a similar way to generate a Memory select signal on line 98 when the address of the output section is fed to decoder 110, while the output section mapping control signal on line 95 upon a memory request by the master controller 29 is active. Here, too, the output sections of the common memory 28 can each 4 κ-block of addresses within the address space of the. Main control through the optional connection of the switch with the decoders 110 of the units DLCU.
In Figur 7 ist die Belegungslogik 84 des geteilten Speichers 28 dargestellt, die zwei bistabile D-Schaltungen und 132 enthält. Die Schaltung 130 wird immer dann gesetzt, wenn die Hauptsteuerung zum gemeinsamen Speicher 28 der Einheit DLCU zugreift. Ähnlich wird die Schaltung 132 immer dann gesetzt, wenn die lokale Mikroprozessoreinheit der Einheit DLCU zum gemeinsamen Speicher 28 zugreift. Entsprechend ist der D-Eingang der bistabilen Schaltung 130 mit der Speicherauswahlleitung 98 der Speicherauswahllogik der Hauptsteuerung verbunden. Die Auswahlleitung 98 ist ferner mit dem Eingang eines NAND-Gliedes 134 verbunden, dessen zweiter Eingang mit dem Q-Ausgang der zweiten bistabilen Schaltung 132 verbunden ist. Wenn die Hauptsteuerung zum gemeinsamen Speicher 28 zugreifen will (MC SPEICHER AUSWAHL aktiv) während die lokale Mikroprozessoreinheit bereits zum gemeinsamen Speicher zugreift (Schaltung 132 gesetzt), so wird ein Signal WARTEN auf einer Leitung 136 zum System-FIG. 7 shows the allocation logic 84 of the divided memory 28, the two bistable D-circuits and 132 contains. The circuit 130 is set whenever the main control to the shared memory 28 of the unit DLCU accesses. Similarly, the circuit 132 is set whenever the local microprocessor unit of the Unit DLCU to the common memory 28 accesses. Corresponding is the D input of the bistable circuit 130 with the memory selection line 98 of the memory selection logic connected to the main control. The selection line 98 is also connected to the input of a NAND gate 134, the second input of which is connected to the Q output of the second bistable Circuit 132 is connected. If the main control wants to access the shared memory 28 (MC SPEICHER SELECTION active) while the local microprocessor unit is already accessing the shared memory (circuit 132 set), a signal WAIT on a line 136 to the system
bus 14 (Figur 5) erzeugt, welches zur Mikroprozessoreinheit der Hauptsteuerung übertragen wird. Dadurch wird die Hauptsteuerung gegen gleichzeitigen Zugriff zum gemeinsamen Speicher gesperrt, während die lokale Mikroprozessoreinheit der Einheit DLCU zum gemeinsamen Speicher zugreift. Ähnlich erzeugt ein NAND-Glied 138 ein Signal WARTEN auf einer Leitung 140 zur lokalen Mikroprozessoreinheit 32 , wenn die Einheit DLCU zum gemeinsamen Speicher zugreifen will (DLCU SPEICHER AUSWAHL aktiv), während die Hauptsteuerung bereits zum gemeinsamen Speicher zugreift (bistabile Schaltung 130 gesetzt).bus 14 (Figure 5) generated, which is transmitted to the microprocessor unit of the main control. This becomes the main controller locked against simultaneous access to the shared memory, while the local microprocessor unit of the Unit DLCU accesses the shared memory. Similarly, a NAND gate 138 generates a WAIT signal on a line 140 to the local microprocessor unit 32, if the unit DLCU wants to access the shared memory (DLCU SPEICHER SELECTION active), while the main control is already on the common Memory accesses (bistable circuit 130 set).
Die bistabilen Schaltungen 130 und 132 können ihren Zustand nur bei Vorhandensein eines Taktsignals (CPU 0) ändern, das den Takteingängen zugeführt wird. Es ist jedoch eine Zeitverzögerung 142 vorgesehen, über die das Taktsignal dem Takteingang der zweiten bistabilen Schaltung 132 zugeführt wird, so daß es an der bistabilen Schaltung 130 früher wirksam wird. Wenn die Hauptsteuerung und die lokale Mikroprozessoreinheit 32 einen Zugriff zum geteilen Speicher gleichzeitig versuchen, so trifft das Taktsignal an der bistabilen Schaltung 130 zuerst ein, so daß der Q-Ausgang dieser Schaltung 130 seinen Zustand zuerst ändert. Wenn der Q-Ausgang der bistabilen Schaltung 130 aktiv (logisch hoch) wird, so wird ein Signal WARTEN auf der Leitung 140 zur lokalen Mikroprozessoreinheit übertragen.The bistable circuits 130 and 132 can only change their state in the presence of a clock signal (CPU 0) which is fed to the clock inputs. However, a time delay 142 is provided, via which the clock signal is fed to the clock input of the second bistable circuit 132, so that it becomes effective at the bistable circuit 130 earlier. If the main control and the local microprocessor unit 32 attempt to access the shared memory at the same time, the clock signal arrives at the bistable circuit 130 first, so that the Q output of this circuit 130 changes its state first. When the Q output of the bistable circuit 130 becomes active (logic high), a WAIT signal is transmitted on the line 140 to the local microprocessor unit.
Wenn der Q-Ausgang der bistabilen Schaltung 130 aktiv wird, so wird auch der Q/Ausgang aktiv (logisch niedrig) wodurch ein Freigabesignal auf der Leitung 100 zu den Sendeempfängern 78 (Figur 5) gegeben wird, so daß der Systembus 14 mit dem Speicher 74 des gemeinsamen Speichers 28 verbunden wird. Der Q-Ausgang der bistabilen Schaltung 130 ist auch mit dem Löscheingang der zweiten bistabilen Schaltung 132 verbunden. Wenn der Q-Ausgang der bistabilen Schaltung 130When the Q output of the bistable circuit 130 becomes active, the Q / output also becomes active (logic low), thereby an enable signal is given on line 100 to transceivers 78 (FIG. 5) so that system bus 14 is connected to the memory 74 of the common memory 28. The Q output of bistable circuit 130 is also connected to the clear input of the second bistable circuit 132. When the Q output of the bistable circuit 130
aktiv wird, so wird der Q-Ausgang der bistabilen Schaltung 132 inaktiv (logisch hoch), wodurch die Sendeempfänger -76 (Figur 5) gesperrt werden, die den internen Bus 34 der Einheit DLCU mit dem Speicher 74 des gemeinsamen Speichers 28 verbinden. Auf diese Weise werden die Adress- und Datenbusse des Systembus 14 mit dem Speicher 74 verbunden und die Adress- und Datenbusse des internen Bus 34 der Einheit DLCU von dem Speicher 74 getrennt, wenn die bistabile Schaltung 130 gesetzt ist. Der Q-Ausgang der bistabilen Schaltung 132 ist ähnlich mit dem Löscheingang der bistabilen Schaltung 130 verbundenem diese zurückzusetzen und den Sendeempfänger 78 zu sperren, wenn der Q-Augang der bistabilen Schaltung 132 aktiv wird. Dies gibt die Sendeempfänger 76 zur Weiterleitung der Adressen- und Datensignale von der lokalen Mikroprozessoreinheit 32 zum gemeinsamen Speicher frei, während die Adress- und Datenbusse des Systembus 14 vom Speicher 74 getrennt werden.becomes active, the Q output of the bistable circuit 132 becomes inactive (logic high), causing the transceivers -76 (FIG. 5) that connects the internal bus 34 of the unit DLCU with the memory 74 of the shared memory 28 associate. In this way, the address and data buses of system bus 14 are connected to memory 74 and the address and data buses of the internal bus 34 of the DLCU unit are separated from the memory 74 when the bistable circuit 130 is set. The Q output of the bistable circuit 132 is similarly connected to the clear input of the bistable circuit 130 to reset this and the transceiver 78 to block when the Q output of the bistable circuit 132 is active. This gives the transceivers 76 for forwarding the address and data signals from the local microprocessor unit 32 to the shared memory free while the address and data buses of system bus 14 are separated from memory 74.
Wie bereits ausgeführt, kann jede Einheit DLCU 20 bis zu vier Schnittstellenmodule 18 steuern, über die die Daten zu und von den Datenendgeräten übertragen werden. Ein typischer Schnittstellenmodul ist in Figur 8 deutlicher dargestellt. Die Hauptfunktion eines jeden Schnittstellenmoduls 1-8 besteht darin, eine Serie/Parallelumsetzung durchzuführen. Beispielsweise kann der Schnittstellenmodul 18 fünf bis acht Bitzeichen aus einem binären seriellen Datenverlauf zusammensetzen, der von einem Ein/Aüsgabekanal 16 zugeführt wird. Die zusammengesetzten Zeichen werden dann durch die Einheit DLCU eingegeben. Ähnlich setzt die Schnittstelleneinheit 18 die parallelen Daten von der Einheit DLCU in eine gesendete Folge binärer Impulse um, die über den Ein/Ausgabekanal 16 einem Datenendgerät zugeführt werden..As already stated, each DLCU 20 unit can hold up to control four interface modules 18 via which the data is transmitted to and from the data terminals. A typical interface module is shown more clearly in FIG. The main function of any interface module 1-8 is to do a series / parallel conversion. For example, the interface module 18 assemble five to eight bit characters from a binary serial data flow from an input / output channel 16 is fed. The composite characters are then entered by the DLCU unit. The interface unit sets in a similar manner 18 converts the parallel data from the DLCU unit into a transmitted sequence of binary pulses that are transmitted via the Input / output channel 16 can be fed to a data terminal.
Im dargestellen Ausführungsbeispiel hat jeder Schnittstellen-In the illustrated embodiment, each interface has
* ♦ f>»* ♦ f> »
modul 18 vier Ein/Ausgabekanäle, deren jeder durch eine gestrichelt dargestellte Karte 152 repräsentiert ist. Jeder Ein/Ausgabekanal 152 enthält eine serielle Verbindungssteuerschaltung 154, die die Formatierung der Daten zur seriellen Datenübertragung in beschriebener Weise durchführt. Die serielle Verbindungssteuerschaltung kann beispielsweise eine Zilog-Z80 PIO-Steuerschaltung sein, wie sie bereits beschrieben wurde, und zusätzlich kann eine serielle Zilog-Ein/Ausgabesteuerung (SIO) vorgesehen sein. Beide Schaltungen sind in integrierter Technik aufgebaut.module 18 has four input / output channels, each of which is represented by a map 152 shown in dashed lines. Each input / output channel 152 contains a serial link control circuit 154 that controls the formatting of the data for serial data transmission in the manner described. The serial link control circuit can for example a Zilog-Z80 PIO control circuit, as already described, and a serial Zilog input / output control (SIO) can also be provided be. Both circuits are built using integrated technology.
Die SlO-Schaltung ist eine programmierbare Zweikanalschaltung, die asynchron-, synchron-und synchron-bitorientierte Protokolle verarbeitet, beispielsweise Protokolle vom Typ IBM-Bisync (binär synchrone Verbindungen), HDLC, SDLC und andere serielle Protokolle. Die Schaltungen SIO und PIO der Serie-VerbindungsSteuerschaltungen 154 können unter Steuerung der Einheit DLCU die Datenverarbeitungsfunktionen wie CRC (zyklische Redundanzprüfung)-Erzeugung und Prüfung, automatische Merker- oder Synchronzeicheneinsetzung und automatische Nulleinsetzung und--Löschung durchführen.The SIO circuit is a programmable two-channel circuit, the asynchronous, synchronous and synchronous bit-oriented Processes protocols, e.g. protocols of the type IBM-Bisync (binary synchronous connections), HDLC, SDLC and other serial protocols. The SIO and PIO circuits of the series connection control circuits 154 the data processing functions can be controlled by the DLCU unit such as CRC (cyclical redundancy check) generation and checking, automatic marker or synchronous character insertion and perform automatic zeroing and cancellation.
Jeder Ein/Ausgabekanal 152 ist mit Prüfschaltungen 156 (Loop Back Gates) ausgerüstet, die durch ein Ausgangsbit der ΡΙΟ-Schaltung gesteuert werden. Die Prüfschaltungen 156 werden in einem internen Testbetrieb genutzt, bei dem die SlO-Schaltung von dem Benutzersystem abgetrennt ist und die SlO-Sendeausgänge des Kanals mit den SIO-Empfangseingängen verbunden sind. Dies ermöglicht einer jeder Einheit DLCU die Prüfung, ob die Daten richtig gesendet werden,Each input / output channel 152 is connected to test circuits 156 (Loop Back Gates), which are controlled by an output bit of the ΡΙΟ circuit. The test circuits 156 are used in an internal test mode in which the SIO circuit is separated from the user system and the SIO send outputs of the channel with the SIO receive inputs are connected. This enables each DLCU unit to check whether the data is being sent correctly,
Das Datensichtgerät, der Rechner oder eine andere externeThe data display device, the computer or another external one
• · · * ψ m • · · * ψ m
Einrichtung sind mit der Übertragungssteuerung 10 über einen Verbinder 158 verbunden. Jeder der Ein/Ausgabekanäle 152 der Schnittstelleneinheit 18 gemäß Figur 8 erfüllt den RS-232-C-Schnittstellenstandard. Entsprechend ist der Verbinder 158 ein 25 Stifte-Stecker. Ein Satz von Brücken 160 ermöglicht eine variable Zuordnung der Daten- und Steuersignalleitungen zu den Stiften des Steckers 158. Ähnlich ermöglicht ein Satz Brücken 162 eine variable Zuordnung der Ausgangs- und Eingangsstifte der SlO-und ΡΙΟ-Schaltungen der Serie-Verbindungssteuerung 154. Beispielsweise kann der RS-232-C-Schnittstellenmodul so mit Brücken versehen werden, daß er entweder als Peripherieausrüstung (DTE) oder als Datenübertragungsausrüstung (DCE) arbeitet.Devices are connected to the transmission controller 10 via a connector 158. Each of the input / output channels 152 the interface unit 18 according to FIG. 8 fulfills the RS-232-C interface standard. The connector is accordingly 158 a 25 pin connector. A set of bridges 160 allows the data and control signal lines to be assigned in a variable manner to the pins of connector 158. Similarly, a set of jumpers 162 allows for variable assignment the output and input pins of the SLO and ΡΙΟ circuits of the serial connection controller 154. For example, the RS-232-C interface module can be bridged in such a way that that it operates either as peripheral equipment (DTE) or as data transmission equipment (DCE).
Eine Gruppe von Unterdrückungsschaltungen 164 schützt die Schaltungsteile der übertragungssteuerung 10 gegen Spannungsund Stromschwankungen, die auf jeder Daten- oder Steuersignalleitung auftreten können-, welche von der mit der Übertragungssteuerung 10 am Stecker'158 verbundenen externen Einrichtung kommen. Ein Satz von RC-232-Treibern 166 und RS-232-Empfängern 168 setzen die Spannungen der RS-232-Spezifikation auf die Spannungspegel um, die mit den Schaltungen der Schnittstelleneinheit 18 und der Übertragungssteuerung 10 kompatibel sind. Eine weitere Entkopplung erfolgt durch eine Gruppe von Optokopplern 170. Obwohl die in Figur 8 gezeigte Schnittstelleneinheit 18 so ausgeführt ist, daß sie die RS-232-C-Spezifikation erfüllt, kann die Übertragungssteuerung 10 auch mit anderen Schnittstellenmodulen ausgerüstet sein, die zur Ankopplung von externen Einrichtungen dienen, welche andere Schnittstellenvorschriften benötigen.A group of suppression circuits 164 protects the circuit parts of the transmission control 10 against voltage and Current fluctuations that can occur on each data or control signal line - which are caused by the transmission controller 10 external device connected to plug'158. A set of RC-232 drivers 166 and RS-232 receivers 168 set the voltages of the RS-232 specification to the voltage levels associated with the circuits of the interface unit 18 and the transmission control 10 are compatible. A further decoupling takes place through a group of optocouplers 170. Although the Interface unit 18 shown in Figure 8 is designed so that it meets the RS-232-C specification, the Transmission control 10 can also be equipped with other interface modules for coupling external Facilities that require other interface regulations are used.
Eine Bitraten-Auswerteschaltung 172 bestimmt die Datenübertragungsrate, die von der Einheit DLCU gelesen wird. DieA bit rate evaluation circuit 172 determines the data transmission rate, which is read by the DLCU unit. the
COPYCOPY
Einheit DLCU kann dann einen Bitratengenerator 174 so programmieren, daß er Taktsignale mit einer Rate liefert, die sich für die übertragungsgeschwindigkeit der ausgewerteten Daten eignet. Die Bitraten-Auswerteschaltung 172 kann beispielsweise eine Zilog-Z80 Zähler/Zeitschaltung sein, und der Bitratengenerator 174 kann eine integrierte Schaltung COM 5016 sein.Unit DLCU can then have a bit rate generator 174 so program that it delivers clock signals at a rate that is suitable for the transmission speed of the evaluated Data is suitable. The bit rate evaluation circuit 172 can be, for example, a Zilog-Z80 counter / time circuit, and bit rate generator 174 may be a COM 5016 integrated circuit.
Die Einheit DLCU kann die integrierten Schaltungen der Serie-Verbindungssteuerung 154, die Bitraten-Auswerteschaltung oder den Bitratengenerator 174 adressieren, indem sie die geeigneten Adressignale erzeugt, welche mit einem Adressendekodierer und einer Paritätsprüfungslogik 176 dekodiert werden. Die Dekodierlogik 176 liefert ein Freigabesignal an die integrierte Schaltung, welche von der Einheit DLCU adressiert wird. Der DLCU/LIM-Bus 3 0 ist mit den integrierten Schaltungen des Ein/Ausgabekanals 152 über eine Gruppe von Datenbus-Sendeempfängern 178 verbunden.The DLCU unit can control the integrated circuits of the series connection 154, the bit rate evaluation circuit or the bit rate generator 174 by addressing the suitable address signals generated, which with an address decoder and parity check logic 176 are decoded. The decoding logic 176 provides an enable signal the integrated circuit which is addressed by the DLCU unit. The DLCU / LIM bus 3 0 is integrated with the I / O channel 152 circuits are connected through a set of data bus transceivers 178.
Interrupts zur Einheit DLCU werden durch die SIO- und PIO-Schaltungen der Serie-Übertragungssteuerung 154 erzeugt. Diese Schaltungen können die eingebaute kettenartige Interrupt Prioritätsstruktur benutzen. Ist eine große Anzahl dieser integrierten Schaltungen miteinander verbunden, so kann eine "vorausschauende" Logik in beschriebener Weise vorgesehen sein. Diese Schaltung ist durch die Bus- und Interrupt-Steuerlogik 180 und durch die Interruptlogik 182 (Figur 2) der Einheit DLCU repräsentiert.Interrupts to the DLCU unit are made by the SIO and PIO circuits of the serial transfer controller 154 is generated. These circuits can use the built-in chain-like interrupt Use priority structure. If a large number of these integrated circuits are connected to one another, one "Predictive" logic can be provided in the manner described. This circuit is through the bus and interrupt control logic 180 and represented by the interrupt logic 182 (FIG. 2) of the DLCU unit.
Aus der vorstehenden Beschreibung geht hervor, daß die Übertragungssteuerung nach der Erfindung eine große Anzahl Prozessormodule verarbeiten kann und durch den Adressraum der Hauptsteuerung, die die Daten von einem. Modul zum anderen überträgt, nicht begrenzt ist. Ferner ermöglicht die beschrie-From the above description it can be seen that the transmission control according to the invention has a large number Processor modules can process and through the address space of the main controller, which the data from a. Module to the other transmits, is not limited. Furthermore, the described
• · β• · β
V *V *
bene Architektur die gleichzeitige Übertragung von Daten zu mehr als einem Prozessormodul.bene architecture enables the simultaneous transmission of data to more than one processor module.
Sämtliche vorstehend beschriebenen Merkmale können einzeln oder in beliebiger Zusammenfassung erfindungswesentlich sein.All of the features described above can be essential to the invention individually or in any combination be.
, · 34, , · 34,
LeerseiteBlank page
Claims (6)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US33348681A | 1981-12-22 | 1981-12-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE3247083A1 true DE3247083A1 (en) | 1983-07-07 |
Family
ID=23302991
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19823247083 Ceased DE3247083A1 (en) | 1981-12-22 | 1982-12-20 | MULTI-PROCESSOR SYSTEM |
Country Status (4)
Country | Link |
---|---|
JP (1) | JPS58109960A (en) |
DE (1) | DE3247083A1 (en) |
FR (1) | FR2518781B1 (en) |
GB (1) | GB2112186B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4202852A1 (en) * | 1992-02-01 | 1993-08-05 | Teldix Gmbh | Transmission of information to all units of multiprocessor system - has simultaneous telegram containing identification address and data transmitted to all units |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58123148A (en) * | 1982-01-18 | 1983-07-22 | Hitachi Ltd | Data transmitting system |
GB8328396D0 (en) * | 1983-10-24 | 1983-11-23 | British Telecomm | Multiprocessor system |
US4688172A (en) * | 1984-11-13 | 1987-08-18 | International Business Machines Corporation | Initialization apparatus for a data processing system with a plurality of input/output and storage controller connected to a common bus |
GB2175421B (en) * | 1985-05-13 | 1989-11-29 | Singer Link Miles Ltd | Computing system |
US5228127A (en) * | 1985-06-24 | 1993-07-13 | Fujitsu Limited | Clustered multiprocessor system with global controller connected to each cluster memory control unit for directing order from processor to different cluster processors |
JPH07104837B2 (en) * | 1987-11-25 | 1995-11-13 | 富士通株式会社 | Processor control method |
CA2026768C (en) * | 1989-11-13 | 1996-07-23 | Russell S. Padgett | Extended addressing using sub-addressed segment registers |
JPH0378421U (en) * | 1989-11-29 | 1991-08-08 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2546202A1 (en) * | 1975-10-15 | 1977-04-28 | Siemens Ag | COMPUTER SYSTEM OF SEVERAL INTERCONNECTED AND INTERACTING INDIVIDUAL COMPUTERS AND PROCEDURES FOR OPERATING THE COMPUTER SYSTEM |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3909790A (en) * | 1972-08-25 | 1975-09-30 | Omnus Computer Corp | Minicomputer with selector channel input-output system and interrupt system |
DE2641741C2 (en) * | 1976-09-16 | 1986-01-16 | Siemens AG, 1000 Berlin und 8000 München | Computing system made up of several individual computers connected and interacting with one another via a manifold system and a control computer |
US4158227A (en) * | 1977-10-12 | 1979-06-12 | Bunker Ramo Corporation | Paged memory mapping with elimination of recurrent decoding |
US4285039A (en) * | 1978-03-28 | 1981-08-18 | Motorola, Inc. | Memory array selection mechanism |
JPS5561866A (en) * | 1978-11-02 | 1980-05-09 | Casio Comput Co Ltd | Memory designation system |
AT361726B (en) * | 1979-02-19 | 1981-03-25 | Philips Nv | DATA PROCESSING SYSTEM WITH AT LEAST TWO MICROCOMPUTERS |
-
1982
- 1982-10-15 GB GB08229487A patent/GB2112186B/en not_active Expired
- 1982-11-26 JP JP20745882A patent/JPS58109960A/en active Granted
- 1982-12-20 DE DE19823247083 patent/DE3247083A1/en not_active Ceased
- 1982-12-21 FR FR8221481A patent/FR2518781B1/en not_active Expired
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2546202A1 (en) * | 1975-10-15 | 1977-04-28 | Siemens Ag | COMPUTER SYSTEM OF SEVERAL INTERCONNECTED AND INTERACTING INDIVIDUAL COMPUTERS AND PROCEDURES FOR OPERATING THE COMPUTER SYSTEM |
Non-Patent Citations (2)
Title |
---|
Electronics, August 17, 1978, S. 107 bis 112 * |
The AmZ8010, Memory Management Product Description, July 190, Advanced Micro Devices * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4202852A1 (en) * | 1992-02-01 | 1993-08-05 | Teldix Gmbh | Transmission of information to all units of multiprocessor system - has simultaneous telegram containing identification address and data transmitted to all units |
Also Published As
Publication number | Publication date |
---|---|
JPS6246025B2 (en) | 1987-09-30 |
FR2518781A1 (en) | 1983-06-24 |
GB2112186A (en) | 1983-07-13 |
JPS58109960A (en) | 1983-06-30 |
GB2112186B (en) | 1985-09-11 |
FR2518781B1 (en) | 1988-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69519926T2 (en) | METHOD AND DEVICE FOR COMPLYING WITH TRANSACTION CONTROL AND FOR SUPPORTING DELAYED REPLIES IN A BUS BRIDGE | |
DE69423056T2 (en) | Arbitration logic for multiple bus computer systems | |
DE3909948C2 (en) | ||
DE69610157T2 (en) | An input / output processor that provides shared resources to an input / output bus in a computer | |
DE68926036T2 (en) | Memory configuration for use in interfacing between a system controller for a multiprocessor system and the main memory | |
DE69024078T2 (en) | Multi-processor arrangement with duplication of global data and with two stages of address translation units | |
DE68913914T2 (en) | Multiprocessor system with duplication of global data. | |
DE69323861T2 (en) | Multiprocessor system with shared memory | |
DE69915243T2 (en) | Disk array control device | |
DE3642324C2 (en) | Multiprocessor system with processor access control | |
DE69131840T2 (en) | Process for duplicating shared memory | |
EP0006164B1 (en) | Multiprocessor system with jointly usable storages | |
CH656728A5 (en) | INTERFACE CIRCUIT ARRANGEMENT FOR CONNECTING A PROCESSOR TO A MESSAGE CHANNEL. | |
DE3820544C2 (en) | Local area network system with a multi-computer system coupled to it and method for controlling it | |
DE69114961T2 (en) | Interconnection device. | |
DE69607887T2 (en) | Main memory segmentation to make data paths in a computer system more efficient | |
DE69422221T2 (en) | Accurate and complete transmission between different bus architectures | |
DE2523372B2 (en) | Input-output port controller | |
DE3502147C2 (en) | ||
DE69119149T2 (en) | Structure for direct memory-to-memory transfer | |
DE69033412T2 (en) | Data transfer control device for parallel processing systems | |
EP0062141B1 (en) | Circuit arrangement for entering control commands into a microcomputer system | |
DE69726400T2 (en) | SOLID BODY DATA PROCESSOR WITH VERSATILE MULTI-SOURCE INTERRUPTION ORGANIZATION | |
DE3247083A1 (en) | MULTI-PROCESSOR SYSTEM | |
DE102006009034B3 (en) | Bus system method for operating a bus system has transmission channels for linking masters and slaves to each other and linking each master to an arbiter |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8131 | Rejection |