DE102014216381A1 - Control device and operating method for this - Google Patents
Control device and operating method for this Download PDFInfo
- Publication number
- DE102014216381A1 DE102014216381A1 DE102014216381.1A DE102014216381A DE102014216381A1 DE 102014216381 A1 DE102014216381 A1 DE 102014216381A1 DE 102014216381 A DE102014216381 A DE 102014216381A DE 102014216381 A1 DE102014216381 A1 DE 102014216381A1
- Authority
- DE
- Germany
- Prior art keywords
- task
- program
- notification
- data
- execution
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Programmable Controllers (AREA)
- Debugging And Monitoring (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zum Betreiben eines Steuergeräts (100), insbesondere für ein Kraftfahrzeug, wobei das Steuergerät (100) wenigstens eine, vorzugsweise wenigstens zwei, insbesondere zur Ausführung von Aufgabenprogrammen (112, 122) ausgebildete Ausführungseinheiten (110, 120) aufweist, wobei zumindest zeitweise ein erstes Aufgabenprogramm (112) und ein zweites Aufgabenprogramm (122) ausgeführt werden, dadurch gekennzeichnet, dass das erste Aufgabenprogramm (112) eine Benachrichtigung (B) an eine Ausführungseinheit (120) sendet, die das zweite Aufgabenprogramm (122) ausführt, wobei die Benachrichtigung (B) dem zweiten Aufgabenprogramm (122) und/oder der das zweite Aufgabenprogramm (122) ausführenden Ausführungseinheit (120) signalisiert, dass das erste Aufgabenprogramm (112) bereit ist, Daten von dem zweiten Aufgabenprogramm (122) zu empfangen.The invention relates to a method for operating a control unit (100), in particular for a motor vehicle, wherein the control unit (100) has at least one execution unit (110, 120), preferably at least two execution units (112, 122) designed in particular for executing task programs, wherein a first task program (112) and a second task program (122) are executed at least temporarily, characterized in that the first task program (112) sends a notification (B) to an execution unit (120) executing the second task program (122) wherein the notification (B) signals to the second task program (122) and / or the execution unit (120) executing the second task program (122) that the first task program (112) is ready to receive data from the second task program (122) ,
Description
Stand der TechnikState of the art
Die Erfindung betrifft ein Verfahren zum Betreiben eines Steuergeräts, insbesondere für ein Kraftfahrzeug, wobei das Steuergerät wenigstens eine, vorzugsweise wenigstens zwei, insbesondere zur Ausführung von Aufgabenprogrammen ausgebildete Ausführungseinheiten aufweist, wobei zumindest zeitweise ein erstes Aufgabenprogramm und ein zweites Aufgabenprogramm ausgeführt werden.The invention relates to a method for operating a control device, in particular for a motor vehicle, wherein the control device has at least one, preferably at least two, especially designed for execution of task programs execution units, wherein at least temporarily a first task and a second task are performed.
Die Erfindung betrifft ferner ein Steuergerät, insbesondere für ein Kraftfahrzeug.The invention further relates to a control device, in particular for a motor vehicle.
Eine Patentveröffentlichung aus diesem Gebiet ist die
Offenbarung der ErfindungDisclosure of the invention
Es ist Aufgabe der vorliegenden Erfindung, ein Verfahren und ein Steuergerät der eingangs genannten Art dahingehend zu verbessern, dass ein gesteigerter Gebrauchsnutzen gegeben ist.It is an object of the present invention to improve a method and a control device of the type mentioned in that an increased utility is given.
Diese Aufgabe wird bei dem Verfahren der eingangs genannten Art dadurch gelöst, dass das erste Aufgabenprogramm eine Benachrichtigung an eine Ausführungseinheit sendet, die das zweite Aufgabenprogramm ausführt, wobei die Benachrichtigung dem zweiten Aufgabenprogramm und/oder der das zweite Aufgabenprogramm ausführenden Ausführungseinheit signalisiert, dass das erste Aufgabenprogramm bereit ist, Daten von dem zweiten Aufgabenprogramm zu empfangen.This object is achieved in the method of the type mentioned in that the first task sends a notification to an execution unit that executes the second task, the notification the second task and / or executing the second task execution unit signals that the first Task is ready to receive data from the second task.
Einer Ausführungsform zufolge kann es sich bei den Ausführungseinheiten jeweils um einen physischen oder virtuellen Kern einer Recheneinheit wie z.B. einem Mikroprozessor oder einer sog. CPU (central processing unit) oder auch eines digitalen Signalprozessors (DSP) handeln. Die Aufgabenprogramme, die auch als "Tasks" bezeichnet werden, können einer Ausführungsform zufolge allesamt auf derselben Ausführungseinheit ausgeführt werden. Bevorzugt ist jedoch eine Verteilung der Aufgabenprogramme auf verschiedene Ausführungseinheiten. Die Aufgabenprogramme können beispielsweise in an sich bekannter Weise durch ein Betriebssystem, das ebenfalls auf der Recheneinheit ablaufen kann, gesteuert werden. Insbesondere kann das Betriebssystem eine Ressourcenzuordnung der Recheneinheit zu den Aufgabenprogrammen vornehmen.According to one embodiment, each of the execution units may be a physical or virtual core of a computing unit, such as a computer. a microprocessor or a so-called CPU (central processing unit) or a digital signal processor (DSP) act. The task programs, also referred to as "tasks", may all be executed on the same execution unit according to one embodiment. However, a distribution of the task programs to different execution units is preferred. The task programs can be controlled, for example, in a manner known per se by an operating system which can likewise run on the computer. In particular, the operating system can make a resource allocation of the arithmetic unit to the task programs.
Durch den erfindungsgemäßen Ansatz ist vorteilhaft eine Synchronisation derart ermöglicht, dass ein Aufgabenprogramm, welches Daten an ein anderes Aufgabenprogramm zu senden hat, durch das andere Aufgabenprogramm über einen (frühest-)möglichen Empfangszeitpunkt informiert wird. Dadurch kann der Zeitpunkt der Datenübertragung flexibel gehalten bzw. an die aktuelle Auslastung der beteiligten Aufgabenprogramme angepasst werden, und insbesondere im Falle vieler miteinander Daten austauschender Aufgabenprogramme kann eine unnötig hohe Auslastung eines Speicher- bzw. Bussystems, welches für den Datenaustausch verwendet wird, zu besonderen Intervallen vermieden werden. Ein weiterer Vorteil der Erfindung besteht in der Skalierbarkeit. Das erfindungsgemäße Prinzip kann auf Steuergeräte mit Recheneinheiten angewandt werden, welche eine Vielzahl von Kernen, also Ausführungseinheiten aufweisen, unter Beibehaltung eines reproduzierbaren und deterministischen Verhaltens.By means of the approach according to the invention, synchronization is advantageously enabled in such a way that a task program which has data to send to another task program is informed by the other task program about a (earliest) possible reception time. As a result, the time of data transmission can be kept flexible or adapted to the current utilization of the task programs involved, and in particular in the case of many data exchange tasks with each other, an unnecessarily high utilization of a memory or bus system, which is used for data exchange, to special Intervals are avoided. Another advantage of the invention is scalability. The principle according to the invention can be applied to control units with arithmetic units, which have a large number of cores, that is, execution units, while maintaining a reproducible and deterministic behavior.
Bei einer bevorzugten Ausführungsform ist vorgesehen, dass das erste Aufgabenprogramm die Benachrichtigung dann sendet, wenn eine vorgebbare Anzahl von Berechnungen des ersten Aufgabenprogramms, insbesondere alle Berechnungen des ersten Aufgabenprogramms, für einen dem ersten Aufgabenprogramm zugeordneten aktuellen Zeitschlitz ausgeführt worden sind. Damit ist sichergestellt, dass das empfangende erste Aufgabenprogramm auch wirklich zum Datenempfang bereit ist.In a preferred embodiment, it is provided that the first task program sends the notification when a predeterminable number of calculations of the first task program, in particular all calculations of the first task program, have been carried out for a current time slot assigned to the first task program. This ensures that the receiving first task is really ready to receive data.
Bei einer weiteren bevorzugten Ausführungsform ist vorgesehen, dass das erste Aufgabenprogramm die Benachrichtigung an dem Ende eines dem ersten Aufgabenprogramm zugeordneten aktuellen Zeitschlitzes sendet.In a further preferred embodiment, it is provided that the first task program sends the notification at the end of a current time slot assigned to the first task program.
Bei einer bevorzugten Ausführungsform ist vorgesehen, dass Daten von einem dem zweiten Aufgabenprogramm zugeordneten Speicherbereich in einen dem ersten Aufgabenprogramm zugeordneten Speicherbereich übertragen werden, wenn das erste Aufgabenprogramm zuvor eine entsprechende Benachrichtigung an die das zweite Aufgabenprogramm ausführende Ausführungseinheit gesendet hat, und wenn das zweite Aufgabenprogramm alle Berechnungen für einen dem zweiten Aufgabenprogramm zugeordneten aktuellen Zeitschlitz ausgeführt hat. In a preferred embodiment, it is provided that data from a memory area assigned to the second task program is transferred to a memory area allocated to the first task program, when the first task program has previously sent a corresponding notification to the execution unit executing the second task program, and the second task program all Has performed calculations for a current time slot associated with the second task.
Bei einer bevorzugten Ausführungsform ist vorgesehen, dass ein drittes Aufgabenprogramm ausgeführt wird, um Daten von einem dem zweiten Aufgabenprogramm zugeordneten Speicherbereich in einen dem ersten Aufgabenprogramm zugeordneten Speicherbereich zu übertragen. Diese Variante ermöglicht eine einfache Implementierung der Erfindung unter Verwendung von insbesondere im Automobilbereich vorhandenen Betriebssystemen. Ferner kann die Aufgabe, Daten an das erste Aufgabenprogramm zu senden bzw. zu diesem zu übertragen, weitgehend durch das dritte Aufgabenprogramm übernommen werden, so dass das zweite Aufgabenprogramm die entsprechende Funktionalität nicht aufweisen muss.In a preferred embodiment it is provided that a third task program is executed in order to transfer data from a memory area assigned to the second task program to a memory area allocated to the first task program. This variant enables a simple implementation of the invention using operating systems that are particularly available in the automotive sector. Furthermore, the task of sending or transmitting data to the first task program can largely be taken over by the third task program, so that the second task program does not have to have the corresponding functionality.
Bei einer weiteren bevorzugten Ausführungsform ist vorgesehen, dass das erste Aufgabenprogramm und das zweite Aufgabenprogramm unterschiedliche Zykluszeiten aufweisen, wobei eine Zykluszeit des ersten Aufgabenprogramms größer ist als die Zykluszeit des zweiten Aufgabenprogramms, und wobei Daten von einem dem zweiten Aufgabenprogramm zugeordneten Speicherbereich in einen dem ersten Aufgabenprogramm zugeordneten Speicherbereich innerhalb desjenigen Zyklus des zweiten Aufgabenprogramms übertragen werden, welcher zeitlich im Bereich eines Zyklusendes des ersten Aufgabenprogramms liegt.In a further preferred embodiment, it is provided that the first task program and the second task program have different cycle times, wherein a cycle time of the first task program is greater than the cycle time of the second task program, and wherein data from a memory area associated with the second task program in one of the first task allocated memory area within that cycle of the second task program, which is temporally in the range of a cycle end of the first task program.
Bei einer weiteren bevorzugten Ausführungsform ist vorgesehen, dass das erste und zweite Aufgabenprogramm auf derselben Ausführungseinheit oder auf verschiedenen Ausführungseinheiten ausgeführt werden. Die Ausführung mindestens eines Aufgabenprogramms auf einer weiteren Recheneinheit, welche an eine Recheneinheit des erfindungsgemäßen Steuergeräts z.B. über ein Netzwerk angebunden ist, ist ebenfalls denkbar. Besonders vorteilhaft ist das erfindungsgemäße Prinzip einer Variante zufolge auch bei Recheneinheiten anwendbar, welche (nur) eine zur Ausführung von Aufgabenprogrammen ausgebildete Ausführungseinheit aufweisen.In a further preferred embodiment, it is provided that the first and second task programs are executed on the same execution unit or on different execution units. The execution of at least one task program on a further computing unit, which is connected to a computing unit of the control device according to the invention e.g. Connected via a network is also conceivable. According to a variant of the invention, the principle according to the invention is also particularly advantageously applicable to arithmetic units which (only) have an execution unit designed to execute task programs.
Als eine weitere Lösung der Aufgabe der vorliegenden Erfindung ist ein Steuergerät, insbesondere für ein Kraftfahrzeug, angegeben, wobei das Steuergerät wenigstens eine, vorzugsweise wenigstens zwei, insbesondere zur Ausführung von Aufgabenprogrammen ausgebildete Ausführungseinheiten aufweist, wobei zumindest zeitweise ein erstes Aufgabenprogramm und ein zweites Aufgabenprogramm ausführbar sind, dadurch gekennzeichnet, dass das erste Aufgabenprogramm dazu ausgebildet ist, eine Benachrichtigung an eine Ausführungseinheit zu senden, die das zweite Aufgabenprogramm ausführt, wobei die Benachrichtigung dem zweiten Aufgabenprogramm und/oder der das zweite Aufgabenprogramm ausführenden Ausführungseinheit signalisiert, dass das erste Aufgabenprogramm bereit ist, Daten von dem zweiten Aufgabenprogramm zu empfangen.As a further solution of the object of the present invention, a control device, in particular for a motor vehicle, specified, wherein the control unit at least one, preferably at least two, in particular designed for execution of task programs execution units, wherein at least temporarily a first task and a second task executable are characterized in that the first task program is adapted to send a notification to an execution unit executing the second task program, the notification signaling the second task program and / or the second task program executing execution unit that the first task program is ready To receive data from the second task.
Weitere vorteilhafte Ausführungsformen sind durch die abhängigen Ansprüche definiert.Further advantageous embodiments are defined by the dependent claims.
Nachfolgend werden beispielhafte Ausführungsformen der Erfindung unter Bezugnahme auf die Zeichnung erläutert. In der Zeichnung zeigt: Hereinafter, exemplary embodiments of the invention will be explained with reference to the drawings. In the drawing shows:
Vorliegend sind in
Eine Datenverbindung
Zusätzlich zu den Aufgabenprogrammen
Erfindungsgemäß ist vorgesehen, dass das erste Aufgabenprogramm
Durch den erfindungsgemäßen Ansatz ist vorteilhaft eine Synchronisation derart ermöglicht, dass ein Aufgabenprogramm
Auf der Zeitskala t ist ein Startzeitpunkt t0 angegeben, zu dem beide Aufgabenprogramme
Wie aus
Analog zu dem ersten Aufgabenprogramm
Wie aus
Zusätzlich zu den Bereichen
In dem zweiten Speicherbereich
Einer Ausführungsform zufolge sendet die Empfänger-Task
Bei einer bevorzugten Ausführungsform kann vorgesehen sein, dass ein drittes Aufgabenprogramm
Bei heute im Automobil-Bereich üblichen Betriebssystemen kann die Benachrichtigungs-Task
Bei einer Ausführungsform erfolgt die Übermittlung der Daten G an das erste Aufgabenprogramm
Sofern die Benachrichtigung B vor Beendigung der Sender-Task
Wann genau die Benachrichtigungs-Task
Bei einer weiteren vorteilhaften Ausführungsform ist vorgesehen, dass das erste Aufgabenprogramm
Bei einer vorteilhaften Ausführungsform ist ein Algorithmus vorgesehen, der sicherstellt, dass die Übertragung der Daten G vom Sender
Im Beispiel der
Die folgenden Programmbeispiele zeigen schematisch, wie weiteren Ausführungen zufolge das erfindungsgemäße Prinzip am Beispiel einer Kommunikation von der Sender-Task
Auf der Ausführungseinheit
Man sieht, dass für alle Aufgabenprogramme (Tasks) "s", von denen Daten empfangen werden, anhand eines Zählers ("counter_r") zunächst geprüft wird, ob in dem aktuellen Zeitschritt Daten empfangen werden sollen. Das betrifft nur die Sender-Tasks mit langsamerer Abtastrate, ansonsten kann der Zähler entfallen. Im Beispiel in
Auf der Ausführungseinheit (Rechenkern) der Sender-Task „s" wird nun sofort oder später die Task „notify" (entsprechend der vorstehend beschriebenen Benachrichtigungs-Task
Zunächst wird durch Setzen der Logikvariable "receiver_ready"
Am Ende der Sender-Task
Man sieht, dass für alle anderen Aufgabenprogramme (Tasks) „r", an die Daten gesendet werden, anhand eines Zählers (counter_s) zunächst geprüft wird, ob in diesem Zeitschritt Daten gesendet werden sollen. Das betrifft nur die Empfänger-Tasks mit niedrigerer Abtastrate, ansonsten kann der Zähler entfallen. Im Beispiel in
Bei passendem Zählerstand
Man sieht an den vorstehend beschriebenen Ausführungsbeispielen, dass die Übertragung der zu kommunizierenden Daten G entweder in der Task
Bisher wurde davon ausgegangen, dass die Task „notify" und die Sender-Task aus Sicht des Betriebssystems die gleiche Priorität haben, in der Reihenfolge ihrer Aktivierung ausgeführt werden und sich gegenseitig nicht unterbrechen. Falls diese Annahme nicht zutrifft, können zusätzliche Schutzmechanismen in den Programm-Code eingebaut werden um konsistente Werte für die Zustände „sender_ready" und „receiver_ready" sicherzustellen. Durch dem Fachmann bekannte Mechanismen des Betriebssystems der Recheneinheit des Steuergeräts
Der Programm-Code der Benachrichtigungs-Task
Der Schutzmechanismus wirkt einer Ausführungsform zufolge lokal auf nur einer Ausführungseinheit ("core-lokal") und ist dadurch ressourcenschonend zu implementieren (z.B. indem Task-Wechsel kurzzeitig verhindert werden). Um die Zeit, währenddessen der Zugriffschutz aktiv ist, kurz zu halten, wird die Ausführung der Kopieraktion einer Ausführungsform zufolge durch eine logische Größe „copy_s" bzw. „copy_n" gesteuert, so dass die Kopieraktion außerhalb des geschützten Bereiches erfolgen kann. Wenn nicht sichergestellt werden kann, dass die Kommunikation immer spätestens dann abgeschlossen ist, wenn die Intervalle von Sender und Empfänger enden, können einer Ausführungsform zufolge Maßnahmen zur Fehlererkennung und Fehlerbehandlung vorgesehen werden. Der Start der Programmausführung von Sender- und Empfänger-Task kann dann z.B. im nachfolgenden Intervall so lange verzögert werden, bis die Kommunikation aus dem vorherigen Intervall abgeschlossen ist. Die technische Lösung zur Behandlung solcher Fehlerfälle ist nicht Bestandteil dieser Erfindung.According to one embodiment, the protection mechanism acts locally on only one execution unit ("core-local") and is thereby implemented in a resource-saving manner (for example, by temporarily preventing task switching). In order to keep the time during which access protection is active short, according to one embodiment, the execution of the copy action is controlled by a logical variable "copy_s" or "copy_n", so that the copying action can take place outside the protected area. If it can not be ensured that the communication is always completed at the latest when the intervals between sender and receiver end, measures for error detection and error handling can be provided according to one embodiment. The start of the program execution of sender and receiver task can then be e.g. be delayed in the subsequent interval until the communication from the previous interval is completed. The technical solution for the treatment of such errors is not part of this invention.
Weitere vorteilhafte Ausführungsformen sind durch folgende Aspekte charakterisiert, die auch miteinander und/oder mit den vorstehend genannten Ausführungsformen kombinierbar sind:
- •
Sender 122 und Empfänger 112 der Kommunikationsbeziehung 130 können auf dem gleichen Rechenkern, auf unterschiedlichen Rechenkernen oder auf einer anderen Recheneinheit in einem vernetzten System („System-on-Chip") ausgeführt werden. - • Die zu kommunizierenden Daten können aus dem Speicherbereich des
Senders 122 in denSpeicherbereich des Empfängers 112 kopiert werden oder als Nachricht an den Empfänger gesendet werden. - • Die Benachrichtigung
B vom Empfänger 112 zum Sender 122 kann dann erfolgen, wenn innerhalb einer Ausführung der Empfänger-Task nicht mehr auf die Eingangsdaten zugegriffen wird, also zu einem Zeitpunkt bereits vor Beendigung der Empfänger-Task. - • Das Senden der Daten kann bereits dann erfolgen, wenn die Sender-
Task 122 alle zu sendenden Daten im Speicher124 abgelegt hat, also bereits vor dem Ende der Sende-Task, vorausgesetzt dass die Benachrichtigung B der Empfänger-Task bereits eingetroffen ist. - •
Falls der Empfänger 122 Zugriff auf den Arbeitsspeicher desSenders 112 hat, kann die Kommunikation alternativ vom Empfänger122 gesteuert und durchgeführt werden. In diesem Fall kann derSender 122 den Empfänger 112 benachrichtigen, wenn die Daten bereitstehen. Der Programm-Code sieht ähnlich aus wie oben beschrieben, es müssen nur jeweils Sender und Empfänger vertauscht werden. Die Benachrichtigungs-Task 140 kann in diesem Fall auf der Ausführungseinheit110 desEmpfängers 112 ausgeführt werden. - • Falls einer der
Kommunikationspartner 112 ,122 Zugriffauf den Speicher 114 ,124 des anderen Partners hat, kann dieser direkt nacheinander eine Kommunikation in beide Richtungen durchführen. Das bedeutet, die Funktion „copydata" aus den vorstehend beschriebenen Programmbeispielen kann nicht nur die Daten von einem Sender zu einem Empfänger senden, sondern auch die Ausgabedaten des Empfängers auslesen und in den Speicherbereich des Senders kopieren. Dadurch wird die Anzahl der Benachrichtigungs-Tasks halbiert, soweit eine Kommunikation in beide Richtungen erforderlich ist.
- •
Sender 122 andreceiver 112 thecommunication relationship 130 can be executed on the same processor, on different cores or on another processor in a networked system ("system-on-chip"). - • The data to be communicated may be from the memory area of the
transmitter 122 in the memory area of thereceiver 112 be copied or sent as a message to the recipient. - • The notification B from the
recipient 112 to thetransmitter 122 This can be done if the input data is no longer accessed within an execution of the receiver task, that is, at a time already before the receiver task is ended. - • Sending the data can already be done when the
sender task 122 all data to be sent in memory124 has already filed before the end of the send task, provided that the notification B of the receiver task has already arrived. - • If the
recipient 122 Access to the memory of thetransmitter 112 Alternatively, the communication may be from therecipient 122 be controlled and performed. In this case, thetransmitter 122 therecipient 112 notify when the data is ready. The program code looks similar to the one described above, only the transmitter and the receiver have to be swapped. Thenotification task 140 can in this case on theexecution unit 110 Recipient 112 be executed. - • If one of the communication partners
112 .122 Access to thememory 114 .124 of the other partner, he can directly communicate one after the other in both directions. This means that the "copydata" function from the program examples described above can not only send the data from a sender to a receiver, but also read out the receiver's output data and copy it to the memory area of the sender, thereby halving the number of notification tasks if communication in both directions is required.
Nachstehend sind die Vorteile des erfindungsgemäßen Prinzips zusammengefasst.The advantages of the principle according to the invention are summarized below.
-
1. Herkömmliche Verfahren wie z.B. aus
DE 102 29 520 A1 DE 102 29 520 A1 -
2. Das erfindungsgemäße Prinzip unterstützt von einem Betriebssystem kontrollierte Software-Einheiten (Tasks), deren Aktivierungsraten (z.B. 5 ms, 10 ms) in einem vorzugsweise festen, ganzzahligen Verhältnis zueinander stehen (
2 ). Dabei können auch mehrere Tasks mit gleicher Aktivierungsrate vorhanden sein. Daneben können im System auch noch weitere Tasks mit anderen als den genannten Aktivierungsraten vorhanden sein, mit denen dann jedoch auf andere Art als in dieser Erfindung beschrieben kommuniziert werden kann.2. The principle according to the invention supports software units (tasks) controlled by an operating system whose activation rates (eg 5 ms, 10 ms) are in a preferably fixed, integer ratio to one another (2 ). There may also be several tasks with the same activation rate. In addition, other tasks may be present in the system with other than the above activation rates, but with which then can be communicated in a different way than described in this invention. -
3. Das Verfahren belastet die Kommunikationskanäle
130 (z.B. Busse) weniger, als die von konventionellen Systemen bekannte Kommunikation, die z.B. stets genau an den lntervallgrenzen R1, R2 stattfindet (2 ).3. The procedure loads the communication channels130 (eg buses) less than the communication known from conventional systems, for example, which always takes place exactly at the interval limits R1, R2 (2 ). -
4. Das Verfahren kommt mit einer geringeren Anzahl an Speichern für die zwischen den Software-Einheiten
112 ,122 kommunizierten Daten G aus als die herkömmlichen Verfahren.4. The process comes with a smaller number of memories for those between thesoftware units 112 .122 communicated data G as the conventional methods. -
5. Das Verfahren ist „wait-free" das bedeutet, dass die Ausführung keiner der Kommunikationspartner zeitweise blockiert wird, z. B. um die Konsistenz gemeinsam genutzter Speicherbereiche sicherzustellen. Dadurch kann die verfügbare Rechenleistung der Ausführungseinheiten
110 ,120 besser genutzt werden.5. The procedure is "wait-free", meaning that none of the communication partners' execution is temporarily blocked, for example, to ensure the consistency of shared storage areas, which can reduce the available processing power of theexecution units 110 .120 be better used. - 6. Das Verfahren kann ohne Erweiterung der heute in der Automobil-Domäne üblicherweise eingesetzten Betriebssysteme (z.B. AUTOSAR-OS) implementiert werden.6. The method can be implemented without extending the operating systems commonly used today in the automotive domain (e.g., AUTOSAR-OS).
- 7. Das Verfahren kann für Recheneinheiten mit von verschiedenen Rechenkernen gemeinsam nutzbaren Speicherbereichen (wie heute verfügbare Multi-Core Prozessoren mit „shared memory" für den Echtzeit-Einsatz in der Automobil-Domäne) ebenso verwendet werden wie für Recheneinheiten, die nur durch Senden von Nachrichten über Kommunikationskanäle („message passing") miteinander kommunizieren können („Network-on-Chip").7. The method can be used for computing units with memory areas that can be shared by different processor cores (such as multi-core processors with "shared memory" available for real-time use in the automotive domain) and for processors that can only be used by sending Messages via communication channels ("message passing") can communicate with each other ("network-on-chip").
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
- DE 10229520 A1 [0003, 0054] DE 10229520 A1 [0003, 0054]
Claims (9)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102014216381.1A DE102014216381A1 (en) | 2014-08-19 | 2014-08-19 | Control device and operating method for this |
CN201510506405.7A CN105373436B (en) | 2014-08-19 | 2015-08-18 | Control device and operating method therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102014216381.1A DE102014216381A1 (en) | 2014-08-19 | 2014-08-19 | Control device and operating method for this |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102014216381A1 true DE102014216381A1 (en) | 2016-03-10 |
Family
ID=55358362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102014216381.1A Pending DE102014216381A1 (en) | 2014-08-19 | 2014-08-19 | Control device and operating method for this |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105373436B (en) |
DE (1) | DE102014216381A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102017200669A1 (en) | 2017-01-17 | 2018-07-19 | Robert Bosch Gmbh | Method and device for operating a control device, computer program and method for generating the computer program |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10229520A1 (en) | 2002-07-01 | 2004-01-15 | Robert Bosch Gmbh | Controlling vehicle processes, involves copying output parameter of at least one faster task program at start of this program if such an output parameter provided for both faster and slower programs |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100247951B1 (en) * | 1997-04-11 | 2000-03-15 | 윤종용 | Program modification method of PDA |
US6625637B1 (en) * | 1999-12-09 | 2003-09-23 | Koninklijke Philips Electronics N.V. | Method and apparatus for synthesizing communication support based on communication types of application |
WO2002069174A1 (en) * | 2001-02-28 | 2002-09-06 | Fujitsu Limited | Method for executing parallel process, and multi-processor computer |
JP5667024B2 (en) * | 2011-09-28 | 2015-02-12 | 株式会社東芝 | PROGRAM GENERATION DEVICE, PROGRAM GENERATION METHOD, AND PROGRAM |
CN103257869B (en) * | 2012-12-14 | 2016-08-24 | 惠州市亿能电子有限公司 | A kind of ECU program smart download method |
-
2014
- 2014-08-19 DE DE102014216381.1A patent/DE102014216381A1/en active Pending
-
2015
- 2015-08-18 CN CN201510506405.7A patent/CN105373436B/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10229520A1 (en) | 2002-07-01 | 2004-01-15 | Robert Bosch Gmbh | Controlling vehicle processes, involves copying output parameter of at least one faster task program at start of this program if such an output parameter provided for both faster and slower programs |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102017200669A1 (en) | 2017-01-17 | 2018-07-19 | Robert Bosch Gmbh | Method and device for operating a control device, computer program and method for generating the computer program |
WO2018134061A1 (en) | 2017-01-17 | 2018-07-26 | Robert Bosch Gmbh | Method and device for operating a controller, computer program, and method for generating the computer program |
CN110392883A (en) * | 2017-01-17 | 2019-10-29 | 罗伯特·博世有限公司 | For the method and apparatus of operation control device, computer program and method for generating computer program |
JP2020506465A (en) * | 2017-01-17 | 2020-02-27 | ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツングRobert Bosch Gmbh | Method and apparatus for operating a control device, computer program, and method for generating computer program |
US11500679B2 (en) | 2017-01-17 | 2022-11-15 | Robert Bosch Gmbh | Operating a controller in a motor vehicle according to different time slots |
CN110392883B (en) * | 2017-01-17 | 2024-07-09 | 罗伯特·博世有限公司 | Method and device for operating a control device, computer program and method for generating a computer program |
Also Published As
Publication number | Publication date |
---|---|
CN105373436B (en) | 2020-11-06 |
CN105373436A (en) | 2016-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3882989T2 (en) | METHOD AND ARRANGEMENT FOR MANAGING MULTI-LOCK INDICATORS IN A MULTIPROCESSOR DATA PROCESSING SYSTEM. | |
EP0762274B1 (en) | Apparatus and method for real time processing of multiple tasks | |
DE69429279T2 (en) | MULTIPROCESSOR PROGRAMMABLE INTERRUPT CONTROL SYSTEM WITH PROCESSOR-INTEGRATED INTERRUPT CONTROLLERS | |
DE3882977T2 (en) | METHOD AND ARRANGEMENT FOR IMPLEMENTING MULTI-LOCKING INDICATORS IN A MULTIPROCESSOR DATA PROCESSING SYSTEM. | |
DE3883532T2 (en) | NODE FOR OPERATING INTERRUPT REQUEST MESSAGES ON A PENDING BUS. | |
DE102018204859A1 (en) | Dynamic load balancing on network interface cards for optimal system-level performance | |
DE3888353T2 (en) | INTERRUPT NODE FOR PROVIDING INTERRUPTION REQUIREMENTS ON A PENDING BUS. | |
DE68920929T2 (en) | Timer channel with multiple timer reference features. | |
DE3882991T2 (en) | ARRANGEMENT AND METHOD FOR OBTAINING INTERRUPTIONS WITH A "PENDED BUS". | |
DE68919018T2 (en) | Timer channel with match recognition features. | |
DE112015006192T5 (en) | Communication device, communication method and program | |
DE112019001647T5 (en) | Network congestion management | |
WO2017140504A1 (en) | Method and device for operating a controller | |
DE112013000812T5 (en) | Variable acknowledgment rate for reducing bus conflict in the presence of data transmission errors | |
WO2018134061A1 (en) | Method and device for operating a controller, computer program, and method for generating the computer program | |
DE102015108005A1 (en) | Mechanisms and devices for newly configurable interprocessor communications with embedded controller | |
DE102013022564B4 (en) | Maintaining the bandwidth quality of service of a hardware resource via a hardware meter | |
DE102014216381A1 (en) | Control device and operating method for this | |
EP3693856A1 (en) | Computer system and method for transmitting a message in a computer system | |
DE112015007097B4 (en) | Transmission control device, vehicle and transmission control method | |
DE102018123563B4 (en) | Method for inter-core communication in a multi-core processor | |
DE112013006756T5 (en) | Communication, control device and program | |
DE2838887C2 (en) | Data processing system with a circuit for interrupt requests to take over the common bus | |
DE102015213370B4 (en) | DATA PROCESSING DEVICE | |
DE102014215561A1 (en) | MICROCOMPUTER |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed |