DE102015205027A1 - Datenverarbeitungsvorrichtung - Google Patents

Datenverarbeitungsvorrichtung Download PDF

Info

Publication number
DE102015205027A1
DE102015205027A1 DE102015205027.0A DE102015205027A DE102015205027A1 DE 102015205027 A1 DE102015205027 A1 DE 102015205027A1 DE 102015205027 A DE102015205027 A DE 102015205027A DE 102015205027 A1 DE102015205027 A1 DE 102015205027A1
Authority
DE
Germany
Prior art keywords
event
access
processing element
data
stage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102015205027.0A
Other languages
English (en)
Inventor
Tomoyoshi FUNAZAKI
Hirofumi Yamamoto
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Publication of DE102015205027A1 publication Critical patent/DE102015205027A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17356Indirect interconnection networks
    • G06F15/17368Indirect interconnection networks non hierarchical topologies
    • G06F15/17375One dimensional, e.g. linear array, ring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0813Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/15Use in a specific computing environment
    • G06F2212/154Networked environment

Landscapes

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

Abstract

Eine Datenverarbeitungsvorrichtung enthält: Datenverarbeitungsstufen (1), die jeweils ein Verarbeitungselement (3), einen Stufenspeicher (4) und eine Ereignissteuerung (5) aufweisen; und einen Zwischenstufenbus (2), der die Stufen über einen Zugriffspunkt (7) verbindet. Externe Ereignisse und ein Prozessbeendigungsereignis werden in die Steuerung eingegeben, um ein Aufgabenstartereignis für das Verarbeitungselement, das den externen Ereignissen und dem Prozessbeendigungsereignis entspricht, zu erzeugen. Jeder Zugriffspunkt weist eine Zugriffstabelle auf, die eine Datenschreibhistorie speichert, wenn das Verarbeitungselement Daten in den Speicher in einem Speicherzugriffsprozess schreibt. Das Verarbeitungselement führt einen Ereigniszugriffsprozess aus, der eine Speicherzugriffsprozessbeendigung angibt, nachdem das Verarbeitungselement den Speicherzugriffsprozess auf den Speicher über den Zugriffspunkt beendet hat. Der Zugriffspunkt führt einen anderen Ereigniszugriffsprozess zum Eingeben des Prozessbeendigungsereignisses in die Steuerung einer anderen Stufe auf der Grundlage der Datenschreibhistorie aus, wenn das Verarbeitungselement den Ereigniszugriffsprozess ausführt.

Description

  • Die vorliegende Erfindung betrifft eine Datenverarbeitungsvorrichtung, die mehrere Datenverarbeitungsstufen aufweist, die über einen Bus miteinander verbunden sind. Jede Datenverarbeitungsstufe enthält ein oder mehrere Verarbeitungselemente.
  • In einem Mehrkernsystem, das eine verteilte geteilte Speicherstruktur (d. h. eine nicht einheitliche Speicherzugriffsstruktur oder eine NUMA-Struktur) aufweist, sind mehrere Prozessoren über einen Bus miteinander verbunden. In dem System ist es notwendig, die Verarbeitung zwischen den Prozessoren zu synchronisieren, um eine Verarbeitung parallel zu anderen Verarbeitungen der jeweiligen Prozessoren durchzuführen. Es sind verschiedene Techniken zum Synchronisieren zwischen den Prozessoren bekannt. Ein Synchronisierungsverfahren, das eine gemeinsame Variable verwendet, ist beispielsweise in der JP H04-312160 A (entspricht der US 5 528 761 A ) beschrieben. Ein Synchronisierungsverfahren, das eine Barriere verwendet, ist in der JP 2013-137833 A (entspricht der US 2009/0193228 A ) beschrieben. Außerdem ist ein Synchronisierungsverfahren, das eine Nachricht verwendet, um effektiv ein Ereignis zu verarbeiten, das asynchron erzeugt wird, in der JP H07-234841 A beschrieben.
  • In dem System, das die NUMA-Struktur aufweist, greifen, wenn das Synchronisierungsverfahren, das die gemeinsame Variable oder die Barriere verwendet, auf das System angewendet wird, mehrere Kerne auf die gemeinsame Variable und den Barrierewiderstand zu. Dementsprechend verringert sich die Prozesseffizienz, wenn sich die Anzahl der Kerne erhöht. Außerdem wird in dem Verfahren zum Synchronisieren durch Senden und Empfangen der Nachricht eine Synchronisierungssteuerung kompliziert, wenn sich die Anzahl der Kerne erhöht. Auf ähnliche Weise verringert sich auch in diesem Fall die Verarbeitungseffizienz.
  • Es ist eine Aufgabe der vorliegenden Erfindung, eine Datenverarbeitungsvorrichtung zu schaffen, die mehrere Datenverarbeitungsstufen aufweist, die über einen Bus miteinander verbunden sind, und die eine Synchronisierung zwischen Verarbeitungselementen durchführt, ohne eine Verarbeitungseffizienz zu verringern.
  • Gemäß einem beispielhaften Aspekt der vorliegenden Erfindung enthält eine Datenverarbeitungsvorrichtung: mehrere Datenverarbeitungsstufen, die jeweils mindestens ein Verarbeitungselement, mindestens einen Stufenspeicher und eine Ereignissteuerung enthalten; und einen Zwischenstufenbus, der mehrere Datenverarbeitungsstufen verbindet und ein Bus ist, der nur Daten schreibt. Das Verarbeitungselement in einer Datenverarbeitungsstufe ist mit dem Stufenspeicher in der einen Datenverarbeitungsstufe über einen Nur-Daten-Lesebus (nur zum Daten lesen) verbunden. Das Verarbeitungselement ist mit dem Zwischenstufenbus über einen zweiten, Nur-Daten-Schreibbus (nur zum Daten schreiben) verbunden. Ein externes Ereignis, das in einer externen Vorrichtung erzeugt wird, und ein Prozessbeendigungsereignis von dem Verarbeitungselement werden in die Ereignissteuerung eingegeben. Die Ereignissteuerung in der einen Datenverarbeitungsstufe erzeugt ein Aufgabenstartereignis (Task-Startereignis) in Bezug auf das Verarbeitungselement in der einen Datenverarbeitungsstufe gemäß dem externen Ereignis und dem Prozessbeendigungsereignis. Jede der Datenverarbeitungsstufen ist mit dem Zwischenstufenbus über einen Zugriffspunkt verbunden. Der Zugriffspunkt enthält eine Zugriffstabelle. Der Zugriffspunkt speichert eine Datenschreibhistorie in der Zugriffstabelle, wenn das Verarbeitungselement Daten in den Stufenspeicher in einem Speicherzugriffsprozess schreibt. Das Verarbeitungselement führt einen Ereigniszugriffsprozess aus, der eine Beendigung des Speicherzugriffsprozesses angibt, nachdem das Verarbeitungselement die Ausführung des Speicherzugriffsprozesses auf den Stufenspeicher über den Zugriffspunkt beendet hat. Der Zugriffspunkt führt einen anderen Ereigniszugriffsprozess zum Eingeben des Prozessbeendigungsereignisses in die Ereignissteuerung einer anderen Datenverarbeitungsstufe, die den Stufenspeicher enthält, in den das Verarbeitungselement Daten schreibt, auf der Grundlage der Datenschreibhistorie, die in der Zugriffstabelle gespeichert ist, aus, wenn das Verarbeitungselement den Ereigniszugriffsprozess ausführt.
  • In der obigen Datenverarbeitungsvorrichtung wird die Synchronisierung der Prozesse, die von den Verarbeitungselementen zwischen unterschiedlichen Datenverarbeitungsstufen ausgeführt werden, effektiv durchgeführt. Außerdem führt jeder Zugriffspunkt den Ereigniszugriffsprozess für nur die Datenverarbeitungsstufe aus, in der der Speicherzugriffsprozess tatsächlich von dem Verarbeitungselement durchgeführt wird, und daher wird die Nutzung des Zwischenstufenbusses minimiert und es wird das Band des Zwischenstufenbusses effektiv verwendet, so dass die Prozesseffizienz verbessert wird.
  • Die obigen und weitere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden anhand der folgenden detaillierten Beschreibung mit Bezug auf die zugehörigen Zeichnungen deutlich. Es zeigen.
  • 1 ein Blockdiagramm, das eine Funktionsstruktur einer Datenverarbeitungsvorrichtung gemäß einer ersten Ausführungsform zeigt;
  • 2 ein Diagramm, das einen Aufbau eines Zugriffspunkts zeigt;
  • 3 ein Diagramm, das einen Aufbau einer Ereignissteuerung zeigt;
  • 4 ein Flussdiagramm, das einen Serienprozess einer Host-Vorrichtung und eines PE (Verarbeitungselements) zeigt;
  • 5 ein Diagramm, das ein Beispiel einer Zugriffstabelle zeigt;
  • 6 ein Diagramm, das ein Beispiel eines EA-Datenformats (Ereigniszugriffsdatenformats) zeigt;
  • 7 ein Zeitdiagramm, das einen Fall zeigt, bei dem zwei PEs jeweils einen MA-Betrieb (Speicherzugriffsbetrieb) und einen EA-Betrieb (Ereigniszugriffsbetrieb) durchführen;
  • 8 ein Diagramm, das eine Adresse in einem Busadressraum zeigt, wenn das PE den MA-Betrieb und den EA-Betrieb durchführt;
  • 9 ein Diagramm, das die Adresse in dem Busadressraum zeigt, wenn das PE den MA-Betrieb und den EA-Betrieb durchführt;
  • 10 ein Diagramm, das eine Adresse in einem PE-Adressraum zeigt, wenn das PE den MA-Betrieb durchführt;
  • 11 ein Diagramm, das eine Adresse in einem PE-Adressraum zeigt, wenn das PE den EA-Betrieb durchführt;
  • 12 ein Diagramm, das eine Zugriffstabelle zeigt, wenn dasselbe PE den MA in mehreren Stufenspeichern gemäß einer zweiten Ausführungsform durchführt;
  • 13 ein Diagramm, das mehrere Casts (Typumwandlungen) des EA zeigt;
  • 14 ein Diagramm, das ein Beispiel eines EA-Datenformats zeigt, das verwendet wird, wenn die Casts durchgeführt werden;
  • 15 ein Flussdiagramm, das einen Prozess einer RXC (Empfangssteuerung) entsprechend den Casts zeigt;
  • 16 ein Diagramm, das ein Beispiel zeigt, bei dem die Casts bei einem geschlitzten Bus bzw. Bus mit Slots (slotted bus) in zwei Richtungen gemäß einer dritten Ausführungsform durchgeführt werden;
  • 17 ein Diagramm, das die Anzahl von Hops (Sprüngen) zum Durchführen des EA in jeder Stufe zeigt;
  • 18 ein Diagramm, das ein Beispiel zeigt, bei dem die Casts bei einem unidirektionalen Bus gemäß einer vierten Ausführungsform durchgeführt werden;
  • 19 ein Diagramm, das die Anzahl von Hops zum Durchführen des EA in jeder Stufe zeigt;
  • 20 ein Diagramm, das ein Beispiel zeigt, bei dem die Casts bei einem bidirektionalen Bus gemäß einer fünften Ausführungsform durchgeführt werden;
  • 21 ein Diagramm, das die Anzahl von Hops zum Durchführen des EA in jeder Stufe zeigt;
  • 22 ein Blockdiagramm, das eine Funktionsstruktur einer TXC (Übertragungssteuerung bzw. Sendesteuerung) gemäß einer sechsten Ausführungsform zeigt;
  • 23 ein Zeitdiagramm, das einen Prozess zum Vermengen von mehreren EAs zeigt;
  • 24 ein Zeitdiagramm, das einen Prozess zum Vermengen von mehreren EAs gemäß einer siebten Ausführungsform zeigt;
  • 25 ein Zeitdiagramm, das einen Prozess zum Vermengen von mehreren EAs gemäß einer achten Ausführungsform zeigt;
  • 26 ein Flussdiagramm, das einen Prozess zum Schalten bzw. Wechseln einer Ausführung verschiedener Prozesse gemäß den sechsten bis achten Ausführungsformen fallabhängig zeigt;
  • 27 ein Diagramm, das ein Netzwerk gemäß einer zehnten Ausführungsform zeigt, das der ersten Ausführungsform entspricht;
  • 28 ein Diagramm, das das Netzwerk zeigt, das der ersten Ausführungsform entspricht, wenn die Anzahl der Stufen des Netzwerks zwei beträgt;
  • 29 ein Blockdiagramm, das eine Funktionsstruktur einer Datenverarbeitungsvorrichtung gemäß einem Beispiel des Netzwerks, das in 28 gezeigt ist, zeigt; und
  • 30 ein Diagramm, das eine modellierte Struktur der 29 zeigt.
  • (Erste Ausführungsform)
  • Wie es in 1 gezeigt ist, enthält eine Datenverarbeitungsvorrichtung gemäß einer ersten Ausführungsform mehrere digitale Signalverarbeitungsstufen 1(1), 1(2), ... 1(N), die über einen geschlitzten Bus 2(1), 2(2), ... 2(N – 1) verbunden sind. Hier wird die digitale Signalverarbeitungsstufe 1(1), 1(2), ... 1(N) als DSP-Stufe 1 (digitale Signalverarbeitungsstufe) definiert, und der geschlitzte Bus 2(1), 2(2), ... 2(N – 1) wird als geschlitzter Bus 2 definiert, der ein bidirektionaler Bus ist. Jede DSP-Stufe 1(1), 1(2), ... 1(N) als eine Datenverarbeitungsstufe enthält mehrere Verarbeitungselemente (PEs) 3(1, 1), 3(1, 2), ... 3(1, M), ... 3(N, M), einen Stufenspeicher 4 und eine Ereignissteuerung (EVETC) 5. Jedes PE 3(1, 1), 3(1, 2), ... 3(1, M), ... 3(N, M) wird als PE 3 definiert. Jedes PE 3 und der Stufenspeicher 4 sind über einen Nur-Daten-Lesebus (R/O) 6 miteinander verbunden. Hier enthält das PE 3 beispielsweise einen DSP (digitalen Signalprozessor).
  • Die DSP-Stufe 1 ist mit dem geschlitzten Bus 2 (d. h. Zwischenstufenbus) über einen Zugriffspunkt 7 verbunden. Jedes PE 3 und der Zugriffspunkt 7 sind über den Nur-Daten-Schreibbus (W/O) 8 miteinander verbunden. Der Zugriffspunkt 7 und der Stufenspeicher 4 sind über einen Nur-Daten-Schreibbus (W/O) 9 miteinander verbunden. Der geschlitzte Bus 2 enthält einen Rechts-Richtungs-Bus 2R und einen Links-Richtungs-Bus 2L. Der Rechts-Richtungs-Bus 2R überträgt Daten nach rechts in der Zeichnung der 1. Der Links-Richtungs-Bus 2L überträgt die Daten nach links in der Zeichnung der 1. Der Links-Richtungs-Bus 2L ist unabhängig von dem Rechts-Richtungs-Bus 2R.
  • Der Zugriffspunkt 7 enthält eine TXC (Übertragungssteuerung bzw. Sendesteuerung) 31, eine RXC (Empfangssteuerung) 32 und eine Zugriffstabelle 33. Die TXC 31 ist mit dem Nur-Daten-Schreibbus 8 und mit der Zugriffstabelle 33 verbunden. Die RXC 32 ist mit dem Nur-Daten-Schreibbus 9 verbunden und ist über einen Nur-Daten-Schreibbus 10 mit der Ereignissteuerung 5 verbunden.
  • Der Zugriffspunkt 7(2), der der DSP-Stufe 1(2) entspricht, enthält einen Eingangspuffer 11L, 11R und einen Ausgangspuffer 14L, 14R. Die Daten, die von dem Zugriffspunkt 7(1) auf der linken Seite benachbart zu dem Zugriffspunkt 7(2) über den Eingangspuffer 11L eingegeben werden, können an den Zugriffspunkt 7(3) auf der rechten Seite benachbart zu dem Zugriffspunkt 7(2) und, wie es nicht gezeigt ist, über den Ausgangspuffer 14R ausgegeben werden. Die Daten, die von dem Zugriffspunkt 7(3) über den Eingangspuffer 11R eingegeben werden, können über den Ausgangspuffer 14L an den Zugriffspunkt 7(1) ausgegeben werden. Jeder Zugriffspunkt 7(1), 7(2), ... 7(N) wird als Zugriffspunkt 7 bezeichnet. Der Ausgangsanschluss der TXC 31 ist mit dem Ausgangsanschluss des Eingangspuffers 11L, 11R und dem Eingangsanschluss des Ausgangspuffers 14L, 14R verbunden. Der Eingangsanschluss der RXC 32 ist mit dem Ausgangsanschluss des Eingangspuffers 11L, 11R und dem Eingangsanschluss des Ausgangspuffers 14L, 14R verbunden.
  • Der Zugriffspunkt 7(1) enthält nur den Eingangspuffer 11R und den Ausgangspuffer 14R. Der Zugriffspunkt 7(N) enthält nur den Eingangspuffer 11L und den Ausgangspuffer 14L (nicht gezeigt). Die Zugriffspunkte 7(3) bis 7(N – 1), die nicht gezeigt sind, weisen ähnliche Strukturen wie der Zugriffspunkt 7(2) auf. Somit ist der geschlitzte Bus 2 über den Zugriffspunkt 7 verbunden, so dass ein bidirektionaler Ringbus ausgebildet wird.
  • Wie es in 2 gezeigt ist, enthält der Zugriffspunkt 7 drei Dateneingangsports und drei Datenausgangsports. Der Zugriffspunkt 7 enthält außerdem drei Eingangspuffer 11S, 11L, 11R, drei Latches 12S, 12L, 12R, drei Multiplexer 13S, 13L, 13R und drei Ausgangspuffer 14S, 14L, 14R, die den Dateneingangsports und den Datenausgangsports entsprechen.
  • Die Daten, die über den Nur-Schreibbus 8 (d. h. den zweiten Datenbus) der DSP-Stufe 1 eingegeben werden, werden über den Eingangspuffer 11S in den Daten-Latch 12S gelatcht. Der Ausgangsanschluss des Daten-Latches 12S ist mit einem der drei Eingangsanschlüsse der jeweiligen Multiplexer mit drei Eingängen 13S, 13L, 13R verbunden. Die Daten, die von dem geschlitzten Bus 2R eingegeben werden, der mit der linken Seite in der Zeichnung der 1 verbunden ist, werden über den Eingangspuffer 11L in den Daten-Latch 12L gelatcht. Der Ausgangsanschluss des Daten-Latches 12L ist mit einem anderen der Eingangsanschlüsse der jeweiligen Multiplexer 13S, 13L, 13R über den Rechts-Richtungs-Bus 15R verbunden.
  • Die Daten, die von dem geschlitzten Bus 2L eingegeben werden, der mit der rechten Seite in der Zeichnung der 1 verbunden ist, werden über den Eingangspuffer 11R in den Daten-Latch 12R gelatcht. Der Ausgangsanschluss des Daten-Latches 12R ist mit dem verbleibenden der Eingangsanschlüsse der jeweiligen Multiplexer 13S, 13L, 13R über den Links-Richtungs-Bus 15L verbunden. Der Ausgangsanschluss des Multiplexers 13S, 13L, 13R ist mit dem Eingangsanschluss des jeweiligen Ausgangspuffers 14S, 14L, 14R verbunden.
  • Die Ausgangsanschlüsse der Ausgangspuffer 14S, 14L, 14R sind mit dem Nur-Schreibbus 9 der DSP-Stufe 1 verbunden, wobei der geschlitzte Bus 2L mit der linken Seite des Zugriffspunkts 7 verbunden ist und der geschlitzte Bus 2R mit der rechten Seite des Zugriffspunkts 7 verbunden ist. Hier führt die Datensteuereinheit (nicht gezeigt) des Zugriffspunkts 7 einen Latch-Steuerbetrieb des Daten-Latches 12, einen Auswahlsteuerbetrieb des Multiplexers 13 und einen Freigabesteuerbetrieb des Ausgangspuffers 14 durch. Eine Richtung, in der die eingegebenen Daten ausgegeben werden, wird durch eine Adresse, die den Daten angehängt ist, bestimmt.
  • Somit können die Daten, die von dem PE 3 an den Nur-Schreibbus 8 ausgegeben werden, an den geschlitzten Bus 2R auf der rechten Seite über den Multiplexer 13R und den Ausgangspuffer 14R ausgegeben werden. Außerdem können die Daten, die von dem PE 3 an den Nur-Schreibbus 8 ausgegeben werden, an den geschlitzten Bus 2L auf der linken Seite über den Multiplexer 13L und den Ausgangspuffer 14L ausgegeben werden. Weiterhin können die Daten, die von dem PE 3 an den Nur-Schreibbus 8 ausgegeben werden, an den Nur-Schreibbus 9 der DSP-Stufe 1 über den Multiplexer 13S und den Ausgangspuffer 14S ausgegeben werden. Jedes PE 3 schreibt die Daten in den Stufenspeicher 4 der DSP-Stufe 1 entlang diesen Routen.
  • Wenn die Daten über den Zugriffspunkt 7 ausgegeben werden und eine Kollision mit einem Schreibbetrieb einer anderen Stufe auftritt, werden die Daten entsprechend der Prioritätsreihenfolge, die durch ein Einstellverfahren wie beispielsweise ein Round-Robin-Verfahren bestimmt wird, ausgegeben.
  • Hier entsprechen der Daten-Latch 12S und die Multiplexer 13R, 13L der TXC 31. Die Daten-Latches 12L, 12R und der Multiplexer 13S entsprechen der RXC 32.
  • Wie es in 3 gezeigt ist, enthält die Ereignissteuerung 5 eine PE-Ereignisauswahleinheit 21(1), 21(2), ... 21(M), die einem jeweiligen PE 3(1, 1), 3(1, 2), ... 3(1, M) entspricht, und eine Beendigungsereignislisteneinheit 22. Jede PE-Ereignisauswahleinheit 21(1), 21(2), ... 21(M) wird als PE-Ereignisauswahleinheit 21 bezeichnet. Jede PE-Ereignisauswahleinheit 21 und die Beendigungsereignislisteneinheit 22 enthalten dieselbe Anzahl von Flip-Flop-Schaltungen. Die Steuerung 5 enthält außerdem dieselbe Anzahl von NAND-Gattern 23. Einer der Eingangsanschlüsse des NAND-Gatters 23 ist mit dem Ausgangsanschluss der Flip-Flop-Schaltung auf der Seite der PE-Ereignisauswahleinheit 21 verbunden. Der andere der Eingangsanschlüsse des NAND-Gatters 23, der ein negativer Logikanschluss ist, ist mit dem Ausgangsanschluss der Flip-Flop-Schaltung auf der Seite der Beendigungsereignislisteneinheit 22 verbunden. Der Eingangsanschluss der Flip-Flop-Schaltung ist mit der RXC 32 in 2B über den Nur-Schreibbus 10 verbunden.
  • Der Ausgangsanschluss jedes NAND-Gatters 23 ist mit dem Eingangsanschluss eines AND-Gatters mit mehreren Eingängen 24(1), 24(2), ... 24(M), die den jeweiligen PE 3(k, 1), 3(k, 2), ... 3(k, M) entsprechen, verbunden. Hier repräsentiert k eine Zahl zwischen 1 und N. Der Ausgangsanschluss jedes AND-Gatters 24(1), 24(2), ... 24(M) ist mit dem Eingangsanschluss der Flip-Flop-Schaltung 25(1), 25(2), ... 25(M) verbunden. Jedes AND-Gatter 24(1), 24(2), ... 24(M) wird als AND-Gatter 24 bezeichnet, und jede Flip-Flop-Schaltung 25(1), 25(2), ... 25(M) wird als Flip-Flop-Schaltung 25 bezeichnet.
  • Wenn ein jeweiliges PE 3 eine Ausführung eines entsprechenden Aufgabenprozesses startet, wählt die PE-Ereignisauswahleinheit 21 vorläufig ein Ereignis, das von einem anderen PE 3 ausgeführt wird und beendet werden muss oder das ein anderes externes Ereignis ist und beendet werden muss, aus. Die Auswahl wird vorläufig von einer später beschriebenen Host-Vorrichtung durchgeführt. Hier weist ein nicht ausgewähltes Ereignis einen Ausgang mit einem niedrigen Pegel auf. Somit weist der Ausgang des entsprechenden NAND-Gatters 23 sogar dann einen hohen Pegel auf, wenn das entsprechende Ereignis nicht beendet ist. Da der Ausgang des ausgewählten Ereignisses einen niedrigen Pegel aufweist, weist andererseits der Ausgang des entsprechenden NAND-Gatters 23 einen hohen Pegel auf, wenn das entsprechende Ereignis beendet ist.
  • Wenn alle Ereignisse, die vorläufig von dem PE 3 ausgewählt wurden, beendet sind, nimmt der Ausgang des entsprechenden AND-Gatters 24 einen hohen Pegel an, und die Ereignisstartinformation (d. h. die Aufgabenstartereignisinformation) wird als eine Unterbrechung an das PE 3 über die Flip-Flop-Schaltung 25 gemeldet. Das PE 3, das die Nachricht empfängt, startet die Ausführung der Aufgabe, die ausgeführt werden muss.
  • Im Folgenden werden Funktionen der Datenverarbeitungsvorrichtung gemäß einer ersten Ausführungsform erläutert. Die Host-Vorrichtung in 4 entspricht dem externen Modul in 1. Die Host-Vorrichtung steuert insgesamt die Ausführung der Aufgabe des PE3 in jeder DSP-Stufe 1. Insbesondere werden die Details später beschrieben. Die Host-Vorrichtung wählt in Schritt H1 ein Ereignis der Ereignissteuerung 5 in jeder DSP-Stufe 1 unter Verwendung der PE-Ereignisauswahleinheit 21, die einem jeweiligen PS 3 entspricht, aus, um auf eine Beendigung des Ereignisses zu warten. Dann wird in Schritt H2 das Programm in den Anweisungsspeicher (nicht gezeigt, aber für jedes PE 3 gemeinsam) in jeder DSP-Stufe 1 geladen. Dann werden in Schritt H3 die Daten in den Stufenspeicher 4 eingegeben. Dann wird in Schritt H4 der Registerwert in das Aufgabensteuerregister 35 geladen.
  • Jedes PE 3 wartet in Schritt P1, bis eine Ereignisbedingung zum Starten der Ausführung einer jeweiligen Aufgabe erfüllt ist. Wenn sämtliche Beendigungsereignisse von anderen ausgewählten PEs 3 vorliegen und die Unterbrechung (Interrupt) des PE-Startereignisses bei dem PE 3 auftritt (das heißt, wenn das Ergebnis der Bestimmung in Schritt P1 „JA“ lautet), schreitet die Verarbeitung zum Schritt P2. In Schritt P2 startet das PE 3 die Ausführung der Aufgabe, die dem PE 3 zugewiesen ist. Wenn das PE 3 die Ausführung der Aufgabe beendet hat, erzeugt es das Aufgabenbeendigungsereignis.
  • Das Auftreten des Aufgabenbeendigungsereignisses wird der Host-Vorrichtung gemeldet. Dann bestimmt die Host-Vorrichtung in Schritt H5, ob das PE 3, das das Ereignis erzeugt hat, eine nächste zu verarbeitende Aufgabe aufweist. Wenn das PE 3 eine nächste Aufgabe aufweist, das heißt, wenn das Ergebnis der Bestimmung in Schritt H5 „JA“ lautet, kehrt die Verarbeitung zum Schritt H4 zurück. In Schritt H4 wird der Registerwert, der die nächste zu verarbeitende Aufgabe angibt, in das entsprechende Aufgabensteuerregister 35 geladen. Wenn andererseits das PE 3 keine nächste Aufgabe aufweist, das heißt, wenn das Ergebnis der Bestimmung in Schritt H5 „NEIN“ lautet, schreitet die Verarbeitung zum Schritt H6. In Schritt H6 wird bestimmt, ob das PE 3 in der entsprechenden DSP-Stufe 1 ein nächstes auszuführendes Programm aufweist. Wenn das PE 3 ein nächstes Programm aufweist, das heißt, wenn das Ergebnis der Bestimmung in Schritt H6 „JA“ lautet, schreitet die Verarbeitung zum Schritt H7. In Schritt H7 wartet die Host-Vorrichtung, bis sämtliche PEs 3 in der entsprechenden DSP-Stufe 1 die jeweiligen Aufgaben beendet haben. Dann schreitet die Verarbeitung zum Schritt H2 und das nächste Programm wird geladen. Wenn das PE 3 kein nächstes Programm aufweist, das heißt, wenn das Ergebnis der Bestimmung in Schritt H6 „NEIN“ lautet, beendet die Host-Vorrichtung den Prozess. Somit wurde der Prozess, der von der Datenverarbeitungsvorrichtung ausgeführt wird, beschrieben.
  • Im Folgenden werden ein Speicherzugriff (d. h. MA) auf den Stufenspeicher 4, der von einem jeweiligen PE 3 ausgeführt wird, und ein Ereigniszugriff (d. h. EA), der von einem jeweiligen PE 3 ausgeführt wird, erläutert. Das PE 3 führt den MA auf den Stufenspeicher 4 durch, der ein Objekt zum Dateneinschreiben ist. Nachdem das PE 3 in den Stufenspeicher 4 geschrieben hat, führt das PE 3 den EA aus. Wie es in 5 gezeigt ist, zeigt die Zugriffstabelle 33 eine Matrix, bei der die Reihen die jeweiligen DSP-Stufen 1(1), 1(2), ... 1(N) definieren und die Spalten die jeweiligen PEs 3(k, 1) bis 3(k, M) definieren. Hier repräsentiert k eine Zahl zwischen 1 und N. Wenn beispielsweise das PE 3(1, 1) auf den Speicher 4 in der DSP-Stufe 1(1) zugreift, wird ein Flag des entsprechenden Matrixelements auf „1“ gesetzt. Wenn danach das PE 3(1, 1) den EA ausführt, wird das Flag unter Verwendung der TXC 31 auf „0“ zurückgesetzt.
  • Das PE 3 führt den EA durch Schreiben an die spezielle Adresse, die vorläufig zugewiesen wurde, aus. Somit nimmt die TXC 31 Bezug auf die Zugriffstabelle 33 und die TXC 16 gibt EA-Daten aus, die ein Format aufweisen, das in 6 gezeigt ist, entsprechend Informationen, auf welchen Stufenspeicher 4 das entsprechende PE 3 bis zu dem derzeitigen Zeitpunkt zugegriffen hat. Die EA-Daten weisen beispielsweise 32 Bit auf. Ein Teil der EA-Daten von 8 Bit auf der MSB-Seite (Seite der signifikantesten bzw. höheren Bits) spezifiziert die Nummer der DSP-Stufe, und der andere Teil der EA-Daten von 24 Bit spezifiziert das PE 3 zum Erzeugen des Ereignisses. Somit wird in der Ereignissteuerung 5 in der entsprechenden DSP-Stufe 1 das Ereignis-Flag in der Beendigungsereignislisteneinheit 22 für das entsprechende PE 3 gesetzt.
  • Wie es in 8 gezeigt ist, führt beispielsweise zunächst das PE 3(1, 2) den MA auf den Speicher 4 in der DSP-Stufe 1(1) aus. Dann führt das PE 3(1, 1) den MA auf denselben Stufenspeicher 4 in der DSP-Stufe 1(1) aus. Dann führt das PE 3(1, 2) den MA auf denselben Stufenspeicher 4 in der DSP-Stufe 1(1) aus. Danach führt das PE 3(1, 2) den EA aus, so dass die TXC 31 in der DSP-Stufe 1(1) Bezug auf die Zugriffstabelle 33 nimmt. Somit wird bestimmt, dass das PE 3(1, 2) den MA in der DSP-Stufe 1(1) bis zu dem derzeitigen Zeitpunkt ausgeführt hat. Somit führt die TXC 31 den EA in Bezug auf die DSP-Stufe 1(1) aus, so dass die TXC 31 die EA-Daten ausgibt. Als Ergebnis wird in der Ereignissteuerung 5 in der entsprechenden DSP-Stufe 1 das Ereignis-Flag in der Beendigungsereignislisteneinheit 22 für das entsprechende PE 3 gesetzt. Wenn danach das PE 3(1, 1) den EA ausführt, wird dieselbe Verarbeitung wie oben beschrieben ausgeführt.
  • Wie es in 8 gezeigt ist, wird, wenn das PE 3(1, 1) den MA auf den Speicher 4 der DSP-Stufe 1(1) ausführt, die Schreibadresse (d. h. die Adresse in dem Busadressraum) in Bezug auf den Speicher 4 durch die TXC 31 ausgegeben. Wenn dann das PE 3(1, 1) den EA ausführt, gibt die TXC 31 die Adresse zum Zugreifen auf die Ereignissteuerung 5 der DSP-Stufe 1(1) aus. Außerdem wird, wie es in 9 gezeigt ist, wenn das PE 3(1, 1) den MA auf den Speicher 4 in der DSP-Stufe 1(1) und den Speicher in der DSP-Stufe 1(2) ausführt, die Schreibadresse in Bezug auf jeden Speicher 4 der DSP-Stufen 1(1), 1(2) durch die TXC 31 ausgegeben. Wenn danach das PE 3(1, 1) den EA ausführt, gibt die TXC 31 die Adresse zum Zugreifen auf die jeweilige Ereignissteuerung 5 der DSP-Stufen 1(1), 1(2) aus.
  • Wie es in 10 gezeigt ist, werden in einem Fall der 8, wenn die Schreibadresse in Bezug auf den Speicher 4 der DSP-Stufe 1(1) ausgegeben wird, Daten in den Speicher 4 über die RXC 32 der DSP-Stufe 1(1) geschrieben. Wenn der EA in der DSP-Stufe 1(1) ausgeführt wird, wird, wie es in 11 gezeigt ist, das Ereignis-Flag in der Beendigungsereignislisteneinheit 22 in der Ereignissteuerung der DSP-Stufe 1(1) durch die RXC 32 gesetzt.
  • Somit enthält gemäß der vorliegenden Ausführungsform jede DSP-Stufe 1 mehrere PEs 3, den Stufenspeicher 4 und die Ereignissteuerung 5. Der geschlitzte Bus 2 verbindet mehrere DSP-Stufen 1. In einer der DSP-Stufen 1 sind das PE 3 und der Stufenspeicher 4 über den Nur-Lesebus 6 miteinander verbunden, und das PE 3 und der geschlitzte Bus 2 sind über den Nur-Schreibbus 8 miteinander verbunden. Das externe Ereignis, das von einer externen Vorrichtung erzeugt wird, und/oder das Prozessbeendigungsereignis von dem PE 3 werden in die Ereignissteuerung 5 eingegeben. Die Ereignissteuerung 5 erzeugt das Aufgabenstartereignis in Bezug auf das PE 3 in der einen der DSP-Stufen 1 gemäß einem jeweiligen darin eingegebenen Ereignis.
  • Das PE 3 in der DSP-Stufe 1 liest die Daten als Verarbeitungsobjekt aus dem Stufenspeicher 4 über den Nur-Lesebus 6 aus. Die verarbeiteten Daten werden in den Speicher 4 einer anderen der DSP-Stufen 1 über den geschlitzten Bus 2, der ein Nur-Schreibbus ist, geschrieben. Somit ist die Datenübertragungsrichtung zwischen dem PE 3 und dem Speicher 4 fixiert. Außerdem wird die Kohärenzverwaltung des Speichers 4 durch Erzeugen des Ereignisses in einer anderen der DSP-Stufen 1 über den Zugriffspunkt 7 und die Ereignissteuerung 5 durchgeführt, nachdem ein jeweiliges PE 3 in den Speicher 4 der anderen der DSP-Stufen 1 geschrieben hat. Somit wird der Bereich der Hardware verringert und es wird die Verarbeitungsgeschwindigkeit verbessert.
  • Außerdem weist der geschlitzte Zwei-Wege-Bus (bidirektionale Bus) 2, der zwei Busse enthält, die unabhängig voneinander sind und unterschiedliche Datenschreibrichtungen aufweisen, eine Struktur auf, die den Pipelineprozess der Software ausführt und mit einem hohen Freiheitsgrad im Vergleich zu einem Ringbus mit einer einzigen Datenschreibrichtung ausgelegt ist. Dementsprechend können mittels derselben Hardware verschiedene Algorithmen bereitgestellt werden. Somit kann die Hardware effektiv verwendet werden, so dass der Energieverbrauch verringert wird.
  • Jede DSP-Stufe 1 und der geschlitzte Bus 2 sind über den Zugriffspunkt 7 miteinander verbunden. Der Zugriffspunkt 7 speichert die Schreibhistorie in der Zugriffstabelle 33, wenn das PE 3 den MA auf dem Stufenspeicher 4 durchführt. Nachdem das PE 3 eine Folge von MAs auf dem Stufenspeicher 4 durchgeführt hat, führt es den EA aus, der angibt, dass der MA beendet ist. Wenn der EA durchgeführt wird, führt der Zugriffspunkt 7 den EA zum Eingeben des Prozessbeendigungsereignisses in die Ereignissteuerung 5 der DSP-Stufe 1, die den Stufenspeicher 4 enthält, für den der MA durchgeführt wurde, auf der Grundlage der Historie, die in der Zugriffstabelle 33 gespeichert ist, aus. Somit erzeugt die Ereignissteuerung 5 das Aufgabenstartereignis an dem PE 3.
  • Dementsprechend wird eine Synchronisierung der Prozesse, die von den PEs 3 zwischen den unterschiedlichen DSP-Stufen 1 ausgeführt werden, wirksam durchgeführt. Außerdem führt der Zugriffspunkt 7 den EA nur in der DSP-Stufe durch, in der der MA von dem PE 3 tatsächlich durchgeführt wurde. Somit wird die Nutzung des geschlitzten Busses 2 minimiert, so dass das Band des Busses 2 effektiv verwendet werden kann und die Prozesseffizienz verbessert wird. Das PE 3 führt den EA als einen Schreibprozess in Bezug auf eine spezielle Adresse aus. Somit wird der EA mit einer einfachen Verarbeitung realisiert.
  • (Zweite Ausführungsform)
  • Wie es in 12 gezeigt ist, führen die PEs 3(1, 1) bis 3(4, 1) den MA in den DSP-Stufen 1(1) bis 1(4) aus. Wenn in diesem Fall das PE 3(1, 1) den EA ausführt, führt die TXC 31 den EA seriell von der DSP-Stufe 1(1) bis zu der DSP-Stufe 1(4) mit Bezug auf die Zugriffstabelle 33 aus, wie es in 13 gezeigt ist. Hier repräsentiert in 13 die Zahl in dem Kreis die Nummer der DSP-Stufe 1. Insbesondere ist die DSP-Stufe 1(1) als „SRC“ definiert, und die DSP-Stufe 1(4) ist als „DIST“ definiert. Dieser Prozess ist als ein Multicast-Prozess definiert.
  • In dem obigen Fall überträgt die TXC 31 der Stufe 1(1) als eine Ausführungsquelle die EA-Daten, wie es in 14 gezeigt ist. Das Bit 31 als das MSB (signifikanteste Bit) wird für den Speicherbereich des Multicast-Flags verwendet. Wenn der Multicast-Prozess durchgeführt wird, wird der Wert des Flags auf „1“ gesetzt. Die Stufen-ID wird als die Stufen-ID der finalen Stufe bzw. Endstufe 1 des Ausführungsobjekts bestimmt. In 13 ist die Stufen-ID der finalen Stufe 1(4) gleich „4“, und die Stufen-ID wird als „4“ bestimmt.
  • Wie es in 15 gezeigt ist, bestimmt die RXC 32 der Stufe 1, die die EA-Daten empfängt, in Schritt S1 mit Bezug auf das Multicast-Flag, ob ein Prozess der Multicast-Prozess ist. Wenn der Prozess nicht der Multicast-Prozess ist, das heißt, wenn das Ergebnis der Bestimmung in Schritt S1 „NEIN“ lautet, schreitet die Verarbeitung zum Schritt S5. In Schritt S5 wird eine andere Empfangsverarbeitung ausgeführt. Wenn der Prozess der Multicast-Prozess ist, das heißt, wenn das Ergebnis der Bestimmung in Schritt S1 „JA“ lautet, schreitet die Verarbeitung zum Schritt S2. In Schritt S2 wird der EA für die Ereignissteuerung 5 der betreffenden Stufe durchgeführt. Insbesondere führen die RXCs 32 sämtlicher Stufen 1, die die EA-Daten empfangen, den EA aus. Die Bestimmung, ob der EA an das PE 3 der betreffenden Stufe 1 über die Ereignissteuerung 5 übertragen wird, wird entsprechend der Bestimmung getroffen, ob die PE-Ereignisauswahleinheit 21 vorläufig die Übertragung auswählt.
  • Anschließend bestimmt die RXC 32 in Schritt S3, ob die Stufen-ID, die durch die EA-Daten bestimmt wird, die betreffende Stufen-ID ist. Wenn die Stufen-ID die betreffende Stufen-ID ist, das heißt, wenn das Ergebnis der Bestimmung in Schritt S3 „JA“ lautet, wird der Prozess beendet, da dieses bedeutet, dass die EA-Daten die letzte Stufe 1 als Ausführungsobjekt des Multicast-Prozesses erreicht haben. Wenn die Stufen-ID nicht die betreffende Stufen-ID ist, das heißt, wenn das Ergebnis der Bestimmung in Schritt S3 „NEIN“ lautet, schreitet die Verarbeitung zum Schritt S4. In Schritt S4 werden die EA-Daten an die nächste Stufe 1 benachbart zu der betreffenden Stufe 1 übertragen, und der Prozess endet.
  • Somit führt gemäß der zweiten Ausführungsform die TXC 31 des Zugriffspunkts 7 den Multicast-Prozess zum seriellen Ausführen des EA für die DSP-Stufen 1 entsprechend den Stufenspeichern 4, für die die PEs 3 den MA ausführen, aus, wenn der EA durchgeführt wird. Somit führt das PE 3 den EA sogar dann nur einmal aus, wenn mehrere Stufenspeicher 4 den MA ausführen.
  • (Dritte Ausführungsform)
  • In der dritten Ausführungsform verbindet der geschlitzte Bus 2 auf ähnliche Weise wie in der ersten Ausführungsform die DSP-Stufen 1. Die Ausführungsquelle des EA ist der Zugriffspunkt 7 der DSP-Stufe 1(4), und das Ausführungsobjekt des EA sind die Zugriffspunkte 7(2), 7(3), 7(5), 7(8), für die der Multicast-Prozess durchgeführt wird. Hier ist kein Schleifenpfad auf beiden Seiten des geschlitzten Busses angeordnet, so dass der Ringbus nicht verwendet wird. In diesem Fall stellt der Zugriffspunkt 7(4) einen Startpunkt dar. 17 zeigt die Anzahl von Hops (d. h. die Anzahl der Pfade des Busses) zum Zugreifen auf die jeweiligen Zugriffspunkte 7(2), 7(3), 7(5), 7(8).
  • Dementsprechend führt die TXC 31 des Zugriffspunkts 7(4) den Multicast-Prozess mit einer Bestimmung des Zugriffspunkts 7(2) auf der linken Seite des geschlitzten Busses 2 aus, wie es in 16 gezeigt ist. Die TXC 31 führt den Multicast-Prozess mit Bestimmen des Zugriffspunkts 7(8) auf der rechten Seite des geschlitzten Busses 2 aus. Somit wird die Anzahl der Hops minimiert, und der EA wird für sämtliche Ausführungsobjekte der Stufe 1 durchgeführt. Der Zugriffspunkt 7 als Ausführungsquelle des EA ist als Startpunkt definiert. Die Anzahl der Hops auf der rechten/linken Seite bzw. Richtung und die Zugriffsreihenfolge werden in Bezug auf die Zugriffspunkte 7 als Ausführungsobjekte betrachtet, so dass die Prozesszeit zum Beenden des Multicast-Prozesses minimiert wird.
  • In der dritten Ausführungsform wird jeder Zugriffspunkt 7 ausgewählt, um die Gesamtpfadlängen zum Zugreifen auf sämtliche DSP-Stufen 1 zu minimieren, wenn der EA für mehrere DSP-Stufen 1 durchgeführt wird. Insbesondere stellen der geschlitzte Bus 2 und der Zugriffspunkt 7 den bidirektionalen Bus bereit, mindestens einer der Stufenspeicher 4, für den der MA durchgeführt wird, ist auf einer Seite von der betreffenden DSP-Stufe 1 als Startpunkt angeordnet, und mindestens einer der Stufenspeicher 4, für den der MA durchgeführt wird, ist auf der anderen Seite von der betreffenden DSP-Stufe 1 angeordnet. In diesem Fall führt der Zugriffspunkt 7 als Ausführungsquelle des EA den Multicast-Prozess in zwei Richtungen mit der DSP-Stufe 1 des betreffenden Zugriffspunkts 7 als Startpunkt durch. Somit wird die Gesamtpfadlänge zum Ausführen des EA für sämtliche DSP-Stufen als Objekte minimiert. Dementsprechend wird die Prozesszeit zum Ausführen des EA minimiert, und es wird die Prozesseffizienz verbessert.
  • (Vierte Ausführungsform)
  • In der dritten Ausführungsform verbindet der geschlitzte Bus 2 die Zugriffspunkte 7. In der vierten Ausführungsform, die in 18 gezeigt ist, verbindet ein Ringbus mit einer einzigen Richtung die Zugriffspunkte 7. Die Ausführungsquelle des EA ist der Zugriffspunkt 7(1), und die Ausführungsobjekte des EA sind die Zugriffspunkte 7(2), 7(3), 7(5), 7(6). Der Multicast-Prozess wird in diesem Zustand durchgeführt. In diesem Fall stellt der Zugriffspunkt 7(1) den Startpunkt bereit, und die Anzahl der Hops zum Zugreifen auf die Zugriffspunkte 7(2), 7(3), 7(5), 7(6) ist in 19 gezeigt. Dementsprechend bestimmt die TXC 31 des Zugriffspunkts 7(1) den Zugriffspunkt 7(6) und führt den Multicast-Prozess durch.
  • (Fünfte Ausführungsform)
  • In der fünften Ausführungsform, die in 20 gezeigt ist, verbindet ein bidirektionaler Ringbus die Zugriffspunkte 7. Die Ausführungsquelle des EA ist der Zugriffspunkt 7(1), und die Ausführungsobjekte des EA sind die Zugriffspunkte 7(2), 7(3), 7(7). In diesem Zustand wird der Multicast-Prozess ausgeführt. Wenn der bidirektionale Ringbus verwendet wird und der Zugriffspunkt 7(1) den Startpunkt bereitstellt, greift der Zugriffspunkt 7(1) auf andere Zugriffspunkte 7(2), 7(3), 7(7) im Uhrzeigersinn (d. h. Pfad CW) oder entgegen dem Uhrzeigersinn (d. h. Pfad CCW) zu. Wenn der Zugriffspunkt 7(1) der Startpunkt ist, ist die Anzahl der Hops zum Zugreifen auf die Zugriffspunkte 7(2), 7(3), 7(7) im Uhrzeigersinn oder entgegen dem Uhrzeigersinn in 21 gezeigt.
  • In dem obigen Fall bestimmt die TXC 31 des Zugriffspunkts 7(1) den Zugriffspunkt 7(3) im Uhrzeigersinn und bestimmt den Zugriffspunkt 7(7) entgegen dem Uhrzeigersinn. Somit wird der Multicast-Prozess durchgeführt.
  • (Sechste Ausführungsform)
  • In der sechsten Ausführungsform werden, wenn der EA bei mehreren PEs 3 erzeugt wird, die in derselben DSP-Stufe 1 angeordnet sind, mehrere EAs entsprechend der Verwendungsbedingung des Busses 2 vermengt. Somit enthält die TXC 41 den Puffer 42 und die Puffersteuerung 43, wie es in 22 gezeigt ist. Das Belegt-Signal (d. h. Bus-Belegt-Signal), das von einer Bussteuerung (nicht gezeigt) ausgegeben wird, wird in die Puffersteuerung 43 eingegeben, wenn die TXC 41 einer anderen Stufe 1 den Bus 2 verwendet.
  • Die Puffersteuerung 43 speichert den MA oder den EA in dem Puffer 42, wenn das PE 3 der betreffenden Stufe 1 den MA oder den EA ausführt, und das Belegt-Signal ist aktiv, da der MA oder der EA eine Ausgabe an den Bus 2 nicht ausführen kann. Außerdem führt die Puffersteuerung 43 den Vermengungsprozess zum Vermengen von mehreren EAs aus und wechselt die Ausgabereihenfolge des MA und des EA, die in dem Puffer 42 gespeichert sind.
  • Im Folgenden werden die Wirkungen der sechsten Ausführungsform erläutert. Wie es in 23 gezeigt ist, sind das PE 3(i) und das PE 3(j) in derselben Stufe 1 angeordnet. Zu dem Zeitpunkt (1) führt das PE 3(i) den MA auf die Stufe 1(1) auf, der als MA1 definiert ist. Zu dem Zeitpunkt (2) führt das PE 3(j) den MA1 aus. Zu dem Zeitpunkt (3) führt das PE 3(i) den EA aus, und das Belegt-Signal ist aktiv. Somit wird der EA in dem Puffer 42 gespeichert. Zu dem Zeitpunkt (4) führt das PE 3(i) den MA2 aus, und das Belegt-Signal ist aktiv. Somit wird der MA2 in dem Puffer 42 gespeichert.
  • Zu dem Zeitpunkt (5) führt das PE 3(j) den EA aus, und das Belegt-Signal ist aktiv. Somit wird der EA in dem Puffer 42 gespeichert. In diesem Fall bestimmt die TXC 41 auf der Grundlage der Zugriffstabelle 33 und des Puffers 42, dass die Ausführungsobjekte des EA durch das PE 3(i) und das PE 3(j) in der Stufe 1(1) angeordnet sind. Dementsprechend vermengt die TXC 41 den EA des PE 3(i) und den EA des PE 3(j) und erzeugt den vermengten EA1 zu dem Zeitpunkt (6), wenn das Belegt-Signal inaktiv ist. Diese Ausgabe des vermengten EA1 ist als Puffer-Ausgang definiert.
  • Dann führt das PE 3(i) zu dem Zeitpunkt (7) den EA aus, der dem Zeitpunkt (4) entspricht. Der MA2, der in dem Puffer 42 gespeichert ist, wird zu dem Zeitpunkt (8) vor dem EA ausgeführt. Dann wird zu dem Zeitpunkt (9) der EA ausgeführt.
  • Somit wird in der sechsten Ausführungsform, wenn der MA oder der EA in dem Belegt-Zustand erzeugt wird, bei dem die Datenübertragung zu einem anderen Zugriffspunkt 7 nicht möglich ist, der erzeugte MA oder EA zeitweilig in dem Puffer gespeichert. Die TXC 41 vermengt mehrere EAs und führt dann den vermengten EA aus, wenn mehrere EAs durch das PE 3 in der betreffenden Stufe 1 erzeugt werden, und die Beziehung in der Ausführungsreihenfolge zwischen dem MA, der in dem Puffer 42 gespeichert ist, und mehreren EAs ändert sich nicht.
  • Insbesondere wenn das PE 3(i) den EA zuerst ausführt und das PE 3(j) den EA nach dem PE 3(i) ausführt, wird der EA des PE 3(i) mit dem EA des PE 3(j) vermengt, und der vermengte EA wird ausgeführt, wenn der MA des PE 3(j) in dem Belegt-Zustand nicht erzeugt wird. Dementsprechend werden mehrere EAs als ein Job ausgeführt. Somit wird die Prozesseffizienz verbessert.
  • (Siebte Ausführungsform)
  • In der siebten Ausführungsform werden mehrere EAs auf eine andere Weise vermengt. Wie es in 24 gezeigt ist, führt das PE 3(i) zu dem Zeitpunkt (1) den MA1 aus, und zu dem Zeitpunkt (2) führt das PE 3(i) den EA aus. In diesem Fall ist das Belegt-Signal aktiv. Anschließend führt das PE 3(j) zu dem Zeitpunkt (3) den MA1 aus, und zu dem Zeitpunkt (4) führt das PE 3(j) den EA aus. Hier ist das Belegt-Signal, unmittelbar nachdem der EA ausgeführt wurde, aktiv. Zu diesem Zeitpunkt speichert der Puffer 42 den EA des PE 3(i), den MA1 des PE 3(j) und den EA des PE 3(j) in dieser Reihenfolge.
  • Somit setzt die TXC 41 die Ausführung des EA mit dem PE 3(i) aus und führt zunächst den MA1 mit dem PE 3(j) zu dem Zeitpunkt (5) aus. Dann vermengt die TXC 41 den EA mit dem PE 3(i) und dem EA mit dem PE 3(j) und führt den vermengten EA im Block zu dem Zeitpunkt (6) aus.
  • Wenn gemäß der siebten Ausführungsform das PE 3(i) zuerst den EA ausführt und danach das PE 3(j) den EA ausführt, werden, wenn der MA mit dem PE 3(i) in dem Belegt-Zustand nicht erzeugt wird, der EA mit dem PE 3(i) und der EA mit dem PE 3(j) vermengt und ausgeführt. In diesem Fall werden mehrere EAs gleichzeitig ausgeführt. Somit wird die Prozesseffizienz verbessert.
  • (Achte Ausführungsform)
  • Bei der achten Ausführungsform wird ein ähnlicher Fall wie bei der siebten Ausführungsform angenommen, und der EA, der zuerst erzeugt wird, und der EA, der als Zweites erzeugt wird, werden vermengt, wenn eine Zeitdauer des Belegt-Zustands innerhalb einer vorbestimmten Zeitdauer liegt. Wie es in 25 gezeigt ist, ähneln die Schritte zum Ausführen von Ereignissen von dem Zeitpunkt (1) bis zu dem Zeitpunkt (3) denjenigen der siebten Ausführungsform. Danach ist die Zeitdauer, während der das Belegt-Signal aktiv ist, länger als bei der siebten Ausführungsform.
  • In dem obigen Fall startet die TXC 41 die Messung der aktiven Zeitdauer des Belegt-Signals, da der EA des PE 3(i) des Zeitpunkts (2) endet. Die TXC 41 überwacht, ob „die maximale Verzögerungszeit“ in 25 verstrichen ist. Bevor die maximale Verzögerungszeit verstrichen ist, werden, wenn das PE 3(j) die Ausführung des EA startet, der EA des PE 3(i) und der EA des PE 3(j) vermengt, ähnlich wie bei der siebten Ausführungsform. Wenn das PE 3(j) die Ausführung des EA nicht startet, bevor die maximale Verzögerungszeit verstrichen ist, führt die TXC 41 den EA des PE 3(i) zu dem Zeitpunkt (4) aus, unmittelbar nachdem der Belegt-Zustand in den inaktiven Zustand gewechselt ist. Wenn der EA mit dem PE 3(i) und der EA mit dem PE 3(j) vermengt werden würden, würde in diesem Fall die Prozesseffizienz verringert werden, wenn die TXC fortfahren würde, auf die Ausführung des EA mit dem PE 3(i) zu warten. Somit wird in diesem Fall die Batch-Verarbeitung der Vermengung unterbrochen.
  • Somit misst die TXC 41 gemäß der achten Ausführungsform das Zeitintervall der Fortsetzung des Belegt-Zustands. Wenn die Zeitdauer des Belegt-Zustands innerhalb der vorbestimmten Zeit bzw. Zeitdauer liegt, werden der EA des PE 3(i) und der EA des PE 3(j) vermengt. Somit wird der Zeitverlust beim Warten auf die Ausführung des EA eingeschränkt, so dass die Prozesseffizienz nicht verringert wird. Hier weist der Schritt des Wartens auf die Ausführung des EA den Zweck auf, die EAs zu vermengen.
  • (Neunte Ausführungsform)
  • In der neunten Ausführungsform wird eine Prozedur zum fallabhängigen Sortieren und Ausführen von Prozessen gemäß den sechsten bis achten Ausführungsformen beschrieben. In 26 vermengt die TXC 41 den EA des PE 3(i) und den EA des PE 3(j) in Schritt S12 ähnlich wie bei der sechsten Ausführungsform, wenn der EA von der betreffenden Stufe 1 empfangen wird, und ein anderer EA, der mit dem EA vermengt werden kann, in dem Puffer 42 vorher gespeichert wurde (das heißt, wenn das Ergebnis der Bestimmung in Schritt S11 „JA“ lautet).
  • Wenn der EA, der mit einem anderen EA vermengt werden kann, in dem Puffer 42 später gespeichert wird (das heißt, wenn das Ergebnis der Bestimmung in Schritt S13 „JA“ lautet), werden der EA des PE 3(i) und der EA des PE 3(j) vermengt und in Schritt S4 ausgeführt, ähnlich wie bei der siebten Ausführungsform. Wenn kein EA, der mit einem anderen EA vermengt werden kann, in dem Puffer 42 später gespeichert wird (das heißt, wenn das Ergebnis der Bestimmung in Schritt S13 „NEIN“ lautet), schreitet die Verarbeitung zum Schritt S15. In Schritt S15 bestimmt die TXC 41, ob die maximale Verzögerungszeit verstrichen ist. Wenn die maximale Verzögerungszeit nicht verstrichen ist (das heißt, wenn das Ergebnis der Bestimmung in Schritt S15 „NEIN“ lautet), kehrt die Verarbeitung zum Schritt S13 zurück. Wenn die maximale Verzögerungszeit verstrichen ist (das heißt, wenn das Ergebnis der Bestimmung in Schritt S15 „JA“ lautet), schreitet der Prozess zum Schritt S16. In Schritt S16 gibt die TXC 41 den EA ohne Vermengung aus.
  • Somit werden gemäß der neunten Ausführungsform die Prozesse gemäß den sechsten bis achten Ausführungsformen geeignet ausgewählt und situationsabhängig ausgeführt, so dass die Prozesseffizienz verbessert wird.
  • (Zehnte Ausführungsform)
  • Die Datenverarbeitungsvorrichtung gemäß der ersten Ausführungsform weist eine Struktur derart auf, dass jede DSP-Stufe 1 einen Knoten aufweist, der zu derselben Ebene (d. h. der Ebene null) gehört, und über den Bus 2 verbunden ist, so dass das Netzwerk, das die eine Ebene aufweist, ausgebildet wird. In der zehnten Ausführungsform, die in 27 gezeigt ist, ist ein Netzwerk als DSP-Stufe mit der Ebene null definiert. Die DSP-Stufe 1, die zu dem Netzwerk gehört, ist als ein Knoten mit der Ebene –1 definiert, die eine Ebene niedriger als das Netzwerk ist. Wie es in 28 gezeigt ist, sind mehrere DSP-Stufen, die die Ebene null aufweisen, mit dem Zugriffspunkt (d. h. AP) zur Verbindung der Ebenen verbunden, so dass ein komplexes Netzwerk ausgebildet wird.
  • Wie es beispielsweise in 29 gezeigt ist, sind der Zugriffspunkt 7(2-2) und der Zugriffspunkt 7(2-1) über den Innen-Stufenbus 6(2-1) verbunden. In der ersten Ausführungsform ist der Zugriffspunkt 7(2) mit der DSP-Stufe 1(2) verbunden. Der Zugriffspunkt 7(2-2) und der Zugriffspunkt 7(2-1) der vorliegenden Ausführungsform sind mit der DSP-Stufe 1(2-2) und der DSP-Stufe 1(2-1) jeweils verbunden.
  • Außerdem zeigt 30 ein Modell der Struktur der 29, das auf ähnliche Weise wie 28 gezeigt ist. Der Zugriffspunkt 7(2) stellt den Ebenenverbindungs-AP (Zugriffspunkt) bereit. Die DSP-Stufe 1(2-2) und die DSP-Stufe 1(2-1) stellen den Knoten mit der Ebene –1 bereit. Unter der Annahme, dass die DSP-Stufe 1(2-2) und die DSP-Stufe 1(2-1) eine DSP-Stufe 1(2) bereitstellen, weist die DSP-Stufe 1(2) die Ebene null auf.
  • Hier ist, um die Zeichnung der 29 zu vereinfachen, nur die DSP-Stufe 1(2) eine Aggregation der DSP-Stufe 1(2-2) und der DSP-Stufe 1(2-1). Auf ähnliche Weise können andere DSP-Stufen 1 wie beispielsweise die DSP-Stufe 1(1) eine Aggregation von zwei oder mehr DSP-Stufen 1(1-2), 1(1-1) sein. Unter der Annahme, dass die Stufe, die die Ebene –1 aufweist, als Unterstufe definiert ist, kann die Anzahl der Unterstufen zwei oder mehr betragen. Wenn die Stufen erweitert werden, wird die Struktur des Modells der 28 ausgebildet.
  • Somit stellen gemäß der zehnten Ausführungsform mehrere DSP-Stufen 1 einen Netzwerkknoten bereit, der die obere Ebene null, d. h. Ebene (0), aufweist. Mehrere Netzwerkknoten werden erstellt, und die Knoten werden miteinander verbunden, so dass ein Netzwerk einer oberen Ebene ausgebildet wird. Somit kann das Netzwerk komplexe Verarbeitungen ausführen.
  • Jede DSP-Stufe 1 kann mindestens eines der PEs 3 enthalten. Alternativ kann jede DSP-Stufe 1 einen oder mehrere Stufenspeicher 4, beispielsweise zwei Stufenspeicher 4, enthalten.
  • Das externe Ereignis kann von einer anderen Vorrichtung anstelle der Host-Vorrichtung 53 erzeugt werden.
  • Eine der DSP-Stufen 1, die mit dem geschlitzten Bus 2 verbunden ist, kann beispielsweise eine Funktion der Host-Vorrichtung 53 ausführen.
  • Man beachte, dass ein Flussdiagramm oder die Verarbeitung des Flussdiagramms in der vorliegenden Anmeldung Abschnitte enthält (auch als Schritte bezeichnet), die jeweils beispielsweise wie H1 repräsentiert werden. Außerdem kann jeder Abschnitt in mehrere Unterabschnitte unterteilt sein, während mehrere Abschnitte auch in einen einzigen Abschnitt kombiniert sein können. Weiterhin kann jeder der somit konfigurierten Abschnitte auch als Vorrichtung, Modul oder Einrichtung bezeichnet werden.
  • Während die vorliegende Erfindung mit Bezug auf ihre bevorzugten Ausführungsformen beschrieben wurde, ist es selbstverständlich, dass die Erfindung nicht auf diese Ausführungsformen und deren Aufbauten beschränkt ist. Die vorliegende Erfindung deckt verschiedene Modifikationen und äquivalente Anordnungen ab. Es sind weitere Kombinationen und Konfigurationen einschließlich mehr, weniger oder eines einzelnen Elements innerhalb des Bereichs der vorliegenden Erfindung möglich.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 04-312160 A [0002]
    • US 5528761 A [0002]
    • JP 2013-137833 A [0002]
    • US 2009/0193228 A [0002]
    • JP 07-234841 A [0002]

Claims (10)

  1. Datenverarbeitungsvorrichtung, die aufweist: mehrere Datenverarbeitungsstufen (1), die jeweils mindestens ein Verarbeitungselement (3), mindestens einen Stufenspeicher (4) und eine Ereignissteuerung (5) enthalten; und einen Zwischenstufenbus (2), der die Datenverarbeitungsstufen miteinander verbindet und ein Nur-Daten-Schreibbus ist, wobei das Verarbeitungselement in einer Datenverarbeitungsstufe mit dem Stufenspeicher in der einen Datenverarbeitungsstufe über einen Nur-Daten-Lesebus (6) verbunden ist, wobei das Verarbeitungselement mit dem Zwischenstufenbus über einen zweiten, Nur-Daten-Schreibbus (8) verbunden ist, wobei ein externes Ereignis, das bei einer externen Vorrichtung erzeugt wird, und ein Prozessbeendigungsereignis von dem Verarbeitungselement in die Ereignissteuerung eingegeben werden, wobei die Ereignissteuerung in der einen Datenverarbeitungsstufe ein Aufgabenstartereignis in Bezug auf das Verarbeitungselement in der einen Datenverarbeitungsstufe entsprechend dem externen Ereignis und dem Prozessbeendigungsereignis erzeugt, wobei jede der Datenverarbeitungsstufen mit dem Zwischenstufenbus über einen Zugriffspunkt (7) verbunden ist, wobei der Zugriffspunkt eine Zugriffstabelle enthält, wobei der Zugriffspunkt eine Datenschreibhistorie in der Zugriffstabelle speichert, wenn das Verarbeitungselement Daten in den Stufenspeicher in einem Speicherzugriffsprozess schreibt, wobei das Verarbeitungselement einen Ereigniszugriffsprozess ausführt, der eine Beendigung des Speicherzugriffsprozesses angibt, nachdem das Verarbeitungselement die Ausführung des Speicherzugriffsprozesses auf den Stufenspeicher über den Zugriffspunkt beendet hat, und wobei der Zugriffspunkt einen anderen Ereigniszugriffsprozess zum Eingeben des Prozessbeendigungsereignisses in die Ereignissteuerung einer Datenverarbeitungsstufe, die den Stufenspeicher enthält, in den das Verarbeitungselement Daten in dem Speicherzugriffsprozess schreibt, auf der Grundlage der Datenschreibhistorie, die in der Zugriffstabelle gespeichert ist, ausführt, wenn das Verarbeitungselement den Ereigniszugriffsprozess ausführt.
  2. Datenverarbeitungsvorrichtung nach Anspruch 1, wobei der Ereigniszugriffsprozess, der von dem Verarbeitungselement ausgeführt wird, ein Datenschreibprozess für eine spezielle Adresse ist.
  3. Datenverarbeitungsvorrichtung nach Anspruch 1 oder 2, wobei, wenn das Verarbeitungselement den Ereigniszugriffsprozess ausführt und das Verarbeitungselement den Speicherzugriffsprozess auf zwei oder mehr Stufenspeicher ausführt, der Zugriffspunkt den anderen Ereigniszugriffsprozess aufeinanderfolgend bei zwei oder mehr Datenverarbeitungsstufen, die den zwei oder mehr Stufenspeichern entsprechen, ausführt.
  4. Datenverarbeitungsvorrichtung nach Anspruch 3, wobei der Zugriffspunkt eine von mehreren Routen auswählt, die eine minimale Pfadlänge zum Zugreifen auf sämtliche zwei oder mehr Datenverarbeitungsstufen aufweist, wenn der Zugriffspunkt den anderen Ereigniszugriffsprozess aufeinanderfolgend bei den zwei oder mehr Datenverarbeitungsstufen ausführt.
  5. Datenverarbeitungsvorrichtung nach Anspruch 4, wobei jeder Zugriffspunkt und der Zwischenstufenbus einen bidirektionalen Bus bereitstellen, wobei mindestens einer der zwei oder mehr Stufenspeicher, für die das Verarbeitungselement den Speicherzugriffsprozess ausführt, auf einer Seite der Datenverarbeitungsstufe als Startpunkt angeordnet ist, wobei mindestens ein anderer der zwei oder mehr Stufenspeicher, für den das Verarbeitungselement den Speicherzugriffsprozess ausführt, auf der anderen Seite der Datenverarbeitungsstufe als Startpunkt angeordnet ist, und wobei der Zugriffspunkt den anderen Ereigniszugriff in zwei Richtungen mit der Datenverarbeitungsstufe als Startpunkt ausführt.
  6. Datenverarbeitungsvorrichtung nach einem der Ansprüche 1 bis 5, wobei der Zugriffspunkt außerdem einen Puffer (42) zum zeitweiligen Speichern eines Auftretens des Speicherzugriffsprozesses oder des Ereigniszugriffsprozesses enthält, wenn der Speicherzugriffsprozess oder der Ereigniszugriffsprozess in einem Zustand auftritt, in dem sich eine Datenübertragung zu einem anderen Zugriffspunkt in einem Belegt-Zustand befindet, so dass der Zugriffspunkt keine Daten zu dem anderen Zugriffspunkt übertragen kann, und wobei der Puffer zwei oder mehr Ereigniszugriffsprozesse vermengt und ausführt, wenn die zwei oder mehr Ereigniszugriffsprozesse von dem Verarbeitungselement in derselben Datenverarbeitungsstufe in einem Zustand erzeugt werden, in dem eine Ausführungsreihenfolge des Speicherzugriffsprozesses, der in dem Puffer gespeichert ist, und der zwei oder mehr Ereigniszugriffsprozesse nicht geändert wird.
  7. Datenverarbeitungsvorrichtung nach Anspruch 6, wobei die zwei oder mehr Ereigniszugriffsprozesse einen ersten Ereigniszugriffsprozess und einen zweiten Ereigniszugriffsprozess enthalten, wobei das mindestens eine Verarbeitungselement ein erstes Verarbeitungselement und ein zweites Verarbeitungselement enthält, und wobei der Puffer den ersten Ereigniszugriffsprozess mit dem zweiten Ereigniszugriffsprozess vermengt und ausführt, wenn das erste Verarbeitungselement den ersten Ereigniszugriffsprozess ausführt, und das zweite Verarbeitungselement den zweiten Ereigniszugriffsprozess ausführt, nachdem das erste Verarbeitungselement den ersten Ereigniszugriffsprozess ausgeführt hat, wenn das zweite Verarbeitungselement den Speicherzugriffsprozess in dem Belegt-Zustand nicht ausführt.
  8. Datenverarbeitungsvorrichtung nach Anspruch 6 oder 7, wobei die zwei oder mehr Ereigniszugriffsprozesse einen ersten Ereigniszugriffsprozess und einen zweiten Ereigniszugriffsprozess enthalten, wobei das mindestens eine Verarbeitungselement ein erstes Verarbeitungselement und ein zweites Verarbeitungselement enthält, und wobei der Puffer den zweiten Ereigniszugriffsprozess mit dem ersten Ereigniszugriffsprozess vermengt und ausführt, wenn das erste Verarbeitungselement den ersten Ereigniszugriffsprozess ausführt, und das zweite Verarbeitungselement den zweiten Ereigniszugriffsprozess ausführt, nachdem das erste Verarbeitungselement den ersten Ereigniszugriffsprozess ausgeführt hat, wenn das erste Verarbeitungselement den Speicherzugriffsprozess in dem Belegt-Zustand nicht ausführt.
  9. Datenverarbeitungsvorrichtung nach Anspruch 8, wobei der Zugriffspunkt eine Zeitdauer des Belegt-Zustands misst, und wobei der Puffer den zweiten Ereigniszugriffsprozess mit dem ersten Ereigniszugriffsprozess vermengt und ausführt, wenn die Zeitdauer innerhalb einer vorbestimmten Zeitdauer liegt.
  10. Datenverarbeitungsvorrichtung nach einem der Ansprüche 1 bis 9, wobei jede der Datenverarbeitungsstufen ein Netzwerkknoten ist, und wobei mehrere Netzwerkknoten miteinander verbunden sind und die Netzwerkknoten ein Netzwerk bereitstellen, das eine höhere Ebene als ein jeweiliger Netzwerkknoten aufweist.
DE102015205027.0A 2014-03-25 2015-03-19 Datenverarbeitungsvorrichtung Pending DE102015205027A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014062013A JP6176166B2 (ja) 2014-03-25 2014-03-25 データ処理装置
JP2014-062013 2014-03-25

Publications (1)

Publication Number Publication Date
DE102015205027A1 true DE102015205027A1 (de) 2015-10-01

Family

ID=54067142

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015205027.0A Pending DE102015205027A1 (de) 2014-03-25 2015-03-19 Datenverarbeitungsvorrichtung

Country Status (3)

Country Link
US (1) US9697122B2 (de)
JP (1) JP6176166B2 (de)
DE (1) DE102015205027A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019057281A1 (en) * 2017-09-21 2019-03-28 Huawei Technologies Co., Ltd. MULTI-WIRE SYSTOLIC NETWORK

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04312160A (ja) 1991-03-29 1992-11-04 Internatl Business Mach Corp <Ibm> マルチプロセッサシステムおよびそのメッセージ送受信制御装置
JPH07234841A (ja) 1994-02-23 1995-09-05 Sanyo Electric Co Ltd 並列処理計算機
US20090193228A1 (en) 2008-01-25 2009-07-30 Waseda University Multiprocessor system and method of synchronization for multiprocessor system
JP2013137833A (ja) 2013-04-08 2013-07-11 Waseda Univ マルチプロセッサシステムおよびマルチプロセッサシステムの同期方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05151174A (ja) * 1991-11-28 1993-06-18 Fujitsu Ltd マルチプロセツサの同期方式
JP2880399B2 (ja) * 1994-03-24 1999-04-05 株式会社日立製作所 並列計算機
US6209065B1 (en) * 1997-10-24 2001-03-27 Compaq Computer Corporation Mechanism for optimizing generation of commit-signals in a distributed shared-memory system
JP3858492B2 (ja) * 1998-12-28 2006-12-13 株式会社日立製作所 マルチプロセッサシステム
WO2004010288A1 (en) * 2002-07-19 2004-01-29 Xelerated Ab Method and apparatus for pipelined processing of data packets
US7653912B2 (en) * 2003-05-30 2010-01-26 Steven Frank Virtual processor methods and apparatus with unified event notification and consumer-producer memory operations
WO2006046482A1 (ja) * 2004-10-27 2006-05-04 Matsushita Electric Industrial Co., Ltd. マルチプロセッサシステム、同期制御装置及び同期制御方法
JP4448784B2 (ja) * 2005-03-15 2010-04-14 株式会社日立製作所 並列計算機の同期方法及びプログラム
JP2007272694A (ja) * 2006-03-31 2007-10-18 Fujitsu Ltd 通信インターフェース装置及び通信方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04312160A (ja) 1991-03-29 1992-11-04 Internatl Business Mach Corp <Ibm> マルチプロセッサシステムおよびそのメッセージ送受信制御装置
US5528761A (en) 1991-03-29 1996-06-18 International Business Machines Corporation Message passing apparatus for determining if counted acknowledgements from a set of processors are within a defined range
JPH07234841A (ja) 1994-02-23 1995-09-05 Sanyo Electric Co Ltd 並列処理計算機
US20090193228A1 (en) 2008-01-25 2009-07-30 Waseda University Multiprocessor system and method of synchronization for multiprocessor system
JP2013137833A (ja) 2013-04-08 2013-07-11 Waseda Univ マルチプロセッサシステムおよびマルチプロセッサシステムの同期方法

Also Published As

Publication number Publication date
US20150278095A1 (en) 2015-10-01
JP2015185000A (ja) 2015-10-22
US9697122B2 (en) 2017-07-04
JP6176166B2 (ja) 2017-08-09

Similar Documents

Publication Publication Date Title
DE3248215C2 (de)
DE2847216C2 (de) Datenverarbeitungsanlage mit Mehrprogrammbetrieb
DE2714805C2 (de)
DE2856483C2 (de)
DE2354521C2 (de) Verfahren und Einrichtung zum gleichzeitigen Zugriff zu verschiedenen Speichermoduln
DE2953861C2 (de)
DE3638572C2 (de)
DE112015005597T5 (de) Verknüpfungsfähige Parallelausführungs-Schicht einer Ausgabewarteschlange für einen Prozessor
DE2019444A1 (de) Datenverarbeitungsanlage
EP1599794B1 (de) Prozessor mit verschiedenartigen steuerwerken für gemeinsam genutzte ressourcen
DE1549437A1 (de) Datenverarbeitendes System aus mehreren miteinander verbundenen Datenverarbeitungsanlagen
EP3417373B1 (de) Verfahren und vorrichtung zum betreiben eines steuergeräts
DE102020103521A1 (de) Minimieren der Nutzung von Hardware-Zählern bei getriggerten Operationen für kollektive Kommunikation
EP0062141B1 (de) Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem
DE69034246T2 (de) Gerät zur Verarbeitung von Grafikdaten
WO2011134762A1 (de) Coprozessor mit aufgabenablaufsteuerung
DE102006009034B3 (de) Verfahren zum Betreiben eines Bussystems sowie Halbleiter-Bauelement, insbesondere Mikroprozessor- bzw. Mikrocontroller
DE102015205027A1 (de) Datenverarbeitungsvorrichtung
DE102017217908A1 (de) Recheneinheit und Betriebsverfahren hierfür
DE102015204899A1 (de) Datenverarbeitungsvorrichtung
DE3121046A1 (de) Arithmetik-logikeinheit mit bit-manipulation
DE102018123563B4 (de) Verfahren zur Zwischenkernkommunikation in einem Mehrkernprozessor
DE60109699T2 (de) Gerät und Verfahren zum Signalgruppenaustausch zwischen mehreren Teilen in einer Einrichtung zur digitalen Signalverarbeitung der eine Direktspeicherzugriffssteuerung enthält
DE3603240C2 (de)
DE3215062C2 (de) Schaltungsanordnung zur Prüfung der Verarbeitbarkeit von Speicheroperanden für logische und dezimale Befehle vor Befehlsausführung

Legal Events

Date Code Title Description
R083 Amendment of/additions to inventor(s)
R012 Request for examination validly filed