WO2007113091A1 - Control device having microcontrollers for simultaneously processing tasks - Google Patents

Control device having microcontrollers for simultaneously processing tasks Download PDF

Info

Publication number
WO2007113091A1
WO2007113091A1 PCT/EP2007/052437 EP2007052437W WO2007113091A1 WO 2007113091 A1 WO2007113091 A1 WO 2007113091A1 EP 2007052437 W EP2007052437 W EP 2007052437W WO 2007113091 A1 WO2007113091 A1 WO 2007113091A1
Authority
WO
WIPO (PCT)
Prior art keywords
microcontroller
task
tasks
control device
vafs
Prior art date
Application number
PCT/EP2007/052437
Other languages
German (de)
French (fr)
Inventor
Uwe Hartmann
Klaus-Peter Mattern
Dirk Ortlinghaus
Bernd Kuehner
Nils Grunwald
Original Assignee
Robert Bosch Gmbh
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 Robert Bosch Gmbh filed Critical Robert Bosch Gmbh
Publication of WO2007113091A1 publication Critical patent/WO2007113091A1/en

Links

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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • the invention relates to a control device, a method for operating a control device, a computer program and a computer program product.
  • VAFS Value-added Function Server
  • AS Algorithm Server
  • VAFS-trained microcontroller Additional relocation of variant coded parameters from the AS to the VASF should reduce the memory requirements of the AS's microcontroller.
  • a main objective is therefore that transfer functions or transfer parameters from the AS to the VAFS have no influence on the functions of a system designed as a controller, for example, and the time behavior of signals for functions do not change.
  • the invention relates to a control device having the features of patent claim 1, a method having the features of patent claim 7, a computer program having the features of patent claim 10 and a computer program product having the features of patent claim 11.
  • the control unit according to the invention has at least one first microcontroller and at least one second microcontroller.
  • the at least one second microcontroller is connected to the at least one first microcontroller for the simultaneous processing of tasks and thus task synchronously, whereby a software rearrangement takes place between the at least one first microcontroller and the at least one second microcontroller for time-shifted tasks.
  • the method according to the invention is provided for operating a control device which has at least one first microcontroller and at least one second microcontroller, wherein the at least one second microcontroller is connected to the at least one first microcontroller for simultaneous processing of tasks and thus in a task-synchronous manner.
  • a software migration is performed between the micro-controllers for time-shifted tasks.
  • the invention further relates to a computer program with program code means in order to carry out all the steps of a method according to the invention when the computer program is executed on a computer or a corresponding computing unit, in particular a control unit according to the invention.
  • the invention also relates to a computer program product with program code means which are stored on a computer-readable data carrier in order to perform all the steps of a method according to the invention when the computer program on a computer or a corresponding computing unit, in particular a control device according to the invention, is executed.
  • the invention provides a concept for the functional transfer or so-called swapping of functions of software, in particular software modules, which can be designed as tasks or processes or tasks with different time periods, between at least two microcontrollers or corresponding arithmetic units.
  • the SWFS concept supports a 20 ms task in the first microcontroller, in particular an AS or algorithm server, and a 40 ms task in the second microcontroller, which is preferably designed here as VAFS or Value Added Function Server.
  • a 20 ms task within the VAFS should be used for functions that run as VAFS tasks in the VAFS concept.
  • the 40 ms task should be used for the functions of the software that can run in the 40 ms task. This corresponds to a migration of the complete 40 ms task of the software.
  • the SWFS concept can use the same communication infrastructure as the VAFS concept. However, unlike the VAFS concept, rearrangement of the 40 ms tasks from the AS to the VAFS has no effect on a time span and / or timing of signals of the functions. Because of this advantageous timing, there is no change in the timing of the 40 ms task with respect to other tasks. Nor does the timing of the functions in the VAFS change as compared to the VAFS concept.
  • all codes of the functions that run in the 40 ms task are assigned to the VAFS.
  • Variables of a task copy which in the present example may be interface variables between the 40 ms task and other tasks, can be transferred from the AS to the second microcontroller designed as a VASF via a so-called SPI (Serial Peripheral Interface) and thus via a serial interface copied back and forth and thus also be relocated.
  • SPI Serial Peripheral Interface
  • VAFSCIF A first variable structure is provided for communication from the AS to the VASF and a second variable structure for communication from the VASF to the AS.
  • Such structures are referred to in this context as data transfer functions.
  • a software execution sequence may be split into 40-ms periods, each referred to as a cycle.
  • 5-ms-tasks (k to k + 7) are performed eight times.
  • 10 ms tasks are executed four times (k to k + 3), accordingly, 20 ms tasks are performed twice (k, k + 1) and the 40 ms tasks are performed only once.
  • Data for a task copy of the 40 ms task is executed by a first task execution of a faster task within each cycle. This means that the data is formed by the first 5 ms task (k), the first 10 ms task (k) and the first 20 ms task (k).
  • the 40 ms task starts, if assigned to the AS.
  • the beginning of a data transfer and thus triggering of the 40 ms task in the VAFS task should take place during the fourth 5 ms task (k + 3). To these At this time, the data transfer of the last VAFS tasks and the first 20 ms task must be completed.
  • an execution of the 40 ms task is started as soon as the data transfer via the SPI is completed by the first microcontroller designed as AS.
  • a task copy routine reads the data from the first 5 ms task, the first 10 ms task and the first 20 ms task of the current cycle (k).
  • the data for the first 5 ms task, the first 10 ms task and the first 20 ms task of the next ASW (or algorithm software) cycle are stored in written a data transfer buffer.
  • each first task of the subsequent cycle may read the associated data at the same time as if the 40 ms task had run on the AS. Thus, there are no time differences.
  • the additions described below are necessary.
  • the 40 ms task in the VAFS runs completely concurrently with a second part of a cycle in the AS. This means that the 40 ms task starts at the beginning of the fourth 5 ms task and must be completed before the first 5 ms task of the next cycle begins. Thus, a 20 ms period remains in the first half of this cycle.
  • data transmission to the VAFS is also started. It only updates data for the functions in the 20 ms VAFS task. Once the data transfer is complete, the 20 ms task is started in the VAFS.
  • the data is transferred back to the AS via the SPI.
  • This sequence must be completed before the fourth 5 ms task begins.
  • the data of the 20 ms task in the VAFS is read and new data is provided for the next 20 ms task in the VAFS. This data is stored in the data transfer buffer along with the task copy data of the 40 ms task.
  • the fourth 5 ms task transfers the data to the VAFS, it transfers the data for the 20 ms task as well as for the 40 ms task. ms task at the same time.
  • the 40 ms task is executed first followed by the 20 ms tasks. At the end of the 20 ms task, both the output data of the 40 ms task and the output data of the 20 ms VAFS task are transmitted back to the AS via the SPI.
  • the present invention provides further computer resources in a further embodiment when a second 40 ms task is installed on the AS. This is phase shifted 20 ms to the first 40 ms ASW task. In this case, the second 40 ms task will be executed before the first 20 ms task in the VAFS so that the following sequence will be executed repetitively every 40 ms:
  • a software version that can be executed on two microcontrollers can be provided with the invention. Accordingly, in the control device or in general a device in which functional transfer of software is implemented, the software for the AS and the VAFS must be coordinated or match each other.
  • the first 5 ms task can read data from the last 20 ms VAFS task and the last 40 ms task.
  • the first 5 ms task can begin data transfer to the VAFS with data for 20 ms VAFS task functions and 40 ms VAFS task functions.
  • the fourth 5 ms task can read data from the last 20 ms VAFS task and the last 40 ms VAFS task.
  • the fourth 5 ms task may begin data transmission to the VAFS with data for functions of the 20 ms VAFS task and the 40 ms task. It should be emphasized that the overlay tion of the functions of the 40 ms task from the AS to the VAFS has no influence on the time response of the signal of the functions.
  • FIG. 1 shows a schematic representation of the time behavior of an embodiment of two microcontrollers when carrying out a first variant of the method according to the invention.
  • Figure 2 shows a schematic representation of the memory space allocation of an embodiment of two microcontrollers within an embodiment of a control device according to the invention when carrying out a second variant of the method according to the invention.
  • FIG. 1 shows a schematic representation of the time behavior of a first microcontroller 2 embodied as an algorithm server (AS) and a second microcontroller 4 designed as a function server with additional values (Value Added Function Server, VASF), which are interconnected via a serial peripheral interface 6 (SPI) ,
  • AS algorithm server
  • VASF Value Added Function Server
  • SPI serial peripheral interface 6
  • the components of FIG. 1 are plotted along a time axis 8, which in this embodiment is subdivided into 5 ms intervals.
  • a current cycle which lasts 40 ms in this exemplary embodiment, different, interconnected software modules are executed in the microcontrollers 2, 4.
  • the software modules interact by transferring task copies and swapping software and / or functions.
  • Such software modules are each represented from left to right and thus executed within the current cycle in succession to tasks that comprise different time periods.
  • these are a first 5 ms task 10, a second 5 ms task 12, a third 5 ms task 14, a fourth 5 ms task 16, a fifth 5 ms task 18 , a sixth 5 ms task 20, a seventh 5 ms task 22 and an eighth 5 ms task 24, a ninth 5 ms task 26 is the first 5 ms task of the next Cycle.
  • a first 10 ms task 28 In addition to the eight 5 ms tasks 10, 12, 14, 16, 18, 20, 22, 24 are shown during the current cycle, here in the second row, a first 10 ms task 28, a second 10 ms task 30, a third 10 ms task 32 and a fourth 10 ms task 34 executed.
  • a fifth 10 ms task 36 shown only partially, is the first 10 ms task 36 of the subsequent cycle.
  • a first 20 ms task 38 and a second 20 ms task 40 of the current cycle In the fourth row a 40 ms task 42 of the current cycle is shown.
  • the current cycle of the first microcontroller 2 includes two VAFSCIF receive buffers 44 and two VASFCIF transmit buffers 46.
  • the second microcontroller 4 comprises a 20 ms VASF task 48, a 20 ms scan during the current cycle. ms VASF task 49 and a 40 ms VASF task 50. A 20 ms VASF task 52 of the subsequent cycle is only partially shown.
  • task copies are transmitted to other software modules. Such transmissions are represented by arrows between the respective software modules.
  • a function transfer between the two microcontrollers 2, 4 takes place via the interface 6.
  • data is transmitted from the first 5 ms task 10 to the 20 ms VASF task 48.
  • the 20 ms VASF task 48 via the interface 6, a function rearrangement to the first VAFSCIF receive buffer 44.
  • the first VASFCIF transmission buffer 46 task copies of the first 5-ms task 10, the first 10-ms Tasks 28 and the first 20 ms task 38 received.
  • Via the interface 6 takes place to the 40 ms VASF task 50, a transfer of data.
  • FIG. 2 shows a schematic representation of a control unit 60 which has a first microcontroller 62 embodied as an algorithm server (AS) and a second microcontroller 64 designed as a function server with additional values (Value Added Function Server, VASF).
  • AS algorithm server
  • VASF Value Added Function Server
  • the read memory 66 of the second microcontroller 64 comprises software for 40 ms tasks "FZR Task_40", with which the internal sector 70 of the read memory 68 40 ms- tasks "vFzrT40x5" 102 and "vFzrT40x20" 104 are provided.
  • a task copy is made from the 5 ms task "vBscT5x40" 86 to a 5 ms task “vBsc5T40c40" 106 in the AS-VASF sector 72, a task copy from the 10 ms task "vHimT10x40" 92 to a 10 ms task “vHimT10x40c40” 108 in the AS-VASF sector 72. Also, a task copy from the 40 ms task "vSifT20x40" 98 to a 40 ms task "vSifT20x40c40" 110 in the AS- VASF sector 72 is provided.
  • the AS-VASF sector 72 of the first microcontroller transmits data shown by an arrow 112 in the AS-VASF sector 72 of the second microcontroller 64 performed. It is provided that only data of the tasks are read from the AS-VASF sector 72 of the second microcontroller 64 (dashed double-headed arrow).
  • task copies are made for the 5 ms task "vBsc5T40c40" 106, the 10 ms task “vHimT10x40c40” 108 and the 40 ms task “vSifT20x40c40" 110 from the AS-VASF sector 72 into the internal sector 70 of the second microcontroller 64.
  • the VASF AS sector of the first microcontroller 62 is provided for reading the tasks stored therein (dashed double-headed arrow). For the 40 ms tasks "vFzrT40x5c5" 114 and “vFzrT40x20c20" 116, task copies are provided in the internal sector of the first microcontroller 62.

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

The control device according to the invention has at least one first microcontroller (2) and at least one second microcontroller (4). In this case, the at least one second microcontroller (4) is connected to the at least one first microcontroller (2) in order to simultaneously process tasks and is thus connected in a task-synchronous manner, wherein software is swapped between the at least one first microcontroller (2) and the at least one second microcontroller (4) for temporally staggered tasks.

Description

Beschreibungdescription
Titeltitle
STEUERGERÄT MIT MIKROCONTROLLERN ZUR ZEITGLEICHEN BEARBEITUNG VON TASKSCONTROL UNIT WITH MICROCONTROLLERS FOR TEMPORARILY TASKS
Die Erfindung betrifft ein Steuergerät, ein Verfahren zum Betreiben eines Steuergeräts, ein Computerprogramm und ein Computerprogrammprodukt.The invention relates to a control device, a method for operating a control device, a computer program and a computer program product.
Stand der TechnikState of the art
Die steigenden Anforderungen an die Funktionalität von hochwertigen Systemen für elektronische Stabilitätsprogramme (ESP) kann mit derzeit verfügbaren Mikrocontrol- lern nicht erfüllt werden. Die derzeit größte und leistungsfähigste Kontrolleinrichtung bietet lediglich einen Lesespeicher (ROM) mit 768 kB. Es ist jedoch ein Projekt mit einem Steuergerät für ein Stabilitätsprogramm vorgesehen, für das eine Speicherkapazi- tat von bis zu 1206 kB erforderlich ist. Eine bekannte Kontrolleinrichtung bietet lediglich eine Speicherkapazität von 1024 kB und wird erst in Zukunft verfügbar sein. Demnach ist es erforderlich, Konzepte mit zwei Mikrocontrollern zu entwickeln, die die Erfordernisse des Lesespeichers für das Projekt abdecken.The increasing demands on the functionality of high-quality systems for electronic stability programs (ESP) can not be fulfilled with currently available microcontrollers. The largest and most powerful control device currently offers only 768 KB read-only memory (ROM). However, there is a project with a stability program controller that will require a storage capacity of up to 1206 kB. A known control device offers only a storage capacity of 1024 kB and will be available in the future. Thus, it is necessary to develop concepts with two microcontrollers covering the read-write requirements for the project.
Zur Verknüpfung von Mikrocontrollern ist das sogenannte VAFS-Konzept bekannt, wobei VAFS für "Value Added Function Server", einem werterweiterten Funktionsserver, steht. Bei Durchführung des VASF-Konzepts ist bislang bevorzugt eine Umlagerung bzw. ein sog. Swapping von Funktionen in dem 20-ms-Task vorgesehen. Eine Umlagerung bereits bestehender oder neuer Funktionen zu dem VAFS Konzept sollte eine Vorgabe für eine Verteilung von Software zwischen einem als AS (Algorithmen Server) und einem als VAFS ausgebildeten Mikrocontroller sein. Zusätzliche Verlagerung von variantenkodierten Parametern von dem AS zu dem VASF sollte den Speicherplatzbedarf des Mikrocontrollers des AS verringern. Ein Hauptziel ist es demnach, dass Umlagerungsfunktionen oder Umlagerungsparame- ter von dem AS zu dem VAFS keinen Einfluss auf Funktionen eines bspw. als Steuergerät ausgebildeten Systems haben und Zeitverhalten von Signalen für Funktionen sich nicht verändern.For linking microcontrollers, the so-called VAFS concept is known, whereby VAFS stands for "Value Added Function Server", a value-added functional server. When implementing the VASF concept, it has hitherto been preferred to provide a swapping of functions in the 20 ms task. A rearrangement of existing or new functions to the VAFS concept should be a requirement for a distribution of software between an AS (Algorithm Server) and a VAFS-trained microcontroller. Additional relocation of variant coded parameters from the AS to the VASF should reduce the memory requirements of the AS's microcontroller. A main objective is therefore that transfer functions or transfer parameters from the AS to the VAFS have no influence on the functions of a system designed as a controller, for example, and the time behavior of signals for functions do not change.
Offenbarung der ErfindungDisclosure of the invention
Die Erfindung betrifft ein Steuergerät mit den Merkmalen des Patentanspruchs 1, ein Verfahren mit den Merkmalen des Patenanspruchs 7, ein Computerprogramm mit den Merkmalen des Patentanspruchs 10 und ein Computerprogrammprodukt mit den Merkmalen des Patentanspruchs 11.The invention relates to a control device having the features of patent claim 1, a method having the features of patent claim 7, a computer program having the features of patent claim 10 and a computer program product having the features of patent claim 11.
Das erfindungsgemäße Steuergerät weist mindestens einen ersten Mikrocontroller und mindestens einen zweiten Mikrocontroller auf. Dabei ist der mindestens eine zweite Mikrocontroller an den mindestens einen ersten Mikrocontroller zur zeitgleichen Bearbeitung von Tasks und somit tasksynchron angebunden, wobei zwischen dem mindestens einen ersten Mikrocontroller und dem mindestens einen zweiten Mikrocontroller für zeitversetzte Tasks eine Softwareumlagerung erfolgt.The control unit according to the invention has at least one first microcontroller and at least one second microcontroller. In this case, the at least one second microcontroller is connected to the at least one first microcontroller for the simultaneous processing of tasks and thus task synchronously, whereby a software rearrangement takes place between the at least one first microcontroller and the at least one second microcontroller for time-shifted tasks.
Das erfindungsgemäße Verfahren ist zum Betreiben eines Steuergeräts, das mindestens einen ersten Mikrocontroller und mindestens einen zweiten Mikrocontroller aufweist, vorgesehen, wobei der mindestens eine zweite Mikrocontroller an den mindestens einen ersten Mikrocontroller zur zeitgleichen Bearbeitung von Tasks und somit tasksynchron angebunden. Bei Ausführung des Verfahrens wird zwischen den Mikro- Controllern für zeitversetzte Tasks eine Softwareumlagerung durchgeführt.The method according to the invention is provided for operating a control device which has at least one first microcontroller and at least one second microcontroller, wherein the at least one second microcontroller is connected to the at least one first microcontroller for simultaneous processing of tasks and thus in a task-synchronous manner. When performing the procedure, a software migration is performed between the micro-controllers for time-shifted tasks.
Die Erfindung betrifft des weiteren ein Computerprogramm mit Programmcodemitteln, um alle Schritte eines erfindungsgemäßen Verfahrens durchzuführen, wenn das Computerprogramm auf einem Computer oder einer entsprechenden Recheneinheit, insbe- sondere einem erfindungsgemäßen Steuergerät, ausgeführt wird.The invention further relates to a computer program with program code means in order to carry out all the steps of a method according to the invention when the computer program is executed on a computer or a corresponding computing unit, in particular a control unit according to the invention.
Die Erfindung betrifft außerdem ein Computerprogrammprodukt mit Programmcodemitteln, die auf einem computerlesbaren Datenträger gespeichert sind, um alle Schritte eines erfindungsgemäßen Verfahrens durchzuführen, wenn das Computerprogramm auf einem Computer oder einer entsprechenden Recheneinheit, insbesondere einem erfindungsgemäßen Steuergerät, ausgeführt wird.The invention also relates to a computer program product with program code means which are stored on a computer-readable data carrier in order to perform all the steps of a method according to the invention when the computer program on a computer or a corresponding computing unit, in particular a control device according to the invention, is executed.
Mit der Erfindung wird ein Konzept zur Funktionsumlagerung bzw. einem sog. Swap- ping von Funktionen von Software, insbesondere Softwaremodulen, die als Tasks bzw. Prozesse oder Aufgaben mit unterschiedlichen Zeitspannen ausgebildet sein können, zwischen mindestens zwei Mikrocontrollern oder entsprechenden Recheneinheiten bereitgestellt.The invention provides a concept for the functional transfer or so-called swapping of functions of software, in particular software modules, which can be designed as tasks or processes or tasks with different time periods, between at least two microcontrollers or corresponding arithmetic units.
Mit diesem Software-Funktionsumlagerungs-Konzept, im nachfolgenden kurz SWFS- Konzept, kann ein Nachteil des VAFS- Konzepts, nämlich eine Verzögerung um einen Taskzyklus, vermieden werden. Das SWFS-Konzept unterstützt einen 20-ms-Task im ersten Mikrocontroller, insbesondere einem AS bzw. Algorithmenserver, und einen 40- ms-Task in dem zweiten Mikrocontroller, der hier bevorzugt als VAFS bzw. Value Ad- ded Function Server ausgebildet ist. Dabei soll ein 20-ms-Task innerhalb des VAFS für Funktionen benutzt werden, die als VAFS-Tasks in dem VAFS-Konzept ablaufen. Der 40-ms-Task soll für die Funktionen der Software benutzt werden, die in dem 40-ms- Task laufen können. Dies entspricht einer Umlagerung des kompletten 40-ms-Tasks der Software.With this software function transfer concept, in the following short SWFS concept, a disadvantage of the VAFS concept, namely a delay by one task cycle, can be avoided. The SWFS concept supports a 20 ms task in the first microcontroller, in particular an AS or algorithm server, and a 40 ms task in the second microcontroller, which is preferably designed here as VAFS or Value Added Function Server. A 20 ms task within the VAFS should be used for functions that run as VAFS tasks in the VAFS concept. The 40 ms task should be used for the functions of the software that can run in the 40 ms task. This corresponds to a migration of the complete 40 ms task of the software.
Das SWFS-Konzept kann dieselbe Kommunikationsinfrastruktur wie das VAFS- Konzept nutzen. Im Unterschied zu dem VAFS-Konzept hat eine Umlagerung der 40- ms-Tasks von dem AS zu dem VAFS jedoch keinerlei Auswirkung auf eine Zeitspanne und/oder ein Zeitverhalten von Signalen der Funktionen. Aufgrund dieses vorteilhaften Zeitverhaltens erfolgt keine Veränderung des Zeitverhaltens des 40-ms-Tasks in Bezug auf andere Tasks. Ebenso wenig verändert sich das Zeitverhalten der Funktionen im VAFS im Vergleich zu dem VAFS-Konzept.The SWFS concept can use the same communication infrastructure as the VAFS concept. However, unlike the VAFS concept, rearrangement of the 40 ms tasks from the AS to the VAFS has no effect on a time span and / or timing of signals of the functions. Because of this advantageous timing, there is no change in the timing of the 40 ms task with respect to other tasks. Nor does the timing of the functions in the VAFS change as compared to the VAFS concept.
Die Umlagerung der Funktionen beeinflusst lediglich Software, die unabhängig von der Hardware ist und eindeutige Schnittstellen zu anderen Softwareteilen innerhalb anderer Tasks aufweist. Innerhalb von ESP-Steuergeräten bzw. -Systemen (ESP: elektronisches Stabilitätsprogramm für Fahrzeuge) erlaubt dies eine einfache Umlagerungen sämtlicher Softwarefunktionen der 40-ms-Tasks ohne Änderung der Zeitspannen und/oder Zeiteinteilungen. - A -The rearrangement of the functions only affects software that is independent of the hardware and has clear interfaces to other software parts within other tasks. Within ESP ECUs (ESP: Electronic Stability Program for Vehicles), this allows a simple relocation of all software functions of the 40 ms tasks without changing the time periods and / or time divisions. - A -
In Ausgestaltung werden sämtliche Codes der Funktionen, die in dem 40-ms-Task ablaufen, dem VAFS zugeordnet. Variablen einer Taskkopie, bei denen es sich im vorliegenden Beispiel um Schnittstellenvariablen zwischen dem 40-ms-Task und anderen Tasks handeln kann, können von dem AS zu dem als VASF ausgebildeten zweiten Mikrocontroller über eine sog. SPI (Serial Peripheral Interface) und somit über eine serielle Schnittstelle hin und her kopiert und somit auch umgelagert werden. Die bereits gebräuchliche VAS F- Kommunikationsschnittstellensoftware (VAFSCIF) ist zu derartigen Kopien fähig, falls sämtliche Daten einer Taskkopie des 40-ms-Tasks in einem Zyklus bzw. Arbeitstakt verfügbar sind. Außerdem ist eine erste veränderliche Struktur für eine Kommunikation von dem AS zu dem VASF und eine zweite veränderliche Struktur zur Kommunikation von dem VASF zu dem AS vorgesehen. Derartige Strukturen werden in diesem Zusammenhang als Datenübertragungsfunktionen bezeichnet.In an embodiment, all codes of the functions that run in the 40 ms task are assigned to the VAFS. Variables of a task copy, which in the present example may be interface variables between the 40 ms task and other tasks, can be transferred from the AS to the second microcontroller designed as a VASF via a so-called SPI (Serial Peripheral Interface) and thus via a serial interface copied back and forth and thus also be relocated. The VAS F communications interface software (VAFSCIF) already in use is capable of such copies if all the data of a task copy of the 40 ms task is available in one cycle. In addition, a first variable structure is provided for communication from the AS to the VASF and a second variable structure for communication from the VASF to the AS. Such structures are referred to in this context as data transfer functions.
Eine Software-Ausführungssequenz kann in 40-ms-Zeitabschnitte, die jeweils als ein Zyklus bezeichnet werden, aufgeteilt werden. In jedem Zyklus werden achtmal 5-ms- Tasks (k bis k+7) durchgeführt. 10-ms-Tasks werden viermal (k bis k+3) durchgeführt, entsprechend werden 20-ms-Tasks zweimal (k, k+1) und die 40-ms-Tasks nur einmal durchgeführt. Daten für eine Taskkopie des 40-ms-Tasks werden von einer ersten Taskausführung eines schnelleren Tasks innerhalb jedes Zyklus ausgeführt. Dies bedeutet, dass die Daten von dem ersten 5-ms-Task (k), dem ersten 10-ms-Task (k) und dem ersten 20-ms-Task (k) gebildet werden. Am Ende des ersten 20-ms-Tasks beginnt der 40-ms-Task, falls dieser dem AS zugeordnet ist. Hierbei handelt es sich um den frühesten Zeitpunkt, zu dem eine Übertragung von Daten zu dem VAFS begonnen wer- den kann. In Abhängigkeit der Ausführungszeit der 5-ms, 10-ms-und 20-ms-Tasks kann dies aber auch sehr früh innerhalb des Zyklus geschehen, so dass es denkbar ist, dass ein vorhergehender 20-ms-Task innerhalb des VAFS noch nicht abgeschlossen ist. In diesem Fall steht die SPI noch nicht für eine Datenübertragung zur Verfügung. Der letzte Zeitpunkt, zu dem der erste 20-ms-Task beendet sein muss, ist der Beginn des vier- ten 5-ms-Tasks (k+3), sobald die Taskkopiedaten des ersten 20-ms-Tasks zu dem 40- ms-Task kopiert sind.A software execution sequence may be split into 40-ms periods, each referred to as a cycle. In each cycle 5-ms-tasks (k to k + 7) are performed eight times. 10 ms tasks are executed four times (k to k + 3), accordingly, 20 ms tasks are performed twice (k, k + 1) and the 40 ms tasks are performed only once. Data for a task copy of the 40 ms task is executed by a first task execution of a faster task within each cycle. This means that the data is formed by the first 5 ms task (k), the first 10 ms task (k) and the first 20 ms task (k). At the end of the first 20 ms task, the 40 ms task starts, if assigned to the AS. This is the earliest time that transmission of data to the VAFS can begin. However, depending on the execution time of the 5 ms, 10 ms and 20 ms tasks, this can also happen very early in the cycle, so it is conceivable that a previous 20 ms task within the VAFS is not yet completed is. In this case, the SPI is not yet available for data transfer. The last time the first 20 ms task must be completed is the start of the fourth 5 ms task (k + 3) as soon as the task copy data of the first 20 ms task reaches the 40 ms Task are copied.
Demnach sollte der Beginn eines Datentransfers und somit ein Triggern des 40-ms- Tasks in dem VAFS-Task während des vierten 5-ms-Tasks (k+3) stattfinden. Zu die- sem Zeitpunkt muss die Datenübertragung der letzten VAFS-Tasks sowie des ersten 20-ms-Tasks beendet sein.Thus, the beginning of a data transfer and thus triggering of the 40 ms task in the VAFS task should take place during the fourth 5 ms task (k + 3). To these At this time, the data transfer of the last VAFS tasks and the first 20 ms task must be completed.
Im VAFS wird eine Ausführung des 40-ms-Tasks begonnen, sobald die Datenübertra- gung über die SPI von dem als AS ausgebildeten ersten Mikrocontroller abgeschlossen ist. Eine Routine zur Taskkopie liest die Daten von dem ersten 5-ms-Task, dem ersten 10-ms-Task und dem ersten 20-ms-Task des aktuellen Zyklus (k). Sobald der 40-ms- Task abgeschlossen ist, werden die Daten für den ersten 5-ms-Task, den ersten 10- ms-Task und den ersten 20-ms-Task des nächstfolgenden ASW- (bzw. Algorithmen- Software) Zyklus in einen Datenübertragungspuffer geschrieben. Nachdem die Daten über die SPI zu dem AS übertragen worden sind, kann jeder erste Task des nachfolgenden Zyklus die zugeordneten Daten zu demselben Zeitpunkt lesen, als ob der 40- ms-Task auf dem AS gelaufen wäre. Somit ergeben sich keine Zeitunterschiede.In the VAFS, an execution of the 40 ms task is started as soon as the data transfer via the SPI is completed by the first microcontroller designed as AS. A task copy routine reads the data from the first 5 ms task, the first 10 ms task and the first 20 ms task of the current cycle (k). As soon as the 40 ms task is completed, the data for the first 5 ms task, the first 10 ms task and the first 20 ms task of the next ASW (or algorithm software) cycle are stored in written a data transfer buffer. After the data has been transmitted to the AS via the SPI, each first task of the subsequent cycle may read the associated data at the same time as if the 40 ms task had run on the AS. Thus, there are no time differences.
Um das bestehende VAFS-Konzept in die vorliegende Erfindung mit einzubeziehen, was einen 20-ms-Task im VAFS für OEM-Funktionen, also Funktionen eines Herstellers für Originalausstattungen, erfordert, sind die nachfolgend beschriebenen Ergänzungen notwendig. Der 40-ms-Task in dem VAFS läuft vollständig zeitgleich bzw. parallel zu einem zweiten Teil eines Zyklus in dem AS ab. Dies bedeutet, dass der 40-ms- Task zu Beginn des vierten 5-ms-Tasks startet und beendet sein muss, bevor der erste 5-ms-Task des nächsten Zyklus beginnt. Somit verbleibt ein 20-ms-Zeitabschnitt in der ersten Hälfte dieses Zyklus. Um diesen 20-ms-Zeitabschnitt für den 20-ms-Task in dem VAFS zu nutzen, insbesondere in dem ersten 5-ms-Task, wird ebenfalls die Datenübertragung zu dem VAFS begonnen. Hierbei werden lediglich Daten für die Funktionen in dem 20-ms-Task des VAFS aktualisiert. Sobald die Datenübertragung abgeschlossen ist, wird in dem VAFS der 20-ms-Task gestartet.In order to incorporate the existing VAFS concept into the present invention, which requires a 20 ms task in the VAFS for OEM functions, ie functions of a manufacturer of original equipment, the additions described below are necessary. The 40 ms task in the VAFS runs completely concurrently with a second part of a cycle in the AS. This means that the 40 ms task starts at the beginning of the fourth 5 ms task and must be completed before the first 5 ms task of the next cycle begins. Thus, a 20 ms period remains in the first half of this cycle. In order to use this 20 ms period for the 20 ms task in the VAFS, especially in the first 5 ms task, data transmission to the VAFS is also started. It only updates data for the functions in the 20 ms VAFS task. Once the data transfer is complete, the 20 ms task is started in the VAFS.
Sobald diese beendet ist, werden die Daten über die SPI zurück zu dem AS übertragen. Diese Sequenz muss vollständig abgeschlossen sein, bevor der vierte 5-ms-Task beginnt. In dem vierten 5-ms-Task werden die Daten des 20-ms-Tasks in dem VAFS gelesen und neue Daten für den nächsten 20-ms-Task in dem VAFS bereitgestellt. Diese Daten werden gemeinsam mit den Taskkopiedaten des 40-ms-Tasks in dem Datenübertragungspuffer gespeichert. Wenn der vierte 5-ms-Task die Daten zu dem VAFS überträgt, überträgt dieser die Daten für den 20-ms-Task ebenso wie für den 40- ms-Task zum selben Zeitpunkt. Auf Seiten des VAFS wird zuerst der 40-ms-Task und danach der 20-ms-Tasks ausgeführt. Am Ende des 20-ms-Tasks werden sowohl die Ausgabedaten des 40-ms-Tasks als auch die Ausgabedaten des 20-ms-VAFS-Tasks über die SPI zurück zu dem AS übertragen.Once completed, the data is transferred back to the AS via the SPI. This sequence must be completed before the fourth 5 ms task begins. In the fourth 5 ms task, the data of the 20 ms task in the VAFS is read and new data is provided for the next 20 ms task in the VAFS. This data is stored in the data transfer buffer along with the task copy data of the 40 ms task. When the fourth 5 ms task transfers the data to the VAFS, it transfers the data for the 20 ms task as well as for the 40 ms task. ms task at the same time. On the VAFS side, the 40 ms task is executed first followed by the 20 ms tasks. At the end of the 20 ms task, both the output data of the 40 ms task and the output data of the 20 ms VAFS task are transmitted back to the AS via the SPI.
Innerhalb des VAFS wird demnach pro Zyklus nachfolgende Sequenz alle sich 40 Sekunden wiederholend ausgeführt:Within the VAFS, the following sequence is then executed repetitively every 40 seconds per cycle:
20-ms-VAFS Task => ausgelagerter 40-ms-Task des AS => 20-ms-VAFS-Task.20 ms VAFS task => paged 40 ms task of the AS => 20 ms VAFS task.
Die vorliegende Erfindung bietet in weiterer Ausgestaltung weitere Computerressourcen, wenn ein zweiter 40-ms-Task auf dem AS installiert wird. Dieser wird um 20 ms zu dem ersten 40-ms-Task des ASW phasenverschoben. In diesem Fall wird der zweite 40-ms-Task vor dem ersten 20-ms-Task in dem VAFS ausgeführt, so dass die nachfol- gende Sequenz sich alle 40 ms wiederholend ausgeführt wird:The present invention provides further computer resources in a further embodiment when a second 40 ms task is installed on the AS. This is phase shifted 20 ms to the first 40 ms ASW task. In this case, the second 40 ms task will be executed before the first 20 ms task in the VAFS so that the following sequence will be executed repetitively every 40 ms:
40-ms-VAFS-Task => 20-ms-VAFS-Task => ausgelagerter 40-ms-Task des AS => 20- ms-VAFS-Task.40 ms VAFS task => 20 ms VAFS task => 40 ms paged 40 ms task of the AS => 20 ms VAFS task.
In einer Einrichtung bzw. einem System mit Funktionsumlagerung für Software kann mit der Erfindung eine Softwareversion bereitgestellt werden, die auf zwei Mikrocontrollern ausführbar ist. Demnach müssen in dem Steuergerät oder allgemein einer Einrichtung, in der Funktionsumlagerung von Software realisiert wird, die Software für den AS und den VAFS aufeinander abgestimmt sein bzw. zueinander passen.In a device or a system with software function redistribution, a software version that can be executed on two microcontrollers can be provided with the invention. Accordingly, in the control device or in general a device in which functional transfer of software is implemented, the software for the AS and the VAFS must be coordinated or match each other.
In weiterer Ausgestaltung können in jedem Software-Zyklus verschieden Aktionen ausgeführt werden. So kann der erste 5-ms-Task Daten des letzten 20-ms-VAFS-Tasks und des letzten 40-ms-Tasks lesen. Außerdem kann der erste 5-ms-Task eine Datenübertragung zu dem VAFS mit Daten für Funktionen des 20-ms-VAFS-Tasks und Funk- tionen des 40-ms-VAFS-Tasks beginnen. Der vierte 5-ms-Task kann Daten des letzten 20-ms-VAFS-Tasks und des letzten 40-ms-VAFS-Tasks lesen. Des weiteren kann der vierte 5-ms-Task eine Datenübertragung zu dem VAFS mit Daten für Funktionen des 20-ms-VAFS Tasks und des 40-ms-Tasks beginnen. Es sei betont, dass die Überlage- rung der Funktionen des 40-ms-Tasks von dem AS zu dem VAFS keinen Einfluss auf das Zeitverhalten des Signals der Funktionen hat.In a further embodiment, different actions can be performed in each software cycle. For example, the first 5 ms task can read data from the last 20 ms VAFS task and the last 40 ms task. In addition, the first 5 ms task can begin data transfer to the VAFS with data for 20 ms VAFS task functions and 40 ms VAFS task functions. The fourth 5 ms task can read data from the last 20 ms VAFS task and the last 40 ms VAFS task. Furthermore, the fourth 5 ms task may begin data transmission to the VAFS with data for functions of the 20 ms VAFS task and the 40 ms task. It should be emphasized that the overlay tion of the functions of the 40 ms task from the AS to the VAFS has no influence on the time response of the signal of the functions.
Kurze Beschreibung der ZeichnungenBrief description of the drawings
Figur 1 zeigt in schematischer Darstellung das Zeitverhalten einer Ausführungsform von zwei Mikrocontrollern bei Durchführung einer ersten Variante des erfindungsgemäßen Verfahrens.FIG. 1 shows a schematic representation of the time behavior of an embodiment of two microcontrollers when carrying out a first variant of the method according to the invention.
Figur 2 zeigt in schematischer Darstellung die Speicherplatzaufteilung einer Ausführungsform von zwei Mikrocontrollern innerhalb einer Ausführungsform eines erfindungsgemäßen Steuergeräts bei Durchführung einer zweiten Variante des erfindungsgemäßen Verfahrens.Figure 2 shows a schematic representation of the memory space allocation of an embodiment of two microcontrollers within an embodiment of a control device according to the invention when carrying out a second variant of the method according to the invention.
Ausführungsformen der ErfindungEmbodiments of the invention
Figur 1 zeigt in schematischer Darstellung das Zeitverhalten eines ersten als Algorithmenserver (AS) ausgebildeten Mikrocontroller 2 und einen zweiten als Funktionsserver mit Zusatzwerten (Value Added Funktion Server, VASF) ausgebildeten Mikrocontroller 4, die über einer serielle periphere Schnittstelle 6 (SPI) miteinander verbunden sind. Die Komponenten aus Figur 1 sind entlang einer Zeitachse 8, die in diesem Ausführungsbeispiel in 5-ms-lntervalle unterteilt ist, aufgetragen. Innerhalb eines aktuellen Zyklus, der in diesem Ausführungsbeispiel 40 ms dauert, werden in den Mikrocontrollern 2, 4 unterschiedliche, untereinander verbundene Softwaremodule ausgeführt. Da- bei wirken die Softwaremodule durch Übergabe von Taskkopien und Umlagerung (Swapping) von Software und/oder Funktionen zusammen.FIG. 1 shows a schematic representation of the time behavior of a first microcontroller 2 embodied as an algorithm server (AS) and a second microcontroller 4 designed as a function server with additional values (Value Added Function Server, VASF), which are interconnected via a serial peripheral interface 6 (SPI) , The components of FIG. 1 are plotted along a time axis 8, which in this embodiment is subdivided into 5 ms intervals. Within a current cycle, which lasts 40 ms in this exemplary embodiment, different, interconnected software modules are executed in the microcontrollers 2, 4. The software modules interact by transferring task copies and swapping software and / or functions.
Bei derartigen Softwaremodulen handelt es sich, jeweils von links nach rechts dargestellt und somit innerhalb des aktuellen Zyklus nacheinender ausgeführt, um Tasks, die unterschiedliche Zeitspannen umfassen. In einer ersten Reihe sind das ein erster 5-ms- Task 10, ein zweiter 5-ms-Task 12, ein dritter 5-ms-Task 14, ein vierter 5-ms-Task 16, ein fünfter 5-ms-Task 18, ein sechster 5-ms-Task 20, ein siebter 5-ms-Task 22 und ein achter 5-ms-Task 24, bei einem neunten 5-ms-Task 26 handelt es sich um den ersten 5-ms-Task des nächsten Zyklus. Neben den acht genannten 5-ms-Tasks 10, 12, 14, 16, 18, 20, 22, 24 werden während des aktuellen Zyklus, hier in der zweiten Reihe dargestellt, ein erster 10-ms-Task 28, ein zweiter 10-ms-Task 30, ein dritter 10-ms-Task 32 und ein vierter 10-ms-Task 34 ausgeführt. Bei einem nur teilweise dargestellten fünften 10-ms-Task 36 handelt es ich um den ersten 10-ms-Task 36 des nachfolgen- den Zyklus. In der dritten Reihe des ersten Mikrocontrollers 2 sind ein erster 20-ms- Task 38 und ein zweiter 20-ms-Task 40 des aktuellen Zyklus dargestellt, in der vierten Reihe ist ein 40-ms-Task 42 des aktuellen Zyklus dargestellt. In der fünften Reihe um- fasst der aktuelle Zyklus des ersten Mikrocontrollers 2 zwei VAFSCIF Empfangs- Puffer 44 und zwei VASFCIF Übertragungs-Puffer 46. Der zweite Mikrocontroller 4 umfasst während des aktuellen Zyklus einen 20-ms-VASF-Task 48, einen 20-ms-VASF-Task 49 und einen 40-ms-VASF-Task 50. Ein 20-ms-VASF-Task 52 des nachfolgenden Zyklus ist nur teilweise dargestellt.Such software modules are each represented from left to right and thus executed within the current cycle in succession to tasks that comprise different time periods. In a first row, these are a first 5 ms task 10, a second 5 ms task 12, a third 5 ms task 14, a fourth 5 ms task 16, a fifth 5 ms task 18 , a sixth 5 ms task 20, a seventh 5 ms task 22 and an eighth 5 ms task 24, a ninth 5 ms task 26 is the first 5 ms task of the next Cycle. In addition to the eight 5 ms tasks 10, 12, 14, 16, 18, 20, 22, 24 are shown during the current cycle, here in the second row, a first 10 ms task 28, a second 10 ms task 30, a third 10 ms task 32 and a fourth 10 ms task 34 executed. A fifth 10 ms task 36, shown only partially, is the first 10 ms task 36 of the subsequent cycle. In the third row of the first microcontroller 2, a first 20 ms task 38 and a second 20 ms task 40 of the current cycle are shown, in the fourth row a 40 ms task 42 of the current cycle is shown. In the fifth row, the current cycle of the first microcontroller 2 includes two VAFSCIF receive buffers 44 and two VASFCIF transmit buffers 46. The second microcontroller 4 comprises a 20 ms VASF task 48, a 20 ms scan during the current cycle. ms VASF task 49 and a 40 ms VASF task 50. A 20 ms VASF task 52 of the subsequent cycle is only partially shown.
Es ist vorgesehen, dass ausgehend von einzelnen Tasks Taskkopien zu anderen Soft- waremodulen übermittelt werden. Derartige Übermittlungen sind durch Pfeile zwischen den jeweiligen Softwaremodulen dargestellt.It is envisaged that, starting from individual tasks, task copies are transmitted to other software modules. Such transmissions are represented by arrows between the respective software modules.
Eine Funktionsumlagerung zwischen den beiden Mikrocontrollern 2, 4 erfolgt über die Schnittstelle 6. Dabei werden Daten von dem ersten 5-ms-Task 10 zu dem 20-ms- VASF-Task 48 übertragen. Von dem 20-ms-VASF-Task 48 erfolgt über die Schnittstelle 6 eine Funktionsumlagerung zu dem ersten VAFSCIF Empfangs- Puffer 44. In dem ersten VASFCIF Übertragungs-Puffer 46 werden Taskkopien des ersten 5-ms-Tasks 10, des ersten 10-ms-Tasks 28 und des ersten 20-ms-Tasks 38 empfangen. Über die Schnittstelle 6 erfolgt zu dem 40-ms-VASF-Task 50 eine Übertragung der Daten. Von diesem 40-ms-VASF-Task 50 erfolgt über die Schnittstelle 6 zu dem zweiten VAFSCIF Empfangs- Puffer 44 eine Übertragung der Daten.A function transfer between the two microcontrollers 2, 4 takes place via the interface 6. In this case, data is transmitted from the first 5 ms task 10 to the 20 ms VASF task 48. From the 20 ms VASF task 48 via the interface 6, a function rearrangement to the first VAFSCIF receive buffer 44. In the first VASFCIF transmission buffer 46 task copies of the first 5-ms task 10, the first 10-ms Tasks 28 and the first 20 ms task 38 received. Via the interface 6 takes place to the 40 ms VASF task 50, a transfer of data. From this 40 ms VASF task 50 via the interface 6 to the second VAFSCIF receive buffer 44, a transfer of the data.
Figur 2 beschreibt in schematischer Darstellung ein Steuergerät 60, das einen ersten als Algorithmenserver (AS) ausgebildeten Mikrocontroller 62 und einen zweiten als Funktionsserver mit Zusatzwerten (Value Added Funktion Server, VASF) ausgebildeten Mikrocontroller 64 aufweist. Beide Mikrocontroller 62, 64 weisen jeweils folgende in Figur 2 tabellarisch strukturierte Module auf: einen Lesespeicher (ROM) 66 (erste Spalte) und einen Arbeitsspeicher (RAM) 68, der jeweils in einen internen Sektor 70 (zweite Spalte), einen AS-VASF Sektor 72 (dritte Spalte) zur Umlagerung von Daten von dem ersten Mikrocontroller 62 zu dem zweiten Mikrocontroller 64 und einen VASF-AS Sektor 74 (vierte Spalte) zur Umlagerung von Daten von dem zweiten Mikrocontroller 64 zu dem ersten Mikrocontroller 62 aufweist.FIG. 2 shows a schematic representation of a control unit 60 which has a first microcontroller 62 embodied as an algorithm server (AS) and a second microcontroller 64 designed as a function server with additional values (Value Added Function Server, VASF). Both microcontrollers 62, 64 each have the following in Figure 2 tabular structured modules: a read memory (ROM) 66 (first column) and a random access memory (RAM) 68, each in an internal sector 70 (second column), an AS-VASF Sector 72 (third column) for relocating data from the first microcontroller 62 to the second microcontroller 64 and a VASF-AS sector 74 (fourth column) for the rearrangement of data from the second microcontroller 64 to the first microcontroller 62.
In dem Lesespeicher 66 des ersten Mikrocontrollers 62 ist Software für 5-ms-Tasks "BSC TASK_5" 76, Software für 10-ms-Tasks "HIM TASK_10" 78 und Software für 20- ms-Tasks "SIF TASK 20" 80 abgelegt. Es ist vorgesehen, dass bei Betrieb des ersten Mikrocontrollers 62 aus der Software "BSC TASK_5" 76 für den internen Sektor 70 des Arbeitsspeichers 70 5-ms-Tasks "vBscTδ" 82, "vBscT5x20" 84 und "vBscT5x40" 86 bereitgestellt werden. Außerdem werden dem internen Sektor 70 aus der SoftwareSoftware for 5 ms tasks "BSC TASK_5" 76, software for 10 ms tasks "HIM TASK_10" 78 and software for 20 ms tasks "SIF TASK 20" 80 are stored in the read memory 66 of the first microcontroller 62. It is contemplated that upon operation of the first microcontroller 62 from the software "BSC TASK_5" 76 for the internal sector 70 of the random access memory 70, 5 ms tasks "vBscTδ" 82, "vBscT5x20" 84 and "vBscT5x40" 86 are provided. In addition, the internal sector 70 will be out of software
"HIM TASK_10" 78 10-ms-Tasks "vHimTlOxδ" 88, "vHimTIO" 90 und MvHiml0x40" 92 bereitgestellt. Aus der Software für 20-ms-Tasks "SIF TASK_20" 80 werden 20-ms- Tasks "vSifT20x5" 94, "vSifT20x20" 96 und "vSifT20x40" 98 bereitgestellt."HIM TASK_10" 78 provided 10-ms tasks "vHimTlOxδ" 88, "vHimTIO" 90 and M vHiml0x40 "92. From the software for 20-ms tasks" SIF TASK_20 "80 become 20-ms tasks" vSifT20x5 "94 , "vSifT20x20" 96 and "vSifT20x40" 98.
Der Lesespeicher 66 des zweiten Mikrocontrollers 64 umfasst Software für 40-ms- Tasks "FZR Task_40", mit der dem internen Sektor 70 des Lesespeichers 68 40-ms- Tasks "vFzrT40x5" 102 und "vFzrT40x20" 104 bereitgestellt werden.The read memory 66 of the second microcontroller 64 comprises software for 40 ms tasks "FZR Task_40", with which the internal sector 70 of the read memory 68 40 ms- tasks "vFzrT40x5" 102 and "vFzrT40x20" 104 are provided.
Innerhalb der Mikrocontroller 62, 64 sind Taskkopien vorgesehen, die durch gepunktet- durchgezogene Pfeile repräsentiert sind. In dem ersten Mikrocontroller 62 erfolgt eine Taskkopie von dem 5-ms-Task "vBscT5x40" 86 zu einem 5-ms-Task "vBsc5T40c40" 106 in dem AS-VASF Sektor 72, eine Taskkopie von dem 10-ms-Task "vHimT10x40" 92 zu einem 10-ms-Task "vHimT10x40c40" 108 in dem AS-VASF Sektor 72. Außerdem ist eine Taskkopie von dem 40-ms-Task "vSifT20x40" 98 zu einem 40-ms-Task "vSifT20x40c40" 110 in dem AS-VASF Sektor 72 vorgesehen.Within the microcontroller 62, 64 task copies are provided, which are represented by dotted-solid arrows. In the first microcontroller 62, a task copy is made from the 5 ms task "vBscT5x40" 86 to a 5 ms task "vBsc5T40c40" 106 in the AS-VASF sector 72, a task copy from the 10 ms task "vHimT10x40" 92 to a 10 ms task "vHimT10x40c40" 108 in the AS-VASF sector 72. Also, a task copy from the 40 ms task "vSifT20x40" 98 to a 40 ms task "vSifT20x40c40" 110 in the AS- VASF sector 72 is provided.
Für den 5-ms-Task "vBsc5T40c40" 106, den 10-ms-Task "vHimT10x40c40" 108 und den 40-ms-Task "vSifT20x40c40" 110 wird von dem AS-VASF Sektor 72 des ersten Mikrocontrollers eine durch einen Pfeil dargestellte Datenübertragung 112 in den AS- VASF Sektor 72 des zweiten Mikrocontrollers 64 durchgeführt. Es ist vorgesehen, dass aus dem AS-VASF Sektor 72 des zweiten Mikrocontrollers 64 lediglich Daten der Tasks gelesen werden (gestrichelter Doppelpfeil). Des weiteren erfolgen Taskkopien für den 5-ms-Task "vBsc5T40c40" 106, den 10-ms-Task "vHimT10x40c40" 108 und den 40-ms-Task "vSifT20x40c40" 110 aus dem AS-VASF Sektor 72 in den internen Sektor 70 des zweiten Mikrocontrollers 64.For the 5 ms task "vBsc5T40c40" 106, the 10 ms task "vHimT10x40c40" 108 and the 40 ms task "vSifT20x40c40" 110, the AS-VASF sector 72 of the first microcontroller transmits data shown by an arrow 112 in the AS-VASF sector 72 of the second microcontroller 64 performed. It is provided that only data of the tasks are read from the AS-VASF sector 72 of the second microcontroller 64 (dashed double-headed arrow). Furthermore, task copies are made for the 5 ms task "vBsc5T40c40" 106, the 10 ms task "vHimT10x40c40" 108 and the 40 ms task "vSifT20x40c40" 110 from the AS-VASF sector 72 into the internal sector 70 of the second microcontroller 64.
Für die beiden 40-ms-Tasks "vFzrT40x5" 102 bzw. "vFzrT40x20" 104 aus dem inter- nen Sektor 70 des zweiten Mikrocontrollers 64 sind jeweils Taskkopien in den VAFS- AS Sektor 74 zu den 40-ms-Tasks MvFzrT40x5c5" 114 bzw. MvFzrT40x20c20" 116 vorgesehen. Für diese beiden 40-ms-Tasks "vFzrT40x5c5" 114 bzw. "vFzrT40x20c20" 116 erfolgt eine Datenübertragung 118 (Pfeil) aus dem VAFS-AS Sektor 74 des zweiten Mikrocontrollers 64 zu dem VAFS-AS Sektor des ersten Mikrocontrollers 62. Der VASF-AS Sektor des ersten Mikrocontrollers 62 ist zum Lesen der darin abgelegten Tasks vorgesehen (gestrichelter Doppelpfeil). Für die 40-ms-Tasks "vFzrT40x5c5" 114 bzw. "vFzrT40x20c20" 116 sind Taskkopien in den internen Sektor des ersten Mikrocontrollers 62 vorgesehen. For the two 40 ms tasks "vFzrT40x5" 102 and "vFzrT40x20" 104 from the internal sector 70 of the second microcontroller 64, respectively, task copies in the VAFS-AS sector 74 to the 40 ms tasks M vFzrT40x5c5 "114 or M vFzrT40x20c20 "116 is provided. For these two 40 ms tasks "vFzrT40x5c5" 114 or "vFzrT40x20c20" 116, a data transmission 118 (arrow) from the VAFS-AS sector 74 of the second microcontroller 64 to the VAFS-AS sector of the first microcontroller 62 takes place. The VASF AS sector of the first microcontroller 62 is provided for reading the tasks stored therein (dashed double-headed arrow). For the 40 ms tasks "vFzrT40x5c5" 114 and "vFzrT40x20c20" 116, task copies are provided in the internal sector of the first microcontroller 62.

Claims

Ansprüche claims
1. Steuergerät, das mindestens einen ersten Mikrocontroller (2, 62) und mindestens einen zweiten Mikrocontroller (4, 64) aufweist, bei dem der mindestens eine zweite Mikrocontroller (4, 64) an den mindestens einen ersten Mikrocontroller (2, 62) zur zeitgleichen Bearbeitung von Tasks angebunden ist, wobei zwischen dem mindestens einen ersten Mikrocontroller (2, 62) und dem mindestens einen zweiten Mikrocontroller (4, 64) für zeitversetzte Tasks eine Softwareumlagerung erfolgt.1. Control unit having at least a first microcontroller (2, 62) and at least one second microcontroller (4, 64), wherein the at least one second microcontroller (4, 64) to the at least one first microcontroller (2, 62) for simultaneous processing of tasks is connected, wherein a software rearrangement takes place between the at least one first microcontroller (2, 62) and the at least one second microcontroller (4, 64) for time-shifted tasks.
2. Steuergerät nach Anspruch 1, bei dem der mindestens eine erste Mikrocontroller (2, 62) als Algorithmenserver und der mindestens eine zweite Mikrocontroller (4, 64) als Server zur Durchführung von Zusatzfunktionen ausgebildet ist.2. Control device according to claim 1, wherein the at least one first microcontroller (2, 62) as an algorithm server and the at least one second microcontroller (4, 64) is designed as a server for performing additional functions.
3. Steuergerät nach Anspruch 1 oder 2, bei dem der mindestens eine erste Mikro- Controller (2, 62) und der mindestens eine zweite Mikrocontroller (4, 64) über mindestens eine serielle Schnittstelle (6) verbunden sind.3. Control device according to claim 1 or 2, wherein the at least one first microcontroller (2, 62) and the at least one second microcontroller (4, 64) via at least one serial interface (6) are connected.
4. Steuergerät nach einem der voranstehenden Ansprüche, bei dem der mindestens eine erste Mikrocontroller (2, 62) und der mindestens eine zweite Mikrocontroller (4, 64) dazu ausgebildet sind, während eines Zyklus Tasks für unterschiedliche4. Control device according to one of the preceding claims, wherein the at least one first microcontroller (2, 62) and the at least one second microcontroller (4, 64) are adapted to during a cycle tasks for different
Zeitspannen zu bearbeiten.Time periods to edit.
5. Steuergerät nach einem der voranstehenden Ansprüche, bei dem vorgesehen ist, für einzelne Tasks Taskkopien der Daten bereitzustellen.5. Control device according to one of the preceding claims, wherein it is provided to provide task copies of the data for individual tasks.
6. Steuergerät nach einem der voranstehenden Ansprüche, das zur Durchführung eines Stabilitätsprogramms eines Fahrzeugs ausgebildet ist. 6. Control device according to one of the preceding claims, which is designed to carry out a stability program of a vehicle.
7. Verfahren zum Betreiben eines Steuergeräts (60), das mindestens einen ersten Mikrocontroller (2, 62) und mindestens einen zweiten Mikrocontroller (4, 64) aufweist, wobei der mindestens eine zweite Mikrocontroller (4, 64) an den mindestens einen ersten Mikrocontroller (2, 62) zur zeitgleichen Bearbeitung von Tasks angebunden ist, wobei zwischen den Mikrocontrollern (2, 4, 64, 64) für zeitversetzte Tasks eine Softwareumlagerung durchgeführt wird.7. A method for operating a control device (60) having at least a first microcontroller (2, 62) and at least one second microcontroller (4, 64), wherein the at least one second microcontroller (4, 64) to the at least one first microcontroller (2, 62) is connected for the simultaneous processing of tasks, wherein a software migration is performed between the microcontrollers (2, 4, 64, 64) for time-shifted tasks.
8. Verfahren nach Anspruch 7, bei dem während eines Zyklus von dem mindestens einen ersten Mikrocontroller (2, 62) und dem mindestens einen zweiten Mikro- Controller (4, 64), Tasks für unterschiedliche Zeitspannen bearbeitet werden.8. The method of claim 7, wherein during one cycle of the at least one first microcontroller (2, 62) and the at least one second microcontroller (4, 64), tasks are processed for different periods of time.
9. Verfahren nach Anspruch 7 oder 8, bei dem für einzelne Tasks Taskkopien der Daten bereitgestellt werden.9. The method of claim 7 or 8, wherein for individual tasks task copies of the data are provided.
10. Computerprogramm mit Programmcodemitteln, um alle Schritte eines Verfahrens nach einem der Ansprüche 7 bis 9 durchzuführen, wenn das Computerprogramm auf einem Computer oder einer entsprechenden Recheneinheit, insbesondere einem Steuergerät (60) nach einem der Ansprüche 1 bis 6, ausgeführt wird.10. Computer program with program code means to perform all the steps of a method according to one of claims 7 to 9, when the computer program on a computer or a corresponding processing unit, in particular a control device (60) according to one of claims 1 to 6, is executed.
11. Computerprogrammprodukt mit Programmcodemitteln, die auf einem computerlesbaren Datenträger gespeichert sind, um alle Schritte eines Verfahrens nach einem der Ansprüche 7 bis 9 durchzuführen, wenn das Computerprogramm auf einem Computer oder einer entsprechenden Recheneinheit, insbesondere einem Steuergerät (60) nach einem der Ansprüche 1 bis 6, ausgeführt wird. 11. Computer program product with program code means which are stored on a computer-readable data carrier in order to carry out all the steps of a method according to one of claims 7 to 9, when the computer program is stored on a computer or a corresponding arithmetic unit, in particular a control device (60) according to one of claims 1 to 6, is executed.
PCT/EP2007/052437 2006-03-30 2007-03-15 Control device having microcontrollers for simultaneously processing tasks WO2007113091A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102006015219.0 2006-03-30
DE102006015219A DE102006015219A1 (en) 2006-03-30 2006-03-30 Control device has microcontroller designed as algorithm server and connected to another microcontroller, which is designed as value added function server, by serial interface, where software transfer takes place between microcontrollers

Publications (1)

Publication Number Publication Date
WO2007113091A1 true WO2007113091A1 (en) 2007-10-11

Family

ID=38093027

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2007/052437 WO2007113091A1 (en) 2006-03-30 2007-03-15 Control device having microcontrollers for simultaneously processing tasks

Country Status (2)

Country Link
DE (1) DE102006015219A1 (en)
WO (1) WO2007113091A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112256325B (en) * 2020-10-14 2021-08-17 北京康惠达科技有限公司 Interface data adaptation method, equipment, server and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0514972A2 (en) * 1991-05-22 1992-11-25 Koninklijke Philips Electronics N.V. Multinode distributed data processing system for use in a surface vehicle
WO2004068344A1 (en) * 2003-01-31 2004-08-12 Robert Bosch Gmbh Computer system for use in vehicles

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0514972A2 (en) * 1991-05-22 1992-11-25 Koninklijke Philips Electronics N.V. Multinode distributed data processing system for use in a surface vehicle
WO2004068344A1 (en) * 2003-01-31 2004-08-12 Robert Bosch Gmbh Computer system for use in vehicles

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DAVID KALINSKY AND ROEE KALINSKY: "Introduction to Serial Peripheral Interface", EMBEDDED.COM, 1 February 2002 (2002-02-01), pages 1 - 3, XP002438247, Retrieved from the Internet <URL:http://www.embedded.com/shared/printableArticle.jhtml?articleID=9900483> *
FACCIO M ET AL: "An embedded system for position and speed measurement adopting incremental encoders", INDUSTRY APPLICATIONS CONFERENCE, 2004. 39TH IAS ANNUAL MEETING. CONFERENCE RECORD OF THE 2004 IEEE SEATTLE, WA, USA 3-7 OCT. 2004, PISCATAWAY, NJ, USA,IEEE, 3 October 2004 (2004-10-03), pages 1192 - 1199, XP010735156, ISBN: 0-7803-8486-5 *

Also Published As

Publication number Publication date
DE102006015219A1 (en) 2007-10-04

Similar Documents

Publication Publication Date Title
DE112017004415T5 (en) On-board update system, on-board update device, and communication device update method
DE102005010476A1 (en) Control unit with configurable hardware modules
WO2019219796A1 (en) Method for event-based simulation of a system
DE102017211433A1 (en) Method for performing a functional test of a control unit in a hardware-in-the-loop test, HIL test, and HIL test bench and control unit
DE102005010477A1 (en) Device and method for processing prioritized control processes
DE2844295A1 (en) METHOD AND DEVICE FOR CONTROLLING THE DATA TRANSFER DIRECTION ON A DATA BUS
DE102008039564A1 (en) Method for processing tasks and system with a first and a second control device
WO2009095202A1 (en) Method and device for carrying out tests by means of functionally cascaded testing and experimental devices
WO2007113091A1 (en) Control device having microcontrollers for simultaneously processing tasks
DE102020118563A1 (en) MIDDLEWARE SYSTEM AND PROCEDURE
DE112016006679B4 (en) Control device and recovery processing method for control device
EP2962162B1 (en) Method for setting up and/or implementing a programming process of a control device of a transport means
EP4232905A1 (en) Data processing network for performing data processing
DE10228610A1 (en) Method for testing of a control program running on a computer unit, especially an engine control unit, whereby a dynamic link is created between a bypass function and the control program so that computer data can be accessed
EP2018604B1 (en) Procedure for operating a control unit
EP1399831A2 (en) Device and method for converting a diagnostic interface to spi standard
DE2813079B2 (en) High security multi-computer system
WO2023066624A1 (en) Data processing network for performing data processing
DE102004050293B3 (en) Simulating operation of network involves describing subscriber time behavior using configurable time parameters derived from time parameters of subscriber functional model run time points
DE102012218665A1 (en) Application system for control device of vehicle, has adapter for converting network protocols into wireless protocols, where network protocols serves for communication with control device
DE102009000584A1 (en) Diagnosis of the synchronization of two communication networks of an electronic data processing system
DE10330695B4 (en) Fail-safe program
DE102017004836A1 (en) Method for operating at least two control devices, in particular of a motor vehicle
DE102015213370A1 (en) COMPUTING DEVICE
DE102022102890A1 (en) Method and device for performing functions in a multiprocess system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07726927

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 07726927

Country of ref document: EP

Kind code of ref document: A1