DE69331022T2 - Datenverarbeitungseinheit - Google Patents
DatenverarbeitungseinheitInfo
- Publication number
- DE69331022T2 DE69331022T2 DE69331022T DE69331022T DE69331022T2 DE 69331022 T2 DE69331022 T2 DE 69331022T2 DE 69331022 T DE69331022 T DE 69331022T DE 69331022 T DE69331022 T DE 69331022T DE 69331022 T2 DE69331022 T2 DE 69331022T2
- Authority
- DE
- Germany
- Prior art keywords
- transfer
- transmission
- counter
- data processing
- processing unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
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
- G06F15/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Description
- Die vorliegende Erfindung bezieht sich allgemein auf Datenverarbeitungseinheiten, insbesondere auf eine Datenverarbeitungseinheit, die über ein Netzwerk Daten zu einer anderen Datenverarbeitungseinheit überträgt.
- In einem Datenverarbeitungssystem, wie einem Parallelcomputersystem, das eine Vielzahl von Datenverarbeitungseinheiten hat, die über ein Netzwerk oder dgl. verbunden sind, wird durch Übertragen von Daten zwischen der Vielzahl von Datenverarbeitungseinheiten eine parallele Datenverarbeitung ausgeführt.
- Herkömmlicherweise ist beim Übertragen des Inhalts eines Speicherbereichs einer beliebigen Datenverarbeitungseinheit zu einer anderen Datenverarbeitungseinheit eine Übertragungsanforderungs-Warteschlange vorgesehen, um Datenübertragungsanforderungen, die in bezug auf die andere Datenverarbeitungseinheit erfolgen, in eine Warteschlange einzureihen, und ein Benutzerprogramm, das durch einen Befehlsprozessor ausgeführt wird, reiht die Übertragungsanforderungen nacheinander in die Übertragungsanforderungs-Warteschlange ein. Ein Übertragungsprozessor, der unabhängig von dem Befehlsprozessor arbeitet, führt solange durch Auslesen der Übertragungsanforderung aus der Übertragungsanforderungs-Warteschlange einen Übertragungsvorgang aus, wie die Übertragungsanforderung in die Übertragungsanforderungs-Warteschlange eingereiht ist. Ein solches System ist z.B. in der offengelegten Japanischen Patentanmeldung Nr. 4-167842 vorgeschlagen worden. Gemäß dem zuvor beschriebenen System ist es möglich, den Datendurchlauf außerordentlich zu verbessern, weil der Befehlsprozessor und der Übertragungsprozessor unabhängig arbeiten und die Last und die Gemeinkosten des Befehlsprozessors verringert werden.
- Gemäß dem herkömmlichen System, das zuvor beschrieben wurde, kann jedoch, wenn eine Reihe von Daten in eine Vielzahl von Paketen unterteilt und in diesen Paketen übertragen wird und das Ende der Übertragung auf der empfangenden Seite durch Abrufen des Eintreffens des Pakets der letzten Daten überwacht wird, ein zwischenliegendes Paket aus der Reihe von Daten fehlen, die von der sendenden Seite übertragen werden. In anderen Worten ausgedrückt heißt dies, dass wenn die Reihe von Daten in Paketen übertragen wird, das Senden eines zwischenliegenden der Pakete infolge einer Störung auf der sendenden Seite, wie einer Programm-Ausnahmebedingung und einer Vorrichtungsprüfung (oder einer Hardware-Beschädigung) unterdrückt werden. In diesem Fall setzt sich der Übertragungsvorgang, obwohl das Senden des zwischenliegenden Pakets unterdrückt wird, zu dem nächsten Paket fort, und es gibt auf der empfangenden Seite keine Möglichkeit, zu wissen, dass das zwischenliegende Paket nicht übertragen wurde. Daher bestand bisher ein Problem dahingehend, dass die empfangende Seite irrtümlich das normale Ende des Datensendens erkennt, wenn das Paket der letzten Daten eintrifft, obwohl nicht alle der Daten übertragen wurden und das zwischenliegende Paket fehlt.
- Ferner ist aus dem US-Patent Nr. 4,700,292 ein Kommunikationssystem bekannt, das zwei identische Prozessoren umfasst, die in einer Master-Slave-Beziehung arbeiten, wobei jeder einen Massenspeicher, einen Arbeitsspeicher, eine CPU und eine Schnittstelle hat, die durch einen internen Bus miteinander verbunden sind. Die zwei Schnittstellen sind durch einen Interprozessorenbus miteinander verbunden, der zum Austauschen von Daten zwischen den zwei Prozessoren dient. Wenn der Massenspeicher des Slave-Prozessors eine Aktualisierung benötigt, werden Datenwörter, die von dem Massenspeicher des Master-Prozessor zu übertragen sind, über den Interprozessorenbus und einen Pufferspeicher des Slave-Prozessors dem Arbeitsspeicher zugeführt, von dem sie nachfolgend an den zugeordneten Massenspeicher geliefert werden, während die CPU des Master-Prozessors andere Operationen durchführt. Einem Block von Datenwörtern, der auf diese Weise übertragen wird, geht ein Datenvorsatz voran, der von der Master-CPU ausgegeben wird, die einen Wortzähler in der zugeordneten Schnittstelle setzt, dessen fortschreitende Dekrementierung das Ende des Übertragungsvorgangs bestimmt. Dieses System erzielt eine minimierte Unterbrechung normal arbeitender Programme.
- Außerdem sind in der Druckschrift EP-A2-O 409 285 ein Verfahren und eine Vorrichtung zur Datenübertragung zwischen Prozessorelementen offenbart, wobei ein Verarbeitungselement zumindest aus einem Prozessor, einem Speicher und einer Datenübertragungs-Steuereinrichtung gebildet ist, die jeweils mit einem Datenbus und einem Adressenbus verbunden sind. Die Datenübertragungs-Steuereinrichtung dieses Systems umfasst ein Leseadressen-Speichermittel zum Halten eines Werts einer Speicheradresse, in dem eine gegebene Größe entsprechend einem am wenigsten zurückliegend ausgegebenen Übertragungsbefehlssignal aus dem Prozessor gespeichert wird, und ein Mittel zum Aktualisieren des Adressenwerts jedesmal dann, wenn durch den Prozessor ein Übertragungsbefehlssignal ausgegeben ist, sowie ein Statusspeichermittel zum Aufrechterhalten eines Zählstands einer Gesamtzahl von Übertragungsbefehlssignalen, die durch den Prozessor ausgegeben sind und für die das jeweilige entsprechende Übertragungsbefehlssignal noch nicht durch die Datenübertragungs-Steuereinrichtung initialisiert worden ist. Wenn die Initialisierung der Datenübertragung durch die Datenübertragungs-Steuereinrichtung nachfolgend möglich wird und die Steuerung für den Datenbus durch den Prozessor freigegeben ist, führt die Datenübertragungs- Steuereinrichtung aufeinanderfolgend Adressenwerte aus dem Leseadressen-Speichermittel zu, um ein Auslesen aufeinanderfolgender der Daten aus dem Speicher auszuführen, für die eine Übertragung bestimmt wurde, während eine Übertragungs- Initialisierung nicht möglich war, rückt den Adressenwert vor, der in dem Leseadressen-Speichermittel gehalten ist und setzt den Zählstand in dem Statusspeichermittel jedesmal dann herab, wenn ein solcher Speicherlesezugriff auf diese Weise ausgeführt ist.
- Ausgehend von dem zuvor erwähnten Stand der Technik besteht eine Aufgabe der vorliegenden Erfindung darin, eine neuartige und nützliche Datenverarbeitungseinheit zu schaffen, die es dem Benutzerprogramm auf der Seite des empfangenden Prozessors ermöglicht, selbst dann korrekt das Ende einer in die Warteschlange eingereihten Übertragungsanforderung zu erkennen, wenn die Übertragung eines zwischenliegenden Pakets unterdrückt wird, während die Kosten für das Benutzerprogrammm bezüglich dessen Unterbrechung begrenzt bleiben.
- Diese Aufgabe wird durch eine Datenverarbeitungseinheit gelöst, die dazu bestimmt ist, über ein Netzwerk Daten mit einer anderen Datenverarbeitungseinheit auszutauschen, und die umfasst: ein Hauptspeichermittel zum Speichern von Programmen und Daten, ein Befehlsprozessormittel, das mit dem Hauptspeichermittel verbunden ist, zum Ausgeben von Übertragungsanforderungen durch Ausführen von Programmen, die in dem Hauptspeichermittel gespeichert sind, ein Übertragungsprozessormittel, das mit dem Hauptspeichermittel und dem Befehlsprozessormittel verbunden ist, zum Einreihen der Übertragungsanforderungen aus dem Befehlsprozessormittel in eine Übertragungsanforderungs-Warteschlange und zum Ausführen eines Übertragungsvorgangs zwischen dem Hauptspeichermittel und dem Netzwerk auf der Grundlage jeder Übertragungsanforderung, die aus der Übertragungsanforderungs-Warteschlange gewonnen wird, und ein Zählermittel zum Speichern eines Inhalts, der jedesmal dann auf der Grundlage der Übertragungsanforderung durch das Übertragungsprozessormittel aktualisiert wird, wenn der Übertragungsvorgang ausgeführt ist, und auf das durch das Befehlsprozessormittel zugegriffen werden kann, so dass das Befehlsprozessormittel durch das Übertragungsprozessormittel ein Ende des Übertragungsvorgangs aus dem Inhalt des Zählermittels erkennen kann.
- In Übereinstimmung mit der Datenverarbeitungseinheit gemäß der vorliegenden Erfindung ist keine zusätzliche Steuerinformation erforderlich, um das Ende der Übertragung zu erkennen, und der Erkennungsalgorithmus, der benutzt wird, ist einfach. Demzufolge ist es möglich, die Gemeinkosten des Befehlsprozessor-Mittels wirksam zu verringern.
- Andere Aufgaben und weitere Merkmale der vorliegenden Erfindung werden aus der folgenden ins einzelne gehenden Beschreibung ersichtlich, wenn diese in Verbindung mit den vorliegenden Figuren gelesen wird.
- Fig. 1 zeigt ein System-Blockschaltbild, das ein Parallelcomputersystem darstellt, auf das die vorliegende Erfindung angewendet werden kann.
- Fig. 2 zeigt ein System-Blockschaltbild, das den allgemeinen Aufbau einer Datenverarbeitungseinheit gemäß der vorliegenden Erfindung darstellt.
- Fig. 3 zeigt ein System-Blockschaltbild, das einen Übertragungsprozessor gemäß einem ersten Beispiel für eine Datenverarbeitungseinheit darstellt.
- Fig. 4 zeigt ein System-Blockschaltbild, das eine Netzwerk- Übertragungssteuereinrichtung gemäß dem ersten Beispiel darstellt.
- Fig. 5 zeigt ein System-Blockschaltbild, das eine Hauptspeicher-Zugriffssteuereinrichtung gemäß dem ersten Beispiel darstellt.
- Fig. 6 zeigt eine Darstellung des Aufbaus einer Übertragungsanforderungs-Warteschlange.
- Fig. 7 zeigt ein System-Blockschaltbild, das einen Übertragungsprozessor gemäß einem zweiten Beispiel für eine Datenverarbeitungseinheit darstellt.
- Fig. 8 zeigt ein System-Blockschaltbild, das ein Beispiel für einen Befehlsprozessor der Datenverarbeitungseinheit darstellt.
- Fig. 9 zeigt ein System-Blockschaltbild, das einen wesentlichen Teil eines ersten Ausführungsbeispiels der Datenverarbeitungseinheit gemäß der vorliegenden Erfindung darstellt.
- Fig. 10 zeigt ein System-Blockschaltbild, das eine Übertragungssteuereinrichtung des ersten Ausführungsbeispiels darstellt.
- Fig. 11 zeigt ein System-Blockschaltbild, das einen wesentlichen Teil eines zweiten Ausführungsbeispiels der Datenverarbeitungseinheit gemäß der vorliegenden Erfindung darstellt.
- Fig. 12 zeigt ein System-Blockschaltbild, das eine Übertragungssteuereinrichtung des zweiten Ausführungsbeispiels darstellt.
- Fig. 13 zeigt eine Darstellung zur Erklärung des Aufbaus einer Übertragungsanforderungs-Warteschlange, der in dem zweiten Ausführungsbeispiel benutzt wird.
- Fig. 14 zeigt ein System-Blockschaltbild, das einen wesentlichen Teil eines dritten Ausführungsbeispiels der Datenverarbeitungseinheit gemäß der vorliegenden Erfindung darstellt.
- Fig. 15 zeigt eine Darstellung zur Erklärung der Arbeitsweise des dritten Ausführungsbeispiels.
- Es sei angemerkt, dass die Beispiele gemäß Fig. 3 bis Fig. 8 nicht Teil der Erfindung sind, sondern lediglich zu Veranschaulichungszwecken beschrieben werden.
- Fig. 1 zeigt ein Parallelcomputersystem, auf das die vorliegende Erfindung angewendet werden kann. Das in Fig. 1 gezeigte Parallelcomputersystem enthält eine Vielzahl von Datenverarbeitungseinheiten 10&sub1; bis 10n, die über ein Netzwerk 11 verbunden sind. Jede der Datenverarbeitungseinheiten 101 bis 10n kann über das Netzwerk 11 Daten zu jeder anderen übertragen und unabhängig eine Datenverarbeitung ausführen.
- Jede Datenverarbeitungseinheit 10i hat einen allgemeinen Aufbau, der in Fig. 2 gezeigt ist, wobei i = l, ... n ist. Die Datenverarbeitungseinheit 10i enthält einen Übertragungsprozessor 15, einen Befehlsprozessor 16 und einen Hauptspeicher 17. Der Übertragungsprozessor 15 führt einen Paket-Übertragungsvorgang zwischen dem Hauptspeicher 17 und dem Netzwerk 11, das in Fig. 1 gezeigt ist, in Reaktion auf einen Befehl aus dem Befehlsprozessor 16 aus. Das Übertragungspaket enthält einen Datenvorsatz, und Hauptteil-Daten, die den Übertragungsdaten-Hauptteil bilden. Der Datenvorsatz enthält Information bezogen auf ein Speicherzugriffsattribut in den Datenverarbeitungseinheiten auf der Sendeseite (oder der Quellenseite) und der Empfangsseite (oder der Bestimmungsseite) und Information, die den Prozess in der Datenverarbeitungseinheit auf der Empfangsseite und dgl. angibt.
- Der Befehlsprozessor 18 liest Programme aus, die in dem Hauptspeicher 17 gespeichert sind, und führt sie aus, um Daten zu verarbeiten, die in dem Hauptspeicher 17 gespeichert sind.
- Fig. 3 zeigt einen wesentlichen Teil eines ersten Beispiels für eine Datenverarbeitungseinheit. Insbesondere zeigt Fig. 3 den Übertragungsprozessor 15 des ersten Beispiels.
- Gemäß Fig. 3 enthält der Übertragungsprozessor 15 eine Netzwerk-Übertragungssteuereinrichtung (im folgenden einfach als Übertragungssteuereinrichtung bezeichnet) 20, eine Übertragungswarteschlangen-Auslesehinweiseinrichtung 22, eine Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23, eine Hauptspeicher-Zugriffssteuereinrichtung (im folgenden einfach als Zugriffssteuereinrichtung bezeichnet) 24, einen Datenpufferspeicher 26, ein Störungsanzeigeregister 30 und ein Übertragungswarteschlangen-Basisadressenregister 31, die wie gezeigt miteinander verbunden sind. Der Übertragungsprozessor 15 enthält ferner einen Anschluss 21, an den der Befehlsprozessor 16 angeschlossen ist, Anschlüsse 25 u. 27, die an das Netzwerk 11 angeschlossen sind, und Anschlüsse 28 u. 29, an die der Hauptspeicher 17 angeschlossen ist.
- Die Übertragungssteuereinrichtung 20 wird in Reaktion auf einen Befehl aus dem Befehlsprozessor 16 gestartet, der über den Anschluss 21 empfangen wird, und startet einen Übertragungsvorgang auf der Grundlage der Werte der Übertragungswarteschlangen-Auslesehinweiseinrichtung 22 und der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23. Folglich gibt die Übertragungssteuereinrichtung 20 eine Hauptspeicherzugriffsanforderung in bezug auf die Zugriffssteuereinrichtung 24 aus, um auf diese Weise den Datenvorsatz und die Hauptteil-Daten des Übertragungspakets auszulesen, und sendet das Übertragungspaket durch Steuern einer Schnittstelle (nicht gezeigt), die den Übertragungsprozessor 15 über den Anschluss 25 mit dem Netzwerk 11 verbindet, von dem Datenpufferspeicher 26 über den Anschluss 27 zu dem Netzwerk. Zusätzlich setzt die Übertragungssteuereinrichtung 20 ein Unterbrechungsanzeige-Kennzeichnungsbit in dem Störungsanzeigeregister 30 und schreibt den Status der Störung ein, falls das Senden des Pakets durch eine Störung, wie einen Programmausnahmezustand und eine Hardware-Beschädigung, unterdrückt wird. Die Übertragungssteuereinrichtung 20 erhöht außerdem den Wert der Übertragungswarteschlangen-Ausleschinweiseinrichtung 22, wenn die Übertragung endet.
- Die Zugriffssteuereinrichtung 24 führt in Reaktion auf einen Befehl aus der Übertragungssteuereinrichtung 20 über den Anschluss 28 einen Zugriff auf den Hauptspeicher 17 durch und steuert die Datenübertragung zwischen dem Hauptspeicher 17 und dem Datenpufferspeicher 26 über den Anschluss 29. Wenn die Datenübertragung zwischen dem Hauptspeicher 17 und dem Netzwerk 11 erfolgt, speichert der Datenpufferspeicher 26 die Daten vorübergehend. Zusätzlich speichert der Datenpufferspeicher 26 die Daten vorübergehend, wenn die Übertragungssteuereinrichtung 20 und die Zugriffssteuereinrichtung 24 die notwendigen Daten in bezug auf den Hauptspeicher 17 auslesen und einschreiben.
- Das Übertragungswarteschlangen-Basisadressenregister 31 speichert eine Startadresse einer Übertragungsanforderungs-Warteschlange (im folgenden einfach als Übertragungswarteschlange bezeichnet) in dem Hauptspeicher 17. Der Befehlsprozessor 16 kann auf den Inhalt des Übertragungswarteschlangen-Basisadressenregisters 31 Bezug nehmen und diesen aktualisieren. Die Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 verwaltet Information, die anzeigt, bei welcher Übertragungsanforderung der Übertragungswarteschlange der Befehlsprozessor 16 eingereiht wurde. Die Übertragungswarteschlangen-Auslesehinweiseinrichtung 22 verwaltet Information, die anzeigt, bei welcher Übertragungsanforderung der Übertragungswarteschlange der Übertragungsvorgang beendet wurde.
- Wenn das Paketsenden durch eine Störung unterdrückt wird, fordert das Störungsanzeigeregister 30 durch das Unterbrechungsanzeige-Kennzeichnungsbit eine Unterbrechung durch den Befehlsprozessor 16 an. Das Störungsanzeigeregister 30 zeigt außerdem den Zustand der Störung an, so dass die Störung bewältigt werden kann.
- Fig. 4 zeigt ein Beispiel für die Übertragungssteuereinrichtung 20. Die in Fig. 4 gezeigte Übertragungssteuereinrichtung 20 enthält eine Empfangszustands-Steuereinrichtung 40, eine Sendezustands-Steuereinrichtung 41, eine Empfangspufferspeicher-Steuereinrichtung 42, einen Busbelegungs-Entscheidungsprozessor 44 und eine Sendepufferspeicher-Steuereinrichtung 46, die wie gezeigt miteinander verbunden sind. Ein Start/Stopp-Befehl SSC, der über den Anschluss 21 empfangen wird, wird der Empfangszustands-Steuereinrichtung 40 und der Sendezustands-Steuereinrichtung 41 zugeführt.
- Zusätzlich zu dem Start/Stopp-Befehl SSC empfängt die Empfangszustands-Steuereinrichtung 40 außerdem über einen Anschluss 43 ein Empfangsstart-Anmeldungssignal RSN von der Empfangspufferspeicher-Steuereinrichtung 42 und ein Empfangszugriffsende-Anmeldungssignal RAEN von der Zugriffssteuereinrichtung 24 und verwaltet den Empfangszustand. Die Empfangszustands-Steuereinrichtung 40 führt dem Busbelegungs-Entscheidungsprozessor 44 Auslese/Einschreib-Befehle R/W der Register und Hinweiseinrichtungen zu, die über einen Anschluss 47 angeschlossen sind, und führt außerdem der Zugriffssteuereinrichtung 24 einen Empfangszugriffs-Steuerbefehl RACC zu.
- Zusätzlich zu dem Start/Stopp-Befehl SSC empfängt die Sendezustands-Steuereinrichtung 41 außerdem über den Anschluss 43 ein Sendezugriffsende-Anmeldungssignal TAEN von der Zugriffssteuereinrichtung 24 und verwaltet den Sendezustand. Die Sendezustands-Steuereinrichtung 41 führt dem Busbelegungs-Entscheidungsprozessor 44 die Auslese/Einschreib-Befehle R/W der Register und Hinweiseinrichtungen zu, die über den Anschluss 47 angeschlossen sind. Die Sendezustands-Steuereinrichtung 41 führt außerdem der Zugriffssteuereinrichtung 24 einen Sendezugriffs-Steuerbefehl TACC und der Sendepufferspeicher-Steuereinrichtung 46 ein Sendeende-Anmeldungssignal TEN zu.
- Der Busbelegungs-Entscheidungsprozessor 44 führt eine Entscheidung über Befehle aus, die von der Empfangszustands- Steuereinrichtung 40 und der Sendezustands-Steuereinrichtung 41 empfangen werden, und führt einem Bus über den Anschluss 47 einen Bussteuerbefehl BCC, eine Busadresse BA und Daten D zu. Dieser Bus ist mit dem Störungsanzeigeregister 30, dem Übertragungswarteschlangen-Basisadressenregister 31, der Übertragungswarteschlangen-Auslesehinweiseinrichtung 22, der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 und der Zugriffssteuereinrichtung 24 verbunden.
- Die Empfangspufferspeicher-Steuereinrichtung 42 empfängt über einen Anschluss 48 ein Empfangsgültigskeitssignal RVS und ein Empfangsendesignal RES von dem Netzwerk 11 und führt dem Datenpufferspeicher 26 über einen Anschluss 49 ein Empfangspufferspeichereinschreib-Gültigkeitssignal RBWVS und eine Adresse ADR von dem Netzwerk 11 zu. Die Empfangspufferspeicher- Steuereinrichtung 42 führt außerdem dem Netzwerk 11 über den Anschluss 48 ein Empfangsreaktionssignal RRS zu und führt ferner dem Datenpufferspeicher 26 über den Anschluss 49 eine Empfangspufferspeicher-Ausleseadresse RBRA zu. Die Empfangspufferspeicher-Steuereinrichtung 42 empfängt von der Zugriffssteuereinrichtung 24 über den Anschluss 43 ein Empfangspufferspeicher-Auslesegültigkeitssignal RBRVS. Die Sendepufferspeicher-Steuereinrichtung 46 empfängt über den Anschluss 43 von der Zugriffssteuereinrichtung 24 ein Sendepufferspeicher-Einschreibgültigkeitssignal TBWVS und führt dem Datenpufferspeicher 26 über den Anschluss 49 eine Sendepufferspeicher-Einschreibadresse TBWA zu. Die Sendepufferspeicher-Steuereinrichtung 46 führt dem Datenpufferspeicher 26 außerdem über den Anschluss 49 ein Sendepufferspeicher- Auslesegültigkeitssignal TBRVS und eine Adresse ADR zu und führt dem Netzwerk 11 über den Anschluss 48 ein Sendegültigkeitssignal TVS zu. Die Sendepufferspeicher-Steuereinrichtung 46 empfängt von dem Netzwerk 11 über den Anschluss 48 ein Sendereaktionssignal TRS. Zusätzlich führt die Sendepufferspeicher-Steuereinrichtung 46 dem Netzwerk 11 über den Anschluss 48 ein Sendeendesignal TES zu, wenn das Sendeende-Anmeldungssignal TEN empfangen ist. Ferner ist die Sendepufferspeicher-Steuereinrichtung 46 über den Anschluss 49 und einen Datenbus mit dem Datenpufferspeicher 26 verbunden und führt eine vorbestimmte Prüfung und eine Modifizierung der Steuerinformation aus, die in der Übertragungsanforderung enthalten ist.
- Fig. 5 zeigt ein Beispiel für die Zugriffssteuereinrichtung 24. Die in Fig. 5 gezeigte Zugriffssteuereinrichtung 24 enthält einen Sendeanforderungs/Adressengenerator 51, einen Hauptspeicherauslese-Zeitpunkteinsteller 54, eine Hauptspeicherzugriffsprioritäts-Steuereinrichtung (im folgenden einfach als Prioritätssteuereinrichtung bezeichnet) 56, und einen Empfangsanforderungs/Adressengenerator 57, die wie gezeigt miteinander verbunden sind.
- Gemäß Fig. 5 ist der Sendeanforderungs/Adressengenerator 51 mit dem Datenbus verbunden und empfängt über einen Anschluss 52 einen Bussteuerbefehl BCC und eine Busadresse BA von der Übertragungssteuereinrichtung 20. Der Sendeanforderungs/- Adressengenerator 51 empfängt außerdem über einen Anschluss 53 von der Übertragungssteuereinrichtung 20 einen Sendezugriffs-Steuerbefehl TACC und ein Sendepufferspeicher-Vollsignal TBFS und über den Datenpufferspeicher 26 und einen Anschluss 55 ein Hauptspeicherauslesedaten-Gültigkeitssignal MSRDVS aus dem Zeitpunkteinsteller 54 und den Inhalt der Übertragungswarteschlange, die in the Hauptspeicher 17 gespeichert ist. Der Sendeanforderungs/Adressengenerator 51 erzeugt eine Sendeanforderung TR, einen Operationskode OP und eine Adresse ADR und führt dieselben der Prioritätssteuereinrichtung 56 zu. Der Sendeanforderungs/Adressengenerator 51 führt außerdem der Übertragungssteuereinrichtung 20 über den Anschluss 53 ein Sendezugriffsende-Anmeldungssignal TAEN zu.
- Der Empfangsanforderungs/Adressengenerator 57 ist mit dem Datenbus verbunden und empfängt über den Anschluss 52 von der Übertragungssteuereinrichtung 20 einen Bussteuerbefehl BCC und eine Busadresse BA. Der Empfangsanforderungs/Adressengenerator 57 empfängt außerdem über den Anschluss 53 von der Übertragungssteuereinrichtung 20 einen Empfangszugriffs-Steuerbefehl RACC und ein Empfangspufferspeicher Voll/Leersignal RBFES, ein Empfangspufferspeicher-Auslesegültigkeitssignal RBRVS von der Prioritätssteuereinrichtung 56 und den Inhalt der Übertragungswarteschlange, die in dem Hauptspeicher 17 gespeichert ist, über den Datenpufferspeicher 26 und den Anschluss 55. Der Empfangsanforderungs/Adressengenerator 57 erzeugt eine Empfangsanforderung RR, einen Operationskode OP und eine Adresse ADR und führt dieselben der Prioritätssteuereinrichtung 56 zu. Der Empfangsanforderungs/Adressengenerator 57 führt außerdem der Übertragungssteuereinrichtung 20 über den Anschluss 53 ein Empfangszugriffsende-Anmeldungssignal RAEN zu.
- Wenn die Prioritätssteuereinrichtung 56 die Sendeanforderung TR, die Empfangsanforderung RR und den Operationskode OP empfängt, wählt die Prioritätssteuereinrichtung 56 abhängig von der Priorität eines von diesen Signalen aus und führt die ausgewählte Anforderung, den Operationskode und die Adresse über einen Anschluss 58 dem Hauptspeicher 17 zu. Normalerweise wird die Empfangsanforderung mit einer Priorität über die Sendeanforderung ausgewählt. Zusätzlich startet die Prioritätssteuereinrichtung 56 den Zeitpunkteinsteller 54 und führt dem Datenpufferspeicher 26 und der Übertragungssteuereinrichtung 20 über die jeweiligen Anschlüsse 55 u. 53 ein Empfangspufferspeicher-Auslesegültigkeitssignal RBRVS zu.
- Der Zeitpunkteinsteller 54 erzeugt das Hauptspeicherauslesedaten-Gültigkeitssignal MSRDVS und das Sendepufferspeicher- Einschreibgültigkeitssignal TBWVS, wenn er gestartet ist, wie dies zuvor beschrieben wurde, und führt diese Signale über die jeweiligen Anschlüsse 55 u. 53 dem Datenpufferspeicher 26 und der Übertragungssteuereinrichtung 20 zu.
- Als nächstes erfolgt eine Beschreibung der Arbeitsweisse des Übertragungsprozessors 15.
- Das Benutzerprogramm schreibt die Steuerinformation der Übertragungsanforderung in Form des Datenvorsatzes des Übertragungspakets unter einer bestimmten Adresse des Hauptspeichers 17 in diesen ein. Die Steuerinformation enthält Information, welche die empfangende Datenverarbeitungseinheit, die Hauptteil-Datenlänge, die sendende Adresse, die empfangende Adresse und dgl. angibt. Die bestimmte Adresse des Hauptspeichers 17 wird durch TQBAR+TQWPxHL angegeben, wobei TQBAR den Wert (oder Inhalt) des Übertragungswarteschlangen-Basisadressenregisters 31 bezeichnet, TQWP den Wert der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 bezeichnet und HL die Datenvorsatzlänge bezeichnet. Danach wird der Wert der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 is erhöht. Als nächstes wiederholt das Benutzerprogramm den Prozess des Einschreibens der Steuerinformation der Übertragungsanforderung in die Übertragungswarteschlange und des Erhöhens des Werts der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 und beendet den Einreihungsprozess.
- Dementsprechend wird die Steuerinformation der Übertragungsanforderung in der Übertragungswarteschlange in dem Hauptspeicher 17 gespeichert, wie dies in Fig. 6 gezeigt ist.
- Die Übertragungssteuereinrichtung 20 wartet in dem Zustand, in dem die Übertragungssteuereinrichtung 20 durch den Befehl aus dem Befehlsprozessor 16 gestartet ist, auf das Einreihen der Übertragungsanforderung. Die Übertragungssteuereinrichtung 20 erkennt, dass eine Übertragungsanforderung vorliegt, die noch nicht verarbeitet worden ist, und startet den Übertragungsvorgang, wenn der Wert der Übertragungswarteschlangen-Auslesehinweiseinrichtung 22 und der Wert der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 nicht länger zusammenpassen. Zusätzlich gibt die Übertragungssteuereinrichtung 20 eine Hauptspeicherzugriffsanforderung an die Zugriffssteuereinrichtung 24 aus, um auf diese Weise den Datenvorsatz des Übertragungspakets auszulesen.
- Als Ergebnis berechnet die Zugriffssteuereinrichtung 24 TQBAR+TQRPxHL, um eine Adresse des Paketdatenvorsatzes der ältesten Übertragungsanforderung, die noch nicht verarbeitet worden ist, in dem Hauptspeicher 17 zu gewinnen, und gibt ein Signal für einen Auslesezugriff in bezug auf den Hauptspeicher 17 aus, wobei TQBAR den Wert (oder Inhalt) des Übertragungswarteschlangen-Basisadressenregisters 31 bezeichnet, TQRF den Wert der Übertragungswarteschlangen-Ausleschinweiseinrichtung 22 bezeichnet und HL die Datenvorsatzlänge bezeichnet. Folglich speichert die Zugriffssteuereinrichtung 24, wenn der Paketdatenvorsatz aus dem Hauptspeicher 17 ausgelesen ist, den ausgelesenen Paketdatenvorsatz in dem Datenpufferspeicher 26 und meldet der Übertragungssteuereinrichtung 20 das Ende des Auslesens des Paketdatenvorsatzes.
- Die Zugriffssteuereinrichtung 24 fährt fort, um die Steuerinformation der Übertragungsanforderung aus dem Hauptspeicher 17 über den Datenpufferspeicher 26 zu gewinnen, berechnet die Adresse des Hauptteils des Übertragungspakets und gibt ein Signal für einen Pakethauptteil-Auslesezugriff in bezug auf den Hauptspeicher 17 aus. Wenn der Pakethauptteil nacheinander aus dem Hauptspeicher 17 ausgelesen wird, speichert die Zugriffssteuereinrichtung 24 nacheinander den ausgelesenen Pakethauptteil in dem Datenpufferspeicher 26 und meldet nach einander der Übertragungssteuereinrichtung 20 den Umfang des ausgelesenen Pakethauptteils.
- Wenn das Ende des Auslesens des Paketdatenvorsatzes von der Zugriffssteuereinrichtung 24 gemeldet wird, gewinnt die Übertragungssteuereinrichtung 20 die Steuerinformation der Übertragungsanforderung aus dem Datenpufferspeicher 26. Die Übertragungssteuereinrichtung 20 führt eine vorbestimmte Prüfung und eine Modifizierung in bezug auf die gewonnene Steuerinformation aus und schreibt die geprüfte und modifizierte Steuerinformation zurück in den Datenpufferspeicher 26.
- Die Übertragungssteuereinrichtung 20 fährt fort, den Paketdatenvorsatz von dem Datenpufferspeicher 26 an das Netzwerk 11 zu senden. Außerdem sendet die Übertragungssteuereinrichtung 20, wenn der Umfang des ausgelesenen Pakethauptteils nacheinander von der Zugriffssteuereinrichtung 24 gemeldet wird, nacheinander den Pakethauptteil, der in dem Datenpufferspeicher 26 gespeichert ist, an das Netzwerk 11. Wenn das Senden des Übertragungspakets an das Netzwerk 11 endet, erhöht die Übertragungssteuereinrichtung 20 den Wert der Übertragungswarteschlangen-Auslesehinweiseinrichtung 22.
- Zusätzlich prüft die Übertragungssteuereinrichtung 20 die Werte der Übertragungswarteschlangen-Ausleschinweiseinrichtung 22 und der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 und startet den nächsten Übertragungsvorgang, wenn eine Übertragungsanforderung verbleibt, die noch nicht verarbeitet worden ist.
- Falls eine Störung, wie ein Programmausnahmezustand bezogen auf den Übertragungsvorgang oder eine Hardware-Beschädigung, während des zuvor beschriebenen Übertragungsvorgangs erfasst wird, setzt die Übertragungssteuereinrichtung 20 ein Unterbrechungsanzeige-Kennzeichnungsbit in dem Störungsanzeigeregister 30 und schreibt außerdem den Zustand der erfassten Störung ein. Danach werden während einer Zeit, in der das Unterbrechungsanzeige-Kennzeichnungsbit gesetzt ist, das Gewinnen einer Übertragungsanforderung und das Ausführen eines Übertragungsvorgangs selbst dann verhindert, wenn die Übertragungsanforderung in die Übertragungsanforderungs-Warteschlange eingereiht ist.
- Wenn das Benutzerprogramm, das durch den Befehlsprozessor 16 ausgeführt wird, erfasst, dass das Unterbrechungsanzeige- Kennzeichnungsbit in dem Störungsanzeigeregister 30 gesetzt ist, analysiert das Benutzerprogramm die Ursache der Übertragungsstörung aus dem Zustand der Störung, der in das Störungsanzeigeregister 30 und dgl. eingeschrieben ist. Wenn ein Wiederherstellungsprozess möglich ist, wird die verbleibende Übertragungsanforderung gelöscht, und die Werte der Übertragungswarteschlangen-Auslesehinweiseinrichtung 22 und der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 werden dementsprechend modifiziert. Dann löscht das Benutzerprogramm den Inhalt des Störungsanzeigeregisters 30 und führt einen Störungsbehebungsprozess aus.
- Wenn die Störungsbehebung möglich ist, führt der Übertragungsprozessor 15 den verbleibenden Übertragungsvorgang nach Erfassung des Löschens des Störungsanzeigeregisters 30 aus, weil die Übertragungsanforderung, die noch nicht verarbeitet worden ist, verblieben ist.
- Dementsprechend wird, wenn die Störung, wie ein Programmausnahmezustand oder eine Hardware-Beschädigung, während des Übertragungsvorgangs auftritt, det Übertragungsvorgang, für den die Übertragungsanforderung aus der Übertragungsanforderungs-Warteschlange gewonnen wird, durch die Anzeige der Störung verhindert, und diese Verhinderung wird aufgehoben, nachdem die Störung behoben ist. Aus diesem Grunde wird selbst dann, wenn eine Vielzahl von Paketen aufgrund einer einzigen Übertragungsanforderung übertragen werden und die Übertragung eines zwischenliegenden Pakets infolge der Störung, wie eines Programmausnahmezustands oder einer Hardware- Beschädigung, die während der Übertragung dieses zwischenliegenden Pakets auftritt, unterdrückt wird, die Übertragung des Pakets, das diesem zwischenliegenden Paket folgt, verhindert. Wenn die Störung behoben ist, wird die Übertragung des zwischenliegenden Pakets und der folgenden Pakete wiederaufgenommen oder die Übertragungsanforderung wird gelöscht, so dass die empfangende Datenverarbeitungseinheit nicht irrtümlich ein Ende der Übertragungsanforderung erkennen wird.
- Fig. 7 zeigt einen wesentlichen Teil eines zweiten Beispiels für eine Datenverarbeitungseinheit. Insbesondere zeigt Fig. 7 den Übertragungsprozessor 15 gemäß dem zweiten Beispiel. In Fig. 7 sind solche Teile, die entsprechenden Teilen in Fig. 3 gleich sind, mit gleichen Bezugszeichen versehen, und eine Beschreibung derselben wird fortgelassen.
- Der in Fig. 7 gezeigte Übertragungsprozessor 15 enthält die Übertragungssteuereinrichtung 20, die Übertragungswarteschlangen-Auslesehinweiseinrichtung 22, die Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23, die Zugriffssteuereinrichtung 24, den Datenpufferspeicher 26, das Störungsanzeigeregister 30, das Übertragungswarteschlangen-Basisadressenregister 31, ein Störungsanzeigeregister 60, ein Übertragungswarteschlangen-Basisadressenregister 61, eine Übertragungswarteschlangen-Auslesehinweiseinrichtung 62 und eine Übertragungswarteschlangen-Einschreibhinweiseinrichtung 63, die wie gezeigt miteinander verbunden sind.
- Der in Fig. 7 gezeigte Übertragungsprozessor 15 enthält verglichen mit dem Übertragungsprozessor 15, der in Fig. 3 gezeigt ist, zusätzlich das Störungsanzeigeregister 60, das Übertragungswarteschlangen-Basisadressenregister 61, die Übertragungswarteschlangen-Auslesehinweiseinrichtung 62 und die Übertragungswarteschlangen-Einschreibhinweiseinrichtung 63. In anderen Worten ausgedrückt heißt dies, dass zwei Störungsanzeigeregister 30 u. 60, zwei Übertragungswarteschlangen-Basisadressenregister 31 u. 61, zwei Übertragungswarteschlangen-Auslesehinweiseinrichtungen 22 u. 62 und zwei Übertragungswarteschlangen-Einschreibhinweiseinrichtungen 23 u. 63 vorgesehen und diese Elemente über Busleitungen mit dem Befehlsprozessor 16, der Übertragungssteuereinrichtung 20 und der Zugriffssteuereinrichtung 24 verbunden sind, von denen auf erstere zugegriffen werden kann.
- In diesem Beispiel sind zwei übertragungsanforderungs-Warteschlangen in dem Hauptspeicher 17 vorgesehen, und die Übertragungsvorgänge werden unabhängig unter Benutzung der jeweiligen Übertragungsanforderungs-Warteschlangen ausgeführt. Beispielsweise wird, wenn eine Störung, wie ein Programmausnahmezustand oder eine Hardware-Beschädigung, bezogen auf den Übertragungsvorgang einer ersten der zwei Übertragungsanforderungs-Warteschlangen entsprechend dem Störungsanzeigeregister 60 erfasst wird, das Unterbrechungsanzeige-Kennzeichnungsbit in dem Störungsanzeigeregister 60 gesetzt, und der Zustand der Störung wird eingeschrieben, so dass der Übertragungsvorgang, der die erste Übertragungsanforderungs-Warteschlange benutzt, während der Zeit, in der das Unterbrechungsanzeige-Kennzeichnungsbit gesetzt ist, verhindert wird. Wenn die Übertragungsanforderung jedoch entsprechend dem Störungsanzeigeregister 30 in die zweite der zwei Übertragungsanforderungs-Warteschlangen eingereiht ist, wird der Übertragungsvorgang durch Gewinnen der Übertragungsanforderung aus der zweiten Übertragungsanforderungs-Warteschlange ausgeführt, solange das Unterbrechungsanzeige-Kennzeichnungsbit nicht in dem Störungsanzeigeregister 30 gesetzt ist. Hinsichtlich der Übertragungsanforderung der ersten Übertragungsanforderungs-Warteschlange, in der die Störung auftritt, korrigiert der Befehlsprozessor 16 die Steuerinformation der Übertragungsanforderung und reiht the Übertragungsanforderung mit der korrigierten Steuerinformation ein, oder es wird ähnlich wie bei dem ersten Ausführungsbeispiel ein Störungsbehebungsprozess ausgeführt, um die verbleibende Übertragungsanforderung zu löschen.
- Durch das Vorsehen eines Störungsanzeigemittels in Übereinstimmung mit jeder der Vielzahl von Übertragungsanforderungs- Warteschlangen wird es möglich, den Übertragungsvorgang der Übertragungsanforderung in der Übertragungsanforderungs-Warteschlange, die dem Störungsazeigemittel entspricht, in dem die Störung angezeigt wird, zu verhindern. Andererseits kann der Übertragungsvorgang der Übertragungsanforderung in den Übertragungsanforderungs-Warteschlangen, in denen keine Störung aufgetreten ist, fortgesetzt werden. Als Ergebnis ist es möglich, die empfangende Datenverarbeitungseinheit selbst dann an einem irrtümlichen Erkennen eines Endes der Übertragungsanforderung zu hindern, wenn eine Störung während der Übertragung einer Vielzahl von Paketen durch eine einzige Übertragungsanforderung auftritt, während das Netzwerk effektiv ausgenutzt wird.
- Als nächste erfolgt eine Beschreibung des Aufbaus des Befehlsprozessors 16, der in Fig. 2 gezeigt ist, unter Bezugnahme auf Fig. 8. Fig. 8 zeigt ein Beispiel für den Befehlsprozessor 16, und der Bequemlichkeit halber sei angenommen, dass dieser Befehlsprozessor 16 in dem ersten Beispiel für die Datenverarbeitungseinheit gemäß Fig. 3 benützt wird.
- Der in Fig. 8 gezeigte Befehlsprozessor 16 enthält einen Übertragungsprozessor-Adapter 71, eine Arithmetik/Logik-Einheit (ALU) 72, ein Mehrzweckregister 73, einen Befehlssortierer 74 und einen Cache-Speicher 75, die wie gezeigt mit einander verbunden sind. Der Befehlsprozessor 16 liest die Befehle (Programme), die in the Hauptspeicher 17 gespeichert sind, und führt sie aus, wie dies zuvor beschrieben wurde. In Fig. 8 ist der Datenbus durch eine durchgehende Linie angegeben, und das Steuersignal ist durch eine gestrichelte Linie angegeben.
- Der Befehlssortierer 74 hat einen internen Programmzähler und liest einen Befehl aus dem Cache-Speicher 75 auf der Grundlage einer Adresse aus, die durch den internen Programmzähler angegeben wird. Der Befehlssortierer 74 dekodiert den Befehl und führt anderen Teilen des Befehlsprozessors 16 notwendige Steuersignale zu. Nachdem das Ausführen des Befehls beendet ist, aktualisiert der Befehlssortierer 74 den Wert des internen Programmzählers und startet die Verarbeitung des folgenden Befehls.
- Der Cache-Speicher 75 speichert eine Kopie eines Teils des Hauptspeichers 17. Der Cache-Speicher 75 führt den Befehl abhängig von dem Steuersignal aus dem Befehlssortierer 74 dem Befehlssortierer 74 zu und führt dem Register 73 Daten zu. Wenn die angeforderten Daten nicht in dem Cache-Speicher 75 gespeichert sind, werden die angeforderten Daten aus dem Hauptspeicher 17 ausgelesen und in dem Cache-Speicher 75 gespeichert. Der Cache-Speicher 75 speichert außerdem abhängig von dem Steuersignal aus dem Befehlssortierer 74 die Daten aus dem Register 73 und schreibt die gespeicherten Daten in den Hauptspeicher 17 ein.
- Das Register 73 empfängt und speichert Daten aus dem Cache- Speicher 75, der ALU 72 und dem Übertragungsprozessor-Adapter 71 abhängig von dem Steuersignal aus dem Befehlssortierer 74. Das Register 73 führt außerdem Daten, die einer Operation zu unterziehen sind, der ALU 72 zu und speichert Daten in dem Cache-Speicher 75.
- Die ALU 72 führt eine Operation an den Daten aus, die abhängig von dem Steuersignal aus dem Befehlssortierer 74 von dem Register 73 zugeführt werden. Die ALU 72 führt dem Register 73 und dem Übertragungsprozessor-Adapter 71 ein Ergebnis dieser Operation zu.
- Der Übertragungsprozessor-Adapter 71 sendet abhängig von dem Steuersignal aus dem Befehlssortierer 74 einen Start/Stopp- Befehl SSC an den Übertragungsprozessor. Zusätzlich benützt der Übertragungsprozessor-Adapter 71 die Daten aus der ALU 72 und führt abhängig von dem Steuersignal aus dem Befehlssortierer 74 innerhalb des Übertragungsprozessors 15 eine Lese/ Schreiboperation in bezug auf die Register/Hinweiseinrichtungen aus. Der Übertragungsprozessor-Adapter 71 überträgt die Daten, die aus den Registern/Hinweiseinrichtungen innerhalb des Übertragungsprozessors 15 ausgelesen sind, abhängig von dem Steuersignal aus dem Befehlssortierer 74 zu dem Register 73. Außerdem überträgt der Übertragungsprozessor- Adapter 71 ein Unterbrechungssignal aus dem Übertragungsprozessor 15 zu dem Befehlssortierer 74.
- Selbstverständlich kann der Befehlsprozessor 16, der in dem zweiten Beispiel für die Datenverarbeitungseinheit benutzt wird, ähnlich demjenigen aufgebaut sein, der in Fig. 8 gezeigt ist.
- Beim Übertragen des Inhalts des Speicherbereichs einer beliebigen Datenverarbeitungseinheit zu einer anderen Datenverarbeitungseinheit in dem herkömmlichen Parallelcomputersystem wird das Einreihen der Datenübertragungen in eine Warteschlange in bezug auf die andere Datenverarbeitungseinheit durch ein Überwachungsprogramm verwaltet. Folglich erzeugt das Benutzerprogramm der Datenverarbeitungseinheit eine Unterbrechung der Datenübertragungsanforderung in bezug auf das Überwachungsprogramm, und das Überwachungsprogramm bildet im allgemeinen den Datenvorsatz und befiehlt die Übertragung.
- Dieses Verfahren, das in dem herkömmlichen Parallelcomputersystem benutzt wird, erzeugt jedoch eine große Anzahl von Unterbrechungen, und die Gemeinkosten werden groß. Aus diesem Grunde ist es wünschenswert, die Einschreibhinweiseinrichtung und die Auslesehinweiseinrichtung in der Übertragungswarteschlange vorzusehen und das Benutzerprogramm dahingehend einzurichten, diese Hinweiseinrichtungen direkt zu verwalten, um die Gemeinkosten zu verringern, die durch durch das Eingreifen des Überwachungsprogramms verursacht werden.
- Um jedoch die Übertragungsanforderungen in eine Wartesschlange einzureihen und das Ende der Übertragung durch den Übertragungsprozessor zu erkennen muss das Benutzerprogramm ein Aufrufen der Auslesehinweiseinrichtung ausführen. Zusätzlich ist es, wenn eine Vielzahl von Übertragungsanforderungen vorliegt, notwendig, einen Endeunterscheidungs-Wert innerhalb des Benutzerprogramms zu halten, weil der Wert der Auslesehinweiseinrichtung zum Unterscheiden des Endes der Übertragungsanforderung zu einer Zeit, zu der das Einreihen in die Warteschlange gestartet wird, von dem Wert der Einschreibhinweiseinrichtung abhängig ist.
- Zusätzlich kann das Ende der Übertragung, wenn die Übertragungsanforderungs-Warteschlange nach Art einer zyklischen Adressierung benutzt wird, nicht erkannt werden, wenn die Auslesehinweiseinrichtung durch die zyklische Adressierung überläuft. Als Ergebnis ist zusätzliche Steuerinformation für das Einreihen in die Warteschlange der übertragungsanforderungen und die Unterscheidung des Endes der Übertragung erforderlich, wodurch der Algorithmus komplex wird.
- Als nächstes erfolgt eine Beschreibung erster und zweiter Ausführungsbeispiele der Datenverarbeitungseinheiten gemäß der vorliegenden Erfindung, bei denen diese Probleme beseitigt sind. Insbesondere erfordern die ersten und zweiten Ausführungsbeispiele nicht die zusätzliche Information zum Unterscheiden des Endes der Übertragung, und der Algorithmus ist einfach. Ferner kann ein unerwünschtes Ansteigen der Kosten des Befehlsprozessors vermieden werden.
- Fig. 9 zeigt einen wesentlichen Teil des ersten Ausführungsbeispiels. Insbesondere zeigt Fig. 9 den Übertragungsprozessor 15 des ersten Ausführungsbeispiels. In Fiq. 9 sind solche Teile, die grundsätzlich die gleichen wie die entsprechenden Teile gemäß Fig. 3 sind, mit den gleichen Bezugszeichen versehen, und und eine Beschreibung der gleichen Teile wird fortgelassen.
- Gemäß Fig. 9 wird die Übertragungssteuereinrichtung 20 durch einen Befehl gestartet, der über den Anschluss 21 von dem Befehlsprozessor 16 erhalten wird. Die Übertragungssteuereinrichtung 20 startet den Übertragungsvorgang abhängig von den Werten der Übertragungswarteschlangen-Ausleschinweiseinrichtung 22 und der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23. Die Übertragungssteuereinrichtung 20 gibt eine Hauptspeicherzugriffsanforderung an die Zugriffssteuereinrichtung 24 aus, um den Datenvorsatz und die Hauptteil-Daten des Übertragungspakets auszulesen, steuert die Schnittstelle, die den Übertragungsprozessor 15 mit dem Netzwerk 11 verbindet, über den Anschluss 25 und sendet das Übertragungspaket über den Anschluss 27 von dem Datenpufferspeicher 26 an das Netzwerk T1. Zusätzlich erhöht die Übertragungssteuereinrichtung 20 am Ende der Übertragung den Wert der Übertragungswarteschlängen-Auslesehinweiseinrichtung 22 und erhöht den Wert eines Sendezählers 130.
- Der Sendezähler 130 verwaltet die Anzahl von Malen, die die Prozesse der Übertragungsanforderungen enden. Der Befehlsprozessor 16 kann auf den Inhalt des Sendezählers 130 Bezug nehmen und ihü modifizieren.
- Fig. 10 zeigt ein Ausführungsbeispiel der Übertragungssteuereinrichtung 20, die in Fig. 9 gezeigt ist. In Fig. 10 sind solche Teile, die grundsätzlich den entsprechenden Teilen gemäß Fig. 4 gleich sind, mit den gleichen Bezugszeichen versehen, und eine Beschreibung der gleichen Teile ist fortgelassen. Die in Fig. 10 gezeigte Übertragungssteuereinrichtung 20 enthält zusätzlich zu den Elementen, die in Fig. 4 gezeigt sind, einen Sendezähler-Aktualisierungs/Spezialwert-Detektor (im folgenden einfach als Detektor bezeichnet) 45.
- Die Empfangszustands-Steuereinrichtung 40 führt dem Busbelegungs-Entscheidungsprozessor 44 Auslese/Einschreib-Befehle R/W des Zählers, der Register und der Hinweiseinrichtungen zu, die über den Anschluss 47 angeschlossen sind.
- Zusätzlich zu dem Start/Stopp-Befehl SSC empfängt die Sendezustands-Steuereinrichtung 41 außerdem ein Spezialwert-Erfassungssignal SVDS von dem Detektor 45 und ein Sendezugriffsende-Anmeldungssignal TAEN von der Zugriffssteuereinrichtung 24 über the Anschluss 43 und verwaltet den Sendezustand. Die Sendezustands-Steuereinrichtung 41 führt dem Busbelegungs-Entscheidungsprozessor 44 die Auslese/Einschreib-Befehle R/W des Zählers, der Register und Hinweiseinrichtungen zu, die über den Anschluss 47 angeschlossen sind.
- Der Busbelegungs-Entscheidungsprozessor 44 führt eine Entscheidung über Befehle aus, die von der Empfangszustands- Steuereinrichtung 40 und der Sendezustands-Steuereinrichtung 41 empfangen werden, und führt über den Anschluss 47 einem Bus ein Bussteuerbefehl BCC, eine Busadresse BA und Daten D zu. Dieser Bus ist mit dem Sendezähler 130, dem Übertragungswarteschlangen-Basisadressenregister 31, der Übertragungswarteschlangen-Auslesehinweiseinrichtung 22, der Übertragungswarteschlängen-Einschreibhinweiseinrichtung 23 und der Zugriffssteuereinrichtung 24 verbunden.
- Der Detektor 45 greift über den Anschluss 47 unter Entscheidung durch den Busbelegungs-Entscheidungsprozessor 44 auf den Sendezähler 130 zu und aktualisiert den Sendezähler 130. Zusätzlich führt der Detektor 45 der Sendezustands-Steuereinrichtung 41 ein Spezialwert-Erfassungssignal SVDS zu, wenn der Wert des Sendezählers 130 zu einem bestimmten Wert, z.B. "0" wird.
- Die in Fig. 9 gezeigte Zugriffssteuereinrichtung 24 kann den glichen Aufbau wie die in Fig. 5 gezeigte Zugriffssteuereinrichtung 24 haben.
- Die Arbeitsweise des Übertragungsprozessors 15 ist grundsätzlich die gleiche wie diejenige des ersten Ausführungsbeispiels, das zuvor beschrieben wurde.
- In diesem Ausführungsbeispiel schreibt das Benutzerprogramm jedoch vor dem Einreihen der Übertragungsanforderungen die Anzahl von einzureihenden Übertragungsanforderungen in den Sendezähler 130 ein. Dann schreibt das Benutzerprogramm die Steuerinformation der Übertragungsanforderung in Form des Datenvorsatzes des Übertragungspakets unter einer bestimmten Adresse des Hauptspeichers 17 ein. Die Steuerinformation enthält Information, welche die empfangende Datenverarbeitungseinheit, die Hauptteil-Datenlänge, die sendende Adresse, die empfangende Adresse und dgl. angibt. Die bestimmte Adresse des Hauptspeichers, 17 wird durch TQBAR+TQWPxHL angegeben, wobei TQBAR den Wert (oder Inhalt) des Übertragungswarteschlangen-Basisadressenregisters 31 bezeichnet, TQWP den Wert der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 bezeichnet und HL die Datenvorsatzlänge bezeichnet, wie dies zuvor beschrieben wurde. Danach wird der Wert dir Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 erhöht. Als nächstes wiederholt das Benutzerprogramm den Prozess des Einschreiens der Steuerinformation der Übertragungsanforderung in die Übertragungswarteschlange und des Erhöhens des Werts der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 und beendet den Einreihungsprozess.
- Dementsprechend wird die Steuerinformation der Übertragungsanforderung in der Übertragungswarteschlange in dem Hauptspeicher 17 gespeichert, wie dies zuvor anhand von Fig. 6 beschrieben wurde.
- Wenn der Umfang des ausgelesenen Pakethauptteils nacheinander von der Zugriffssteuereinrichtung 24 gemeldet wird, sendet die Übertragungssteuereinrichtung 20 nacheinander den Pakethauptteil, der in dem Datenpufferspeicher 26 gespeichert ist, an das Netzwerk 11. Wenn das Senden des Übertragungspakets an das Netzwerk 11 endet, erhöht die Übertragungssteuereinrichtung 20 den Wert der Übertragungswarteschlangen-Ausleschinweiseinrichtung 22 und setzt den Wert des Sendezählers 130 herab.
- Zusätzlich prüft die Übertragungssteuereinrichtung 20 die Werte der Übertragungswarteschlangen-Ausleschinweiseinrichtung 22 und der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 und startet den nächsten Übertragungsvorgang, wenn eine Übertragungsanforderung verbleibt, die nach nicht verarbeitet worden ist:
- Daher wird, wenn die Übertragungsvorgänge der eingereihten Übertragungsanforderungen alle enden, der Wert des Sendezählers 130 "0". Das Benutzerprogramm kann das Ende aller Übertragungsvorgänge der eingereihten Übertragungsanforderungen durch gelegentliches Aufrufen des Sendezählers 130 während des Ausführens eines anderen Prozesses während dieser Zeit erkennen, wenn der Wert des Sendezählers 130 "0" wird.
- Dementsprechend kann der Befehlsprozessor 16 durch Setzen eines Werts entsprechend der Anzahl von Übertragungsanforderungen in dem Sendezähler 130 mittels des Befehlsprozessors 16 vor dem Einreihen der Übertragungsanforderungen und Aktualisieren des Werts des Sendezählers 130 jedesmal dann, wenn der Übertragungsvorgang der Übertragungsanforderung ausgeführt ist, das Beenden des Übertragungsvorgangs durch den Übertragungsprozessor 15 einfach durch Überwachen des Werts des Sendezählers 130 erkennen. Zusätzlich ist es, da der Wert des Sendezählers 130 unabhängig von dem Benutzungszustand der Übertragungswarteschlange ist, nicht notwendig, den Endeerkennungswert, wie er zuvor beschrieben wurde, zu halten.
- Als nächstes erfolgt eine Beschreibung des zweiten Ausführungsbeispiels durch Bezugnahme auf Fig. 11 bis Fig. 13. Fig. 11 zeigt ein Ausführungsbeispiel des Übertragungsprozessors 15 gemäß dem zweiten Ausführungsbeispiel. In Fig. 11 sind solche Teile, die den entsprechenden Teilen in Fig. 9 gleich sind, mit den gleichen Bezugszeichen versehen, und eine Beschreibung derselben ist forgelassen.
- In diesem zweiten Ausführungsbeispiel ist kein Sendezähler vorgesehen, wie dies aus Fig. 11 ersichtlich ist. Stattdessen hat eine Übertragungssteuereinrichtung 20A des Übertragungsprozessors 15 einen Aufbau, der in Fig. 12 gezeigt ist. In Fig. 12 sind solche Teile, die den entsprechenden Teilen in Fig. 10 gleich sind, mit den gleichen Bezugszeichen versehen, und eine Beschreibung derselben ist fortgelassen.
- Wie in. Fig. 12 gezeigt ist der Detektor 45 über den Datenbus und den Anschluss 49 mit dem Datenpufferspeicher 26 verbunden. Zusätzlich ist der Sendezähler in diesem Ausführungsbeispiel in dem Hauptspeicher 17 vorgesehen.
- Der Übertragungsprozessor 15 dieses zweiten Ausführungsbeispiels arbeitet wie folgt:
- Vor dem Einreihen der Übertragungsanforderungen schreibt das Benutzerprogramm die Anzahl von einzureihenden Übertragungsanforderungs in den Sendezähler innerhalb des Hauptspeichers 17 ein. Das Benutzerprogramm schreibt die Steuerinformation der Übertragungsanforderung in Form des Datenvorsatzes des Übertragungspakets unter einer bestimmten Adresse des Hauptspeichers 17 ein. Die Steuerinformation enthält Information, welche die empfangende Datenverarbeitungseinheit, die Hauptteil-Datenlänge, die sendende Adresse, die empfangende Adresse und dgl. angibt. Die bestimmte Adresse des Hauptspeichers 17 wird durch TQBAR+TQWPxHL angegeben, wobei TQBAR den Wert (oder Inhalt) des Übertragungswarteschlangen-Basisadressenregisters 31 bezeichnet, TQWP den Wert der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 bezeichnet und HL die Datenvorsatzlänge bezeichnet. Danach wird der Wert der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 erhöht. Als nächstes wiederholt das Benutzerprogramm den Prozess des Einschreibens der Steuerinformation der Übertragungsanforderung in die Übertragungswarteschlange und des Erhöhens des Werts der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 und beendet den Einreihungsprozess.
- Dementsprechend wird die Steuerinformation der Übertragungsanforderung in der Übertragungswarteschlange in dem Hauptspeicher 17 gespeichert, wie dies in Fig. 13 gezeigt ist. Gemäß Fig. 13 ist eine Sendezähler-Adresse die Adresse, unter welcher der Wert des Sendezählers in dem Hauptspeicher 17 gespeichert wird. Die Sendezähler-Steuerinformation enthält ein Aktualisierungs-Kennzeichnungsbit, das angibt, ob der Sendezähler zu aktualisieren ist oder nicht, ein Unterbrechungs- Kennzeichnungsbit, das angibt, ob eine Unterbrechung vorzunehmen ist oder nicht, wenn erfasst ist, dass der Wert des Sendezählers der bestimmte Wert ist, und ein Serialisierungs- Kennzeichnungsbit, das angibt, ob ein periodischer Zugriff auf den Hauptspeicher 17 vor dem Aktualisieren des Sendezählers vorzunehmen ist oder nicht.
- Die Übertragungssteuereinrichtung 20A wartet in dem Zustand, in dem die Übertragungssteuereinrichtung 20A durch den Befehl aus dem Befehlsprozessor 16 gestartet ist, auf das Einreihen der Übertragungsanforderung. Die Übertragungssteuereinrichtung 20A erkennt, dass eine Übertragungsanforderung vorliegt, die noch nicht verarbeitet worden ist, und startet den Übertragungsvorgang, wenn der Wert der Übertragungswarteschlangen-Auslesehinweiseinrichtung 22 und der Wert der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 nicht länger zusammenpassen. Zusätzlich gibt die Übertragungssteuereinrichtung 20A eine Hauptspeicherzugriffsanforderung an die Zugriffssteuereinrichtung 24 aus, um den Datenvorsatz des Übertragungspakets auszulesen.
- Als Ergebnis berechnet die Zugriffssteuereinrichtung 24 TQBAR+TQRPxHL, um auf diese Weise eine Adresse des Paketdatenvorsatzes der ältesten Übertragungsanforderung, die noch nicht verarbeitet worden ist, in dem Hauptspeicher 17 zu gewinnen, und gibt ein Signal für einen Auslesezugriff in bezug auf den Hauptspeicher 17 aus, wobei TQBAR den Wert (oder Inhalt) des Übertragungswarteschlangen-Basisadressenregisters 31 bezeichnet, TQRP den Wert der Übertragungswarteschlangen- Auslesehinweiseinrichtung 22 bezeichnet und HL die Datenvorsatzlänge bezeichnet. Folglich speichert die Zugriffssteuereinrichtung 24, wenn der Paketdatenvorsatz aus dem Hauptspeicher 17 ausgelesen ist, den ausgelesenen Paketdatenvorsatz in dem Datenpufferspeicher 26 und meldet der Überträgungssteuereinrichtung 20A das Ende des Auslesens des Paketdatenvorsatzes.
- Die Zugriffssteuereinrichtung 24 fährt fort, die Steuerinformation der Übertragungsanforderung aus dem Hauptspeicher 17 über den Datenpufferspeicher 26 zu gewinnen, berechnet die Adresse des Hauptteils des Übertragungspakets und gibt ein Signal für einen Pakethauptteil-Auslesezugriff in bezug auf den Hauptspeicher 17 aus. Wenn der Pakethauptteil nacheinander aus dem Hauptspeicher 17 ausgelesen wird, speichert die Zugriffssteuereinrichtung 24 nacheinander des ausgelesenen Pakethauptteils in dem Datenpufferspeicher 26 und meldet der Übertragungssteuereinrichtung 20A nacheinander den Umfang des ausgelesenen Pakethauptteils.
- Wenn das Ende des Auslesens des Paketdatenvorsatzes von der Zugriffssteuereinrichtung 24 gemeldet wird, gewinnt die Übertragungssteuereinrichtung 20A die Steuerinformation der Übertragungsanforderung aus dem Datenpufferspeicher 26. Die Übertragungssteuereinrichtung 20A führt eine vorbestimmte Prüfung und Modifizierung in bezug auf die gewonnene Steuerinformation aus und schreibt die geprüfte und modifizierte Steuerinformation in den Datenpufferspeicher 26 zurück.
- Die Übertragungssteuereinrichtung 20A fährt fort, um den Paketdatenvorsatz von dem Datenpufferspeicher 26 an das Netzwerk 11 zu senden. Außerdem sendet die Übertragungssteuereinrichtung 20A, wenn der Umfang des Pakethauptteils nacheinander von der Zugriffssteuereinrichtung 24 gemeldet wird, nacheinander den Pakethauptteil, der in dem Datenpufferspeicher 26 gespeichert ist, an das Netzwerk 11. Wenn das Senden des Übertragungspakets an das Netzwerk 11 endet, erhöht die Übertragungssteuereinrichtung 20A den Wert der Übertragungswarteschlangen-Auslesehinweiseinrichtung 22 und prüft das Aktualisierungs-Kennzeichnungsbit innerhalb der Sendezähler- Steuerinformation des Paketdatenvorsatzes. Die Übertragungssteuereinrichtung 20A befiehlt das Auslesen des Sendezählers in bezug auf die Zugriffssteuereinrichtung 24, wenn das Aktualisierungs-Kennzeichnungsbit den Schaltzustand EIN aufweist.
- Die Zugriffssteuereinrichtung 24 gewinnt die Sendezähler- Adresse innerhalb des Paketdatenvorsatzes, die gehalten wird, und gibt ein Signal für einen Auslesezugriff in bezug auf den Hauptspeicher 17 aus. Wenn der Sendezähler von dem Hauptspeicher 17 ausgelesen ist, speichert die Zugriffssteuereinrichtung 24 den ausgelesenen Sendezähler in dem Datenpufferspeicher 25 und meldet der Übertragungssteuereinrichtung 20A das Ende des Auslesens des Sendezählers. Wenn der Übertragungssteuereinrichtung 20A das Ende des Auslesens des Sendezählers von der Zugriffssteuereinrichtung 24 gemeldet ist, gewinnt die Übertragungssteuereinrichtung 20A den Wert des Sendezählers aus dem Datenpufferspeicher 26, setzt den Wert des Sendezählers herab und schreibt den herabgesetzten Wert des Sendezählers in den Datenpufferspeicher 26 zurück. Zusätzlich befiehlt die Übertragungssteuereinrichtung 20A das Einschreiben des Werts des Sendezählers in bezug auf die Zugriffssteuereinrichtung 24.
- In diesem Zustand prüft die Übertragungssteuereinrichtung 20A das Serialisierungs-Kennzeichnungsbit innerhalb der Sendezähler-Steuerinformation des Paketdatenvorsatzes und befiehlt der Zugriffssteuereinrichtung 24, einen Zugriff mit einer periodischen Anforderung vorzunehmen, wenn das Serialisierungs- Kennzeichnungsbit den Schaltzustand EIN aufweist. Die Zugriffssteuereinrichtung 24 gibt abhängig von dem Befehl aus der Übertragungssteuereinrichtung 20A ein Signal für einen Zugriff mit der oder ahne die periodische(n) Anforderung in bezug auf den Hauptspeicher 17 aus. Die Zugriffssteuereinrichtung 24 gewinnt außerdem den aktualisierten Sendezähler aus dem Datenpufferspeicher 26 und führt denselben dem Hauptspeicher 17 zu. Wenn das Einscheiben in den Hauptspeicher 17 endet, meldet die Zugriffssteuereinrichtung 24 der Übertragungssteuereinrichtung 20A das Ende des Einschreibens des Sendezählers.
- In Reaktion auf diese Meldung aus der Zugriffssteuereinrichtung 24 prüft die Übertragungssteuereinrichtung 20A das Unterbrechungs-Kennzeichnungsbit innerhalb der Sendezähler- Steuerinformation des Paketdatenvorsatzes. Die Übertragungssteuereinrichtung 20A erzeugt eine Unterbrechung in bezug auf den Befehlsprozessor 16, wenn das Unterbrechungs-Kennzeichnungsbit den Schaltzustand EIN aufweist und der Wert des herabgesetzten Sendezählers "0" ist. Wenn diese zwei Bedingungen nicht erfüllt sind, prüft die Übertragungssteuereinrichtung 20A die Werte der Übertragungswarteschlangen-Auslesehinweiseinrichtung 22 und der Übertragungswarteschlangen- Einschreibhinweiseinrichtung 23 und startet den nächsten Übertragungsvorgang, wenn eine Übertragungsanforderung vorliegt, die noch nicht verarbeitet worden ist.
- Daher wird der Wert des Sendezählers "0", wenn die Übertragungsvorgänge der eingereihten Übertragungsanforderungen alle beendet sind und das Aktualisierungs-Kennzeichnungsbit in diesen Übertragungsanforderungen den Schaltzustand EIN aufweist. Das Benutzerprogramm kann das Ende aller Übertragungsvorgänge der eingereihten Übertragungsanforderungenes durch gelegentliches Aufrufen des Sendezählers während des Ausführens eines anderen Prozess während dieser Zeit erkennen, wenn der Wert des Sendezählers "0" wird. Zusätzlich ist garantiert, wenn das Serialisierungs-Kennzeichnungsbit in diesen Übertragungsanforderungen in den Schaltzustand EIN versetzt ist und der Wert des Sendezählers "0" wird, dass die Hauptspeicherzugriffe des Übertragungsprozessor 15, die vorgenommen wurden, bevor der Wert des Sendezählers "0" wurde, aus Sicht des Befehlsprozessors 16 alle beendet sind. Außerdem besteht, wenn die Unterbrechungs-Kennzeichnungsbits dieser Übertragungsanforderungen den Schaltzustand EIN aufweisen, keine Notwendigkeit, den Sendezähler aufzurufen.
- Dementsprechend ist es durch Vorsehen einer Vielzahl solcher Sendezähler in dem Hauptspeicher 17 möglich, jeder Übertragungswarteschlange einen unabhängigen Sendezähler zuzuweisen, wenn eine Vielzahl von Übertragungswarteschlangen vorliegt, um auf diese Weise eine Vielzahl von Übertragungsanforderungen parallel zu verwalten und eine Zunahme der Hardware zu vermeiden.
- Zusätzlich ist es durch das Einbeziehen der Adresse des Sendezähler in dem Hauptspeicher 17 innerhalb der Steuerinformation der Übertragungsanforderung möglich, eine beliebige Anzahl von Sendezählern in dem Hauptspeicher 17 zu setzen.
- Überdies ist es durch Vorsehen des Aktualisierungs-Kennzeichnungsbits möglich, ein unnötige Erhöhung der Gemeinkosten zu vermeiden, wenn die Übertragung unter Benutzung eines Algorithmus vorgenommen wird, der keine Benutzung des Sendezählers erfordert.
- Außerdem kann das Benutzerprogramm durch Vorsehen des Serialisierungs-Kennzeichnungsbits berücksichtigen, dass ein Übertragungsvorgang und die darauf bezogene Aktualisierung des Inhalts des Hauptspeichers beendet sind, wenn die Übertragung endet, ohne sich des Zusammenpassens des Inhalts des Cache- Speichers innerhalb des Befehlsprozessors und des Inhalts des Hauptspeichers bewusst zu sein. Zusätzlich kann das Serialisierungs-Kennzeichnungsbit in bezug auf einen Übertragungsvorgang, wie einen solchen für einen zwischenliegenden Teil des Übertragungsanforderungsstroms, der keinen periodischen Zugriff auf den Hauptspeicher erfordert, in den Schaltzustand AUS versetzt werden, um auf diese Weise eine unnötige Erhöhung der Gemeinkosten zu vermeiden, die durch den periodischen Zugriff verursacht würde.
- Andererseits besteht durch das Vorsehen des Unterbrechungs- Kennzeichnungsbits keine Notwendigkeit für das Benutzerprogramm, den Sendezähler zu überwachen, womit die durch das Aufrufen des Sendezähles entstehenden Gemeinkosten vermieden werden. Überdies ist es, da das Benutzerprogramm das direkte Überwachen des Sendezählers und der Unterbrechung eigenmächtig auswählen kann, möglich, eine flexible Steuerung durch Ausführen der direkten Überwachung, wenn die Anzahl von Übertragungsanforderungen, die in die Warteschlange einzureihen sind, klein ist, und durch Benutzen der Unterbrechung vorzunehmen, wenn die Anzahl von Übertragungsanforderungen, die in die Warteschlange einzureihen sind, groß ist.
- Bei den ersten und zweiten Ausführungsbeispielen, die zuvor beschrieben wurden, ist der Sendezähler in bezug auf das Paketsenden vorgesehen. Es ist jedoch möglich, in ähnlicher Weise einen Empfangszähler in bezug auf das Paketempfangen vorzusehen.
- Andererseits ist gemäß den ersten und zweiten Ausführungsbeispielen das Aufrufen des Sendezählers notwendig. Wenn das Überwachungsprogramm dieses Aufrufen des Sendezählers vornehmen müsste, würden die Gemeinkosten steigen. Da das Benutzerprogramm in den ersten und zweiten Ausführungsbeispielen dieses Aufrufen des Sendezählers vornimmt, wird ein Ansteigen der Gemeinkosten des Überwachungsprogramms vermieden. Wenn jedoch das Benutzerprogramm das Aufrufen des Sendezählers vornimmt, muss der Befehlsprozessor eine Endlosschleife abarbeiten, bis der Wert des Sendezählers einen speziellen Wert ("0" in dem zuvor beschriebenen Fall) erreicht und die Last des Befehlsprozessors ansteigt.
- Zusätzlich muss, wenn der Befehlsprozessor die Endlosschleife ausführt, und insbesondere in dem Fall, in dem eine Datenverarbeitungseinheit einen parallelen Prozess und einen weiteren Prozess auszuführen hat, die Ausführung des weiteren Prozesses selbst dann, wenn er während des parallelen Prozesses ausführbar wäre, in der Endlosschleife warten, die darauf wartet, dass der Wert des Sendezählers den spezillen Wert erreicht.
- Als nächstes erfolgt unter Bezugnahme auf Fig. 14 u. Fig. 15 eine Beschreibung eines dritten Ausführungsbeispiels der Datenverarbeitungseinheit gemäß der vorliegenden Erfindung, das die Notwendigkeit des Aufrufens des Sendezähler beseitigt.
- Fig. 14 zeigt einen wesentlichen Teil des dritten Ausführungsbeispiels. Insbesondere zeigt Fig. 14 ein Ausführungsbeispiel des Übertragungsprozessors 15 des dritten Ausführungsbeispiels. In Fig. 14 sind solche Teile, die den entsprechenden Teilen in Fig. 11 gleich sind, mit den gleichen Bezugszeichen versehen, und eine Beschreibung derselben ist fortgelassen. Ferner ist in Fig. 14 der Bequemlichkeit halber die Darstellung des Übertragungswarteschlangen-Basisadressenregisters 31, der Übertragungswarteschlangen-Ausleschinweiseinrichtung 22 und der Übertragungswarteschlangen-Einschreibhinweiseinrichtung 23 fortgelassen.
- Fig. 15 zeigt eine Darstellung zur Erklärung der Arbeitsweise des dritten Ausführungsbeispiels. In Fig. 15 sind solche Teile, die den entsprechenden Teilen in Fig. 1, Fig. 2 u. Fig. 14 gleich sind, mit den gleichen Bezugszeichen versehen, und eine Beschreibung derselben ist fortgelassen.
- In diesem Ausführungsbeispiel enthält der Übertragungsprozessor 15 Register 71i, 72i, 73i, 74i u. 75i, die wie in Fig. 14 gezeigt miteinander verbunden sind, wobei i = 1, ... M ist. Das Register 71i speichert einen erwarteten Sendezähler- Wert für einen Prozess #i, und das Register 72i speichert eine Sendezähler-Adresse, die für den Prozess #i geprüft wird. Das Register 73i speichert einen erwarteten Empfangszähler- Wert für den Prozess #i, und das Register 74i speichert eine Empfangszähler-Adresse, die für den Prozess #i geprüft wird. Die Sendezähler-Adresse, die geprüft ist, zeigt die Adresse des entsprechenden Sendezählers an, der unter Prüfung in dem Hauptspeicher 17 steht. In ähnlicher Weise zeigt die Empfangszähler-Adresse, die geprüft ist, die Adresse des entsprechenden Empfangszählers an, der unter Prüfung in dem Hauptspeicher 17 steht. Zusätzlich speichert das Register 75i ein Unterbrechungs-Kennzeichnungsbit, das angibt, ob eine Unterbrechung in bezug auf den Befehlsprozessor 16 erzeugt worden ist oder nicht.
- Andererseits speichert der Hauptspeicher 17 Sendezähler 1711 bis 171M für die Prozesse #1 bis #M und Empfangszähler 172i bis 172M für die Prozesse #1 bis #M, wie dies in Fig. 15 gezeigt ist. Die Adresse des Empfangszählers 172i ist in der Steuerinformation innerhalb des Paketdatenvorsatzes in ähnlicher Weise wie die Adresse des Sendezählers 1711 enthalten, wie dies zuvor unter Bezugnahme auf z.B. Fig. 13 beschrieben wurde.
- Weil die Arbeitsweise, bei welcher der Empfangszähler benutzt wird, grundsätzlich die gleiche wie die Arbeitsweise ist, bei welcher der Sendezähler benutzt wird, erfolgt nur eine Beschreibung der Arbeitsweise, bei welcher der Sendezähler benutzt wird.
- Das Register 71i speichert den erwarteten Wert des Sendezählers für den entsprechend Prozess #i, wobei der Prozess #i einer Übertragungswarteschlange oder einer Vielzahl von Übertragungswarteschlangen entsprechen kann. Das Register 72i speichert die Adresse des Sendezählers 17i entsprechend dem Prozess #i in dem Hauptspeicher 17. Wenn der Wert des Sendezählers 171i in dem Hauptspeicher 17 mit dem erwarteten Wert (d.h. einem speziellen Wert) zusammenpasst, der in dem Register 71i gespeichert ist, und die entsprechende Adresse, die in dem Register 72i gespeichert ist, mit der Adresse des Sendezählers 171i in dem Hauptspeicher 17 zusammenpasst, erzeugt die Übertragungssteuereinrichtung 20A über den An- schluss 21 eine Unterbrechung in bezug auf den Befehlsprozessor 16. Zusätzlich setzt die Übertragungssteuereinrichtung 20A, wenn die Unterbrechung erzeugt ist, ein Unterbrechungs- Kennzeichnungsbit in dem Register 75, um auf diese Weise anzuzeigen, dass die Unterbrechung erzeugt worden ist.
- In anderen Worten ausgedrückt heißt dies, dass angenommen wird, dass ein Warten auftritt, bis der Wert eines Paketzählers, d. h. des Sendezählers 17i oder des Empfangszählers 172i, den erwarteten (speziellen) Wert annimmt. In diesem Fall nimmt das Benutzerprogramm einen Systemruf durch Einbeziehen der Art des Paketzählers, des erwarteten Werts des Paketzählers und der Adresse des Paketzählers als Parameter vor. Die Art des Paketzählers gibt an, ob der Zähler der Sendezähler 171i oder der Empfangszähler 1721 ist. In Reaktion auf diesen Systemruf ruft das arbeitende System den erwarteten Wert und die Adresse des Paketzählers ab und setzt diesen erwarteten Wert z.B. in dem entsprechend Register 71i und die Adresse z.B. in dem Register 72i. Als Ergebnis wird eine Unterbrechung in bezug auf den Prozess möglich, wenn sie erforderlich ist. Danach wartet der Prozess, der den Systemruf, der zuvor beschrieben wurde, ausgegeben hat, und es werden andere Prozesse abgefertigt. Weil das Register 72i die Adresse des Sendezählers 1711 speichert, ist es möglich, den Wert des Sendezählers 171i und den entsprechenden erwarteten Wert selbst nachdem der Wert des Sendezähler 171i aktualisiert wurde, korrekt zu vergleichen.
- Beispielsweise vergleicht die Übertragungssteuereinrichtung 20A im Falle des Prozesses #1 des Paketsendens den Wert des Sendezählers 171i und den erwarteten Wert in dem Register 711 und vergleicht außerdem die Adresse des Sendezählers 1711 in dem Hauptspeicher 17 und die Adresse, die in dem Register 721 gespeichert ist, wenn der Wert des Sendezählers 171i durch das Paketsenden herabgesetzt (oder erhöht) ist. Wenn der Wert des Sendezählers 1711 und der erwartete Wert in dem Register 71i zusammenpassen und die Adresse des Sendezählers 1711 in dem Hauptspeicher 17 und die Adresse, die in dem Register 72i gespeichert ist, zusammenpassen, erzeugt die Überträgungssteuereinrichtung 20A eine Unterbrechung in bezug auf den Befehlsprozessor 16, um die Aufhebung des angegebenen Wartezustands anzuzeigen. Zusätzlich setzt die Übertragungssteuereinrichtung 20A ein Unterbrechungs-Kennzeichnungsbit in dem Register 75, um anzuzeigen, dass eine Unterbrechung in bezug auf den Prozess #1 erzeugt worden ist. Folglich wird der Prozess #1 in Reaktion auf die Unterbrechung aus dem Wartezustand in einen Aktivzustand versetzt.
- Daher ist es gemäß diesem Ausführungsbeispiel möglich, die Gemeinkosten des Überwachungsprogramms verglichen mit dem Fall zu senken, in dem das Überwachungsprogramm das Aufrufen des Paketzählers ausführt. Zusätzlich ist es möglich, die Endlosschleife des Benutzerprogramms verglichen mit den dritten und vierten Ausführungsbeispielen zu beseitigen. In anderen Worten ausgedrückt heißt dies, dass in diesem Ausführungsbeispiel kein Aufrufen des Paketzählers erforderlich ist, um dadurch den Datendurchlauf des Systems zu verbessern.
- Obwohl es vorzuziehen ist, den erwarteten Wert und die Adresse des Paketzählers für jeden parallelen Prozess und jedes Paketsenden/empfangen vorzusehen, ist es möglich, diese gemeinsam für das Paketsenden und das Paketempfangen zu benutzen. In diesem Fall kann jedoch eine unnötige Unterbrechung erzeugt werden.
- Es ist nicht wesentlich, die Adressen der Sende- und Empfangszähler zu speichern, und die Register 72i u. 74i können fortgelassen werden. In diesem Fall wird beim Prüfen des Werts z.B. des Sendezählers 1711 dieser Wert mit allen der erwarteten Werte verglichen, die in den Registern 71&sub1; bis 71M gespeichert sind. Folglich kann eine unnötige Unterbrechung erzeugt werden, wenn diese Wert zufällig mit dem erwarteten Wert für einen anderen Sendezähler statt des Sendezählers 1711 zusammenpassen. Wenn in diesem Fall die Unterbrechung von der Übertragungssteuereinrichtung 20A erzeugt wird, prüft das arbeitende System, ob der Wert des Sendezählers 171&sub1; korrekt mit dem erwarteten Wert für den Sendezähler 111 zusammenpasst oder nicht, und versetzt den Prozess #1 von dem Wartezustand in den Aktivzustand, wenn eine Bejahung besteht. Andererseits wird die Unterbrechung im Falle einer Verneinung aufgegeben, weil diese Unterbrechung nicht für den Sendezähler 1711 erzeugt ist.
- Ferner ist die vorliegende Erfindung nicht auf diese Ausführungsbeispiele beschränkt, sondern es können verschiedenartige Änderungen und Modifizierungen vorgenommen werden, ohne dazu den Schutzumfang für die vorliegende Erfindung zu verlassen.
Claims (17)
1. Datenverarbeitungseinheit, die dazu bestimm ist, über
ein Netzwerk Daten mit einer anderen
Datenverarbeitungseinheit auszutauschen, mit
einem Hauptspeichermittel (17) zum Speichern von
Programmen und Daten,
einem Befehlsprozessormittel (16) das mit dem
Hauptspeichermittel verbunden ist, zum Ausgeben von
Übertragungsanforderungen durch Ausführen von Programmen, die in dem
Hauptspeichermittel gespeichert sind,
einem Übertragungsprozessormittel (15), das mit dem
Hauptspeichermittel und dem Befehlsprozessormittel verbunden
ist, zum Einreihen der Übertragungsanforderungen aus dem
Befehlsprozessormittel in eine Übertragungsanforderungs-
Warteschlange und zum Ausführen eines Übertragungsvorgangs
zwischen dem Hauptspeichermittel und dem NetzWerk auf der
Grundlage jeder Übertragungsanforderung, die aus der
Übertragungsanforderungs-Warteschlange gewonnen wird, und
einem Zählermittel (130) zum Speichern eines Inhalts,
der jedesmal dann, wenn der Übertragungsvorgang auf der
Grundlage der Übertragungsanforderung ausgeführt ist, durch
das Übertragungsprozessormittel aktualisiert wird,
dadurch gekennzeichnet, dass
auf das Zählermittel (130) durch das
Befehlsprozessormittel zugegriffen werden kann, so dass das
Befehlsprozessormittel ein Ende des Übertragungsvorgangs durch das
Übertragungsprozessormittel aus dem Inhalt des Zählermittels
erkennen kann.
2. Datenverarbeitungseinheit nach Anspruch 1, dadurch
gekennzeichnet, dass das Zählermittel innerhalb des
Übertragungsprozessormittels (15) vorgesehen ist.
3. Datenverarbeitungseinheit nach Anspruch 1 oder 2, dadurch
gekennzeichnet, dass das Zählermittel innerhalb
des Hauptspeichermittels (17) vorgesehen ist.
4. Datenverarbeitungseinheit nach Anspruch 3, dadurch
gekennzeichnet, dass das Übertragungsprozessormitel
(15) eine Vielzahl von
Übertragungsanforderung-Warteschlangen in eine Warteschlange einreiht und eine Vielzahl der
Zählermittel in Übereinstimmung mit der Vielzahl von
Übertragungsanforderungs-Warteschlangen vorgesehen sind.
5. Datenverarbeitungseinheit nach Anspruch 3 oder 4, dadurch
gekennzeichnet, dass jede
Übertragungsanforderung eine Steuerinformation enthält und die Steuerinformation
eine Adresse des Zählermittels in dem Hauptspeichermittel
(17) enthält.
6.
Datenverarbeitungseinheit nach Anspruch 5, dadurch
gekennzeichnet, dass die Steuerinformation ein
Aktualisierungs-Kennzeichen enthält, das anzeigt, ob das
Zählermittel aktualisiert worden ist oder nicht.
7. Datenverarbeitungseinheit nach Anspruch 5 oder 6, dadurch
gekennzeichnet, dass die Steuerinformation ein
Reihenfolgebildungs-Kennzeichen enthält, das einen
Reihenfolgezugriff auf das Hauptspeichermittel (17) anzeigt, der vor
dem Aktualisieren des Zählermittels vorgenommen wurde.
8. Datenverarbeitungseinheit nach einem der Ansprüche 5 bis
7, dadurch gekennzeichnet, dass die
Steuerinformation ein Unterbrechungs-Kennzeichen enthält, das
anzeigt, ob eine Unterbrechung in bezug auf das
Befehlsprozessormittel (16) vorzunehmen ist oder nicht, wenn ein Wert des
Zählermittels einen vorbestimmten Wert erreicht.
9. Datenverarbeitungseinheit nach Anspruch 5, dadurch
gekennzeichnet, dass die Steuerinformation
zumindest eines von Kennzeichen enthält, das aus einer Gruppe
ausgewählt ist, die aus einem Aktualisierungs-Kennzeichen, das
anzeigt, ob das Zählermittel aktualisiert worden ist oder
nicht, einem Reihenfolgebildungs-Kennzeichen, das einen
Reihenfolgezugriff auf das Hauptspeichermittel (17) vor dem
Aktualisieren des Zählermittels anzeigt, und einem
Unterbrechungs-Kennzeichen besteht, das anzeigt, ob eine
Unterbrechung in bezug auf das Befehlsprozessormittel (16)
vorzunehmen ist oder nicht, wenn ein Wert des Zählermittels einen
vorbestimmten Wert erreicht.
10. Datenverarbeitungseinheit nach einem der Ansprüche 1 bis
9, dadurch gekennzeichnet, dass das
Zählermittel (130) den Inhalt speichert, der jedesmal dann
aktualisiert wird, wenn durch den Übertragungsvorgang auf der
Grundlage der Übertragungsanforderung zumindest ein Vorgang, ein
Sendevorgang oder ein Empfangsvorgang, ausgeführt ist.
11. Datenverarbeitungseinheit nach einem der Ansprüche 1 bis
10, dadurch gekennzeichnet, dass das
Befehlsprozessormittel (16) vor dem Einreihen der
Übertragungsanforderungen in eine Warteschlange in dem Zählermittel (130)
einen Wert setzt, der von einer Anzahl von
Übertragungsvorgängen abhängig ist.
12. Datenverarbeitungseinheit nach Anspruch 3, dadurch
gekennzeichnet, dass das
Übertragungsprozessormittel (15) enthält:
ein erstes Registermittel (71i, 73i) zum Speichern eines
erwarteten Werts des Inhalts des Zählermittels für einen
beliebigen Vorgang und
ein zweites Registermittel (75) zum Speichern eines
Kennzeichens, das anzeigt, ob eine Unterbrechung in bezug auf das
Befehlsprozessormittel (164) vorgenommen worden ist oder
nicht,
wobei das Übertragungsprozessormittel (15) eine
Unterbrechung in bezug auf das Befehlsprozessormittel vornimmt und
das Kennzeichen in dem zweiten Registermittel setzt, wenn der
Inhalt des Zählermittels und der erwartete Wert für den
beliebigen Vorgang in dem ersten Registermittel übereinstimmen.
13. Datenverarbeitungseinheit nach Anspruch 12, dadurch
gekennzeichnet, dass der beliebige Vorgang
einer oder einer Vielzahl von
Übertragungsanforderungs-Warteschlangen entspricht.
14. Datenverarbeitungseinheit nach Anspruch 12 oder 13,
dadurch gekennzeichnet, dass das
Übertragungsprozessormittel (15) ein drittes Registermittel (72i, 74i)
zum Speichern einer Adresse des Zählermittels in dem
Hauptspeichermittel für den beliebigen Vorgang enthält.
15. Datenverarbeitungseinheit nach Anspruch 14, dadurch
gekennzeichnet, dass das Befehlsprozessormittel
(16) den erwarteten Wert und die Adresse des Zählermittels
für den beliebigen Vorgang in dem ersten bzw. dem dritten
Registermittel (71i, 73i, 72i, 74i) setzt.
16. Datenverarbeitungseinheit nach Anspruch 14 oder 15,
dadurch gekennzeichnet, dass
das Übertragungsprozessormittel (15) eine Vielzahl von
Übertragungsanforderungs-Warteschlangen in eine Warteschlange
einreiht,
eine Vielzahl der Zählermittel in Übereinstimmung mit der
Vielzahl von Übertragungsanforderungs-Warteschlangen
vorgesehen sind,
eine Vielzahl der ersten und dritten Registermittel (71i,
73i, 72j, 74ij in Übereinstimmung mit der Vielzahl von
Vorgängen vorgesehen sind,
jeder der Vorgänge einer oder einer Vielzahl von
Übertragungsanforderungs-Warteschlangen entspricht.
17. Datenverarbeitungseinheit nach einem der Ansprüche 12 bis
16, dadurch gekennzeichnet, dass das
Zählermittel (130) den Inhalt speichert, der jedesmal dann
aktualisiert wird, wenn auf der Grundlage der
Übertragungsanforderung durch den Übertragungsvorgang zumindest ein Vorgang, ein
Sendevorgang oder ein Empfangsvorgang, ausgeführt ist.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4339096A JP2991223B2 (ja) | 1992-12-18 | 1992-12-18 | データ処理装置 |
JP33909792 | 1992-12-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69331022D1 DE69331022D1 (de) | 2001-11-29 |
DE69331022T2 true DE69331022T2 (de) | 2002-07-04 |
Family
ID=26576318
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69331038T Expired - Fee Related DE69331038T2 (de) | 1992-12-18 | 1993-12-16 | Datenverarbeitungseinheit |
DE69331022T Expired - Fee Related DE69331022T2 (de) | 1992-12-18 | 1993-12-16 | Datenverarbeitungseinheit |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69331038T Expired - Fee Related DE69331038T2 (de) | 1992-12-18 | 1993-12-16 | Datenverarbeitungseinheit |
Country Status (3)
Country | Link |
---|---|
US (2) | US5664104A (de) |
EP (2) | EP0602641B1 (de) |
DE (2) | DE69331038T2 (de) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6075546A (en) * | 1997-11-10 | 2000-06-13 | Silicon Grahphics, Inc. | Packetized command interface to graphics processor |
BR9815290A (pt) | 1997-11-13 | 2001-12-04 | Hyperspace Communications Inc | Dispositivo e processo de transferência dearquivo, sinal de dados de computadorincorporado em um meio de propagação, e, sistemade fornecimento de arquivo de dados |
JP3375875B2 (ja) * | 1998-01-13 | 2003-02-10 | 三菱電機株式会社 | 衛星パケット端末とその送信方法 |
US6134607A (en) * | 1998-04-03 | 2000-10-17 | Avid Technology, Inc. | Method and apparatus for controlling data flow between devices connected by a memory |
US6154785A (en) * | 1998-07-17 | 2000-11-28 | Network Equipment Technologies, Inc. | Inter-processor communication system |
US6948094B2 (en) * | 2001-09-28 | 2005-09-20 | Intel Corporation | Method of correcting a machine check error |
US20040030963A1 (en) * | 2002-08-12 | 2004-02-12 | Sun Microsystems, Inc., A Delaware Corporation | Method and apparatus for debugging computer program |
USD498534S1 (en) | 2002-10-16 | 2004-11-16 | Microsound A/S | Hearing aid |
US20080005357A1 (en) * | 2006-06-30 | 2008-01-03 | Microsoft Corporation | Synchronizing dataflow computations, particularly in multi-processor setting |
JP5349816B2 (ja) * | 2008-03-18 | 2013-11-20 | 富士通株式会社 | 回線監視装置及び回線監視方法 |
JP6183251B2 (ja) * | 2014-03-14 | 2017-08-23 | 株式会社デンソー | 電子制御装置 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3648256A (en) * | 1969-12-31 | 1972-03-07 | Nasa | Communications link for computers |
US4271507A (en) * | 1979-06-07 | 1981-06-02 | Ford Motor Company | Communication broadcast channel interface |
US4365294A (en) * | 1980-04-10 | 1982-12-21 | Nizdorf Computer Corporation | Modular terminal system using a common bus |
IT1151351B (it) * | 1982-01-19 | 1986-12-17 | Italtel Spa | Disposizione circuitale atta a realizzare lo scambio di dati tra una coppia di elaboratori operanti secondo il principio master-slave |
US4506324A (en) * | 1982-03-08 | 1985-03-19 | The United States Of America As Represented By The Secretary Of The Navy | Simulator interface system |
US5010477A (en) * | 1986-10-17 | 1991-04-23 | Hitachi, Ltd. | Method and apparatus for transferring vector data between parallel processing system with registers & logic for inter-processor data communication independents of processing operations |
WO1990000841A1 (en) * | 1988-07-15 | 1990-01-25 | Luminis Pty. Ltd. | Access protection and priority control in distributed queueing |
US5050066A (en) * | 1988-10-14 | 1991-09-17 | Intel Corporation | Apparatus with a single memory and a plurality of queue counters for queuing requests and replies on a pipelined packet bus |
DE68918077T2 (de) * | 1989-01-17 | 1995-04-06 | Philips Nv | Verfahren und System zur Übertragung von gepufferten Datenpaketen auf einem Übertragungsnetz. |
US4965793A (en) * | 1989-02-03 | 1990-10-23 | Digital Equipment Corporation | Method and apparatus for interfacing a system control unit for a multi-processor |
CA1320257C (en) * | 1989-04-20 | 1993-07-13 | Ernst August Munter | Method and apparatus for input-buffered asynchronous transfer mode switching |
JP2584113B2 (ja) * | 1989-07-21 | 1997-02-19 | 松下電器産業株式会社 | データ転送方法及びデータ転送装置 |
DE69132300T2 (de) * | 1990-03-12 | 2000-11-30 | Hewlett-Packard Co., Palo Alto | Durch Anwender festgelegter direkter Speicherzugriff mit Anwendung von virtuellen Adressen |
US5210749A (en) * | 1990-05-29 | 1993-05-11 | Advanced Micro Devices, Inc. | Configuration of srams as logical fifos for transmit and receive of packet data |
AU641288B2 (en) * | 1990-09-28 | 1993-09-16 | Fujitsu Limited | Message control method for data communication system |
US5162986A (en) * | 1990-10-19 | 1992-11-10 | Allen-Bradley Company, Inc. | Remote downloading and uploading of motion control program information to and from a motion control I/O module in a programmable controller |
JP2542460B2 (ja) * | 1990-10-31 | 1996-10-09 | 富士通株式会社 | デ―タ転送割込制御方式 |
JP2752265B2 (ja) * | 1991-05-10 | 1998-05-18 | 株式会社東芝 | Lanからの切離し機能を持つ計算機システム |
JPH0512143A (ja) * | 1991-07-05 | 1993-01-22 | Fujitsu Ltd | 複流バスにおける障害検出方式 |
US5379340A (en) * | 1991-08-02 | 1995-01-03 | Betterprize Limited | Text communication system |
-
1993
- 1993-12-15 US US08/166,929 patent/US5664104A/en not_active Expired - Lifetime
- 1993-12-16 EP EP93120319A patent/EP0602641B1/de not_active Expired - Lifetime
- 1993-12-16 DE DE69331038T patent/DE69331038T2/de not_active Expired - Fee Related
- 1993-12-16 EP EP98120113A patent/EP0901083B1/de not_active Expired - Lifetime
- 1993-12-16 DE DE69331022T patent/DE69331022T2/de not_active Expired - Fee Related
-
1995
- 1995-06-05 US US08/463,926 patent/US5652905A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5664104A (en) | 1997-09-02 |
EP0602641B1 (de) | 2001-10-31 |
DE69331022D1 (de) | 2001-11-29 |
EP0901083A1 (de) | 1999-03-10 |
EP0602641A3 (en) | 1996-03-06 |
EP0602641A2 (de) | 1994-06-22 |
DE69331038T2 (de) | 2002-07-04 |
DE69331038D1 (de) | 2001-12-06 |
US5652905A (en) | 1997-07-29 |
EP0901083B1 (de) | 2001-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3751091T2 (de) | Übertragungsprotokoll zwischen Prozessoren. | |
DE69023018T2 (de) | Prozessor-Unterbrechungssteuerung. | |
DE3852928T2 (de) | Datenprozessor mit A/D-Umsetzer, um mehrere analoge Eingabekanäle in Digitaldaten umzusetzen. | |
DE69520886T2 (de) | System und verfahren zur verarbeitung von signaldaten und kommunikationssystem mit system zur verarbeitung von signaldaten | |
DE2847216C2 (de) | Datenverarbeitungsanlage mit Mehrprogrammbetrieb | |
DE69331311T2 (de) | Datenkommunikationssystem und Verfahren | |
DE69332059T2 (de) | Datenübertragung zwischen Prozessoren in Mehrprozessorsystemen | |
DE69613056T2 (de) | Schnittstelleneinrichtung zwischen einem Rechner redundanter Architektur und einem Kommunikationsmittel | |
DE69326530T2 (de) | Mehrrechnersystem | |
DE69519117T2 (de) | Ein Rechnersystem | |
DE69505871T2 (de) | Taktfehlererkennungsschaltung | |
DE69221986T2 (de) | Vorrichtung zur Verringerung von Unterbrechungswiederholungsversuchen | |
DE68928452T2 (de) | Unterbrechungssteuerung | |
DE3850986T2 (de) | Verfahren zur Reservekapazitätsverwendung für Fehlererkennung in einem Multiprozessorsystem. | |
DE69418823T2 (de) | Nachrichtenverarbeitungssystem | |
DE69331022T2 (de) | Datenverarbeitungseinheit | |
DE68926954T2 (de) | Schnittstelle zwischen einer Systemsteuereinheit und einer Dienst-Processoreinheit in einem Digitalrechner | |
CH634671A5 (de) | Kanalspeicher-adapter. | |
DE69127771T2 (de) | Datenübertragungssteuerungsvorrichtung | |
DE3820544A1 (de) | Ortsbereichsnetzsystem mit einem hiermit gekoppelten mehrcomputersystem und verfahren zur steuerung hiervon | |
EP0586715B2 (de) | Informationsübertragungsverfahren zur Übertragung digitaler Informationen | |
CH629010A5 (de) | Anschlussschaltung fuer eine eingabe/ausgabeschnittstelle in einer datenverarbeitungsanlage. | |
DE3750045T2 (de) | Unterbrechungssteuerungsvorrichtung für eine virtuelle Maschine mit einer Vielzahl von Verarbeitungseinheiten. | |
EP2110995A1 (de) | Datenübertragungsvorrichtung | |
DE3751229T2 (de) | Parallelrechnersystem, geeignet für asynchrone Datenübertragung. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |