DE102017216823A1 - PROCESSING UNIT, ELECTRONIC CONTROL UNIT AND PROCESSING METHOD - Google Patents

PROCESSING UNIT, ELECTRONIC CONTROL UNIT AND PROCESSING METHOD Download PDF

Info

Publication number
DE102017216823A1
DE102017216823A1 DE102017216823.4A DE102017216823A DE102017216823A1 DE 102017216823 A1 DE102017216823 A1 DE 102017216823A1 DE 102017216823 A DE102017216823 A DE 102017216823A DE 102017216823 A1 DE102017216823 A1 DE 102017216823A1
Authority
DE
Germany
Prior art keywords
processor cores
processor core
interrupt request
synchronization
request destination
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
DE102017216823.4A
Other languages
German (de)
Inventor
Takahito Kusumoto
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 DE102017216823A1 publication Critical patent/DE102017216823A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/522Barrier synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

Eine Verarbeitungseinheit (2; 12) umfasst: mehrere Prozessorkerne (31 bis 3n). Die mehreren Prozessorkerne führen eine Parallelverarbeitung mit einer Barrieresynchronisation aus. Einer der mehreren Prozessorkerne ist als ein Unterbrechungsanforderungsziel bestimmt, wenn der eine der mehreren Prozessorkerne sich in einem Synchronisations-Wartezustand befindet.A processing unit (2; 12) comprises: a plurality of processor cores (31 to 3n). The multiple processor cores perform parallel processing with barrier synchronization. One of the plurality of processor cores is designated as an interrupt request destination when the one of the plurality of processor cores is in a synchronization wait state.

Description

Die vorliegende Erfindung betrifft eine Verarbeitungseinheit, eine elektronische Steuereinheit und ein Verarbeitungsverfahren. The present invention relates to a processing unit, an electronic control unit and a processing method.

Herkömmlich ist eine Verarbeitungseinheit bereitgestellt, die Parallelverarbeitung unter Verwendung von Barrieresynchronisation (barrier synchronization) auf mehreren Prozessorkernen durchführt (z. B. siehe Patentliteratur 1).

  • Patentliteratur 1: JP 2000-305919 A
Conventionally, there has been provided a processing unit which performs parallel processing using barrier synchronization on plural processor cores (for example, see Patent Literature 1).
  • Patent Literature 1: JP 2000-305919 A

Wenn eine Unterbrechung (interrupt) auftritt, liefert diese Art einer Verarbeitungseinheit eine Unterbrechungsanforderung (interrupt request) an irgendeinen der mehreren Prozessorkerne. Der mit der Unterbrechungsanforderung belieferte Prozessorkern führt eine Unterbrechungsbehandlung (interrupt handling) durch. Jedoch kann eine Unterbrechungsanforderung an einen der Prozessorkerne geliefert werden, der die längste Verarbeitungszeit für die Parallelverarbeitung benötigt. Dies verzögert den Zeitablauf zur Fertigstellung der durch alle Prozessorkerne, die an der Barrieresynchronisation beteiligt sind, durchgeführten Parallelverarbeitung, und zwar den Zeitablauf zur Fertigstellung der Barrieresynchronisation. Die Motorsteuerung benötigt insbesondere Echtzeit-Implementierung, neigt zur Verursachung diversifizierter Unterbrechungen, um zeitnah Prozesse als Reaktion auf die Eingabe eines Timersignals oder eines Sensorsignals durchzuführen, und ist bemerkenswert abhängig von einem Einfluss auf Grund einer Verzögerung im Zeitauflauf zur Fertigstellung der Barrieresynchronisation. When an interrupt occurs, this type of processing unit provides an interrupt request to any of the multiple processor cores. The processor core supplied with the interrupt request performs interrupt handling. However, an interrupt request may be delivered to one of the processor cores that requires the longest processing time for parallel processing. This delays the timing to complete the parallel processing performed by all processor cores involved in the barrier synchronization, namely the timing to complete the barrier synchronization. In particular, the motor controller requires real-time implementation, tends to cause diversified interrupts to promptly perform processes in response to the input of a timer signal or a sensor signal, and is remarkably dependent on an influence due to a delay in the time-up to complete the barrier synchronization.

Es ist eine Aufgabe der vorliegenden Erfindung eine Verarbeitungseinheit, eine elektronische Steuereinheit und ein Verarbeitungsverfahren zur Minimierung einer Verzögerung im Zeitablauf zur Fertigstellung der Barrieresynchronisation bereitzustellen. It is an object of the present invention to provide a processing unit, an electronic control unit and a processing method for minimizing a delay over time to complete the barrier synchronization.

Gemäß einem ersten Aspekt der vorliegenden Erfindung umfasst eine Verarbeitungseinheit: mehrere Prozesskerne. Die mehreren Prozesskerne führen Parallelverarbeitung mit einer Barrieresynchronisation aus. Einer der mehreren Prozessorkerne ist als ein Unterbrechungsanforderungsziel (interrupt request destination) vorgegeben, wenn der eine der mehreren Prozessorkerne in einem Synchronisations-Wartezustand ist. According to a first aspect of the present invention, a processing unit comprises: a plurality of process cores. The multiple process cores perform parallel processing with a barrier synchronization. One of the multiple processor cores is specified as an interrupt request destination when the one of the multiple processor cores is in a synchronization wait state.

Gemäß der Konfiguration, die die Parallelverarbeitung unter Verwendung der Barrieresynchronisation durchführt, schließen die Prozessorkerne jeweils die Parallelverarbeitung ab, erreichen den Barrierepunkt, starten die Barrieresynchronisation und gehen dann in den Synchronisations-Wartezustand über, der eine ausreichende Verarbeitungskapazität für die Parallelverarbeitung übrig lässt. Und zwar wartet ein Prozessorkern, wenn er den Barrierepunkt vor den anderen Prozessorkernen erreicht, auf die anderen Prozessorkerne, um den Barrierepunkt zu erreichen. Nach dem Erreichen des Barrierepunktes führt der Prozessorkern lediglich einen Synchronisations-Flag-Prüfprozess durch und lässt eine zusätzliche Verarbeitungskapazität übrig. Dabei ist ein Prozessorkern im Synchronisations-Wartezustand, und zwar ein Prozessorkern, der eine zusätzliche Verarbeitungskapazität übrig lässt, als Unterbrechungsanforderungsziel bestimmt. Die effektive Nutzung der zusätzlichen Verarbeitungskapazität kann eine Verzögerung im Zeitablauf zur Fertigstellung der Barrieresynchronisation minimieren. According to the configuration that performs the parallel processing using the barrier synchronization, the processor cores respectively complete the parallel processing, reach the barrier point, start the barrier synchronization, and then go to the synchronization wait state leaving a sufficient processing capacity for the parallel processing. Namely, when one processor core reaches the barrier point in front of the other processor cores, it waits for the other processor cores to reach the barrier point. After reaching the barrier point, the processor core merely performs a synchronization flag check process and leaves additional processing capacity. Here, a processor core in the synchronization wait state, namely, a processor core leaving an additional processing capacity, is designated as an interrupt request destination. The effective use of additional processing capacity can minimize a delay over time to complete barrier synchronization.

Gemäß einem zweiten Aspekt der vorliegenden Erfindung umfasst eine elektronische Steuervorrichtung: die Verarbeitungseinheit gemäß dem ersten Aspekt der vorliegenden Erfindung. According to a second aspect of the present invention, an electronic control device comprises: the processing unit according to the first aspect of the present invention.

In der obigen elektronischen Steuereinheit ist ein Prozessorkern im Synchronisations-Wartezustand, und zwar ein Prozessorkern, der die zusätzliche Verarbeitungskapazität übrig lässt, als ein Unterbrechungsanforderungsziel bestimmt. Die effektive Nutzung der zusätzlichen Verarbeitungskapazität kann eine Verzögerung im Zeitablauf zur Fertigstellung der Barrieresynchronisation minimieren. In the above electronic control unit, a processor core in the synchronization wait state, namely, a processor core leaving the additional processing capacity, is designated as an interrupt request destination. The effective use of additional processing capacity can minimize a delay over time to complete barrier synchronization.

Gemäß einem dritten Aspekt der vorliegenden Erfindung umfasst ein Verarbeitungsverfahren: Ausführung einer Parallelverarbeitung mit einer Barrieresynchronisation durch mehrere Prozessorkerne; und Bestimmung des einen der mehreren Prozessorkerne als ein Unterbrechungsanforderungsziel, wenn der eine der mehreren Prozessorkerne sich in einem Synchronisations-Wartezustand befindet. According to a third aspect of the present invention, a processing method comprises: performing parallel processing with barrier synchronization through a plurality of processor cores; and determining the one of the plurality of processor cores as an interrupt request destination when the one of the plurality of processor cores is in a synchronization wait state.

In dem obigen Verarbeitungsverfahren ist ein Prozessorkern im Synchronisations-Wartezustand, und zwar ein Prozessorkern, der die zusätzliche Verarbeitungskapazität übrig lässt, als ein Unterbrechungsanforderungsziel bestimmt. Die effektive Nutzung der zusätzlichen Verarbeitungskapazität kann eine Verzögerung im Zeitablauf zur Fertigstellung der Barrieresynchronisation minimieren. In the above processing method, a processor core in the synchronization wait state, namely, a processor core leaving the additional processing capacity, is designated as an interrupt request destination. The effective use of additional processing capacity can minimize a delay over time to complete barrier synchronization.

Die obig ausgeführten und andere Aspekte, Merkmale und Vorteile der vorliegenden Erfindung ergeben sich aus der folgenden detaillierten Beschreibung unter Bezugnahme auf die zugehörigen Zeichnungen. In den Zeichnungen zeigt: The above and other aspects, features, and advantages of the present invention will become more apparent from the following detailed description made with reference to the accompanying drawings. In the drawings shows:

1 ein funktionales Blockschaltbild, das eine erste Ausführungsform der vorliegenden Erfindung zeigt; 1 Fig. 10 is a functional block diagram showing a first embodiment of the present invention;

2 ein Flussdiagramm; 2 a flowchart;

3 ein Ablaufdiagramm; 3 a flow chart;

4 ein Ablaufdiagramm; 4 a flow chart;

5 ein Ablaufdiagramm; 5 a flow chart;

6 ein funktionales Blockschaltbild, das eine zweite Ausführungsform der vorliegenden Erfindung zeigt; 6 Fig. 10 is a functional block diagram showing a second embodiment of the present invention;

7 ein Flussdiagramm; 7 a flowchart;

8 ein Ablaufdiagramm; und 8th a flow chart; and

9 ein Ablaufdiagramm. 9 a flowchart.

(Erste Ausführungsform) First Embodiment

Die nachfolgende Beschreibung erläutert die erste Ausführungsform der vorliegenden Erfindung mit Bezug auf die 1 bis 5. Eine elektrische Steuereinheit 1 führt zum Beispiel Motorsteuerung durch und umfasst einen Mikrocontroller 2 (entspricht einer Verarbeitungseinheit). Der Mikrocontroller 2 umfasst n (n ist eine natürliche Zahl) Prozessorkerne 31 bis 3n, und zwar einen ersten Prozessorkern 31 (PE#1 in 1) bis einen n-ten Prozessorkern 3n (PE#n in 1), ROM 4, RAM 5, einen Timer 6, einen A/D-Wandler 7 und eine Unterbrechungssteuerung 8, die untereinander über einen Systembus 9 vernetzt sind. The following description will explain the first embodiment of the present invention with reference to FIGS 1 to 5 , An electrical control unit 1 For example, performs motor control and includes a microcontroller 2 (corresponds to a processing unit). The microcontroller 2 includes n (n is a natural number) processor cores 31 to 3n and a first processor core 31 (PE # 1 in 1 ) to an nth processor core 3n (PE # n in 1 ), ROME 4 , RAM 5 , a timer 6 , an A / D converter 7 and an interrupt controller 8th connected to each other via a system bus 9 are networked.

Der Mikrocontroller 2 ist so konfiguriert, dass mehrere Prozessorkerne 31 bis 3n alle an der Barrieresynchronisation beteiligt sind. Die Prozessorkerne 31 bis 3n führen Parallelverarbeitung unter Verwendung der Barrieresynchronisation durch. Die Prozessorkerne 31 bis 3n starten die Parallelverarbeitung gleichzeitig, d. h. jeder zum gleichen Zeitpunkt. Jeder Prozessorkern startet die Barrieresynchronisation, wenn nach Abschluss der Parallelverarbeitung ein Barrierepunkt erreicht wird. Der Prozessorkern aktualisiert ein Synchronisations-Flag, startet dann einen Synchronisations-Flag-Prüfprozess und wartet auf die anderen Prozessorkerne 31 bis 3n, um den Barrierepunkt zu erreichen. Und zwar schließen die Prozessorkerne 31 bis 3n jeweils die Parallelverarbeitung ab, erreichen den Barrierepunkt und gehen dann in den Synchronisations-Wartezustand über, der eine für die Parallelverarbeitung ausreichende Verarbeitungskapazität übrig lässt. Die Prozessorkerne 31 bis 3n erreichen alle den Barrierepunkt zur Fertigstellung der Barrieresynchronisation und starten dann gleichzeitig die nächste Parallelverarbeitung (von der zuvor durchgeführten Parallelverarbeitung verschieden) zum gleichen Startzeitpunkt. Nicht alle Prozessorkerne 31 bis 3n müssen an der Barrieresynchronisation beteiligt sein. Einige der Prozessorkerne 31 bis 3n können an der Barrieresynchronisation beteiligt sein. The microcontroller 2 is configured to have multiple processor cores 31 to 3n all involved in the barrier synchronization. The processor cores 31 to 3n perform parallel processing using barrier synchronization. The processor cores 31 to 3n start parallel processing at the same time, ie everyone at the same time. Each processor core starts the barrier synchronization when a barrier point is reached after the parallel processing completes. The processor core updates a synchronization flag, then starts a synchronization flag check process and waits for the other processor cores 31 to 3n to reach the barrier point. And indeed close the processor cores 31 to 3n each time the parallel processing, reach the barrier point and then go into the synchronization wait state, which leaves sufficient for parallel processing processing capacity. The processor cores 31 to 3n all reach the barrier point to complete the barrier synchronization, and then simultaneously start the next parallel processing (different from the previous parallel processing) at the same start time. Not all processor cores 31 to 3n must be involved in the barrier synchronization. Some of the processor cores 31 to 3n may be involved in barrier synchronization.

Die Prozessorkerne 31 bis 3n können mit dem Barrieresynchronisator 10 kommunizieren. Der Barrieresynchronisator 10 umfasst mehrere Synchronisations-Flags, entsprechend jedem der Prozessorkerne 31 bis 3n. Die Prozessorkerne 31 bis 3n setzen die entsprechenden Synchronisations-Flags auf “0”, kommunizieren mit dem Barrieresynchronisator 10, wenn die Parallelverarbeitung abgeschlossen und der Barrierepunkt erreicht ist, und schreiben das entsprechende Synchronisations-Flag von “0” auf “1” um, um es zu aktualisieren. Die Prozessorkerne 31 bis 3n kommunizieren mit dem Barrieresynchronisator 10, an dem Zeitpunkt der Fertigstellung jeder Barrieresynchronisation oder an dem Zeitpunkt des gleichzeitigen Starts der anderen Parallelverarbeitung, und schreiben das entsprechende Synchronisations-Flag von “1” auf “0” um, um es zu aktualisieren. The processor cores 31 to 3n can with the barrier synchronizer 10 communicate. The barrier synchronizer 10 includes multiple synchronization flags corresponding to each of the processor cores 31 to 3n , The processor cores 31 to 3n set the corresponding synchronization flags to "0", communicate with the barrier synchronizer 10 when the parallel processing is completed and the barrier point is reached, and rewrite the corresponding synchronization flag from "0" to "1" to update it. The processor cores 31 to 3n communicate with the barrier synchronizer 10 at the time of completion of each barrier synchronization or at the time of simultaneous start of the other parallel processing, and rewrite the corresponding synchronization flag from "1" to "0" to update it.

Der ROM 4 speichert ein Programm, das durch jeden der Prozessorkerne 31 bis 3n gestartet wird. Die Prozessorkerne 31 bis 3n starten je das im ROM 4 gespeicherte Programm, um die Parallelverarbeitung oder die Unterbrechungsbehandlung durchzuführen. Der RAM 5 arbeitet als Arbeitsspeicher, der für die Prozessorkerne 31 bis 3n verwendet wird, um Parallelverarbeitung oder Unterbrechungsbehandlung durchzuführen. The ROM 4 stores a program that passes through each of the processor cores 31 to 3n is started. The processor cores 31 to 3n start each in ROM 4 stored program to perform the parallel processing or the interruption treatment. The RAM 5 works as a working memory for the processor cores 31 to 3n is used to perform parallel processing or interrupt handling.

Der Timer 6 gibt, wenn eine Timersingal-Ausgabebedingung erfüllt ist, ein Timersignal an die Unterbrechungssteuerung 8 aus, um zum Beispiel einem Zählwert zu erlauben, einen vorbestimmten Sollwert zu erreichen. Der A/D-Umwandler 7 wird mit Sensorsignalen von verschiedenen Sensoren versorgt, die außerhalb der elektronischen Steuereinheit 1 bereitgestellt sind, wandelt ein Eingangs-Sensorsignal von einem analogen Signal in ein digitales Signal um und gibt es an die Unterbrechungssteuerung 8 aus. The timer 6 if a timer-input condition is satisfied, a timer signal to the interrupt controller 8th for example, to allow a count to reach a predetermined setpoint. The A / D converter 7 is supplied with sensor signals from various sensors located outside the electronic control unit 1 are provided, converts an input sensor signal from an analog signal to a digital signal and provides it to the interrupt controller 8th out.

Die Unterbrechungssteuerung 8 behält Unterbrechungsanforderungs-Zielinformationen zur Bestimmung von einem der Prozessorkerne 31 bis 3n, der Unterbrechungsbehandlung aufgrund des Auftretens einer Unterbrechung durchführt. Die Unterbrechungssteuerung 8 wird von irgendeinem der Prozessorkerne 31 bis 3n mit einem Unterbrechungsanforderungs-Zielbestimmungssignal versorgt und behält dann die Information (z. B. eine Prozessorkern-ID) zur Bestimmung von einem der Prozessorkerne 31 bis 3n als Verursacher der Ausgabe des Unterbrechungsanforderungs-Zielbestimmungssignals. Die Information wird als die Unterbrechungsanforderungs-Zielinformation behalten. Die Unterbrechungssteuerung 8 bestimmt auf der Grundlage des Eingangs eines Timersignals vom Timer 6 oder des Eingangs eines Sensorsignals vom A/D-Wandler 7, dass eine Unterbrechung auftritt und gibt dann eine Unterbrechungsanforderungen an einen der Prozessorkerne 31 bis 3n aus, der durch die zu diesem Zeitpunkt beibehaltene Unterbrechungsanforderungs-Zielinformation bestimmt ist. Jeder der Prozessorkerne 31 bis 3n führt Unterbrechungsbehandlung durch, wenn er von der Unterbrechungssteuerung 8 mit der Unterbrechungsanforderung versorgt wird. The interruption control 8th maintains interrupt request destination information for determining one of the processor cores 31 to 3n that performs interrupt handling due to the occurrence of an interrupt. The interruption control 8th gets from any of the processor cores 31 to 3n is provided with an interrupt request destination signal and then retains the information (eg, a processor core ID) for determining one of the processor cores 31 to 3n as the cause of the output of the interrupt request destination signal. The information is kept as the interrupt request destination information. The interruption control 8th determined on the basis of the input of a timer signal from the timer 6 or the input of a sensor signal from the A / D converter 7 in that an interrupt occurs and then issues an interrupt request to one of the processor cores 31 to 3n which is determined by the interrupt request destination information maintained at that time. Each of the processor cores 31 to 3n Performs interrupt handling when coming from the interrupt controller 8th is supplied with the interrupt request.

Die nachfolgende Beschreibung erläutert das Verhalten der oben genannten Konfiguration mit Bezug auf die 2 bis 5. Nachfolgend wird davon ausgegangen, dass die Prozessorkerne 31 bis 3n alle an der Barrieresynchronisation beteiligt sind. Die Prozessorkerne 31 bis 3n schließen je die Parallelverarbeitung ab, erreichen den Barrierepunkt und führen dann einen in 2 gezeigten Barrieresynchronisations-Prozess durch. Die nachstehende Beschreibung verwendet den ersten Prozessorkern 31 als einen Vertreter der Prozessorkerne 31 bis 3n und erläutert den durch den ersten Prozessorkern 31 durchgeführten Barrieresynchronisationsprozess. The following description explains the behavior of the above configuration with respect to FIG 2 to 5 , Below it is assumed that the processor cores 31 to 3n all involved in the barrier synchronization. The processor cores 31 to 3n each conclude the parallel processing, reach the barrier point and then lead an in 2 shown barrier synchronization process. The following description uses the first processor core 31 as a representative of the processor cores 31 to 3n and explains that through the first processor core 31 performed barrier synchronization process.

Der erste Prozessorkern 31 startet den Barrieresynchronisationsprozess, kommuniziert mit dem Barrieresynchronisator 10 und schreibt sein eigenes Synchronisations-Flag von “0” auf “1” um, um es zu aktualisieren (S1). Der erste Prozessorkern 31 liest ein von seinem eigenen, im Barrieresynchronisator 10 gespeicherten, Synchronisations-Flag verschiedenes (S2) und prüft das gelesene, von seinem eigenen verschiedene, Synchronisations-Flag, um zu bestimmen, ob ein anderer der Prozessorkerne 31 bis 3n außer ihm selbst bereits den Barrierepunkt erreicht hat (S3). The first processor core 31 starts the barrier synchronization process, communicates with the barrier synchronizer 10 and rewrites its own sync flag from "0" to "1" to update it (S1). The first processor core 31 reads one of his own, in the barrier synchronizer 10 stored, synchronization flag miscellaneous (S2) and checks the read, different from its own, synchronization flag to determine whether another of the processor cores 31 to 3n unless he has already reached the barrier point (S3).

Der erste Prozessorkern 31 kann bestimmen, dass die Prozessorkerne 31 bis 3n, außer er selbst, auf “0” gesetzte Synchronisations-Flags umfassen und kein Prozesserkern, außer ihm selbst, den Barrierepunkt erreicht (S3: NEIN), und bestimmt dann, dass der erste Prozessorkern 31 selbst den Barrierepunkt als erster erreicht. Der erste Prozessorkern 31 gibt ein Unterbrechungsanforderungs-Zielbestimmungssignal an die Unterbrechungssteuerung 8 aus und bestimmt sich selbst als ein Unterbrechungsanforderungs-Ziel der Unterbrechungsbehandlung (S4). The first processor core 31 can determine that the processor cores 31 to 3n except that he himself includes synchronization flags set to "0" and no processor core other than himself reaches the barrier point (S3: NO), and then determines that the first processor core 31 even the barrier point reached first. The first processor core 31 gives an interrupt request destination designation signal to the interrupt controller 8th and determines itself as an interrupt request destination of interrupt handling (S4).

Der erste Prozessorkern 31 kann bestimmen, dass irgendein Synchronisations-Flag, außer sein eigenes, auf “1” gesetzt ist und irgendein anderer Prozessorkern, außer ihm selbst, den Barrierepunkt erreicht (S3: JA), und bestimmt dann, dass der erste Prozessorkern 31 selbst als zweiter den Barrierepunkt erreicht. Der erste Prozessorkern 31 gibt kein Unterbrechungsanforderungs-Zielbestimmungssignal an die Unterbrechungssteuerung 8 aus und bestimmt sich selbst nicht als ein Unterbrechungsanforderungs-Ziel der Unterbrechungsbehandlung. The first processor core 31 may determine that any synchronization flag except its own is set to "1" and any other processor core other than itself reaches the barrier point (S3: YES), and then determines that the first processor core 31 even as the second reaches the barrier point. The first processor core 31 does not give an interrupt request destination designation signal to the interrupt controller 8th and does not determine itself as an interrupt request destination of interrupt handling.

Der erste Prozessorkern 31 bestimmt, ob alle der Prozessorkerne 31 bis 3n den Barrierepunkt erreichen (S5). Der erste Prozessorkern 31 kann bestimmen, dass bisher keiner der Prozessorkerne 31 bis 3n den Barrierepunkt erreicht hat und alle der Prozessorkerne 31 bis 3n den Barrierepunkt nicht erreicht haben (S5: NEIN), und kehrt dann zu S2 zurück. Der erste Prozessorkern 31 kann bestimmen, dass alle der Prozessorkerne 31 bis 3n den Barrierepunkt erreichen (S5: JA), und terminiert dann den Barrieresynchronisationsprozess, und bestimmt, dass die Barrieresynchronisation abgeschlossen ist. The first processor core 31 determines if all of the processor cores 31 to 3n reach the barrier point (S5). The first processor core 31 can determine that so far none of the processor cores 31 to 3n has reached the barrier point and all of the processor cores 31 to 3n did not reach the barrier point (S5: NO), and then returns to S2. The first processor core 31 can determine that all of the processor cores 31 to 3n reach the barrier point (S5: YES), and then terminate the barrier synchronization process, and determine that the barrier synchronization is completed.

Danach startet der erste Prozessorkern 31 gleichzeitig die Parallelverarbeitung, die nicht die zuvor durchgeführte Parallelverarbeitung ist, zum gleichen Startzeitpunkt wie die anderen Prozessorkerne 32 bis 3n. Die Prozessorkerne, außer dem ersten Prozessorkern 31, führen den oben genannten Barrieresynchronisationsprozess in ähnlicher Weise durch. Einer der Prozessorkerne 31 bis 3n, der den Barrierepunkt zuerst erreicht, wird als ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlung angenommen. Die Prozessorkerne 31 bis 3n können einen Prozessorkern umfassen, der zuvor als ein anfängliches Unterbrechungsanforderungsziel bestimmt wurde und sich zu dem Zeitpunkt des Starts einer anderen Parallelverarbeitung selbst als ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlung bestimmt. Dieser Prozessorkern behält die Einstellung. Die Prozessorkerne 31 bis 3n können einen Prozessorkern umfassen, der zuvor als ein Unterbrechungsanforderungsziel festgelegt wurde und sich zu dem Zeitpunkt des Starts einer anderen Parallelverarbeitung nicht selbst als ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlung bestimmt. Dieser Prozessorkern gibt ein Unterbrechungsanforderungs-Zielbestimmungssingal an die Unterbrechungssteuerung 8 aus und bestimmt sich selbst als ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlung. Wie oben konfigurieren die Prozessorkerne 31 bis 3n die Unterbrechungsanforderungs-Zielinformation in der Unterbrechungssteuerung 8 unter Verwendung von Software, jedoch kann die Unterbrechungsanforderungs-Zielinformation in der Unterbrechungssteuerung 8 auch unter Verwendung von Hardware konfiguriert werden. Then the first processor core starts 31 at the same time the parallel processing, which is not the previously performed parallel processing, at the same start time as the other processor cores 32 to 3n , The processor cores, except the first processor core 31 , perform the above-mentioned barrier synchronization process in a similar manner. One of the processor cores 31 to 3n that reaches the barrier point first is assumed to be an interrupt request destination of the interrupt handling. The processor cores 31 to 3n may include a processor core that has been previously designated as an initial interrupt request destination and that itself determines as an interrupt request destination of the interrupt handling at the time of starting another parallel processing. This processor core retains the setting. The processor cores 31 to 3n may include a processor core that has been previously set as an interrupt request destination and does not itself determine as an interrupt request destination of the interrupt handling at the time of starting another parallel processing. This processor core issues an interrupt request targeting signal to the interrupt controller 8th and determines itself as an interrupt request destination of interrupt handling. As above configure the processor cores 31 to 3n the interrupt request destination information in the interrupt controller 8th using software, however, the interrupt request destination information may be in the interrupt controller 8th also be configured using hardware.

Die nachfolgende Beschreibung nimmt n als “3” an und zeigt eine Konfiguration, in welcher sich der erste Prozessorkern 31 bis einschließlich der dritte Prozessorkern 33 an der Barrieresynchronisation beteiligen. 3 setzt Folgendes voraus. Der erste Prozessorkern 31 bis einschließlich der dritte Prozessorkern 33 im Mikrocontroller 2 starten gleichzeitig die Parallelverarbeitung A (t1). Danach erreicht der zweite Prozessorkern 32 den Barrierepunkt zuerst, um das Synchronisations-Flag zu aktualisieren (t2). Dann erreicht der dritte Prozessorkern 33 den Barrierepunkt, um das Synchronisations-Flag zu aktualisieren (t3). Der erste Prozessorkern 31 erreicht schließlich den Barrierepunkt, um das Synchronisations-Flag zu aktualisieren (t4) und die Barrieresynchronisation abzuschließen (t5). Der erste Prozessorkern 31 bis einschließlich der dritte Prozessorkern 33 starten dann gleichzeitig die Parallelverarbeitung B. The following description assumes n as "3" and shows a configuration in which the first processor core 31 up to and including the third processor core 33 participate in the barrier synchronization. 3 requires the following. The first processor core 31 up to and including the third processor core 33 in the microcontroller 2 simultaneously start the parallel processing A (t1). After that, the second processor core arrives 32 the barrier point first to update the synchronization flag (t2). Then the third processor core arrives 33 the Barrier point to update the synchronization flag (t3). The first processor core 31 finally reaches the barrier point to update the synchronization flag (t4) and complete the barrier synchronization (t5). The first processor core 31 up to and including the third processor core 33 then simultaneously start the parallel processing B.

Angenommen, ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlung ist fest am ersten Prozessorkern 31. Wie es in 4 gezeigt ist, tritt eine Unterbrechung im Mikrocontroller 2 auf, nachdem der zweite Prozessorkern 32 den Barrierepunkt erreicht. Eine Unterbrechungsanforderung wird an den ersten Prozessorkern 31 gegeben, obwohl der zweite Prozessorkern 32 den Barrierepunkt erreicht. Der erste Prozessorkern 31 unterbricht, wenn er mit der Unterbrechungsanforderung versorgt wird, die aktuelle Parallelverarbeitung A und startet die Unterbrechungsbehandlung (t11). Der erste Prozessorkern 31 schließt die Unterbrechungsbehandlung ab und startet dann wieder die unterbrochene Parallelverarbeitung A (t12). Der Mikrocontroller 2 unterliegt einer Verzögerung des Zeitablaufs für alle, den ersten Prozessorkern 31 bis einschließlich dritten Prozessorkern 33, um die Parallelverarbeitung A abzuschließen, und zwar dem Zeitablauf, um die Barrieresynchronisation abzuschließen, wenn der erste Prozessorkern 31 die Parallelverarbeitung A unterbricht und die Unterbrechungsbehandlung durchführt. Suppose that an interrupt request destination of the interrupt handling is fixed to the first processor core 31 , As it is in 4 is shown, an interrupt occurs in the microcontroller 2 on after the second processor core 32 reached the barrier point. An interrupt request is sent to the first processor core 31 given, though the second processor core 32 reached the barrier point. The first processor core 31 when supplied with the interrupt request, interrupts the current parallel processing A and starts interrupt handling (t11). The first processor core 31 completes the interrupt handling and then restarts the interrupted parallel processing A (t12). The microcontroller 2 is subject to a time lapse delay for all, the first processor core 31 up to and including third processor core 33 to complete the parallel processing A, namely the timing to complete the barrier synchronization when the first processor core 31 the parallel processing A interrupts and performs the interruption treatment.

Im Gegensatz dazu wird angenommen, dass einer der ersten bis dritten Prozessorkerne 3133, der den Barrierepunkt zuerst erreicht, als Unterbrechungsanforderungsziel der Unterbrechungsbehandlung angenommen wird. In diesem Fall arbeitet der Mikrocontroller 2 wie folgt. Wie es in 5 gezeigt ist, wird der erste Prozessorkern 31 als ein Unterbrechungsanforderungsziel angenommen, unmittelbar nachdem die ersten bis dritten Prozessorkerne 3133 gleichzeitig mit der Parallelverarbeitung A im Mikrocontroller 2 starten. Jedoch wird der zweite Prozessorkern 32 aktualisiert, um ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlung zu sein, wenn der zweite Prozessorkern 32 den Barrierepunkt zuerst erreicht. In contrast, it is believed that one of the first to third processor cores 31 - 33 which first reaches the barrier point is assumed as an interrupt request destination of interrupt handling. In this case, the microcontroller works 2 as follows. As it is in 5 is shown becomes the first processor core 31 as an interrupt request destination, immediately after the first to third processor cores 31 - 33 simultaneously with the parallel processing A in the microcontroller 2 start. However, the second processor core becomes 32 updated to be an interrupt request destination of the interrupt handling when the second processor core 32 reached the barrier point first.

Angenommen, es tritt eine Unterbrechung im Mikrocontroller 2 in diesem Zustand auf, und zwar nachdem der zweite Prozessorkern 32 den Barrierepunkt erreicht hat. In diesem Fall wird eine Unterbrechungsanforderung an den zweiten Prozessorkern 32 gegeben, der den Barrierepunkt bereits erreicht hat, nicht an den ersten Prozessorkern 31. Der zweite Prozessorkern 32 unterbricht einen Synchronisations-Flag-Prüfprozess und startet die Unterbrechungsbehandlung (t21), wenn er mit der Unterbrechungsanforderung versorgt ist. Der zweite Prozessorkern schließt die Unterbrechungsbehandlung ab und startet dann wieder den unterbrochenen Synchronisations-Flag-Prüfprozess (t22). Im Mikrocontroller 2 führt der erste Prozessorkern 31 die Unterbrechungsbehandlung nicht durch und der zweite Prozessorkern 32 führt die Unterbrechungsbehandlung durch. Der erste Prozessorkern 31 unterbricht dabei die Parallelverarbeitung A nicht. Es tritt keine Verzögerung im Zeitablauf für alle, die ersten bis dritten, Prozessorkerne 3133 auf, um die Parallelverarbeitung A abzuschließen, und zwar im Zeitablauf zur Fertigstellung der Barrieresynchronisation. Suppose there is an interruption in the microcontroller 2 in this state, after the second processor core 32 has reached the barrier point. In this case, an interrupt request is made to the second processor core 32 given that has already reached the barrier point, not to the first processor core 31 , The second processor core 32 interrupts a synchronization flag check process and starts interrupt handling (t21) when it is serviced with the interrupt request. The second processor core completes the interrupt handling and then restarts the interrupted synchronization flag check process (t22). In the microcontroller 2 leads the first processor core 31 the interrupt handling is not through and the second processor core 32 performs the interrupt handling. The first processor core 31 Interrupts the parallel processing A not. There is no lag over time for everyone, the first to third, processor cores 31 - 33 to complete parallel processing A, over time to complete the barrier synchronization.

Wie oben kann die erste Ausführungsform die folgenden Effekte bereitstellen. As above, the first embodiment can provide the following effects.

Einer der Prozessorkerne 31 bis 3n im Mikrocontroller 2 ist bei Eintritt in den Synchronisations-Wartezustand als ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlung bestimmt. Eine Unterbrechungsanforderung wird an den Prozessorkern im Synchronisations-Wartezustand gegeben, sofern dieser Prozessorkern verfügbar ist, wenn eine Unterbrechung auftritt. Der Prozessorkern im Synchronisations-Wartezustand führt die Unterbrechungsbehandlung durch, um eine zusätzliche Verarbeitungskapazität wirksam nutzen zu können und eine Verzögerung im Zeitablauf zur Fertigstellung der Barrieresynchronisation zu minimieren. One of the processor cores 31 to 3n in the microcontroller 2 is determined to be an interrupt request destination of the interruption treatment upon entering the synchronization wait state. An interrupt request is given to the processor core in the synchronization wait state, if that processor core is available when an interrupt occurs. The processor core in the synchronization wait state executes the interrupt handling to effectively utilize an additional processing capacity and to minimize a time-lapse delay to complete the barrier synchronization.

Wenn die Barrieresynchronisation abgeschlossen ist, startet der Mikrocontroller 2 gleichzeitig eine andere Parallelverarbeitung als die zuvor durchgeführte Parallelverarbeitung. Irgendeiner der Prozessorkerne 31 bis 3n, der als ein anfängliches Unterbrechungsanforderungsziel vorbestimmt ist, ist als ein Unterbrechungsanforderungsziel der anderen Unterbrechungsbehandlung bestimmt. Der als anfängliches Unterbrechungsanforderungsziel vorbestimmte Prozessorkern kann zu dem Zeitpunkt als ein Unterbrechungsanforderungsziel bestimmt werden, um gleichzeitig mit einer anderen Parallelverarbeitung zu starten, nachdem die Barrieresynchronisation abgeschlossen ist. When the barrier synchronization is complete, the microcontroller starts 2 at the same time a different parallel processing than the previously performed parallel processing. Any of the processor cores 31 to 3n which is predetermined as an initial interrupt request destination is determined as an interrupt request destination of the other interrupt service. The processor core predetermined as the initial interrupt request destination may be determined as an interrupt request destination at the time to start concurrently with another parallel processing after the barrier synchronization is completed.

(Zweite Ausführungsform) Second Embodiment

Die nachfolgende Beschreibung erläutert die zweite Ausführungsform der vorliegenden Erfindung mit Bezug auf die 6 bis 9. Die gleichen Bestandteile wie in der oben genannten ersten Ausführungsform werden in der Beschreibung weggelassen und es werden nur die Unterschiede erläutert. Die erste Ausführungsform ist unter der Bedingung konfiguriert, dass während der Ausführung einer einzelnen Parallelverarbeitung eine Unterbrechung auftritt. Die zweite Ausführungsform ist unter der Bedingung konfiguriert, dass während der Ausführung einer einzelnen Parallelverarbeitung mehrere Unterbrechungen auftreten. The following description will explain the second embodiment of the present invention with reference to FIGS 6 to 9 , The same components as in the above-mentioned first embodiment will be omitted in the description and only the differences will be explained. The first embodiment is configured under the condition that an interruption occurs during execution of a single parallel processing. The second embodiment is configured on the condition that multiple interruptions occur during the execution of a single parallel processing.

Ein Mikrocontroller 12 (entspricht einer Verarbeitungseinheit) in einer elektronischen Steuereinheit 11 umfasst einen Barrieresynchronisator 13 anstelle des in der ersten Ausführungsform erläuterten Barrieresynchronisators 10. Der Barrieresynchronisator 13 umfasst mehrere Synchronisations-Flags, den Prozessorkernen 31 bis 3n entsprechend, und mehrere Unterbrechungsaufbau-Flags (interrupt setup flags), den Prozessorkernen 31 bis 3n entsprechend. Die Prozessorkerne 31 bis 3n starten jeweils den Barrieresynchronisationsprozess, kommunizieren mit dem Barrieresynchronisator 13 und setzen die Unterbrechungsaufbau-Flags auf “0” zurück, um sie zu initialisieren. Die Prozessorkerne 31 bis 3n geben je ein Unterbrechungsanforderungs-Zielbestimmungssignal an die Unterbrechungssteuerung 8 aus, kommunizieren mit dem Barrieresynchronisator 13 und schreiben die Unterbrechungsaufbau-Flags von “0” auf “1” um, um sie zu aktualisieren. A microcontroller 12 (corresponds to a processing unit) in an electronic control unit 11 includes a barrier synchronizer 13 instead of the barrier synchronizer explained in the first embodiment 10 , The barrier synchronizer 13 includes several synchronization flags, the processor cores 31 to 3n accordingly, and several interrupt setup flags, the processor cores 31 to 3n corresponding. The processor cores 31 to 3n each start the barrier synchronization process, communicate with the barrier synchronizer 13 and reset the interrupt setup flags to "0" to initialize them. The processor cores 31 to 3n each give an interrupt request destination designation signal to the interrupt controller 8th out, communicate with the barrier synchronizer 13 and rewrite the break-up flags from "0" to "1" to update them.

Die nachfolgende Beschreibung erläutert das Verhalten der oben genannten Konfiguration mit Bezug auf die 6 bis 9. Die nachfolgende Beschreibung verwendet auch den ersten Prozessorkern 31 als einen Vertreter der Prozessorkerne 31 bis 3n und erläutert den durch den ersten Prozessorkern 31 durchgeführten Barrieresynchronisationsprozess. Die nachfolgende Beschreibung erläutert das Auftreten von zwei Unterbrechungen (d. h. einer ersten Unterbrechung und einer zweiten Unterbrechung), während der Ausführung einer einzelnen Parallelverarbeitung. The following description explains the behavior of the above configuration with respect to FIG 6 to 9 , The following description also uses the first processor core 31 as a representative of the processor cores 31 to 3n and explains that through the first processor core 31 performed barrier synchronization process. The following description explains the occurrence of two interrupts (ie, a first interrupt and a second interrupt) during the execution of a single parallel processing.

Der erste Prozessorkern 31 startet den Barrieresynchronisationsprozess, kommuniziert mit Barrieresynchronisator 13, schreibt sein eigenes Synchronisations-Flag von “0” auf “1” um, um es zu aktualisieren, und setzt sein Unterbrechungsaufbau-Flag auf “0” zurück, um es zu initialisieren (S11). Der erste Prozessorkern 31 liest ein, von seinem eigenen verschiedenes, Synchronisations-Flag, das im Barrieresynchronisator 13 gespeichert ist (S12) und liest sein eigenes Unterbrechungsaufbau-Flag, das im Barrieresynchronisator 10 gespeichert ist (S13). Der erste Prozessorkern 31 bestimmt, ob das gelesene eigene Unterbrechungsaufbau-Flag auf “0” gesetzt ist, um zu bestimmen, ob der erste Prozessorkern 31 selbst als ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlung bestimmt ist (S14). The first processor core 31 starts the barrier synchronization process, communicates with barrier synchronizer 13 , rewrites its own sync flag from "0" to "1" to update it, and resets its interrupt setup flag to "0" to initialize it (S11). The first processor core 31 reads, from its own different, synchronization flag, in the barrier synchronizer 13 is stored (S12) and reads its own interrupt setup flag in the barrier synchronizer 10 is stored (S13). The first processor core 31 determines if the read interrupt setup flag is set to "0" to determine if the first processor core 31 itself as an interruption request destination of the interruption treatment is determined (S14).

Der erste Prozessorkern 31 kann bestimmen, dass sein Unterbrechungsaufbau-Flag auf “0” gesetzt ist, und zwar dass der erste Prozessorkern 31 selbst nicht als ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlung bestimmt ist (S14: JA), und bestimmt dann ein anderes Synchronisations-Flag als seines. Der erste Prozessorkern 31 bestimmt, ob irgendein anderer der Prozessorkerne 31 bis 3n bereits den Barrierepunkt erreicht hat (S15). The first processor core 31 may determine that its interrupt setup flag is set to "0", that is, the first processor core 31 itself is not determined as an interrupt request destination of interrupt handling (S14: YES), and then determines a synchronization flag other than its. The first processor core 31 determines if any other of the processor cores 31 to 3n already reached the barrier point (S15).

Der erste Prozessorkern 31 kann bestimmen, dass alle Synchronisations-Flags der Prozessorkerne 31 bis 3n, außer sein eigenes, auf “0” gesetzt sind und kein anderer Prozessorkern, außer er selbst, den Barrierepunkt erreicht (S15: NEIN) und bestimmt dann, dass der erste Prozessorkern 31 selbst den Barrierepunkt zuerst erreicht. Der erste Prozessorkern 31 gibt ein Unterbrechungsanforderungs-Zielbestimmungssignal an die Unterbrechungssteuerung 8 aus, bestimmt sich selbst als ein Unterbrechungsanforderungsziel der ersten Unterbrechungshandlung und aktualisiert sein Unterbrechungsaufbau-Flag von “0” auf “1” (S16). The first processor core 31 can determine that all synchronization flags of the processor cores 31 to 3n other than its own, are set to "0" and no other processor core, except itself, reaches the barrier point (S15: NO) and then determines that the first processor core 31 even reached the barrier point first. The first processor core 31 gives an interrupt request destination designation signal to the interrupt controller 8th determines itself as an interrupt request destination of the first interruption action, and updates its interrupt setup flag from "0" to "1" (S16).

Der erste Prozessorkern 31 kann bestimmen, dass ein Synchronisations-Flag von einem der Prozessorkerne 31 bis 3n, außer sein eigenes, auf “1” gesetzt ist und ein anderer Prozessorkern als er selbst bereits den Barrierepunkt erreicht (S15: JA) und bestimmt dann, ob ein anderer Prozessorkern als er selbst den Barrierepunkt erreicht (S17). Der erste Prozessorkern 31 kann bestimmen, dass ein anderer der Prozessorkerne als er selbst den Barrierepunkt erreicht (S17:JA) und bestimmt dann, dass der erste Prozessorkern 31 selbst als Zweiter den Barrierepunkt erreicht. Der erste Prozessorkern 31 gibt ein Unterbrechungsanforderungs-Zielbestimmungssignal an die Unterbrechungssteuerung 8 aus, bestimmt sich selbst als ein Unterbrechungsanforderungsziel der zweiten Unterbrechungsbehandlung und aktualisiert sein Unterbrechungsaufbau-Flag von “0” auf “1” (S18). The first processor core 31 may determine that a synchronization flag from one of the processor cores 31 to 3n , except its own, is set to "1" and a processor core other than itself already reaches the barrier point (S15: YES), and then determines whether a processor core other than itself reaches the barrier point (S17). The first processor core 31 may determine that another one of the processor cores than itself reaches the barrier point (S17: YES) and then determines that the first processor core 31 even the second reaches the barrier point. The first processor core 31 gives an interrupt request destination designation signal to the interrupt controller 8th determines itself as an interrupt request destination of the second interrupt handling, and updates its interrupt setup flag from "0" to "1" (S18).

Der erste Prozessorkern 31 bestimmt, ob alle der Prozessorkerne 31 bis 3n den Barrierepunkt erreichen (S19). Der erste Prozessorkern 31 kann bestimmen, dass irgendeiner der Prozessorkerne 31 bis 3n den Barrierepunkt noch nicht erreicht hat und dass alle der Prozessorkerne 31 bis 3n den Barrierepunkt nicht erreichen (S19: NEIN) und kehrt dann zu S12 zurück. Der erste Prozessorkern 31 kann bestimmen, dass alle der Prozessorkerne 31 bis 3n den Barrierepunkt erreichen (S19: JA) und beendet dann den Barrieresynchronisationsprozess und bestimmt, dass die Barrieresynchronisation abgeschlossen ist. The first processor core 31 determines if all of the processor cores 31 to 3n reach the barrier point (S19). The first processor core 31 can determine that any of the processor cores 31 to 3n has not reached the barrier point and that all of the processor cores 31 to 3n does not reach the barrier point (S19: NO) and then returns to S12. The first processor core 31 can determine that all of the processor cores 31 to 3n reach the barrier point (S19: YES) and then terminate the barrier synchronization process and determine that the barrier synchronization is completed.

Danach startet der erste Prozessorkern 31 gleichzeitig die Parallelverarbeitung, welche eine andere als die zuvor durchgeführte Parallelverarbeitung ist, zum gleichen Startzeitpunkt wie die anderen Prozessorkerne 32 bis 3n. Andere Prozessorkerne als der erste Prozessorkern 31 führen den oben genannten Barrieresynchronisationsprozess in ähnlicher Weise durch. Der Prozessorkern aus den Prozessorkernen 31 bis 3n, der den Barrierepunkt zuerst erreicht hat, wird als ein Unterbrechungsanforderungsziel der ersten Unterbrechungsbehandlung bestimmt. Der Prozessorkern, der den Barrierepunkt als zweites erreicht hat, wird als Unterbrechungsanforderungsziel der zweiten Unterbrechungsbehandlung bestimmt. Ebenso können die Prozessorkerne 31 bis 3n in diesem Fall einen Prozessorkern umfassen, der zuvor als ein anfängliches Unterbrechungsanforderungsziel bestimmt wurde und der sich zu dem Zeitpunkt selbst als Unterbrechungsanforderungsziel der ersten oder zweiten Unterbrechungsbehandlung bestimmt, um eine weitere Parallelverarbeitung zu starten. Dieser Prozessorkern behält die Einstellung. Die Prozessorkerne 31 bis 3n können einen Prozessorkern umfassen, der zuvor als ein anfängliches Unterbrechungsanforderungsziel bestimmt wurde und sich selbst zu dem Zeitpunkt nicht als ein Unterbrechungsanforderungsziel der ersten oder zweiten Unterbrechungsbehandlung bestimmt, um eine weitere Parallelverarbeitung zu starten. Dieser Prozessorkern gibt ein Unterbrechungsanforderungs-Zielbestimmungssignal an die Unterbrechungssteuerung 8 aus und bestimmt sich selbst als Unterbrechungsanforderungsziel der ersten oder zweiten Unterbrechungsbehandlung. Then the first processor core starts 31 at the same time the parallel processing, which is a different than the previously performed parallel processing, at the same start time as the other processor cores 32 to 3n , Other processor cores than the first processor core 31 perform the above-mentioned barrier synchronization process in a similar manner. The processor core from the processor cores 31 to 3n which first reached the barrier point is determined as an interrupt request destination of the first interruption treatment. The processor core that has reached the barrier point second becomes the interruption request destination of the second interruption treatment certainly. Likewise, the processor cores 31 to 3n in this case, comprise a processor core previously determined to be an initial interrupt request destination and which at the time itself determines as an interrupt request destination of the first or second interrupt handling to start another parallel processing. This processor core retains the setting. The processor cores 31 to 3n may include a processor core that was previously determined to be an initial interrupt request destination and, at the time, does not itself determine as an interrupt request destination of the first or second interrupt handling to start another parallel processing. This processor core issues an interrupt request destination designation signal to the interrupt controller 8th and determines itself as an interrupt request destination of the first or second interrupt handling.

Die nachfolgende Beschreibung nimmt außerdem an, dass n “3” ist und zeigt eine Konfiguration, in welcher der erste Prozessorkern 31 bis einschließlich der dritte Prozessorkern 33 an der Barrieresynchronisation beteiligt sind, die Unterbrechungsbehandlung X als die erste Unterbrechungsbehandlung durchführen und die Unterbrechungsbehandlung Y als die zweite Unterbrechungsbehandlung durchführen. Wie es in 8 gezeigt ist, ist ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlung X oder Y fest am ersten Prozessorkern 31. Eine Unterbrechung tritt im Mikrocontroller 2 auf, nachdem der zweite Prozessorkern 32 den Barrierepunkt erreicht hat. Eine Unterbrechungsanforderung wird auch an den ersten Prozessorkern 31 gegeben, wenn der zweite Prozessorkern 32 den Barrierepunkt erreicht. Wenn er mit einer Unterbrechungsanforderung für die Unterbrechung X versorgt ist, unterbricht der erste Prozessorkern 31 die aktuelle Parallelverarbeitung A und startet die Unterbrechungsbehandlung X (t31). Der erste Prozessorkern 31 schließt die Unterbrechungsbehandlung X ab und nimmt dann die unterbrochene Parallelverarbeitung A wieder auf (t32). Wenn er mit einer Unterbrechungsanforderung für die Unterbrechung Y versorgt ist, unterbricht der erste Prozessorkern 31 die aktuelle Parallelverarbeitung A und startet die Unterbrechungsbehandlung Y (t33). Der erste Prozessorkern 31 schließt die Unterbrechungsbehandlung Y ab und nimmt dann die unterbrochene Parallelverarbeitung A wieder auf (t34). Der Mikrocontroller 2 unterliegt einer Verzögerung des Zeitablaufs für alle, die ersten bis dritten, Prozessorkerne 3133, um die Parallelverarbeitung A abzuschließen, und zwar den Zeitablauf zur Fertigstellung der Barrieresynchronisation, wenn der erste Prozessorkern 31 die Parallelverarbeitung A unterbricht und die Unterbrechungsbehandlungen X und Y ausführt. The following description also assumes that n is "3" and shows a configuration in which the first processor core 31 up to and including the third processor core 33 involved in the barrier synchronization, perform the interruption treatment X as the first interruption treatment and perform the interruption treatment Y as the second interruption treatment. As it is in 8th 2, an interruption request destination of the interruption treatment X or Y is fixed to the first processor core 31 , An interruption occurs in the microcontroller 2 on after the second processor core 32 has reached the barrier point. An interrupt request is also sent to the first processor core 31 given if the second processor core 32 reached the barrier point. When serviced with an interrupt request for interrupt X, the first processor core interrupts 31 the current parallel processing A and starts interrupt handling X (t31). The first processor core 31 completes the interrupt handling X and then resumes the interrupted parallel processing A (t32). When serviced with an interrupt request for interrupt Y, the first processor core interrupts 31 the current parallel processing A and starts the interruption treatment Y (t33). The first processor core 31 completes the interrupt handling Y and then resumes the interrupted parallel processing A (t34). The microcontroller 2 is subject to a delay in the timing of all, the first to third, processor cores 31 - 33 to complete the parallel processing A, namely the timing to complete the barrier synchronization when the first processor core 31 interrupts the parallel processing A and executes the interruption treatments X and Y.

Im Gegensatz dazu wird angenommen, dass einer der ersten bis dritten Prozessorkerne 3133, der den Barrierepunkt zuerst erreicht, als ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlung X angenommen wird und ein Prozessorkern, der den Barrrierepunkt als Zweiter erreicht, als Unterbrechungsanforderungsziel der Unterbrechungsbehandlung Y angenommen wird. In diesem Fall arbeitet der Mikrocontroller 2 wie folgt. Wie es in 9 gezeigt ist, wird der erste Prozessorkern 31 als ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlungen X und Y angenommen, unmittelbar nachdem die ersten bis dritten Prozessorkerne 3133 gleichzeitig die Parallelverarbeitung A im Mikrocontroller 2 starten. Jedoch wird der zweite Prozessorkern 32 aktualisiert, um ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlung X zu sein, wenn der zweite Prozessorkern 32 den Barrierepunkt zuerst erreicht. Der dritte Prozessorkern 33 wird aktualisiert, um ein Unterbrechungsanforderungsziel der Unterbrechungsbehandlung Y zu sein, wenn der dritte Prozessorkern 33 den Barrierepunkt als Zweiter erreicht. In contrast, it is believed that one of the first to third processor cores 31 - 33 which first reaches the barrier point when an interrupt request destination of interrupt handling X is assumed and a processor core which reaches the lock point second is adopted as an interrupt request destination of interrupt service Y. In this case, the microcontroller works 2 as follows. As it is in 9 is shown becomes the first processor core 31 as an interrupt request destination of the interruption treatments X and Y, immediately after the first to third processor cores 31 - 33 simultaneously the parallel processing A in the microcontroller 2 start. However, the second processor core becomes 32 updated to be an interrupt request destination of the interruption treatment X when the second processor core 32 reached the barrier point first. The third processor core 33 is updated to be an interrupt request destination of the interruption treatment Y when the third processor core 33 reached the barrier point in second place.

Angenommen, Unterbrechung X tritt im Mikrocontroller 2 auf, nachdem mindestens der zweite Prozessorkern 32 den Barrierepunkt erreicht. In diesem Fall wird eine Unterbrechungsanforderung für die Unterbrechung X an den zweiten Prozessorkern 32 gegeben, welcher den Barrierepunkt bereits erreicht hat, nicht an den ersten Prozessorkern 31. Wenn er mit der Unterbrechungsanforderung für die Unterbrechung X versorgt ist, unterbricht der zweite Prozessorkern 32 den Synchronisations-Flag-Prüfprozess und startet die Unterbrechungsbehandlung X (t41). Wenn die Unterbrechungsbehandlung X abgeschlossen ist, nimmt der zweite Prozessorkern 32 den unterbrochenen Synchronisations-Flag-Prüfprozess wieder auf (t42). Angenommen, Unterbrechung Y tritt im Mikrocontroller 2 auf, nachdem mindestens der dritte Prozessorkern 33 den Barrierepunkt erreicht. In diesem Fall wird eine Unterbrechungsanforderung an den dritten Prozessorkern 32 gegeben, der bereits den Barrierepunkt erreicht hat, nicht an den ersten Prozessorkern 31. Wenn er mit der Unterbrechungsanforderung für Unterbrechung Y versorgt ist, unterbricht der dritte Prozessorkern 33 den Synchronisations-Flag-Prüfprozess und startet die Unterbrechungsbehandlung Y (t43). Wenn die Unterbrechungsbehandlung Y abgeschlossen ist, nimmt der dritte Prozessorkern 33 den unterbrochenen Synchronisations-Flag-Prüfprozess wieder auf (t44). Im Mikrocontroller 2 führt der erste Prozessorkern keine der Unterbrechungsbehandlungen X oder Y aus, der zweite Prozessorkern 32 führt die Unterbrechungsbehandlung X aus und der dritte Prozessorkern 33 führt die Unterbrechungsbehandlung Y aus. Der erste Prozesserkern 31 unterbricht daher, ähnlich der ersten Ausführungsform, die Parallelverarbeitung A nicht. Es tritt keine Verzögerung des Zeitablaufs für die ersten bis dritten Prozessorkerne 3133 auf, um die Parallelverarbeitung A abzuschließen, und zwar der Zeitablauf zur Fertigstellung der Barrieresynchronisation. Suppose interruption X occurs in the microcontroller 2 on after at least the second processor core 32 reached the barrier point. In this case, an interruption request for the interruption X will be sent to the second processor core 32 given that has already reached the barrier point, not to the first processor core 31 , When supplied with the interrupt request interruption X, the second processor core interrupts 32 the synchronization flag check process and starts the interrupt handling X (t41). When the interruption treatment X is completed, the second processor core takes 32 the interrupted synchronization flag check process again (t42). Suppose interruption Y occurs in the microcontroller 2 on, after at least the third processor core 33 reached the barrier point. In this case, an interrupt request is made to the third processor core 32 given that has already reached the barrier point, not to the first processor core 31 , If it is serviced with interrupt interrupt request Y, the third processor core interrupts 33 the synchronization flag check process and starts the interruption treatment Y (t43). When the interruption treatment Y is completed, the third processor core takes 33 the interrupted synchronization flag check process again (t44). In the microcontroller 2 the first processor core does not execute any of the interrupt treatments X or Y, the second processor core 32 executes the interrupt handling X and the third processor core 33 executes the interruption treatment Y. The first processor core 31 Therefore, similar to the first embodiment, the parallel processing A does not interrupt. There is no delay in the timing for the first to third processor cores 31 - 33 to complete the parallel processing A, namely the timing to complete the barrier synchronization.

Es wurde der Fall beschrieben, in dem zwei Unterbrechungen während der Ausführung einer einzelnen Parallelverarbeitung auftreten. Jedoch gilt das Gleiche für einen Fall, in dem drei oder mehr Unterbrechungen während der Ausführung einer einzelnen Parallelverarbeitung auftreten. Und zwar bestimmt der Prozessorkern, ob der Prozessorkern selbst der m-te (m ist eine natürliche Zahl) ist, der den Barrierepunkt erreicht. Der Prozessorkern bestimmt sich selbst als ein Unterbrechungsanforderungsziel der mten Unterbrechungsbehandlung und kann ähnlich dem oben Beschriebenen arbeiten, auch wenn drei oder mehr Unterbrechungen auftreten. The case where two interrupts occur during execution of a single parallel processing has been described. However, the same applies to a case where three or more interruptions occur during execution of a single parallel processing. Namely, the processor core determines whether the processor core itself is the mth (m is a natural number) that reaches the barrier point. The processor core determines itself as an interrupt request destination of the mth interrupt handling, and can operate similarly to the one described above, even if three or more breaks occur.

Die zweite Ausführungsform kann den gleichen Wirkungseffekt wie in der obigen ersten Ausführungsform bereitstellen. Angenommen, mehrere Unterbrechungen treten während der Ausführung einer einzelnen Parallelverarbeitung auf. Sogar in so einem Fall wird ein Prozessorkern, wenn verfügbar, im Synchronisations-Wartezustand zu dem Zeitpunkt des Unterbrechungsauftritts mit einer Unterbrechungsanforderung versorgt und führt die Unterbrechungsbehandlung aus. Der Prozessorkern im Synchronisations-Wartezustand kann dadurch wirksam eine zusätzliche Verarbeitungskapazität nutzten und eine Verzögerung im Zeitablauf zur Fertigstellung der Barrieresynchronisation minimieren. The second embodiment can provide the same effect as in the above first embodiment. Suppose that multiple breaks occur during the execution of a single parallel processing. Even in such a case, a processor core, if available, is provided with an interrupt request in the synchronization wait state at the time of the interruption occurrence, and executes the interrupt handling. The processor core in the synchronization wait state can thereby effectively take advantage of additional processing capacity and minimize a time-lapse delay to complete barrier synchronization.

(Andere Ausführungsformen) Other Embodiments

Die vorliegende Erfindung ist nicht auf die obig beschriebenen Ausführungsformen begrenzt. Verschiedene Abwandlungen und Erweiterungen können im Hinblick auf die Erfindung gemacht werden, ohne vom Rahmen und Umfang hiervon abzuweichen. The present invention is not limited to the above-described embodiments. Various modifications and additions may be made in the light of the invention without departing from the scope thereof.

Es wurde die Konfiguration dargestellt, in welcher der Barrieresynchronisator das Synchronisations-Flag oder das Unterbrechungsaufbau-Flag beibehält. Jedoch muss der Barrieresynchronisator das Synchronisations-Flag oder das Unterbrechungsaufbau-Flag nicht unbedingt beibehalten. Beispielsweise kann der RAM das Synchronisations-Flag oder das Unterbrechungsaufbau-Flag beibehalten. The configuration in which the barrier synchronizer maintains the synchronization flag or the interrupt setup flag has been illustrated. However, the barrier synchronizer does not necessarily have to maintain the synchronization flag or the interrupt setup flag. For example, the RAM may retain the synchronization flag or the interrupt setup flag.

5 zeigt, dass der erste Prozessorkern 31 als ein anfängliches Unterbrechungsanforderungsziel bestimmt ist. Jedoch ist das anfängliche Unterbrechungsanforderungsziel nicht auf den ersten Prozessorkern 31 begrenzt. 8 zeigt, dass der erste Prozessorkern 31 als ein anfängliches Unterbrechungsanforderungsziel für die Unterbrechungsbehandlung X oder Y bestimmt ist. Jedoch ist das anfängliche Unterbrechungsanforderungsziel für die Unterbrechungsbehandlung X oder Y nicht auf den ersten Prozessorkern 31 begrenzt. Ein anfängliches Unterbrechungsanforderungsziel der Unterbrechungsbehandlung X kann von einem anfänglichen Unterbrechungsanforderungsziel der Unterbrechungsbehandlung Y abweichen. 5 shows that the first processor core 31 is determined as an initial interrupt request destination. However, the initial interrupt request destination is not on the first processor core 31 limited. 8th shows that the first processor core 31 is intended as an initial interrupt request destination for interrupt handling X or Y. However, the initial interrupt request destination for interrupt handling X or Y is not on the first processor core 31 limited. An initial interrupt request destination of the interruption treatment X may differ from an initial interruption request destination of the interruption treatment Y.

Es ist anzumerken, dass ein Flussdiagramm oder die Abwicklung des Flussdiagramms der vorliegenden Erfindung Abschnitte umfasst (auch als Schritte bezeichnet), welche jeweils beispielsweise als S1 dargestellt sind. Ferner kann jeder Abschnitt in einige Teilabschnitte unterteilt werden und einige Abschnitte können in einen einzelnen Abschnitt zusammengefasst werden. Weiterhin kann jeder dieser konfigurierten Abschnitte auch als eine Vorrichtung, ein Modul oder ein Mittel bezeichnet werden. It should be noted that a flowchart or the flow of the flowchart of the present invention includes portions (also referred to as steps), each of which is represented as S1, for example. Furthermore, each section can be divided into several sections and some sections can be grouped into a single section. Furthermore, each of these configured sections may also be referred to as a device, module or means.

Obwohl die vorliegende Erfindung mit Bezug auf deren Ausführungsformen beschrieben wurde, versteht es sich, dass die Offenbarung nicht auf die Ausführungsformen und Konstruktionen begrenzt ist. Die vorliegende Offenbarung schließt verschiedene Abwandlungen und gleichwertige Anordnungen ein. Ferner sind die verschiedenen Kombinationen und Konfigurationen, ebenso andere Kombinationen und Konfigurationen einschließlich mehr, weniger oder nur einzelne Elemente im Rahmen und Umfang der vorliegenden Offenbarung enthalten. Although the present invention has been described with reference to embodiments thereof, it is to be understood that the disclosure is not limited to the embodiments and constructions. The present disclosure includes various modifications and equivalent arrangements. Furthermore, the various combinations and configurations, as well as other combinations and configurations, including more, less or only individual elements, are included within the scope and scope of the present disclosure.

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION

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.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturCited patent literature

  • JP 2000-305919 A [0002] JP 2000-305919 A [0002]

Claims (9)

Verarbeitungseinheit (2, 12), aufweisend: mehrere Prozessorkerne (31 bis 3n), wobei: die mehreren Prozessorkerne eine Parallelverarbeitung mit einer Barrieresynchronisation ausführen; und einer der mehreren Prozessorkerne als ein Unterbrechungsanforderungsziel bestimmt ist, wenn sich der eine der mehreren Prozessorkerne in einem Synchronisations-Wartezustand befindet. Processing unit ( 2 . 12 ), comprising: multiple processor cores ( 31 to 3n ), wherein: the multiple processor cores perform parallel processing with barrier synchronization; and one of the plurality of processor cores is designated as an interrupt request destination when the one of the plurality of processor cores is in a synchronization wait state. Verarbeitungseinheit nach Anspruch 1, wobei: der eine der mehreren Prozessorkerne als das Unterbrechungsanforderungsziel bestimmt ist, wenn der eine der mehreren Prozessorkerne zuerst in den Synchronisations-Wartezustand übergeht.  The processing unit of claim 1, wherein: the one of the plurality of processor cores is designated as the interrupt request destination when the one of the plurality of processor cores first enters the synchronization wait state. Verarbeitungseinheit nach Anspruch 1 oder 2, wobei: der eine der mehreren Prozessorkerne als ein erstes Unterbrechungsanforderungsziel bestimmt ist, wenn der eine der mehreren Prozessorkerne als Erster in den Synchronisations-Wartezustand übergeht; ein anderer der mehreren Prozessorkerne als ein zweites Unterbrechungsanforderungsziel bestimmt ist, wenn der andere der mehreren Prozessorkerne als Zweiter in den Synchronisations-Wartezustand übergeht; und das erste Unterbrechungsanforderungsziel vom zweiten Unterbrechungsanforderungsziel verschieden ist.  A processing unit according to claim 1 or 2, wherein: the one of the plurality of processor cores is designated as a first interrupt request destination when the one of the plurality of processor cores first enters the synchronization wait state; another of the plurality of processor cores is designated as a second interrupt request destination when the other of the plurality of processor cores enters the synchronization wait state second; and the first interrupt request destination is different from the second interrupt request destination. Verarbeitungseinheit nach einem der Ansprüche 1 bis 3, wobei: wenn die Barrieresynchronisation fertiggestellt ist und alle Prozessorkerne zur Ausführung einer nächsten Parallelverarbeitung bereit sind, ein Vorbestimmter der mehreren Prozessorkerne als das Unterbrechungsanforderungsziel bestimmt ist.  A processing unit according to any one of claims 1 to 3, wherein: when the barrier synchronization is completed and all processor cores are ready to perform a next parallel processing, a predetermined one of the plurality of processor cores is designated as the interrupt request destination. Elektronische Steuereinheit (1, 11), aufweisend: die Verarbeitungseinheit nach einem der Ansprüche 1 bis 4. Electronic control unit ( 1 . 11 ), comprising: the processing unit according to any one of claims 1 to 4. Verarbeitungsverfahren, die folgenden Schritte aufweisend: Ausführen einer Parallelverarbeitung mit einer Barrieresynchronisation durch mehrere Prozessorkerne (31 bis 3n); und Bestimmen von einem der mehreren Prozessorkerne als ein Unterbrechungsanforderungsziel, wenn sich der eine der mehreren Prozessorkerne in einem Synchronisations-Wartezustand befindet. A method of processing comprising the steps of: performing parallel processing with a barrier synchronization through a plurality of processor cores ( 31 to 3n ); and determining one of the plurality of processor cores as an interrupt request destination when the one of the plurality of processor cores is in a synchronization wait state. Verarbeitungsverfahrend nach Anspruch 6, wobei: die Bestimmung des einen der mehreren Prozessorkerne eine Bestimmung des einen der mehreren Prozessorkerne als Unterbrechungsanforderungsziel umfasst, wenn der eine der mehreren Prozessorkerne zuerst in den Synchronisations-Wartezustand übergeht.  A processing method according to claim 6, wherein: the determination of the one of the plurality of processor cores comprises determining the one of the plurality of processor cores as the interrupt request destination when the one of the plurality of processor cores first enters the synchronization wait state. Verarbeitungsverfahren nach Anspruch 6 oder 7, wobei: die Bestimmung des einen der mehreren Prozessorkerne die folgenden Schritte umfasst: Bestimmen des einen der mehreren Prozessorkerne, welcher als ein erster Prozessorkern definiert ist, als ein erstes Unterbrechungsanforderungsziel, wenn der eine der mehreren Prozessorkerne als Erster in den Synchronisations-Wartezustand übergeht; und Bestimmen eines anderen der mehreren Prozessorkerne, welcher als ein zweiter Prozessorkern definiert ist, als ein zweites Unterbrechungsanforderungsziel, wenn der andere der mehreren Prozessorkerne als Zweiter in den Synchronisations-Wartezustand übergeht.  The processing method according to claim 6 or 7, wherein: the determination of one of the multiple processor cores involves the following steps: Determining the one of the plurality of processor cores defined as a first processor core as a first interrupt request destination when the one of the plurality of processor cores first enters the synchronization wait state; and Determining another one of the plurality of processor cores defined as a second processor core as a second interrupt request destination when the other of the plurality of processor cores enters the synchronization wait state second. Verarbeitungsverfahren nach einem der Ansprüche 6 bis 8, weiterhin aufweisend: Bestimmen eines Vorbestimmten der mehreren Prozessorkerne als das Unterbrechungsanforderungsziel, wenn die Barrieresynchronisation fertiggestellt ist und alle der mehreren Prozessorkerne zur Ausführung der nächsten Parallelverarbeitung bereit sind.  The processing method according to any one of claims 6 to 8, further comprising: Determining a predetermined one of the plurality of processor cores as the interrupt request destination when the barrier synchronization is completed and all of the multiple processor cores are ready to execute the next parallel processing.
DE102017216823.4A 2016-09-27 2017-09-22 PROCESSING UNIT, ELECTRONIC CONTROL UNIT AND PROCESSING METHOD Pending DE102017216823A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016-188164 2016-09-27
JP2016188164A JP6648663B2 (en) 2016-09-27 2016-09-27 Arithmetic unit, electronic control unit, and arithmetic method

Publications (1)

Publication Number Publication Date
DE102017216823A1 true DE102017216823A1 (en) 2018-03-29

Family

ID=61564110

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017216823.4A Pending DE102017216823A1 (en) 2016-09-27 2017-09-22 PROCESSING UNIT, ELECTRONIC CONTROL UNIT AND PROCESSING METHOD

Country Status (2)

Country Link
JP (1) JP6648663B2 (en)
DE (1) DE102017216823A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7476638B2 (en) 2020-04-15 2024-05-01 株式会社デンソー Multiprocessor Systems

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000305919A (en) 1999-04-23 2000-11-02 Hitachi Ltd Multiprocessor system and its synchronizing method, and vibration test device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000305919A (en) 1999-04-23 2000-11-02 Hitachi Ltd Multiprocessor system and its synchronizing method, and vibration test device

Also Published As

Publication number Publication date
JP6648663B2 (en) 2020-02-14
JP2018055244A (en) 2018-04-05

Similar Documents

Publication Publication Date Title
DE1218761B (en) Data storage device
EP1309920A2 (en) Address assignment method for at least one bus device that has recently been connected to a bus system
DE2145120A1 (en) Digital data processing device
DE202016104113U1 (en) Master-slave system
EP2120143B1 (en) Method to perform tasks for calculating a signal to be simulated in real time
DE3106862C2 (en) Priority arbitration circuitry
EP2221697B1 (en) Method for testing a control device and testing device
DE2003150B2 (en)
DE1524181B2 (en) SELECTION DEVICE FOR INPUT AND OUTPUT DEVICES OF A DATA PROCESSING SYSTEM
DE102017216823A1 (en) PROCESSING UNIT, ELECTRONIC CONTROL UNIT AND PROCESSING METHOD
DE102016006202A1 (en) Numerical control device for managing machining data and machining results
EP2466406A1 (en) Method for automatically generating dynamic frame packing groups
EP0862827B1 (en) Method for checking a data exchange based on a communication protocol
EP1870787B1 (en) Method for monitoring a cyclic control program
EP3028182B1 (en) Method and system for synchronising data
EP1331794B1 (en) Method for address allocation in a network and components therefore
EP3244325B1 (en) Method for the synchronized output and/or synchronized processing of signals
DE102021211731A1 (en) Method for processing data with a data processing network comprising a plurality of data processing modules, data processing module and data processing network
EP3399375A1 (en) Method for configuring control devices
DE102018101203A1 (en) Automation device and method for optimized access to a variable
WO2022063663A1 (en) Method, data processing module, and data processing network for processing data
EP3349081A1 (en) Method for automatically configuring functional units of an automation system, computer program with an implementation of the method and apparatus operating according to the method
DE102011004363B4 (en) Control device for controlling network participants, method for operating a computer network and computer network
DE4113966C2 (en)
EP1654832B1 (en) Method for establishing a device of a data network as pilot master

Legal Events

Date Code Title Description
R012 Request for examination validly filed