DE19901792C2 - Datenverarbeitunsvorrichtung und Datenverarbeitungsverfahren - Google Patents

Datenverarbeitunsvorrichtung und Datenverarbeitungsverfahren

Info

Publication number
DE19901792C2
DE19901792C2 DE19901792A DE19901792A DE19901792C2 DE 19901792 C2 DE19901792 C2 DE 19901792C2 DE 19901792 A DE19901792 A DE 19901792A DE 19901792 A DE19901792 A DE 19901792A DE 19901792 C2 DE19901792 C2 DE 19901792C2
Authority
DE
Germany
Prior art keywords
data
bus
processing
accumulation
processing device
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 - Lifetime
Application number
DE19901792A
Other languages
English (en)
Other versions
DE19901792A1 (de
Inventor
Kori Mitsunori
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE19901792A1 publication Critical patent/DE19901792A1/de
Application granted granted Critical
Publication of DE19901792C2 publication Critical patent/DE19901792C2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Multi Processors (AREA)

Description

Diese Erfindung bezieht sich auf eine Datenverarbei­ tungsvorrichtung mit einer Eingangs/Ausgangs(E/A)- Vorrichtung und ein Datenverarbeitungsverfahren mit dieser Vorrichtung.
Eine E/A-Vorrichtung, z. B. eine Scheibensteuervor­ richtung, Netzwerk-Steuervorrichtung usw. ist gewöhn­ lich mit einem Bus verbunden. Da die Anzahl der mit einem Bus verbindbaren Vorrichtungen durch einen elektrischen Zustand auf dem Bus, die Anzahl von Steuersignalen usw. beschränkt ist, ist die Anzahl der mit dem Bus verbundenen Vorrichtungen begrenzt.
Die Anzahl von mit dem Bus verbindbaren Vorrichtungen kann durch eine Schichtenbildung des Busses erhöht werden. Der geschichtete Bus wird nachfolgend als hierarchischer Bus bezeichnet. Bei dem hierarchischen Bus ist ein Buskoppler zwischen einem Bus an einer oberen Schicht und einem Bus an einer unteren Schicht vorgesehen. Der Buskoppler überträgt Daten von einem Bus zu einem zweckmäßigen Bus auf der Grundlage einer Bestimmungsadresse der in dem Bus übertragenen Daten.
Fig. 23 illustriert ein Datenübertragungssystem mit dem hierarchischen Bus gemäß dem Stand der Technik. In der Fig. 23 sind Scheibensteuervorrichtungen und Magnetscheiben-Laufwerke (nachfolgend auch als "Scheibenlaufwerke" bezeichnet), die von den Schei­ bensteuervorrichtungen gesteuert werden, beispiels­ weise als die E/A-Vorrichtungen vorgesehen. Normaler­ weise ist ein Hauptspeicher ein Ursprung oder eine Bestimmung einer Datenübertragung, und der Hauptspei­ cher wird von allen E/A-Vorrichtung geteilt. Daher ist der Hauptspeicher mit einer obersten Schicht in dem hierarchischen Bus verbunden.
Die Arbeitsweise wird mit Bezug auf Fig. 23 erläu­ tert.
Daten in Dateien 61a bis 61f in den Scheibenlaufwer­ ken 8a bis 8f werden zu Puffern 10a bis 10f in einem Hauptspeicher 2 übertragen und durch eine Zentralver­ arbeitungseinheit (CPU) 1 verarbeitet.
Die CPU 1 fordert eine Scheibensteuervorrichtung 7a auf, die Daten in der Datei 61a in dem Scheibenlauf­ werk 8a zu dem Puffer 10a zu übertragen. Die Schei­ bensteuervorrichtung 7a überträgt die Daten zu einem E/A-Bus 5a. Ein E/A-Buskoppler 6a überträgt die Daten von dem E/A-Bus 5a zu einem E/A-Bus 5d. ein System­ bus-E/A-Buskoppler 4 überträgt die Daten von dem E/A- Bus 5d zu einem Systembus 3. Dann werden die Daten in dem Puffer 10a in dem Hauptspeicher 2 gespeichert.
Die CPU 1 fordert auch eine Scheibensteuervorrichtung 7b auf, die Daten in der Datei 61b in dem Scheiben­ laufwerk 8b zu dem Puffer 10b zu übertragen. Die Scheibensteuervorrichtung 7b überträgt die Daten zu dem E/A-Bus 5a. der E/A-Buskoppler 6a überträgt die Daten von dem E/A-Bus 5a zu dem E/A-Bus 5d. Der Sy­ stembus-E/A-Buskoppler 4 überträgt die Daten von dem E/A-Bus 5d zu dem Systembus 3. Dann werden die Daten in dem Puffer 10b in dem Hauptspeicher 2 gespeichert.
Die CPU 1 fordert auch eine Scheibensteuervorrichtung 7c auf, die Daten in der Datei 61c in dem Scheiben­ laufwerk 8c zu dem Puffer 10c zu übertragen. Die Scheibensteuervorrichtung 7c überträgt die Daten zu einem E/A-Bus 5b. Ein E/A-Buskoppler 6b überträgt die Daten von dem E/A-Bus 5b zu dem E/A-Bus 5d. Der Sy­ stembus-E/A-Buskoppler 4 überträgt die Daten von dem E/A-Bus 5d zu dem Systembus 3. Dann werden die Daten in dem Puffer 10c in dem Hauptspeicher 2 gespeichert.
Die CPU 1 fordert auch eine Scheibensteuervorrichtung 7d auf, die Daten in der Datei 61d in dem Scheiben­ laufwerk 8d zu dem Puffer 10d zu übertragen. die Scheibensteuervorrichtung 7d überträgt die Daten zu dem E/A-Bus 5b. Der E/A-Buskoppler 6b überträgt die Daten von dem E/A-Bus 5b zu dem E/A-Bus 5d. der Sy­ stembus-E-A-Buskoppler 4 überträgt die Daten von dem E/A-Bus 5d zu dem Systembus 3. Dann werden die Daten in den Puffer 10d in dem Hauptspeicher 2 gespeichert.
Die CPU 1 fordert auch eine Scheibensteuervorrichtung 7e auf, die Daten in der Datei 61e in dem Scheiben­ laufwerk 8e zu dem Puffer 10e zu übertragen. die Scheibensteuervorrichtung 7e überträgt die Daten zu einem E/A-Bus 5c. Ein E/A-Buskoppler 6c überträgt die Daten von dem E/A-Bus 5c zu dem E/A-Bus 5d. Der Sy­ stembus-E/A-Buskoppler 4 überträgt die Daten von dem E/A-Bus 5d zu dem Systembus 3. Dann werden die Daten in dem Puffer 10e des Hauptspeichers 2 gespeichert.
Die CPU 1 fordert auch eine Scheibensteuervorrichtung 7f auf, die Daten in der Datei 61f in dem Scheiben­ laufwerk 8f zu dem Puffer 10f zu übertragen. Die Scheibensteuervorrichtung 7f überträgt die Daten zu dem E/A-Bus 5c. Der E/A-Buskoppler 6c überträgt die Daten von dem E/A-Bus 5c zu dem E/A-Bus 5d. Der Sy­ stembus-E/A-Buskoppler 4 überträgt die Daten von dem E/A-Bus 5d zu dem Systembus 3. Dann werden die Daten in dem Puffer 10f in dem Hauptspeicher 2 gespeichert.
Die CPU 1 verarbeitet die zu den Puffern 10a bis 10f übertragenen Daten und speichert ein Ergebnis der Verarbeitung in einem letzten Ausgangspuffer 101.
Wie festgestellt ist, werden die Daten immer über den E/A-Bus 5d, den Systembus-E/A-Buskoppler 4 und den Systembus 3 zu dem Hauptspeicher 2 übertragen. Die von allen E/A-Vorrichtungen, die mit unteren Schich­ ten in dem hierarchischen Bus verbunden sind, über­ tragenen Daten werden durch die Busse in oberen Schichten des hierarchischen Busses kanalisiert.
Jedoch können, da eine Datenübertragungsmenge in ei­ nem Bus in einer Zeiteinheit im Allgemeinen begrenzt ist, die die Grenze überschreitenden Daten nicht übertragen werden.
Wenn ein Bus für eine Datenübertragung besetzt ist, können, selbst wenn eine Übertragung von anderen Da­ ten angefordert wird, die letztgenannten Daten nicht übertragen werden, bis die erste Datenübertragung be­ endet ist. Wenn die Daten in den Dateien 61a bis 61e auf einmal übertragen werden, ist eine Übertragungs­ geschwindigkeit der Daten beschränkt durch die Über­ tragungsgeschwindigkeiten von Daten in den E/A-Bus 5d und dem Systembus 3. Daher ist, selbst wenn die An­ zahl von verbindbaren Vorrichtungen erhöht wird durch Verwendung des hierarchischen Busses, eine Datenüber­ tragungsgeschwindigkeit des Systems beschränkt durch eine Übertragungsgeschwindigkeit des Busses in der obersten Schicht. Daher kann eine Datenübertragungs­ geschwindigkeit, die für die Anzahl von Vorrichtungen zweckmäßig ist, nicht realisiert werden.
Bei dem hierarchischen Bus gemäß dem Stand der Tech­ nik verarbeitet die CPU 1 alle Daten. Da eine von der CPU in einer Zeiteinheit verarbeitete Datenmenge be­ grenzt ist, können die Grenze überschreitenden Daten nicht verarbeitet werden. Wenn die CPU 1 die von den Dateien 61a bis 61e übertragenen Daten verarbeitet, ist eine Verarbeitungsgeschwindigkeit der Daten durch eine Verarbeitungsgeschwindigkeit der CPU 1 be­ schränkt. Selbst wenn eine Anzahl von verbindbaren Vorrichtungen erhöht wird durch Verwendung des hier­ archischen Busses, ist eine Verarbeitungsgeschwindig­ keit des Systems durch die Verarbeitungsgeschwindig­ keit der CPU begrenzt, und es kann eine Datenverar­ beitungsgeschwindigkeit, die für die Anzahl der Vor­ richtungen zweckmäßig ist, nicht realisiert werden.
Der hierarchische Bus gemäß dem Stand der Technik ist wie vorstehend dargestellt ausgebildet, und alle übertragenen Daten werden durch die Busse in oberen Schichten kanalisiert. Daher kann, selbst wenn die Anzahl von verbindbaren Vorrichtungen erhöht wird, eine angemessene Datenübertragungsgeschwindigkeit nicht realisiert werden.
Der hierarchische Bus gemäß dem Stand der Technik ist wie vorbeschrieben ausgebildet und die Verarbeitungs­ geschwindigkeit für Daten ist durch die Verarbei­ tungsgeschwindigkeit der CPU beschränkt. Daher kann, selbst wenn die Anzahl von verbindbaren Vorrichtung erhöht wird, eine angemessene Verarbeitungsgeschwin­ digkeit nicht realisiert werden.
Die US 5 574 869 A offenbart eine Datenverarbeitungs­ anlage entsprechend dem Oberbegriff des Anspruchs 1, mit einem oberen Bus und mindestens einem unteren Bus, mindestens einem Buskoppler zwischen dem oberen und dem unteren Bus zum hierarchischen Verbinden des oberen mit dem unteren Bus, einem mit dem oberen Bus verbundenen Speicher, einer mit oberen Bus verbunde­ nen Verarbeitungseinheit zum Verarbeiten von in dem Speicher enthaltenen Daten, und mindestens einer mit dem unteren Bus verbundenen Ein-/Ausgabevorrichtung.
Es ist die Aufgabe der vorliegenden Erfindung, die Übertragungsgeschwindigkeit und die Verarbeitungsge­ schwindigkeit in einer Datenverarbeitungsvorrichtung zu erhöhen bzw. die zu übertragende Datenmenge zu verringern.
Diese Aufgabe wird durch die Datenverarbeitungsvor­ richtung nach Anspruch 1 gelöst. Vorteilhafte Weiter­ bildungen der erfindungsgemäßen Datenverarbeitungsan­ lage werden in den jeweiligen abhängigen Ansprüchen gegeben.
Die Erfindung wird im Folgenden anhand von in den Fi­ guren dargestellten Ausführungsbeispielen näher er­ läutert. Es zeigen:
Fig. 1 das Blockschaltbild einer Systemkonfiguration nach einem Ausführungsbeispiel dieser Erfin­ dung,
Fig. 2 das Blockschaltbild eines Systembus-E/A- Buskopplers nach einem Ausführungsbeispiel dieser Erfindung,
Fig. 3 das Blockschaltbild eines E/A-Buskopplers nach einem Ausführungsbeispiel dieser Erfin­ dung,
Fig. 4 das Blockschaltbild einer Verarbeitungsvor­ richtung nach einem Ausführungsbeispiel die­ ser Erfindung,
Fig. 5 die Illustration einer Adressenverteilung in einem körperlichen Adressenraum nach einem Ausführungsbeispiel dieser Erfindung,
Fig. 6 die Illustration einer Adressenübersetzung durch eine Verarbeitungsvorrichtung nach ei­ nem Ausführungsbeispiel dieser Erfindung,
Fig. 7 die Illustration der Konfiguration einer Da­ tei nach einem Ausführungsbeispiel dieser Er­ findung,
Fig. 8 die Illustration der Konfiguration eines eine Datei bildenden Blockes nach einem Ausfüh­ rungsbeispiel dieser Erfindung,
Fig. 9 die Illustration eines Musters einer ersten Akkumulation und ein Ergebnis der ersten Ak­ kumulation und ein Ergebnis der ersten Akku­ mulation nach einem Ausführungsbeispiel die­ ser Erfindung,
Fig. 10 die Illustration der internen Konfiguration bei einer ersten Akkumulation nach einem Aus­ führungsbeispiel dieser Erfindung,
Fig. 11 die Illustration eines Musters einer Auswahl- Projektionsverarbeitung und das Ergebnis der Auswahl-Projektionsverarbeitung nach einem Ausführungsbeispiel dieser Erfindung,
Fig. 12 die Illustration eines Musters einer Blockak­ kumulationsverarbeitung und ihr Ergebnis von der ersten Akkumulation nach einem Ausfüh­ rungsbeispiel dieser Erfindung,
Fig. 13 die Illustration eines Musters einer zweiten Akkumulation und das Ergebnis der zweiten Ak­ kumulation nach einem Ausführungsbeispiel dieser Erfindung,
Fig. 14 die Illustration einer Akkumulationsverarbei­ tung nach einem Ausführungsbeispiel dieser Erfindung,
Fig. 15 ein Flußdiagramm von Operationsschritten nach einem Ausführungsbeispiel dieser Erfindung,
Fig. 16 das Blockschaltbild einer Systemkonfiguration nach einem anderen Ausführungsbeispiel dieser Erfindung,
Fig. 17 das Blockdiagramm eines E/A-Buskopplers mit einer Verarbeitungsvorrichtung nach einem an­ deren Ausführungsbeispiel dieser Erfindung,
Fig. 18 das Blockschaltbild einer Systemkonfiguration nach einem anderen Ausführungsbeispiel dieser Erfindung,
Fig. 19 die Illustration einer Akkumulationsverarbei­ tung nach einem anderen Ausführungsbeispiel dieser Erfindung,
Fig. 20 die Illustration einer Akkumulationsverarbei­ tung nach einem anderen Ausführungsbeispiel dieser Erfindung,
Fig. 21 ein Flußdiagramm mit Operationsschritten nach einem anderen Ausführungsbeispiel dieser Er­ findung,
Fig. 22 die Illustration einer hierarchischen Akkumu­ lationsverarbeitung nach einem anderen Aus­ führungsbeispiel dieser Erfindung, und
Fig. 23 das Blockschaltbild einer Systemkonfiguration nach dem Stand der Technik.
Ausführungsbeispiel 1
Fig. 1 illustriert die Konfiguration eines Systems zur Realisierung eines Ausführungsbeispiels nach die­ ser Erfindung.
Gemäß Fig. 1 steuert die Zentralverarbeitungseinheit (CPU) 1 jede Einheit des gesamten Systems. Der Haupt­ speicher 2 ist ebenfalls illustriert. Der Systembus 3 ist ein Kanal für eine Datenübertragung zwischen der CPU 1 und dem Hauptspeicher 2 und eine Datenübertra­ gung zwischen dem Systembus-E/A-Buskoppler 4 und dem Hauptspeicher 2. Der Systembus E/A-Buskoppler 4 über­ trägt Daten, die zwischen einer mit einem E/A-Bus verbundenen Vorrichtung und einer mit dem Systembus verbundenen Vorrichtung übertragen werden. Eine E/A- Vorrichtung, z. B. eine Scheibensteuervorrichtung usw., oder ein Buskoppler ist mit den E/A-Bussen 5a bis 5d verbunden. Die E/A-Busse 5a bis 5d werden in einer unterschiedlichen Prozedur von dem Systembus 3 gesteuert. Jeder der E/A-Buskoppler 6a bis 6c ist mit zwei der E/A-Bussen verbunden zum Übertragen der Da­ ten, die zwischen E/A-Vorrichtungen oder mit den ver­ schiedenen E/A-Bussen verbundenen Buskopplern über­ tragen werden. Der Systembus 3 und alle E/A-Busse 5a bis 5d sollen denselben körperlichen Adressenraum ha­ ben.
Jede der E/A-Vorrichtungen 102a bis 102f enthält eine Scheibensteuervorrichtung und ein Magnetscheiben- Laufwerk. Die Scheibensteuervorrichtungen 7a bis 7f steuern die Magnetscheiben-Laufwerke (auch als Schei­ benlaufwerke bezeichnet) 8a bis 8f. Es sind Verarbei­ tungsvorrichtungen 9a bis 9c vorgesehen. Die Puffer 10a bis 10c sind in dem Hauptspeicher 2 vorgesehen. Die Dateien 61a bis 61f sind in den Scheibenlaufwer­ ken 8a bis 8f gespeichert. Der letzte Ausgangspuffer 101 ist auch in dem Hauptspeicher 2 vorgesehen.
Fig. 2 illustriert ein Konfiguration des Systembus- E/A-Buskopplers 4 gemäß diesem Ausführungsbeispiel.
In Fig. 2 sind der Systembus 3 und der E/A-Bus 5d il­ lustriert. Eine Systembus-Schnittstelle 11, eine E/A- Bus-Schnittstelle 12 und Puffer 13 und 14 sind eben­ falls illustriert. Wenn Daten von dem E/A-Bus 5d zu dem Systembus 3 übertragen werden, werden die Daten vorübergehend in dem Puffer 13 gespeichert. Wenn Da­ ten von dem Systembus 3 zu dem E/A-Bus 5d übertragen werden, werden die Daten vorübergehend in dem Puffer 14 gespeichert. Ein Bereich für körperliche Adressen des E/A-Busses 5d ist in einem Register 15 für einen Bereich körperlicher Adressen eines E/A-Busses ge­ speichert. Eine körperliche Adresse kann dem E/A-Bus 5d zugewiesen werden durch Vorsehen des Bereichs für körperliche Adressen des E/A-Busses 5d in dem Regi­ ster 15.
Wenn eine Anforderung zur Übertragung für den in dem Register 15 vorgesehenen Bereich für körperliche Adressen zu dem Systembus 3 übertragen wird, antwor­ tet der Systembus E/A-Buskoppler 4 auf die Anforde­ rung. Wenn die Anforderung eine Übertragung von Daten von dem Systembus 3 zu dem E/A-Bus 5d ist, antwortet die Systembus-Schnittstelle 11 auf die Anforderung in dem Systembus 3 und speichert die von dem Systembus 3 gesandten Daten in dem Puffer 14. Dann werden die Da­ ten über die E/A-Bus-Schnittstelle 12 zu dem E/A-Bus 5d übertragen. Wenn die Anforderung eine Übertragung von Daten von dem E/A-Bus 5d zu dem Systembus 3 ist, überträgt die E/A-Bus-Schnittstelle 12 die Anforde­ rung zur Übertragung für den dem E/A-Bus 5d zugewie­ senen Adressenbereich und empfängt Übertragungsdaten von dem E/A-Bus 5d. Dann werden die Daten in dem Puf­ fer 13 gespeichert und zu dem Systembus 3 über die Systembus-Schnittstelle 11 übertragen. Der Systembus- E/A-Buskoppler 4 antwortet nicht auf eine Anforderung zur Übertragung in dem Systembus 3 für einen Bereich von körperlichen Adressen, welcher nicht in dem Regi­ ster 15 vorgesehen ist.
Wenn jedoch eine Anforderung zur Übertragung für ei­ nen Bereich von körperlichen Adressen, welcher nicht in dem Register 15 vorgesehen ist, zu dem E/A-Bus 5d übertragen wird, antwortet der Systembus-E/A- Buskoppler 4 auf die Anforderung. Wenn die Anforde­ rung eine Übertragung von Daten von dem E/A-Bus 5d zu dem Systembus 3 ist, antwortet die E/A-Bus- Schnittstelle 12 auf die Anforderung in dem E/A-Bus 5d und speichert die von dem E/A-Bus 5d gesandten Da­ ten in dem Puffer 13. Dann werden die Daten zu dem Systembus 3 über die Systembus-Schnittstelle 1 über­ tragen. Wenn die Anforderung eine Übertragung von Da­ ten von dem Systembus 3 zu dem E/A-Bus 5d ist, über­ trägt die Systembus-Schnittstelle 11 die Anforderung zur Übertragung für den dem Systembus 3 zugeteilten Adressenbereich und empfängt die Daten von dem Sy­ stembus 3. Dann werden die Daten in den Puffer 14 ge­ speichert und über die E/A-Bus-Schnittstelle 12 zu dem E/A-Bus 5d übertragen. Der Systembus-E/A- Buskoppler 4 antwortet nicht auf eine Anforderung zur Übertragung in dem E/A-Bus 5d für einen Bereich von körperlichen Adressen, welcher nicht in dem Register 15 vorgesehen ist.
Fig. 3 illustriert eine Konfiguration des E/A- Buskopplers 6a gemäß diesem Ausführungsbeispiel. Die Konfiguration der E/A-Buskoppler 6b und 6c ist die­ selbe wie in Fig. 3.
In Fig. 3 sind der E/A-Bus 5d in einer oberen Schicht und der E/A-Bus 5a in einer unteren Schicht illu­ striert. Eine obere Busschnittstelle 21, eine untere Busschnittstelle 22 und Puffer 23 und 24 sind auch illustriert. Daten, die von dem E/A-Bus 5a in der un­ teren Schicht zu dem E/A-Bus 5d in der oberen Schicht übertragen werden, werden vorübergehend in dem Puffer 23 gespeichert. Daten, die von dem E/A-Bus 5d in der oberen Schicht zu dem E/A-Bus 5a in der unteren Schicht übertragen werden, werden vorübergehend in dem Puffer 24 gespeichert. Ein Bereich von körperli­ chen Adressen für den E/A-Bus 5a in der unteren Schicht wird vorübergehend in einem Register 25 für den Bereich körperlicher Adressen für den E/A-Bus der unteren Schicht gespeichert. Eine körperliche Adresse kann dem E/A-Bus 5a in der unteren Schicht zugewiesen werden, indem ein Bereich körperlicher Adressen für den E/A-Bus 5a in der unteren Schicht in dem Register 25 vorgesehen ist.
Der E/A-Buskoppler 6a antwortet auf die Anforderung zur Übertragung der Daten in dem E/A-Bus 5d in der oberen Schicht für einen in dem Register 25 vorgese­ henen Bereich von körperlichen Adressen. Wenn die An­ forderung eine Übertragung der Daten von dem E/A-Bus 5d in der oberen Schicht zu dem E/A-Bus 5a in der un­ teren Schicht ist, antwortet die obere Busschnitt­ stelle 21 auf die Anforderung zur Übertragung der Da­ ten in dem E/A-Bus 5d in der oberen Schicht und spei­ chert die von dem E/A-Bus 5d in der oberen Schicht übertragenen Daten in dem Puffer 24. Dann werden die Daten über die untere Busschnittstelle 22 zu dem E/A- Bus 5a übertragen. Wenn die Übertragung der Daten von dem E/A-Bus 5a in der unteren Schicht zu dem E/A-Bus 5d in der oberen Schicht ist, überträgt die untere Busschnittstelle 22 die Anforderung zur Übertragung für die betreffende Adresse zu dem E/A-Bus 5d und empfängt die Übertragungsdaten von dem E/A-Bus 5a in der unteren Schicht. Dann werden die Daten in dem Puffer 23 gespeichert. Die Daten werden über die obe­ re Busschnittstelle 21 zu dem E/A-Bus 5d in der obe­ ren Schicht übertragen. Der E/A-Buskoppler 6a antwor­ tet nicht auf eine Anforderung zur Übertragung für einen Bereich von körperlichen Adressen, welcher nicht in dem Register 25 in dem E/A-Bus in der oberen Schicht vorgesehen ist.
Der Systembus-E/A-Buskoppler 4 antwortet auf eine An­ forderung zur Übertragung in dem E/A-Bus 5a in der unteren Schicht für den Bereich körperlicher Adressen neben dem in dem Register 25 vorgesehenen Bereich körperlicher Adressen.
Wenn die Übertragung der Daten von dem E/A-Bus 5a in der unteren Schicht zu dem E/A-Bus 5d in der oberen Schicht erfolgt, antwortet die untere Busschnittstel­ le 22 auf die Anforderung zur Übertragung der Daten in dem E/A-Bus 5a in der unteren Schicht und spei­ chert die von dem E/A-Bus 5a in der unteren Schicht übertragenen Daten in dem Puffer 23. Dann werden die Daten zu dem E/A-Bus 5d in der oberen Schicht über die obere Busschnittstelle 21 übertragen. Wenn die Übertragung der Daten von dem E/A-Bus 5d in der obe­ ren Schicht zu dem E/A-Bus 5a in der unteren Schicht erfolgt, überträgt die obere Busschnittstelle 21 die Anforderung zur Übertragung für die betreffende Adresse zu dem E/A-Bus 5d in der oberen Schicht und empfängt die Übertragungsdaten von dem E/A-Bus 5d in der oberen Schicht. Die Daten werden einmal in dem Puffer 24 gespeichert und zu dem E/A-Bus 5a in der unteren Schicht über die untere Busschnittstelle 22 übertragen. Der E/A-Buskoppler 6a antwortet nicht auf eine Anforderung zur Übertragung für den Bereich kör­ perlicher Adressen, der in dem Register 25 vorgesehen ist.
Fig. 4 illustriert eine Konfiguration der Verarbei­ tungsvorrichtung 9a entsprechend diesem Ausführungs­ beispiel. Die Konfiguration der Verarbeitungsvorrich­ tungen 9b und 9c ist dieselbe wie in Fig. 4.
In Fig. 4 ist der E/A-Bus 5a illustriert. Die Verar­ beitungsvorrichtung 9a ist mit dem E/A-Bus 5a verbun­ den. Ein E/A-Bus-Lokalbus-Koppler 30 ist vorgesehen zum Durchführen einer Datenübertragung zwischen einer E/A-Vorrichtung oder einem Buskoppler, der mit dem E/A-Bus verbunden ist, und einem Mikroprozessor 32, lokalen Speicher 33 oder einer DMA(Direkter Speicher­ zugriff)-Steuervorrichtung 36, die mit einem lokalen Bus 31 verbunden ist. Der lokale Bus 31 hat einen lo­ kalen Adressenraum, der von dem E/A-Bus 5a verschie­ den ist. Der Mikroprozessor 32 und der lokale Spei­ cher 33 sind auch illustriert. Der lokale Speicher 33 arbeitet als ein Hauptspeicher des Mikroprozessors 32. Ein Adressenübersetzer 34 führt eine Adressen­ übersetzung der körperlichen Adresse in dem E/A-Bus 5a und einer lokalen Adresse in dem lokalen Bus 31 durch zur Vornahme einer Datenübertragung zwischen dem E/A-Bus 5a und dem lokalen Bus 31, welche ver­ schiedene Adressenräume haben. Ein Register 35 für einen Bereich körperlicher Adressen ist auch illu­ striert. Ein Bereich körperlicher Adressen kann der Verarbeitungsvorrichtung 9a zugewiesen sein durch Vorsehen des Bereichs körperlicher Adressen in dem Register 35. Eingangspuffer 37a und 37b sind in dem lokalen Speicher 33 vorgesehen, und Ausgangspuffer 38a und 38b sind in dem lokalen Speicher 33 vorgese­ hen.
Fig. 5 illustriert eine Adressenverteilung in einem Raum für körperliche Adressen entsprechend diesem Ausführungsbeispiel. Ein gesamter Raum 41 für körper­ liche Adressen ist illustriert. Ein Bereich 42 für körperliche Adressen in dem Raum für körperliche Adressen ist dem Systembus 3 zugewiesen und ein Be­ reich 43 für körperliche Adressen in dem Raum für körperliche Adressen ist dem Hauptspeicher 2 zugewie­ sen.
In Fig. 5 ist ein Bereich 44a für körperliche Adres­ sen in dem Raum für körperliche Adressen dem E/A-Bus 5a zugewiesen. Ein Bereich 45a für körperliche Adres­ sen in dem Bereich 44a für körperliche Adressen des E/A-Busses 5a ist der Verarbeitungsvorrichtung 9a zu­ gewiesen. Bereiche 46a und 46b für körperliche Adres­ sen in dem Bereich 45a für körperliche Adressen der Verarbeitungsvorrichtung 9a sind den Eingangspuffern 37a und 37b in dem lokalen Speicher 33 zugewiesen. Bereiche 47a und 48b für körperliche Adressen in dem Bereich 45a für körperliche Adressen der Verarbei­ tungsvorrichtung 9a sind den Ausgangspuffern 38a und 38b in dem lokalen Speicher 33 zugeteilt.
In Fig. 5 ist ein Bereich 44b für körperliche Adres­ sen in dem Raum für körperliche Adressen dem E/A-Bus 5b zugeteilt. Ein Bereich 45b für körperliche Adres­ sen in dem Bereich 44b für körperliche Adressen des E/A-Busses 5b ist der Verarbeitungsvorrichtung 9b zu­ geteilt. Bereiche 46c und 46d für körperliche Adres­ sen in dem Bereich 45b für körperliche Adressen der Verarbeitungsvorrichtung 9b sind den Eingangspuffern 37a und 37b in dem lokalen Speicher 33 zugeteilt. Be­ reiche 47c und 47d für körperliche Adressen in dem Bereich 45b für körperliche Adressen der Verarbei­ tungsvorrichtung 9b sind den Ausgangspuffern 38a und 38b in dem lokalen Speicher 33 zugeteilt.
In Fig. 5 ist ein Bereich 44c für körperliche Adres­ sen in dem Raum für körperliche Adressen dem E/A-Bus 5c zugeteilt. Ein Bereich 45c für körperliche Adres­ sen in dem Bereich 44c für körperliche Adressen des E/A-Busses 5c ist der Verarbeitungsvorrichtung 9c zu­ geteilt. Bereiche 46e und 46f für körperliche Adres­ sen in dem Bereich 45c für körperliche Adressen der Verarbeitungsvorrichtung 9c sind den Eingangspuffern 37a und 37b in dem lokalen Speicher 33 zugeteilt. Be­ reiche 47e und 47f für körperliche Adressen in dem Bereich 45c für körperliche Adressen der Verarbei­ tungsvorrichtung 9c sind den Ausgangspuffern 38a und 38b in dem lokalen Speicher 33 zugeteilt.
In Fig. 5 ist ein Bereich 48a für körperliche Adres­ sen in einem Bereich 43 für körperliche Adressen des Hauptspeichers 2 dem Puffer 10a zugeteilt. Ein Be­ reich 48b für körperliche Adressen in dem Bereich 43 für körperliche Adressen des Hauptspeichers 2 ist dem Puffer 10b zugeteilt. Ein Bereich 48c für körperliche Adressen in dem Bereich 43 für körperliche Adressen des Hauptspeichers 2 ist dem Puffer 10c zugeteilt. Ein Bereich 48d für körperliche Adressen in dem Be­ reich 43 für körperliche Adressen des Hauptspeichers 2 ist dem Puffer 10d zugeteilt. Ein Bereich 48e für körperliche Adressen in dem Bereich 43 für körperli­ che Adressen des Hauptspeichers 2 ist dem Puffer 10e zugeteilt. Ein Bereich 48f für körperliche Adressen in dem Bereich 43 für körperliche Adressen des Haupt­ speichers 2 ist dem Puffer 10f zugeteilt. Ein Bereich 48g für körperliche Adressen in dem Bereich 43 für körperliche Adressen des Hauptspeichers 2 ist dem letzten Ausgangspuffer 101 zugeteilt.
Fig. 6 zeigt eine Adressenübersetzung in der Verar­ beitungsvorrichtung 9a gemäß dieser Erfindung.
In Fig. 6 sind der Raum 41 für körperliche Adressen und der Raum 51 für lokale Adressen in dem lokalen Bus 31 illustriert. Der in dem Register 35 vorgesehe­ ne Bereich 45a für körperliche Adressen wird durch den Adressenübersetzer 43 in einen Bereich 55 für lo­ kale Adressen übersetzt. Daten in dem Eingangspuffer 37a sind zur selben Zeit in dem Bereich 46a für kör­ perliche Adressen in dem Raum 41 für körperliche Adressen des E/A-Busses und in einem Bereich 56a für lokale Adressen in dem Raum 51 für lokale Adressen des lokalen Busses. Daten in dem Eingangspuffer 37b sind zur selben Zeit in dem Bereich 46b für körperli­ che Adressen in dem Raum 41 für körperliche Adressen des E/A-Busses und in einem Bereich 56b für lokale Adressen in dem Raum 51 für lokale Adressen des loka­ len Busses. Daten in dem Ausgangspuffer 38a sind in dem Bereich 47a für körperliche Adressen in dem Raum 41 für körperliche Adressen des E/A-Busses und zur selben Zeit in einem Bereich 57a für lokale Adressen in dem Raum 51 für lokale Adressen des lokalen Bus­ ses. Daten in dem Ausgangspuffer 38b sind in dem Be­ reich 47b für körperliche Adressen in dem Raum 41 für körperliche Adressen des E/A-Busses und zur gleichen Zeit in einem Bereich 57b für lokale Adressen in dem Raum 51 für lokale Adressen des lokalen Busses.
Fig. 7 illustriert ein Datenformat der Datei 61a ge­ mäß diesem Ausführungsbeispiel. Formate der Dateien 61b bis 61f sind dieselben wie bei der Datei 61a.
Die Datei 61a enthält mehrere Blöcke 62a bis 62d usw. Die Größen der Blöcke 62a bis 62d usw. und die Größen der Eingangspuffer 37a und 37b sind alle die gleichen.
Fig. 8 illustriert ein Datenformat des Blockes 62a in der Datei 61a gemäß diesem Ausführungsbeispiel. Die Formate der Blöcke 62b bis 62d usw. sind dieselben wie das des Blockes 62a.
In Fig. 8 enthält der Block 62a mehrere Datensätze 63a bis 63m usw. Jeder der Datensätze 63a bis 63m usw. enthält Daten in einem Schlüsselfeld 64, numeri­ schen 65, Datumsfeld 66 usw.
Fig. 9 illustriert ein Muster einer ersten Akkumula­ tion und ein Ergebnis der ersten Akkumulation.
In Fig. 9 sind eine erste Akkumulation 71a und ein Ergebnis 72a der ersten Akkumulation des Blocks 62 illustriert. Das Ergebnis 72a der ersten Akkumulation enthält erste Akkumulations-Datensätze 73a bis 73d. Jeder der ersten Akkumulations-Datensätze 73a bis 73d enthält Daten in einem ersten Akkumulations- Schlüsselfeld 74 und einem ersten numerischen Akkumu­ lationsfeld 75. Bei diesem Ausführungsbeispiel werden Daten in dem numerischen Feld 65 mit Daten in dem Da­ tumsfeld 66 von Mai 1998 für jede Art von Daten in dem Schlüsselfeld 64 in der ersten Akkumulation akku­ muliert.
Fig. 10 illustriert Operationen bei der ersten Akku­ mulation gemäß diesem Ausführungsbeispiel.
In Fig. 10 ist die erste Akkumulation 71a illu­ striert. Der Block 62a ist eine Eingabe in die erste Akkumulation 71a. Das Ergebnis 72a der ersten Akkumu­ lation 71a ist ein Ausgang der ersten Akkumulation 71a. Die erste Akkumulation 71a enthält Schritte der Auswahl-Projektion 76 und Blockakkumulation 77. Ein Ergebnis 67 der Auswahl-Projektion 76 ist ein Ausgang der Selektion-Projektion 76 und wird ein Eingang zu der Blockakkumulation 77.
Fig. 11 illustriert ein Muster der Auswahl-Projektion 76 und das Ergebnis 67 der Auswahl-Projektion 76 ge­ mäß diesem Ausführungsbeispiel.
In Fig. 11 sind die Auswahl-Projektion 76 und das Er­ gebnis 67 der Auswahl-Projektion 76 des Blocks 62a illustriert. Nach-Auswahl-Projektions-Datensätze 163c bis 163e sind illustriert. Jeder der Nach-Auswahl- Projektions-Datensätze 163c bis 163i enthält Daten in dem Schlüsselfeld 64 und dem numerischen Feld 65.
Bei diesem Ausführungsbeispiel werden Datensätze 63c bis 63i mit Daten in dem Datumsfeld 66 vom Mai 1998 ausgewählt, und Daten in dem Schlüsselfeld 64 und dem numerischen Feld 65 der Datensätze 63c bis 63i werden herausgezogen oder projiziert zur Erzeugung der Nach- Auswahl-Projektions-Datensätze 163c bis 163i. die Nach-Auswahl-Projektions-Datensätze 163c bis 163i sind das Ergebnis 67 der Auswahl-Projektion.
Fig. 12 illustriert ein Muster der Blockakkumulation 67 und deren Ergebnis 72a von der ersten Akkumulation gemäß diesem Ausführungsbeispiel.
In Fig. 12 sind die Blockakkumulation 77 und das Er­ gebnis 72a der ersten Akkumulation, d. h. das Ergebnis 72a der Blockakkumulation 77 des Ergebnisses 67 von der Auswahl-Projektion illustriert. Bei der Blockak­ kumulation 77 werden Daten in dem numerischen Feld von Datensätzen für jede Art von Daten in dem Schlüs­ selfeld 65 akkumuliert und die ersten Akkumulations- Datensätze 73a bis 73d werden erzeugt. In Fig. 12 wird der erste Akkumulations-Datensatz 73a aus den Nach-Auswahl-Projektions-Datensätzen 163c und 163h erzeugt, der erste Akkumulations-Datensatz 73b aus den Nach-Auswahl-Projektions-Datensätzen 163d, 163g und 163i erzeugt, der erste Akkumulations-Datensatz 73c aus dem Nach-Auswahl-Projektions-Datensatz 163e erzeugt und der erste Akkumulations-Datensatz 73d aus dem Nach-Auswahl-Projektions-Datensatz 163f erzeugt.
Fig. 13 illustriert ein Muster einer zweiten Akkumu­ lation 81 und eines Ergebnisses 82 der zweiten Akku­ mulation 81 gemäß diesem Ausführungsbeispiel.
In Fig. 13 sind das Ergebnis 72a der ersten Akkumula­ tion und ein vorhergehendes Ergebnis 82a der zweiten Akkumulation 81 illustriert. Das Ergebnis 82 der er­ sten Akkumulation des Ergebnisses 72a der ersten Ak­ kumulation und das vorhergehende Ergebnis 62a der zweiten Akkumulation 81 sind illustriert. Das vorher­ gehende Ergebnis 82a der zweiten Akkumulation enthält zweite Akkumulationsaufzeichnungen 83a bis 83d und das Ergebnis 82 der zweiten Akkumulation enthält zweite Akkumulationsaufzeichnungen 83e bis 83i. Jede der zweiten Akkumulationsaufzeichnungen 83a bis 83d und 83e bis 83i enthält Daten in einem zweiten Akku­ mulations-Schlüsselfeld 84 und einem zweiten numeri­ schen Akkumulationsfeld 85.
Fig. 14 illustriert ein Muster einer Akkumulations­ verarbeitung gemäß diesem Ausführungsbeispiel.
In Fig. 14 enthalten Dateien 61a bis 61f Blöcke 62a bis 62d, usw. Erste Akkumulationen 71a bis 71f der Dateien 61a bis 61f sind illustriert. Die ersten Ak­ kumulationen 71a und 71b werden durch die Verarbei­ tungsvorrichtung 9a durchgeführt, die ersten Akkumu­ lationen 71c und 71d werden durch die Verarbeitungs­ vorrichtung 9b durchgeführt und die ersten Akkumula­ tionen 71e und 71f werden durch die Verarbeitungsvor­ richtung 9c durchgeführt. Die Ergebnisse 72a bis 72d usw. der ersten Akkumulation 71a der Blöcke 62a bis 62d usw. werden erhalten. Die Ergebnisse von dersel­ ben ersten Akkumulation, z. B. 72a bis 72d usw. werden im Allgemeinen als eine erste Akkumulationsergebnis­ folge bezeichnet. Erste Akkumulationsergebnisfolgen 92a bis 92f sind Sätze der Ergebnisse der ersten Ak­ kumulationen 71a bis 71f. Eine Warteschlange 91 für das Ergebnis der ersten Akkumulation ist ebenfalls illustriert. Die zweite Akkumulation 82 und das Er­ gebnis 82 der ersten Akkumulation 81 sind auch darge­ stellt.
Fig. 15 zeigt ein Flußdiagramm des Ablaufs einer Ak­ kumulationsverarbeitung gemäß diesem Ausführungsbei­ spiel. Die Operationen sind in den Schritten 50 bis S8 gezeigt.
Zum Zwecke der Erläuterung diese Ausführungsbeispiels werden Daten in dem numerischen Feld 65 für jede Art von Daten in dem Schlüsselfeld 64 in den in den Ma­ gnetscheiben-Laufwerken 8a bis 8f gespeicherten Da­ teien 61a bis 61f akkumuliert, und das Ergebnis 82 der zweiten Akkumulation wird als ein endgültiges Verarbeitungsergebnis erhalten.
Die CPU 1 liefert den Bereich 44a von körperlichen Adressen in das Register 25 für den Bereich körperli­ cher Adressen der unteren Schicht des E/A-Busses in den E/A-Buskoppler 6a zur Zeit der Initialisierung des Systems. Die CPU 1 liefert auch den Bereich 44b von körperlichen Adressen in das Register 25 in dem E/A-Buskoppler 6b und dem Bereich 44c von körperli­ chen Adressen in das Register 25 in dem E/A-Buskopp­ ler 6c.
Die CPU 1 liefert auch den Bereich 44d von körperli­ chen Adressen in das Register 15 für den Bereich kör­ perlicher Adressen des E/A-Busses in dem Systembus- E/A-Buskoppler 4 zur Zeit der Initialisierung des Sy­ stems.
Die CPU 1 liefert auch den Bereich 45a von körperli­ chen Adressen in das Register 35 für den Bereich kör­ perlicher Adressen in der Verarbeitungsvorrichtung 9a zur Zeit der Initialisierung des Systems. Die CPU 1 liefert auch den Bereich 45b von körperlichen Adres­ sen in das Register 35 in der Verarbeitungsvorrich­ tung 9b und den Bereich 45c von körperlichen Adressen in das Register 35 in der Verarbeitungsvorrichtung 9c.
Durch Liefern dieser Adressen wird der in Fig. 1 ge­ zeigte hierarchische Bus so initialisiert, daß er die Bereiche von körperlichen Adressen wie in Fig. 5 il­ lustriert aufweist.
Dann werden die Akkumulationsvorgänge wie in Fig. 15 gezeigt durchgeführt. Die CPU 1 löscht das Ergebnis 82 der zweiten Akkumulation in dem letzten Ausgangs­ puffer 101. Hierdurch ist keine zweite Akkumulations­ aufzeichnung in dem Ergebnis 82 der zweiten Akkumula­ tion enthalten (Schritt S0).
Dann weist die CPU 1 die Scheibensteuervorrichtung 7a an, Daten in einem ersten Block der Datei 61a in dem Magnetscheiben-Laufwerk 8a zu dem Bereich 46a von körperlichen Adressen zu übertragen (Schritt S1). die Scheibensteuervorrichtung 7a liest die Daten aus der Datei 61a in dem Magnetscheiben-Laufwerk 8a und gibt eine Anforderung zur Übertragung der Daten zu dem Be­ reich 46a von körperlichen Adressen zu dem E/A-Bus 5a aus. Da der Bereich 46a von körperlichen Adressen in dem Register 35 in dem E/A-Bus - lokalen Bus-Koppler 30 in der Verarbeitungsvorrichtung 9a vorgesehen ist, antwortet der E/A-Bus - lokaler Bus-Koppler 30 in der Verarbeitungsvorrichtung 9a auf die Anforderung, und die Daten werden von der Scheibensteuervorrichtung 7a zu der Verarbeitungsvorrichtung 9a übertragen. Wenn die Daten zu der Verarbeitungsvorrichtung 9a übertra­ gen sind, werden die Daten in dem Eingangspuffer 37a in dem lokalen Speicher 33 gespeichert (Schritt S2).
Da der Bereich 46a von körperlichen Adressen in dem Bereich von körperlichen Adressen enthalten ist, der in dem Register von körperlichen Adressen des unteren Busses in dem E/A-Buskoppler 6a vorgesehen ist, ant­ wortet der E/A-Buskoppler 6a nicht auf die Anforde­ rung zur Übertragung von der Scheibensteuervorrich­ tung 7a.
Da die Daten in dem Eingangspuffer 37a den Bereich 56 von lokalen Adressen in der lokalen Adresse des Mi­ kroprozessors 32 haben, kann der Mikroprozessor 32 die Daten direkt verarbeiten.
Nach der Datenübertragung weist die CPU 1 den Mikro­ prozessor 32 in der Verarbeitungsvorrichtung 9a an, die erste Akkumulation der Daten in dem Eingangspuf­ fer 37a durchzuführen (Schritt S3).
Der Mikroprozessor 32 führt die erste Akkumulation der Daten in dem Eingangspuffer 37a durch und gibt das Ergebnis der ersten Akkumulation zu dem Ausgangs­ puffer 38a aus (Schritt S4).
Wenn der in Fig. 8 dargestellte Block 62a übertragen wird, wird das in Fig. 9 illustrierte Ergebnis 72a der ersten Akkumulation in dem Ausgangspuffer 38a ge­ speichert. Da mehrere Aufzeichnungen mit denselben Daten in dem Schlüsselfeld 64 im Allgemeinen in dem Block 62a sind, ist eine Größe des Ergebnisses 72a der ersten Akkumulation reduziert von der Größe des Blockes 62a.
Wenn die erste Akkumulation beendet ist, startet die CPU 1 die DMA(Direkter Speicherzugriff)-Steuervor­ richtung 36 in der Verarbeitungsvorrichtung 9a und überträgt das Ergebnis 72a von der ersten Akkumulati­ on in den Ausgangspuffer 38a zu dem Puffer 10a in dem Hauptspeicher 2 (Schritt S5). Bei dieser Übertragung werden nur Daten in einer Größe des Ergebnisses 72a der ersten Akkumulation übertragen. Es ist nicht er­ forderlich, alle Daten in dem Ausgangspuffer 38a zu übertragen.
Die DMA-Steuervorrichtung 36 sendet eine Anforderung zur Datenübertragung zu dem E/A-Bus 5a zu der Bestim­ mung in dem Bereich 48a von körperlichen Adressen in dem Puffer 10a in dem Hauptspeicher 2 (Schritt S6). Da der Bereich 44a von körperlichen Adressen in dem Register 25 in dem E/A-Buskoppler 6a vorgesehen ist und der Bereich 48a von körperlichen Adressen in dem Puffer 10a nicht in dem Bereich 44a von körperlichen Adressen enthalten ist, antwortet die Schnittstelle 22 für den unteren Bus in dem E/A-Buskoppler 6a auf die Anforderung zur Übertragung und speichert die übertragenen Daten in dem Puffer 23.
Der E/A-Buskoppler 6a sendet eine Anforderung zur Da­ tenübertragung zu dem E/A-Bus 5d zu der Bestimmung in den Bereich 48a von körperlichen Adressen in dem Puf­ fer 10a des Hauptspeichers 2. Da der Bereich 44d von körperlichen Adressen in dem Register 15 in dem Sy­ stembus-E/A-Buskoppler 4 und der Bereich 48a von kör­ perlichen Adressen in dem Puffer 10a nicht in dem Be­ reich 44d von körperlichen Adressen enthalten sind, antwortet die E/A-Bus-Schnittstelle 12 in dem System­ bus-E/A-Buskoppler 4 auf die Anforderung zur Übertra­ gung und speichert die übertragenen Daten in dem Puf­ fer 13.
Der Systembus-E/A-Buskoppler 4 sendet eine Anforde­ rung zur Übertragung zu dem Systembus 3 zu der Be­ stimmung in dem Bereich 48a von körperlichen Adressen in dem Puffer 10a des Hauptspeichers 2. Da der Be­ reich 48a von körperlichen Adressen in dem Bereich 43 von körperlichen Adressen des Hauptspeichers 2 ent­ halten ist, antwortet der Hauptspeicher 2 auf die An­ forderung zur Übertragung und speichert die übertra­ genen Daten in dem Bereich 48a von körperlichen Adressen in den Puffer 10a.
Die CPU 1 führt eine zweite Akkumulation des Ergeb­ nisses der ersten Akkumulation in dem Puffer 10a und des vorhergehenden Ergebnisses 82a der zweiten Akku­ mulation in den letzten Ausgangspuffer 101 durch und aktualisiert das vorhergehende Ergebnis 82a der zwei­ ten Akkumulation durch das Ergebnis 82 der zweiten Akkumulation (Schritt S7).
Die CPU 1 führt die Operationen in den Schritten 51 bis 57 für jeden der Blöcke 62a bis 62d usw. in der Datei 61a durch (Schritt S8).
Die Operationen in Fig. 15 werden auch für die Datei 61b, das Magnetscheiben-Laufwerk 8b, die Scheiben­ steuervorrichtung 7b, den E/A-Bus 5a, die Verarbei­ tungsvorrichtung 9a, den E/A-Puffer 37b, den Aus­ gangspuffer 38b und den Puffer 10b durchgeführt.
In diesem Fall werden die Datei 61a, das Magnetschei­ ben-Laufwerk 8a, die Scheibensteuervorrichtung 7a, der Eingangspuffer 37a und der Ausgangspuffer 38a in Fig. 15 durch die Datei 61b, das Magnetscheiben- Laufwerk 8b, die Scheibensteuervorrichtung 7b, den Eingangspuffer 37b und den Ausgangspuffer 38b er­ setzt. Diese Operationen können parallel mit den in Fig. 15 gezeigten Operationen durchgeführt werden durch Leitung einer exklusiven Steuerung durch die Warteschlange 91.
Die Operationen in Fig. 15 werden auch für die Datei 61c, das Magnetscheiben-Laufwerk 8c, die Scheiben­ steuervorrichtung 7c, den E/A-Bus 5b, die Verarbei­ tungsvorrichtung 9b und den Puffer 10c durchgeführt.
In diesem Fall werden die Datei 61a, das Magnetschei­ ben-Laufwerk 8a, die Scheibensteuervorrichtung 7a, der E/A-Bus 5a und die Verarbeitungsvorrichtung 9a durch die Datei 61c, das Magnetscheiben-Laufwerk 8c, die Scheibensteuervorrichtung 7c, den E/A-Bus 5b und die Verarbeitungsvorrichtung 9b ersetzt. Diese Opera­ tionen können parallel mit den in Fig. 15 gezeigten Operationen durchgeführt werden, indem eine exklusive Steuerung in der Warteschlange 91 geführt wird.
Die Operationen in Fig. 15 werden auch für die Datei 61d, das Magnetscheiben-Laufwerk 8d, die Scheiben­ steuervorrichtung 7d, den E/A-Bus 5b, die Verarbei­ tungsvorrichtung 9b, den Eingangspuffer 37b, den Aus­ gangspuffer 38b und den Puffer 10d durchgeführt.
In diesem Fall werden die Datei 61a, das Magnetschei­ ben-Laufwerk 8a, die Scheibensteuervorrichtung 7a, der E/A-Bus 5a, die Verarbeitungsvorrichtung 9a, der Eingangspuffer 37a und der Ausgangspuffer 38a ersetzt durch die Datei 61d, das Magnetscheiben-Laufwerk 8d, die Scheibensteuervorrichtung 7d, den E/A-Bus 5b, die Verarbeitungsvorrichtung 9b, den Eingangspuffer 37b und den Ausgangspuffer 38b. Diese Operationen können parallel zu den in Fig. 15 gezeigten Operationen durchgeführt werden, indem eine exklusive Steuerung in der Warteschlange 91 geführt wird.
Die Operationen in Fig. 15 werden auch für die Datei 61e, das Magnetscheiben-Laufwerk 8e, die Scheiben­ steuervorrichtung 7e, den E/A-Bus 5c, die Verarbei­ tungsvorrichtung 9c und den Puffer 10e durchgeführt.
In diesem Fall werden die Datei 61a, das Magnetschei­ ben-Laufwerk 8a, die Scheibensteuervorrichtung 7a, der E/A-Bus 5a und die Verarbeitungsvorrichtung 9a ersetzt durch die Datei 61e, das Magnetscheiben- Laufwerk 8e, die Scheibensteuervorrichtung 7e, den E/A-Bus 5c und die Verarbeitungsvorrichtung 9c. Diese Operationen können parallel zu den in Fig. 15 gezeig­ ten Operationen durchgeführt werden, indem eine ex­ klusive Steuerung in der Warteschlange 91 geführt wird.
Die Operationen in Fig. 15 werden auch für die Datei 61f, das Magnetscheiben-Laufwerk 8f, die Scheiben­ steuervorrichtung 7f, den E/A-Bus 5c, die Verarbei­ tungsvorrichtung 9c, den Eingangspuffer 37b, den Aus­ gangspuffer 38b und den Puffer 10f durchgeführt.
In diesem Fall werden die Datei 61a, das Magnetschei­ ben-Laufwerk 8a, die Scheibensteuervorrichtung 7a, der E/A-Bus 5a, die Verarbeitungsvorrichtung 9a, der Eingangspuffer 37a und der Ausgangspuffer 38a ersetzt durch die Datei 61f, das Magnetscheiben-Laufwerk 8f, die Scheibensteuervorrichtung 7f, den E/A-Bus 5c, die Verarbeitungsvorrichtung 9c, den Eingangspuffer 37b und den Ausgangspuffer 38b. Diese Operationen können parallel zu den in Fig. 15 gezeigten Operationen durchgeführt werden, indem eine exklusive Steuerung in der Warteschlange 91 geführt wird.
Im Allgemeinen ist die Größe der Ergebnisse 72a bis 72d der ersten Akkumulationen jeweils kleiner als die Größe der Blöcke 62a bis 62d. demgemäß ist eine Da­ tenmenge der zu den Puffern 10a bis 10f in den Haupt­ speicher durch die DMA-Übertragung gemäß diesem Aus­ führungsbeispiel übertragenen Daten kleiner als die Datenmenge der übertragenen Daten, wenn die Blöcke 62a bis 62d direkt übertragen werden. Als das Ergeb­ nis ist die Größe der ersten Akkumulationsergebnis­ folgen 92a bis 92f jeweils kleiner als die Größe der Dateien 61a bis 61f. Daher ist die Größe der zu dem E/A-Bus 5d, dem Systembus-E/A-Buskoppler 4, dem Sy­ stembus 3 und dem Hauptspeicher 2 übertragenen Daten kleiner als die Größe der übertragenen Daten, wenn alle Blöcke in den Dateien 61a bis 61f zu dem Haupt­ speicher 2 vor der Verarbeitung übertragen werden. Die Größe der von der CPU verarbeiteten Daten ist auch kleiner als die Größe von übertragenen Daten, wenn alle Blöcke in den Dateien 61a bis 61f zu dem Hauptspeicher 2 vor der Verarbeitung übertragen wer­ den.
Wie festgestellt wurde, können gemäß diesem Ausfüh­ rungsbeispiel, wenn mehr Vorrichtungen durch den hierarchischen Bus verbunden sind, eine Fähigkeit der Datenübertragung und eine Geschwindigkeit der Daten­ verarbeitung entsprechend verbessert werden.
Ausführungsbeispiel 2
Beim Ausführungsbeispiel 1 sind die Verarbeitungsvor­ richtungen 9a bis 9c nur mit den E/A-Bussen 5a bis 5c verbunden. Jedoch können die Verarbeitungsvorrichtun­ gen 9a bis 9c mit den E/A-Buskopplern 6a bis 6c ver­ bunden werden, und dieselbe Wirkung wie beim Ausfüh­ rungsbeispiel 1 kann realisiert werden.
Fig. 16 illustriert eine Konfiguration eines Systems zur Realisierung des Ausführungsbeispiels 2 gemäß dieser Erfindung.
In Fig. 16 sind die CPU 1, der Hauptspeicher 2, der Systembus 3, der Systembus-E/A-Buskoppler 4, E/A- Busse 5a bis 5d, Scheibensteuervorrichtungen 7a bis 7f, Scheiben-Laufwerke 8a bis 8e und Dateien 61a bis 61f illustriert. Jede der Einheiten hat dieselben Funktionen wie eine entsprechende Einheit beim Aus­ führungsbeispiel 1. E/A-Buskoppler 106a bis 106c mit Verarbeitungsvorrichtungen und die Verarbeitungsvor­ richtungen 9a bis 9c sind ebenfalls illustriert. Die Verarbeitungsvorrichtungen 9a bis 9c sind jeweils in den E/A-Buskopplern 106a bis 106c enthalten.
Fig. 17 illustriert eine Konfiguration des E/A- Buskopplers 106a mit der Verarbeitungsvorrichtung ge­ mäß diesem Ausführungsbeispiel. Eine Konfiguration der E/A-Buskoppler 106b und 106c ist dieselbe wie in Fig. 17.
In Fig. 17 sind der E/A-Bus 5d bei der oberen Schicht, der E/A-Bus 5a bei der unteren Schicht und der E/A-Buskoppler 106a mit der Verarbeitungsvorrich­ tung illustriert. Der E/A-Buskoppler 6a ist in dem E/A-Buskoppler 106a mit der Verarbeitungsvorrichtung vorgesehen. Die Konfiguration des E/A-Buskopplers 6a ist dieselbe wie in Fig. 3 beim Ausführungsbeispiel 1. E/A-Bus-Lokalbus-Koppler 30a und 30b sind in dem E/A-Buskoppler 106a mit der Verarbeitungsvorrichtung vorgesehen. Die Konfiguration der E/A-Bus-Lokalbus- Koppler 30a und 30b ist dieselbe wie in Fig. 4 beim Ausführungsbeispiel 1. Der lokale Bus 31, der Mikro­ prozessor 32, der lokale Speicher 33, die DMA- Steuervorrichtung 36, die Eingangspuffer 37a und 37b in dem lokalen Speicher und die Ausgangspuffer 38a und 38b in dem lokalen Speicher sind auch illu­ striert.
Die Operationen beim Ausführungsbeispiel 2 sind nahe­ zu dieselben wie die Operationen beim Ausführungsbei­ spiel 1. Der Unterschied zum Ausführungsbeispiel 1 wird festgestellt.
Beim Ausführungsbeispiel 1 wird das Ergebnis der er­ sten Akkumulation in den Ausgangspuffern 38a und 38b in den Prozessoren 9a bis 9c durch die DMA- Übertragung zu den Puffern 10a bis 10f in dem Haupt­ speicher 2 über die E/A-Buskoppler 6a bis 6c übertra­ gen. Jedoch werden beim Ausführungsbeispiel 2, da der mit dem lokalen Speicher 33 verbundene lokale Bus 31 mit dem E/A-Bus 5a bei der oberen Schicht über den E/A-Bus-Lokalbus-Koppler 30a in Fig. 17 verbunden ist, die Daten über den E/A-Bus-Lokalbus-Koppler 30a anstatt über den E/A-Buskoppler 6a übertragen. Die anderen Operationen und Steuerungen sind dieselben wie beim Ausführungsbeispiel 1.
Ausführungsbeispiel 3
Beim Ausführungsbeispiel 1 werden die Daten bei der­ selben Schicht in dem hierarchischen Bus durch die Verarbeitungsvorrichtung verarbeitet und zu der CPU gesendet. Jedoch können die Daten auch zu einer Ver­ arbeitungsvorrichtung bei einer anderen Schicht ge­ sendet werden, falls dies erforderlich ist.
Fig. 18 illustriert eine Konfiguration des Systems gemäß dem Ausführungsbeispiel 3.
In Fig. 18 sind die CPU 1, der Hauptspeicher 2, der Systembus 3, der Systembus-E/A-Buskoppler 4, E/A- Busse 5a bis 5d, E/A-Buskoppler 6a bis 6c, Verarbei­ tungsvorrichtungen 9a bis 9d und E/A-Vorrichtungen 102a bis 102d illustriert. Da die Anordnung der Puf­ fer in dem Hauptspeicher 2 und die innere Konfigura­ tion der E/A-Vorrichtungen 102a bis 102d dieselben sind wie beim Ausführungsbeispiel 1, sind die Illu­ strationen in Fig. 18 weggelassen.
Beim Ausführungsbeispiel 1 werden Daten für die Ver­ arbeitung von einer mit einem E/A-Bus verbundenen E/A-Vorrichtung zu einer mit demselben E/A-Bus ver­ bundenen Verarbeitungsvorrichtung übertragen. Jedoch können die Daten zu einer Verarbeitungsvorrichtung übertragen werden, welche nicht mit demselben E/A-Bus verbunden ist. In Fig. 18 können Daten von der mit einem Bus verbundenen E/A-Vorrichtung 102a zu Verar­ beitungsvorrichtungen 9b bis 9d, die mit verschiede­ nen E/A-Bussen verbunden sind, anstatt zu der Verar­ beitungsvorrichtung 9a übertragen werden. Die Daten von den E/A-Vorrichtungen 102b bis 102d können durch irgendeine der Verarbeitungsvorrichtungen 9a bis 9d verarbeitet werden.
Ausführungsbeispiel 4
Beim Ausführungsbeispiel 1 werden die Daten von der E/A-Vorrichtung zu der bestimmten Verarbeitungsvor­ richtung entsprechend der E/A-Vorrichtung für eine Verarbeitung übertragen. Jedoch können die von der E/A-Vorrichtung eingegebenen Daten zu mehreren Verar­ beitungsvorrichtungen in einer Einheit von Blöcken übertragen werden. Es ist auch möglich, einen Teil der Blöcke zu einem Puffer in dem Hauptspeicher zu senden, um die erste Akkumulation durch die CPU durchzuführen.
Eine Konfiguration des Systems gemäß dem Ausführungs­ beispiel 4 ist dieselbe wie beim Ausführungsbeispiel 3 in Fig. 18.
Fig. 19 illustriert eine Akkumulationsverarbeitung gemäß dem Ausführungsbeispiel 4.
In Fig. 19 sind die Dateien 61a bis 61d in den Ma­ gnetscheiben-Laufwerken in den E/A-Vorrichtungen 102a bis 102d gespeichert. Die ersten Akkumulationen 71a bis 71d sind auch illustriert. Es wird angenommen, daß die ersten Akkumulationen 71a bis 71d jeweils durch die Verarbeitungsvorrichtungen 9a bis 9d durch­ geführt werden. Es wird angenommen, daß die erste Ak­ kumulation 71e von der CPU 1 durchgeführt wird. Es wird angenommen, daß die zweite Akkumulation 81 von der CPU 1 durchgeführt wird.
Beim Ausführungsbeispiel 4 können die Daten in der Datei 61a bei den ersten Akkumulationen 71a bis 71d durch irgendeine Verarbeitungsvorrichtung oder CPU in der Einheit von Blöcken 62a bis 62d usw. verarbeitet werden.
Beispielsweise kann der Block 62a zu der Verarbei­ tungsvorrichtung 9a für die erste Akkumulation 71a oder zu der Verarbeitungsvorrichtung 9b für die erste Akkumulation 71b oder zu der Verarbeitungsvorrichtung 9c für die erste Akkumulation 71c oder zu der Verar­ beitungsvorrichtung 9d für die erste Akkumulation 71d übertragen werden. Oder der Block 62a kann zu dem Hauptspeicher 2 für die erste Akkumulation 71e durch die CPU übertragen werden. Die Bestimmung der Über­ tragung kann für jeden der Blöcke 62b, 62c usw. will­ kürlich gewählt werden, und die erste Akkumulation der Blöcke kann durch die verschiedenen Verarbei­ tungsvorrichtungen oder CPUs durchgeführt werden.
Beim Ausführungsbeispiel 4 können Blöcke in jeder Da­ tei zu jeder Verarbeitungsvorrichtung übertragen wer­ den. Jedoch ist es auch möglich, die Bestimmungs- Verarbeitungsvorrichtungen zu beschränken aufgrund von Beschränkungen in der Hardware, dem Wirkungsgrad der Übertragung und dem Lastzustand während der Ope­ ration.
Ausführungsbeispiel 5
Beim Ausführungsbeispiel 1 wird das Ergebnis der er­ sten Akkumulation jedes Mal durch die DMA-Übertragung zu dem Hauptspeicher übertragen, wenn das Ergebnis erzeugt wird. Jedoch ist es auch möglich, die zweite Akkumulation in der Verarbeitungsvorrichtung durchzu­ führen.
Die Konfiguration des Systems und der Vorrang der In­ itialisierung des Systems beim Ausführungsbeispiel 5 sind dieselben wie beim Ausführungsbeispiel 1. Es wird der Unterschied des Ausführungsbeispiels 5 ge­ genüber dem Ausführungsbeispiel 1 festgestellt.
Fig. 20 illustriert den Akkumulationsvorgang gemäß Ausführungsbeispiel 5.
In Fig. 20 sind die Dateien 61a bis 61f, zweite Akku­ mulationen 81a bis 81f und Ergebnisse 82a bis 82f der zweiten Akkumulationen illustriert.
Beim ersten Ausführungsbeispiel wird die erste Akku­ mulation 71a durch den Prozessor 9a durchgeführt, und die Ergebnisse 72a bis 72d der ersten Akkumulation 71a für jeden der Blöcke 62a bis 62d werden in dem Puffer 10a in dem Hauptspeicher 2 für die Verarbei­ tung übertragen. Dann wird die zweite Akkumulation durch die CPU 1 durchgeführt.
Jedoch wird beim Ausführungsbeispiel 5 die zweite Ak­ kumulation 81a der Ergebnisse 72a bis 72d der ersten Akkumulation ebenfalls durch die Verarbeitungsvor­ richtung 9a durchgeführt. Das Ergebnis 82a der ersten Akkumulation 81a wird in dem Ausgangspuffer der Ver­ arbeitungsvorrichtung 9a gespeichert und durch die DMA-Übertragung zu dem Puffer 10a in dem Hauptspei­ cher 2 gesendet. Die folgende Verarbeitung ist die­ selbe wie beim Ausführungsbeispiel 1.
Fig. 21 zeigt ein Flußdiagramm für die Operationen beim Ausführungsbeispiel 5.
In Fig. 21 löscht die CPU 1 das Ergebnis 82 der zwei­ ten Akkumulation in dem letzten Ausgangspuffer 101. Demgemäß ist keine Aufzeichnung von der zweiten Akku­ mulation in dem Ergebnis 82 von der zweiten Akkumula­ tion enthalten (Schritt S100).
Dann weist die CPU 1 die Scheibensteuervorrichtung 7a an, einen ersten Block in der Datei 61a in dem Mag­ netscheiben-Laufwerk 8a zu dem Bereich 46a von kör­ perlichen Adressen zu übertragen (Schritt S101). Die Scheibensteuervorrichtung 7a liest die Daten aus der Datei 61a in dem Magnetscheiben-Laufwerk 8a aus. Dann werden die Daten in dem Eingangspuffer 37a in dem lo­ kalen Speicher 33 gespeichert (Schritt S102).
Nachdem die Daten übertragen sind, weist die CPU 1 den Mikroprozessor 32 in der Verarbeitungsvorrichtung 9a an, eine erste Akkumulation und eine zweite Akku­ mulation der Daten in dem Eingangspuffer 37a durchzu­ führen (Schritt S103).
Der Mikroprozessor 32 führt eine erste Akkumulation und eine zweite Akkumulation der Daten in dem Ein­ gangspuffer 37a durch und gibt das Ergebnis der zwei­ ten Akkumulation zu dem Ausgangspuffer 38a aus (Schritt S104).
Die CPU 1 startet die DMA-Steuervorrichtung 36 in der Verarbeitungsvorrichtung 9a und überträgt das Ergeb­ nis 82a der zweiten Akkumulation in dem Ausgangspuf­ fer 38a zu dem Puffer 10a in dem Hauptspeicher 2 (Schritt S105). Nur die Daten in einer Größe des Er­ gebnisses 82a der zweiten Akkumulation werden über­ tragen, und es ist nicht erforderlich, die gesamten Daten in dem Ausgangspuffer 38a zu übertragen.
Die DMA-Steuervorrichtung 36 überträgt die Daten zu der Bestimmung in dem Bereich 48a von körperlichen Adressen des Puffers 10a in dem Hauptspeicher 2 (Schritt S106).
Die CPU 1 führt eine zweite Akkumulation des Ergeb­ nisses der zweiten Akkumulation in dem Puffer 10a und des Ergebnisses 82 der zweiten Akkumulation in dem letzten Ausgangspuffer 101 durch und aktualisiert das Ergebnis 82 der zweiten Akkumulation (Schritt S107).
Die CPU 1 führt die Operationen in den Schritten 5101 bis S107 für jeden der Blöcke 62a bis 62d usw. in der Datei 61a durch (Schritt S108).
Es ist auch möglich, die Operationen in Fig. 21 durch mehrere Verarbeitungsvorrichtungen 9a bis 9c wie beim Ausführungsbeispiel 1 parallel durchzuführen.
Beim Ausführungsbeispiel 5 kann die zweite Akkumula­ tion hierarchisch durchgeführt werden. In Fig. 22 wird die zweite Akkumulation hierarchisch durch meh­ rere Verarbeitungsvorrichtungen durchgeführt.
In Fig. 22 werden zweite Akkumulationen 81a bis 81f bei der unteren Schicht und zweite Akkumulationen 81g und 81h bei der oberen Schicht durch verschiedene Verarbeitungsvorrichtungen oder dieselbe Verarbei­ tungsvorrichtung durchgeführt.
Wie festgestellt ist, ist bei der Datenverarbeitungs­ vorrichtung gemäß den Ausführungsbeispielen 1 bis 5 eine Verarbeitungsvorrichtung bei jeder Schicht in dem hierarchischen Bus vorgesehen. Daten werden von einer E/A-Vorrichtung, die mit dem hierarchischen Bus verbunden ist, zu einer oder allen Verarbeitungsvor­ richtungen übertragen ohne durch den Hauptspeicher kanalisiert zu werden. Die Daten werden durch die Verarbeitungsvorrichtung verarbeitet, bevor sie zu dem Hauptspeicher gesendet werden, und das Ergebnis wird zu dem Hauptspeicher übertragen. Bei der Daten­ verarbeitungsvorrichtung werden die Daten von der mit dem hierarchischen Bus verbundenen E/A-Vorrichtung zu dem Hauptspeicher übertragen, ohne durch die Verar­ beitungsvorrichtung in den hierarchischen Bus kanali­ siert zu werden.
Zusätzlich zu dem illustrierten Vorgang können die Daten in einer entgegengesetzten Richtung von dem festgestellten Vorgang in der Datenverarbeitungsvor­ richtung gemäß den Ausführungsbeispielen 1 bis 5 übertragen werden.
In diesem Fall sind Verarbeitungsvorrichtungen bei allen oder einem Teil der Schichten des hierarchi­ schen Busses vorgesehen. Die Daten werden von den Hauptspeicher zu den Prozessoren übertragen, und die Daten werden durch die Verarbeitungsvorrichtungen verarbeitet. Es ist auch möglich, die Ergebnisse von den Verarbeitungsvorrichtungen zu einem Teil oder al­ len E/A-Vorrichtungen zu übertragen, die mit dem hierarchischen Bus verbunden sind, ohne durch den Hauptspeicher kanalisiert zu werden.
Bei der Datenverarbeitungsvorrichtung können die Da­ ten von dem Hauptspeicher zu der mit dem hierarchi­ schen Bus E/A-Vorrichtung übertragen werden, ohne durch die Verarbeitungsvorrichtung in den hierarchi­ schen Bus kanalisiert zu werden.
Wie festgestellt ist, sind Prozessoren bei einem Teil oder allen Schichten in dem hierarchischen Bus vorge­ sehen, und die Daten werden durch die Verarbeitungs­ vorrichtungen verarbeitet, bevor sie zu der E/A- Vorrichtung gesendet werden. Demgemäß kann die zu der oberen Schicht in dem hierarchischen Bus übertragene Datenmenge reduziert werden, und die von der CPU ver­ arbeitete Datenmenge kann reduziert werden. Daher können, wenn mehr E/A-Vorrichtungen mit dem hierar­ chischen Bus verbunden sind, eine angemessene Über­ tragungsgeschwindigkeit und Verarbeitungsgeschwindig­ keit realisiert werden.
Bei den Ausführungsbeispielen 1 bis 5 wird die Akku­ mulationsverarbeitung mit der Auswahl-Projektions- Verarbeitung festgestellt für den Zweck der Illustra­ tion. Jedoch ist jede Art der Verarbeitung, z. B. Zäh­ len der Anzahl von Daten mit einem bestimmten Zu­ stand, Suchen eines maximalen Wertes der Daten, Su­ chen eines minimalen Wertes der Daten usw. möglich, soweit die Datenmenge bei der Vorverarbeitung redu­ ziert werden kann. Weiterhin kann diese Erfindung auch auf eine kompliziertere Verarbeitung einer Kom­ bination der vorstehend festgestellten Verarbeitung angewendet werden.
Bei den Ausführungsbeispielen 1 bis 5 wird die Akku­ mulationsverarbeitung mit der Auswahl-Projektions- Verarbeitung festgestellt für den Zweck der Illustra­ tion. Diese Erfindung kann auch angewendet werden, selbst wenn ein Teil der vorstehenden Verarbeitung kombiniert wird. Selbst wenn die Verarbeitung eine Kombination von einem oder zwei der Auswahl, Projek­ tion und Akkumulation ist, kann die Erfindung noch angewendet werden indem ein Teil der Verarbeitung in den Ausführungsbeispielen durchgeführt wird.
Bei den Ausführungsbeispielen 1 bis 5 wird das Ergeb­ nis der Verarbeitung durch die Verarbeitungsvorrich­ tung direkt zu dem Hauptspeicher übertragen. Jedoch kann das Ergebnis von der Verarbeitungsvorrichtung vor der Verarbeitung vorübergehend zu der E/A- Vorrichtung gesendet werden.
Bei den Ausführungsbeispielen 1 bis 5 wird die zweite Akkumulation durch die CPU 1 durchgeführt. Jedoch kann die zweite Akkumulation durch jede Verarbei­ tungsvorrichtung durchgeführt werden. Im Allgemeinen kann, selbst wenn die Verarbeitung eine andere ist als die Akkumulationsverarbeitung, die Verarbeitung nach einer Verringerung der Datenmenge durch jede Verarbeitungsvorrichtung anstelle der CPU 1 durchge­ führt werden.
Bei den Ausführungsbeispielen 1 bis 5 ist ein Magnet­ scheiben-Laufwerk mit einer Scheibensteuervorrichtung verbunden. Jedoch können mehrere Magnetscheiben- Laufwerke mit einer Scheibensteuervorrichtung verbun­ den werden.
Bei den Ausführungsbeispielen 1 bis 5 ist eine Datei ein Magnetscheiben-Laufwerk. Jedoch können mehrere Dateien in einem Magnetscheiben-Laufwerk sein.
Bei den Ausführungsbeispielen 1 bis 5 ist die Anzahl von Eingangspuffern entsprechend den Dateien dieselbe wie die Anzahl der E/A-Vorrichtungen. Jedoch können mehrere Puffer für eine Datei vorgesehen sein, um ei­ ne sogenannte Doppelpufferungssteuerung usw. durchzu­ führen.
Bei den Ausführungsbeispielen 1 bis 5 ist die Anzahl von Ausgangspuffern zum Speichern des Ergebnisses der ersten Akkumulation dieselbe wie die Anzahl der E/A- Vorrichtungen. Jedoch können mehrere Puffer für eine E/A-Vorrichtung vorgesehen sein, um die Doppelpuffe­ rungssteuerung usw. durchzuführen.
Bei den Ausführungsbeispielen 1 bis 5 ist die Anzahl von Puffern 10a bis 10f in dem Hauptspeicher 1 die­ selbe wie die Anzahl der E/A-Vorrichtungen. Jedoch kann, selbst wenn die Anzahl von Puffern gleich eins oder mehr ist, dieselbe Wirkung bei den Ausführungs­ beispielen realisiert werden, indem eine angemessene exklusive Steuerung durchgeführt wird.
Bei den Ausführungsbeispielen 1 bis 5 ist die Verar­ beitungsvorrichtung mit der E/A-Vorrichtung verbun­ den. Jedoch kann die Verarbeitungsvorrichtung auch direkt mit dem Systembus verbunden sein.
Bei den Ausführungsbeispielen 1 bis 5 sind der Sy­ stembus und der E/A-Bus verschiedene Typen von Bus­ sen. Jedoch können der Systembus und der E/A-Bus die­ selbe Art von Bus mit derselben Steuerprozedur sein. Bei den Ausführungsbeispielen 1 bis 5 sind alle E/A- Busse von derselben Art von Bus. Jedoch kann, selbst wenn einer der E/A-Busse in einer unterschiedlichen Steuerprozedur gesteuert wird, dieselbe Wirkung mit den Ausführungsbeispielen realisiert werden, indem ein geeigneter Buskoppler vorgesehen wird.
Bei den Ausführungsbeispielen 1 bis 5 werden das Ma­ gnetscheiben-Laufwerk und die Scheibensteuervorrich­ tung zum Steuern des Magnetscheiben-Laufwerkes als die E/A-Vorrichtung zum Zwecke der Illustration ver­ wendet. Jedoch kann die E/A-Vorrichtung jede Art von Speicher sein, z. B. ein Magnetband-Laufwerk, ein Halbleiterscheiben-Laufwerk usw. Die E/A-Vorrichtung kann auch durch ein Netzwerk verbunden sein, das durch eine Übertragungsleitung, Netzwerkdateisystem usw. verbunden ist.
Bei den Ausführungsbeispielen 1 bis 5 ist die Anzahl der mit dem Systembus verbundenen CPUs 1 gleich eins. Jedoch kann die Anzahl der CPUs 1 mehr als eins be­ tragen.
Bei den Ausführungsbeispielen 1 bis 5 initiiert die CPU die Dateiübertragung und die DMA-Übertragung. Je­ doch kann auch der Mikroprozessor in der Verarbei­ tungsvorrichtung solche Operationen initiieren.
Ein Prozessor ist in einem Teil oder allen Schichten in dem hierarchischen Bus gemäß dieser Erfindung vor­ gesehen. Die von der E/A-Vorrichtung übertragenen Da­ ten werden durch die Verarbeitungsvorrichtungen ver­ arbeitet, und die zu der oberen Schicht des hierar­ chischen Busses übertragene Datenmenge wird verrin­ gert. Weiterhin wird die Verarbeitungsmenge von Daten durch die CPU herabgesetzt. Selbst wenn eine größere Anzahl von E/A-Vorrichtungen mit dem hierarchischen Bus verbunden ist, können eine angemessene Übertra­ gungsgeschwindigkeit und Verarbeitungsgeschwindigkeit realisiert werden.

Claims (8)

1. Datenverarbeitungsvorrichtung mit
einem oberen (3) und mindestens einem unteren (5a-5d) Bus,
mindestens einem Buskoppler (4, 6a-6c) zwi­ schen dem oberen (3) und dem unteren (5a-5d) Bus zum hierarchischen Verbinden des oberen (3) mit dem unteren (5a-5d) Bus,
einem mit dem oberen Bus (3) verbundenen Spei­ cher (2),
einer mit dem oberen Bus (3) verbundenen Verar­ beitungseinheit (1) zum Verarbeiten von in dem Speicher (2) enthaltenen Daten, und
mindestens einer mit dem unteren Bus (5a-5d) verbundenen Ein-/Ausgabevorrichtung (102a-­ 102f),
gekennzeichnet durch
mindestens eine mit dem unteren Bus (5a-5d) verbundene Verarbeitungsvorrichtung (9a-9c) zum, als Antwort auf eine Anforderung von der Verarbeitungseinheit (1) nach Daten in der Ein- /Ausgabevorrichtung (102a-102f), Empfang von Daten von der Ein-/Ausgabevorrichtung (102a-­ 102f) über den unteren Bus (5a-5d), Herausziehen eines Teils der von der Ein- /Ausgabevorrichtung (102a-102f) empfangenen Daten zur Bildung herausgezogener Daten, deren Menge kleiner ist als die der von der Ein- /Ausgabevorrichtung (102a-102f) empfangenen Daten, und Übertragen der herausgezogenen Daten zu dem Speicher (2) über den oberen Bus (3),
wobei der Speicher (2) die von der Verarbei­ tungsvorrichtung (9a-9c) übertragene Daten speichert und die Verarbeitungseinheit (1) die aus dem Speicher (2) gelesenen Daten verarbei­ tet.
2. Datenverarbeitungsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, dass die Verarbeitungs­ vorrichtung (9a-9c) die von der Ein- /Ausgabevorrichtung (102a-102f) empfangenen, ein Schlüsselfeld (64) und ein numerisches Feld (65) aufweisenden Daten zu dem Speicher (2) überträgt, nachdem sie die Datenmenge durch eine Akkumulationsverarbeitung des numerischen Feldes (65), welches denselben Schlüssel in dem Schlüs­ selfeld (64) besitzt, reduziert hat.
3. Datenverarbeitungsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, dass die Verarbeitungs­ vorrichtung (9a-9c) die von der Ein- /Ausgabevorrichtung (102a-102f) empfangenen Daten zu dem Speicher (2) überträgt, nachdem sie die Menge der Daten durch Zählen einer Anzahl der empfangenen Daten und Ausgeben der Anzahl von Daten reduziert hat.
4. Datenverarbeitungsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, dass die Verarbeitungs­ vorrichtung (9a-9c) die von der Ein- /Ausgabevorrichtung (102a-102f) empfangenen Daten zu dem Speicher (2) überträgt, nachdem sie die Menge der Daten durch Herausziehen eines ma­ ximalen Wertes der empfangenen Daten und Ausge­ ben der Daten mit dem maximalen Wert reduziert hat.
5. Datenverarbeitungsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, dass die Verarbeitungs­ vorrichtung (9a-9c) die von der Ein- /Ausgabevorrichtung (102a-102f) empfangenen Daten zu dem Speicher (2) überträgt, nachdem sie die Menge der Daten durch Herausziehen eines mi­ nimalen Wertes von den empfangenen Daten und Ausgeben der Daten mit dem minimalen Wert redu­ ziert hat.
6. Datenverarbeitungsvorrichtung nach Anspruch 1, gekennzeichnet durch mehrere untere Busse (5a-­ 5d), mehrere Ein-/Ausgabevorrichtungen (102a-­ 102f) und mehrere Verarbeitungsvorrichtungen, worin eine der mehreren Verarbeitungsvorrichtun­ gen (9a-9c), die mit einem der mehreren von unteren Bussen (5a-5d) verbunden ist, Daten von einer der mehreren Ein-/Ausgabevorrichtungen (102a-102f), die mit einem anderen der mehre­ ren von unteren Bussen (5a-5d) verbunden ist, empfängt.
7. Datenverarbeitungsvorrichtung nach Anspruch 6, dadurch gekennzeichnet, dass die eine der mehre­ ren Ein-/Ausgabevorrichtungen (102a-102f) Da­ ten in der einen der mehreren Ein- /Ausgabevorrichtungen (102a-102f) teilt und die geteilten Daten zu den mehreren Verarbei­ tungsvorrichtungen (9a-9c) überträgt.
8. Datenverarbeitungsvorrichtung nach Anspruch 6, dadurch gekennzeichnet, dass die eine der mehre­ ren Verarbeitungsvorrichtungen (9a-9c) die herausgezogenen Daten zu einer anderen der meh­ reren Verarbeitungsvorrichtungen (9a-9c) über­ trägt, und daß die andere der mehreren Verarbei­ tungsvorrichtungen (9a-9c) Daten von den meh­ reren Verarbeitungsvorrichtungen (9a-9c) emp­ fängt und weiterhin einen anderen Teil der Daten herauszieht.
DE19901792A 1998-06-05 1999-01-08 Datenverarbeitunsvorrichtung und Datenverarbeitungsverfahren Expired - Lifetime DE19901792C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15697698A JP3263362B2 (ja) 1998-06-05 1998-06-05 データ処理装置

Publications (2)

Publication Number Publication Date
DE19901792A1 DE19901792A1 (de) 1999-12-09
DE19901792C2 true DE19901792C2 (de) 2003-10-30

Family

ID=15639456

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19901792A Expired - Lifetime DE19901792C2 (de) 1998-06-05 1999-01-08 Datenverarbeitunsvorrichtung und Datenverarbeitungsverfahren

Country Status (5)

Country Link
US (1) US6223236B1 (de)
JP (1) JP3263362B2 (de)
CA (1) CA2255350C (de)
DE (1) DE19901792C2 (de)
GB (1) GB2338092B (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2978882B1 (ja) 1998-06-03 1999-11-15 三菱電機株式会社 デバイス間データ転送装置及びデバイス間データ転送方法
DE10050980A1 (de) 2000-10-13 2002-05-02 Systemonic Ag Speicherkonfiguration mit I/O-Unterstützung
US6865695B2 (en) * 2001-07-26 2005-03-08 International Business Machines Corpoation Robust system bus recovery
US6865656B2 (en) * 2001-09-10 2005-03-08 Qualcomm Incorporated Method and system for efficient transfer of data between custom application specific integrated circuit hardware and an embedded microprocessor
US6928509B2 (en) * 2002-08-01 2005-08-09 International Business Machines Corporation Method and apparatus for enhancing reliability and scalability of serial storage devices
WO2015155850A1 (ja) * 2014-04-09 2015-10-15 株式会社日立製作所 入出力装置及び方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5574869A (en) * 1992-03-30 1996-11-12 Intel Corporation Bus bridge circuit having configuration space enable register for controlling transition between various modes by writing the bridge identifier into CSE register

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4647123A (en) * 1983-02-07 1987-03-03 Gulf & Western Manufacturing Company Bus networks for digital data processing systems and modules usable therewith
EP0154551A3 (de) 1984-03-06 1987-12-16 Codex Corporation Vorrichtung, die einen ersten Prozessor befähigt, einen zweiten Prozessor zu veranlassen, um eine Datenübertragung zwischen besagten Prozessoren zu bewirken
GB8816413D0 (en) 1988-07-09 1988-08-17 Int Computers Ltd Data processing system
JPH04137165A (ja) 1990-09-28 1992-05-12 Yokogawa Electric Corp マルチプロセッサ・システム
JPH05120240A (ja) 1991-10-29 1993-05-18 Toshiba Corp 並列処理装置
JP3064706B2 (ja) 1992-11-04 2000-07-12 カシオ計算機株式会社 データ処理装置
US5568620A (en) 1993-06-30 1996-10-22 Intel Corporation Method and apparatus for performing bus transactions in a computer system
US5594926A (en) 1993-07-19 1997-01-14 Efar Microsystems, Inc. Hard disk accelerating system for computer
WO1996033466A1 (en) 1995-04-18 1996-10-24 International Business Machines Corporation Performing input/output operations in a multiprocessor system
KR100197407B1 (ko) * 1995-12-28 1999-06-15 유기범 전전자 교환기에 있어서 프로세서들간 통신버스구조
JPH09269927A (ja) 1996-03-29 1997-10-14 Mitsubishi Electric Corp バスアクセス方法、バス、並びにバス接続システム
US6073225A (en) * 1997-06-24 2000-06-06 Intel Corporation Method and apparatus for monitoring bus transactions based on cycle type and memory address range

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5574869A (en) * 1992-03-30 1996-11-12 Intel Corporation Bus bridge circuit having configuration space enable register for controlling transition between various modes by writing the bridge identifier into CSE register

Also Published As

Publication number Publication date
GB9827128D0 (en) 1999-02-03
CA2255350C (en) 2002-02-12
JPH11353270A (ja) 1999-12-24
US6223236B1 (en) 2001-04-24
GB2338092A (en) 1999-12-08
DE19901792A1 (de) 1999-12-09
CA2255350A1 (en) 1999-12-05
JP3263362B2 (ja) 2002-03-04
GB2338092B (en) 2000-04-19

Similar Documents

Publication Publication Date Title
DE68924954T2 (de) Übertragungssystem für verteilte Datenbanken.
DE69322985T2 (de) Ein-/Ausgabesteuerungssystem und Ein-/Ausgabesteuerungsverfahren im System
DE69619213T2 (de) System und Verfahren zur Lastverteilung eines Datei-Servers
DE4208924B4 (de) Verfahren zur Kommunikation zwischen Prozessoren und Parallelverarbeitungscomputer hierfür
DE68927508T2 (de) Zeitweilige Zustandsbewahrung für einen verteilten Dateidienst
DE3750938T2 (de) Multiprozessorsystem.
DE69403951T2 (de) Verfahren und vorrichtung zur datenübertragung und -speicherung in einer hochparallelen rechnernetzwerkumgebung
DE68903693T2 (de) Einrichtung zur datenverarbeitung.
DE68913230T2 (de) Lokale Netzwerkverbindungsvorrichtung mit einstellbarer Betriebsart.
DE2912738A1 (de) System mit direkter uebertragung zwischen subsystemen
DE602005006338T2 (de) Vorrichtung und Verfahren zur Datenübertragungsverarbeitung
DE69030678T2 (de) Datenübertragungsbetrieb zwischen zwei asynchronen Bussen
DE4035837A1 (de) Bus-hauptschnittstellenschaltung mit transparenter unterbrechung einer datenuebertragungsoperation
DE19822543A1 (de) Verfahren zum Zuteilen von Aufträgen, Datenverarbeitssystem, Client-Datenbearbeitungsknoten und computerlesbares Speichermedium
DE60026068T2 (de) System für externe transaktionen mit dynamischen prioritäten
DE69119149T2 (de) Struktur zur direkten Speicher-zu-Speicher-Übertragung
DE69729046T2 (de) Dynamische Zuteilung von Pufferraum zwischen Anfragen und Antworten
DE19901792C2 (de) Datenverarbeitunsvorrichtung und Datenverarbeitungsverfahren
DE3936339C2 (de) DMA-Controller
DE69934823T2 (de) Verfahren zur last-regulierung
DE2558417A1 (de) Datenverarbeitungssystem
DE69719123T2 (de) System zur Datenverarbeitung und -kommunikation mit PCI-Hochdurchsatzbus
DE60022186T2 (de) Unterhaltung einer entfernten Warteschlange unter Benutzung von zwei Zählern in der Verschiebesteuerung mit Hubs und Ports
DE69422018T2 (de) Schnittstellenvorrichtung
DE69028492T2 (de) System und atomistische Zugriffmethode zu einer Eingaben-/Ausgabenvorrichtung mit einem direkten Speicherzugriff

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8304 Grant after examination procedure
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
R071 Expiry of right