[go: up one dir, main page]

WO2018146000A1 - Control unit for a motor vehicle and corresponding motor vehicle - Google Patents

Control unit for a motor vehicle and corresponding motor vehicle Download PDF

Info

Publication number
WO2018146000A1
WO2018146000A1 PCT/EP2018/052568 EP2018052568W WO2018146000A1 WO 2018146000 A1 WO2018146000 A1 WO 2018146000A1 EP 2018052568 W EP2018052568 W EP 2018052568W WO 2018146000 A1 WO2018146000 A1 WO 2018146000A1
Authority
WO
WIPO (PCT)
Prior art keywords
applications
control device
motor vehicle
following features
application
Prior art date
Application number
PCT/EP2018/052568
Other languages
German (de)
French (fr)
Inventor
Rainer Baumgaertner
Michael Poehnl
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
Priority to CN201880010747.1A priority Critical patent/CN110291504B/en
Publication of WO2018146000A1 publication Critical patent/WO2018146000A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes

Definitions

  • the present invention relates to a control device for a motor vehicle.
  • the present invention also relates to a corresponding motor vehicle and a corresponding method.
  • HAD highly automated driving
  • vehicle has its own intelligence, so to speak, which could plan ahead and take over the driving task, at least in most situations.
  • ECUs electronice control units
  • US 2013/0145482 AI describes a vehicle that has one or more
  • Implemented processing modules are configured to connect to the various buses in the vehicle with the various buses connected to the various components of the vehicle to facilitate information transfer between the vehicles
  • Each processing module is further modularized with the ability to add and replace other functional modules now or in the future. These function modules can themselves as independent vehicle components act. Each processing module can handle processing to other modules depending on its health,
  • US 2007/076593 A1 discloses a vehicle control system having a plurality of nodes connected to a communication network for performing coordinated operations based on data sent over the communication network for controlling the vehicle, each of the nodes comprising: a node status Determination section that receives node status data from other nodes via the communication network and determines node status indicating one or more of a failure state and a non-failure state of the plurality of nodes, a node status evaluation result transmission / reception section for transmitting
  • the invention provides a control device for a motor vehicle and a
  • the approach according to the invention is based on the finding that numerous driver assistance systems for highly automated driving are currently in the development phase.
  • the realization requires the mastery of large systems. Especially the distribution of subtasks to different ones
  • Services layer eliminates unnecessary copying of data or blocking of applications and thus proves to be highly efficient.
  • CE Consumer electronics
  • Access to the shared memory are authorized. It is particularly advantageous that the solution contains a flexible method for separation. The efficiency of the realization is largely maintained.
  • control device further comprises a memory management unit (MMU) to perform the separation.
  • MMU memory management unit
  • the applications access the intermediate applications via an intermediate application interface, which in turn has standardized interfaces
  • Microcontroller abstraction layer Complex drivers or other services of the base software access.
  • the traffic is thus completely abstracted by the service layer. Even a distribution of applications to different ECUs is possible, provided that latency and quality of service can be guaranteed.
  • Operating system such as QNX be provided for the controller.
  • said separation between applications may be through adaptive partitioning (AP) of the application software.
  • AP adaptive partitioning
  • An appropriate scheduler allows the designer of the real-time system to specify that a certain amount of processing resources be reserved for a particular partition - that is, a group of activity threads or threads that make up a subsystem.
  • FIG. 1 shows an inter-application-oriented approach according to FIG. 1
  • FIG. 2 shows the data traffic between control units by means of a
  • FIG. 3 shows the control unit-internal data traffic by means of the service layer according to the invention.
  • FIG. 4 shows a solution strategy for using shared memory in the context of an efficient intermediate application approach
  • FIG. 5 Basics of the separation.
  • FIG. 6 shows the effect of the separation in connection with FIG.
  • Figure 7 shows a solution strategy for inter-process communication while maintaining the separation of areas with different security requirements.
  • FIG. 8 shows the inter-process communication via shared memory while maintaining the separation of areas with different ones
  • Figure 1 illustrates an inter-application approach according to the proposed solution strategy.
  • Applications (11) use the application programming interface (API) here special intermediate applications (12).
  • API application programming interface
  • Data traffic is handled exclusively via the intermediate applications (12), which enables portability, scalability and reusability, data encapsulation, etc.
  • Such an approach could be, for example, within the framework of a future definition
  • AUTOSAR adaptive and open automotive system architecture
  • FIG. 2 illustrates the data traffic between control devices by means of a service layer according to the invention.
  • Each control unit (10) operates the specific one in addition to the AU TOS AR basic software (15)
  • the basic software (15) includes
  • the intermediate applications (12) of the service layer while the application software (14) comprises the individual applications (11) in the strict sense.
  • the application software (14) comprises the individual applications (11) in the strict sense.
  • the intermediate application interface (13) accesses the intermediate applications (12), the latter in turn access the operating system (17), data connection (18), control device abstraction layer (19), microcontroller abstraction layer (20), complex drivers (21) or others via standardized interfaces (16) Services of the basic software (15) too.
  • FIG. 3 shows, in a corresponding representation, the data traffic by means of the service layer according to the invention within a single one
  • Interprocess communication (29) is controlled by selected elements
  • FIG. 4 illustrates a solution strategy for using shared memory (23) in the context of the approach discussed.
  • the control unit (10) comprises such by various applications (11) and
  • the latter are in this case subject to the same security requirements imposed by a common Automotive safety integrity level (ASIL) designated A, B, C, D or QM. (This given
  • Safety requirement level carries the following representative
  • control unit (10) comprises a memory management unit-not shown as such.
  • a corresponding operating system (17) such as QNX whose microkernel supports the runtime separation (25) by an adaptive partitioning of the application software (14).
  • Execution strands (24) within a process can not be easily separated in this way.
  • Intermediate application (31) operates on said security requirement level (X), some applications (11) access a second intermediate application of lesser security requirement level (Y). Those applications (11) which access both the first intermediate application (31) and the second intermediate application (32) serve at the same time as
  • Security level operated and correspondingly privileged application A also acts as a safety limiter (27) for cross-sector access to the memory (23) by means of the second intermediate application (32).

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The invention relates to a control unit (10) for a motor vehicle, characterized by the following features: the control unit (10) is designed to operate a plurality of applications (11) and middleware programs (12), the control unit (10) comprises a memory (23), which can be jointly used by the applications (11) and the middleware programs (12), and the middleware programs (12) are designed to handle interprocess communication (29) between the applications (11) via the memory (23).

Description

Beschreibung Titel  Description title
Steuergerät für ein Kraftfahrzeug und entsprechendes Kraftfahrzeug  Control device for a motor vehicle and corresponding motor vehicle
Die vorliegende Erfindung betrifft ein Steuergerät für ein Kraftfahrzeug. Die vorliegende Erfindung betrifft darüber hinaus ein entsprechendes Kraftfahrzeug und ein entsprechendes Verfahren. The present invention relates to a control device for a motor vehicle. The present invention also relates to a corresponding motor vehicle and a corresponding method.
Stand der Technik State of the art
Der Begriff des hochautomatisierten Fahrens (highly automated driving, HAD) bezeichnet gemeinhin eine Entwicklungsstufe zwischen dem assistierten Fahren, bei welchem der Fahrer durch zahlreiche (oft getrennte) Fahrerassistenzsysteme bei der Fahraufgabe unterstützt wird, und dem autonomen Fahren, bei welchem das Fahrzeug gänzlich selbsttätig und ohne Einwirkung des Fahrers fährt. Beim hochautomatisierten Fahren verfügt das Fahrzeug gewissermaßen über eine eigene Intelligenz, die vorausplant und die Fahraufgabe zumindest in den meisten Situationen übernehmen könnte. Fahrer und Steuergeräte (electronic control units, ECUs) führen zusammen das Fahrzeug, wobei der menschliche Fahrer jederzeit bestimmt, wie stark er in das Fahrverhalten des Fahrzeuges eingreift. The term highly automated driving (HAD) commonly designates a developmental stage between assisted driving in which the driver is assisted by numerous (often separate) driver assistance systems in the driving task, and autonomous driving in which the vehicle is entirely self-propelled without driver intervention. In highly automated driving, the vehicle has its own intelligence, so to speak, which could plan ahead and take over the driving task, at least in most situations. Drivers and electronic control units (ECUs) together drive the vehicle, with the human driver always determining how much he is interfering with the handling of the vehicle.
US 2013/0145482 AI beschreibt ein Fahrzeug, das ein oder mehrere US 2013/0145482 AI describes a vehicle that has one or more
Verarbeitungsmodule implementiert. Diese Module sind konfiguriert, um eine Verbindung zu den verschiedenen Bussen im Fahrzeug herzustellen, wobei die verschiedenen Busse mit den verschiedenen Komponenten des Fahrzeugs verbunden sind, um eine Informationsübertragung zwischen den Implemented processing modules. These modules are configured to connect to the various buses in the vehicle with the various buses connected to the various components of the vehicle to facilitate information transfer between the vehicles
Fahrzeugkomponenten zu erleichtern. Jedes Verarbeitungsmodul ist weiter modularisiert mit der Fähigkeit, andere Funktionsmodule jetzt oder zukünftig hinzuzufügen und zu ersetzen. Diese Funktionsmodule können selbst als eigenständige Fahrzeugkomponenten agieren. Jedes Verarbeitungsmodul kann die Verarbeitung an andere Module abhängig von seiner Gesundheit, To facilitate vehicle components. Each processing module is further modularized with the ability to add and replace other functional modules now or in the future. These function modules can themselves as independent vehicle components act. Each processing module can handle processing to other modules depending on its health,
Verarbeitungslast oder durch Fremdsteuerung übergeben. Somit hilft die Vielzahl von Verarbeitungsmodulen, einen Middleware-Steuerpunkt für das Fahrzeug mit Redundanz in der Verarbeitung und dem Sicherheits- und Processing load or transferred by external control. Thus, the plurality of processing modules, a middleware control point for the vehicle with redundancy in the processing and the safety and security helps
Sicherheitsbewusstsein in ihren Anwendungen zu implementieren. Implement security awareness in their applications.
US 2007/076593 AI offenbart ein Fahrzeugsteuerungssystem mit mehreren Knoten, die mit einem Kommunikationsnetz verbunden sind, um koordinierte Vorgänge auf der Grundlage von Daten, die über das Kommunikationsnetz gesendet werden, zum Steuern des Fahrzeugs durchzuführen, wobei jeder der Knoten Folgendes umfasst: einen Knotenstatus-Bestimmungsabschnitt, der Knotenstatusdaten von anderen Knoten über das Kommunikationsnetz empfängt und Knotenstatus bestimmt, die einen oder mehrere eines Ausfallzustands und eines Nichtausfallzustands der mehreren Knoten anzeigen, einen Knotenstatus- Auswertungsergebnis-Sende-/-Empfangsabschnitt zum Senden von US 2007/076593 A1 discloses a vehicle control system having a plurality of nodes connected to a communication network for performing coordinated operations based on data sent over the communication network for controlling the vehicle, each of the nodes comprising: a node status Determination section that receives node status data from other nodes via the communication network and determines node status indicating one or more of a failure state and a non-failure state of the plurality of nodes, a node status evaluation result transmission / reception section for transmitting
Knotenstatusdaten einschließlich Knotenstatus des eigenen Knotens und der anderen Knoten, die von dem Knotenstatus-Bestimmungsabschnitt bestimmt wurden, an die anderen Knoten und zum Empfangen von Knotenstatusdaten einschließlich Knotenstatus des eigenen Knotens und der anderen Knoten, die von anderen Knoten bestimmt und über das Kommunikationsnetz gesendet wurden und einen Ausfallknoten-Identifikationsabschnitt, der einen mit dem Kommunikationsnetz verbundenen ausgefallenen Knoten auf der Grundlage der Knotenstatusdaten identifiziert, die Knotenstatus des eigenen Knotens und der anderen Knoten einschließen, die von dem Knotenstatus-Bestimmungsabschnitt bestimmt und von den anderen Knoten gesendet wurden, wobei die Vorgänge in dem Knotenstatus-Bestimmungsabschnitt, dem Knotenstatus- Auswertungsergebnis-Sende-/-Empfangsabschnitt und dem Ausfallknoten- Identifikationsabschnitt synchron mit Kommunikationen zwischen dem eigenen Knoten und den anderen Knoten über das Kommunikationsnetz ausgeführt werden und der Ausfallknoten-Identifikationsabschnitt mit einer Middleware, die eine Anwendungsprogrammschnittstelle einschließt, umgesetzt wird, die das Ergebnis der Ausfallknoten- Identifikation einem Node status data including node status of the own node and the other nodes designated by the node status determination section to the other nodes and receiving node status data including node status of the own node and the other nodes designated by other nodes and sent via the communication network and a failure node identification section that identifies a failed node connected to the communication network based on the node status data including node status of the own node and the other nodes designated by the node status determination section and sent from the other nodes, the operations in the node status determination section, the node status evaluation result transmission / reception section and the failure node identification section, in synchronization with communications between the own node and the other nodes via the communication network z is executed and the failing node identification section is implemented with a middleware that includes an application program interface, the one the result of the failure node identification one
Steuerungsanwendungsprogramm bereitstellt, das auf dem eigenen Knoten läuft. Offenbarung der Erfindung Provides control application program that runs on its own node. Disclosure of the invention
Die Erfindung stellt ein Steuergerät für ein Kraftfahrzeug sowie ein The invention provides a control device for a motor vehicle and a
entsprechendes Kraftfahrzeug und Verfahren gemäß den unabhängigen corresponding motor vehicle and method according to the independent
Ansprüchen bereit. Dem erfindungsgemäßen Ansatz liegt hierbei die Erkenntnis zugrunde, dass zahlreiche Fahrerassistenzsysteme für hochautomatisiertes Fahren aktuell in der Entstehungsphase sind. Die Realisierung erfordert das Beherrschen von großen Systemen. Speziell die Verteilung der Teilaufgaben auf verschiedene Claims ready. The approach according to the invention is based on the finding that numerous driver assistance systems for highly automated driving are currently in the development phase. The realization requires the mastery of large systems. Especially the distribution of subtasks to different ones
Steuergeräte stellt erhöhte Anforderungen bezüglich der Kommunikation zwischen den Teilaufgaben. Eine Dienste-Schicht von ECUs places increased demands on the communication between the subtasks. A service layer of
Zwischenanwendungen (middleware) soll hier das flexible Verteilen von  Intermediate applications (middleware) should be the flexible distribution of
Teilaufgaben ermöglichen. Enable subtasks.
Es wird daher ein effizienter Middleware-Ansatz vorgestellt. Basis dieses Ansatzes sind Interprozesskommunikation (inter-process communication, IPC) und gemeinsam genutzter Speicher (shared memory). Eine derart beschaffeneTherefore, an efficient middleware approach is presented. This approach is based on inter-process communication (IPC) and shared memory. Such a thing
Dienste-Schicht verzichtet auf ein unnötiges Kopieren von Daten oder Blockieren von Anwendungen und erweist sich somit als in höchstem Maße rationell. Services layer eliminates unnecessary copying of data or blocking of applications and thus proves to be highly efficient.
Der nachfolgend erörterte Ansatz mag etwa zur Gestaltung einer The approach discussed below may be used to design a
Referenzplattform-Softwarearchitektur für HAD dienen und gestattet Reference platform software architecture for HAD serve and permitted
insbesondere eine Echtzeitverarbeitung großer Datenmengen von mehrerenin particular a real-time processing of large amounts of data from several
Sensoren sowie die Kommunikation des Fahrzeuges mit seiner Sensors as well as the communication of the vehicle with his
Umgebung (Car2X) bei höchster Betriebssicherheit, Zuverlässigkeit und Environment (Car2X) with highest reliability, reliability and reliability
Absicherung gegen unbefugte Manipulation. Unterstützt werden auf diesem Wege auch moderne Mehrkern- und insbesondere Vielkern-Controller und - aufgrund deren erhöhten Leistungspotenziales - unterschiedlichste derProtection against unauthorized manipulation. In this way, modern multi-core and in particular multi-core controllers are supported and, due to their increased performance potential, a wide variety of
Unterhaltungselektronik (consumer electronics, CE) entliehene Komponenten. Insgesamt erfüllt die vorgeschlagene Lösung somit höchste Anforderungen hinsichtlich Effizienz, Skalier- und Wartbarkeit, Portabilität, Datenkapselung, Standardkonformität und Austauschbarkeit beispielsweise von Software und insbesondere Firmware über die Luftschnittstelle (Software over the air, SOTA; firmware over the air, FOTA). Durch die in den abhängigen Ansprüchen aufgeführten Maßnahmen sind vorteilhafte Weiterbildungen und Verbesserungen des im unabhängigen Consumer electronics (CE) borrowed components. Overall, the proposed solution thus meets the highest requirements in terms of efficiency, scalability and maintainability, portability, data encapsulation, standard conformity and interchangeability, for example of software and in particular firmware via the air interface (software over the air, SOTA, firmware over the air, FOTA). The measures listed in the dependent claims are advantageous developments and improvements of the independent
Anspruch angegebenen Grundgedankens möglich. So kann vorgesehen sein, dass Steuergerät und Betriebssystem zwischen den Anwendungen eine Separation dergestalt vornehmen, dass bestimmte Anwendungen nicht zu einemClaim specified basic idea possible. Thus it can be provided that the controller and the operating system make a separation between the applications in such a way that certain applications do not become one
Zugriff auf den gemeinsam nutzbaren Speicher berechtigt sind. Besonders vorteilhaft ist dabei, dass die Lösung eine flexible Methode zur Separation enthält. Dabei wird die Effizienz der Realisierung weitgehend erhalten. Access to the shared memory are authorized. It is particularly advantageous that the solution contains a flexible method for separation. The efficiency of the realization is largely maintained.
Gemäß einem weiteren Aspekt kann vorgesehen sein, dass das Steuergerät ferner eine Speicherverwaltungseinheit (memory management unit, MMU) umfasst, um die Separation vorzunehmen. Eine Trennung unterschiedlicher Speicherbereiche lässt sich somit vorteilhaft in entsprechender Hardware abbilden. According to a further aspect, it may be provided that the control device further comprises a memory management unit (MMU) to perform the separation. A separation of different memory areas can thus be advantageously represented in corresponding hardware.
Gemäß einem weiteren Aspekt kann vorgesehen sein, dass die Anwendungen über eine Zwischenanwendungsschnittstelle auf die Zwischenanwendungen zugreifen, die sich ihrerseits über standardisierte Schnittstellen auf According to a further aspect, it may be provided that the applications access the intermediate applications via an intermediate application interface, which in turn has standardized interfaces
Betriebssystem, Datenverbindungen, Steuergerätabstraktionsschicht, Operating system, data connections, controller abstraction layer,
Mikrocontrollerabstraktionsschicht, komplexe Treiber oder sonstige Dienste der Basissoftware zugreifen. Der Datenverkehr wird auf diese Weise vollständig durch die Dienste-Schicht abstrahiert. Selbst eine Verteilung von Anwendungen auf unterschiedliche Steuergeräte wird so möglich, sofern Latenz und Dienstgüte gewährleistet werden können. Microcontroller abstraction layer, complex drivers or other services of the base software access. The traffic is thus completely abstracted by the service layer. Even a distribution of applications to different ECUs is possible, provided that latency and quality of service can be guaranteed.
Gemäß einem weiteren Aspekt schließlich kann ein POSIX-konformes Finally, in another aspect, a POSIX compliant
Betriebssystem wie QNX für das Steuergerät vorgesehen sein. Im letzteren Fall mag die besagte Separation zwischen einzelnen Anwendungen durch adaptive Partitionierung (AP) der Anwendungssoftware erfolgen. Ein entsprechender Scheduler ermöglicht es dem Entwerfer des Echtzeitsystems festzulegen, dass ein gewisser Anteil von Verarbeitungsressourcen für eine bestimmte Partition - also Gruppe von Aktivitätsträgern bzw. Ausführungssträngen (threads) oder Prozessen, die ein Subsystem bilden - reserviert ist. Kurze Beschreibung der Zeichnungen Operating system such as QNX be provided for the controller. In the latter case, said separation between applications may be through adaptive partitioning (AP) of the application software. An appropriate scheduler allows the designer of the real-time system to specify that a certain amount of processing resources be reserved for a particular partition - that is, a group of activity threads or threads that make up a subsystem. Brief description of the drawings
Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und in der nachfolgenden Beschreibung näher erläutert. Es zeigt: Embodiments of the invention are illustrated in the drawings and explained in more detail in the following description. It shows:
Figur 1 einen zwischenanwendungsorientierten Ansatz gemäß der FIG. 1 shows an inter-application-oriented approach according to FIG
vorgeschlagenen Lösungsstrategie. proposed solution strategy.
Figur 2 den Datenverkehr zwischen Steuergeräten mittels einer FIG. 2 shows the data traffic between control units by means of a
erfindungsgemäßen Dienste-Schicht. service layer according to the invention.
Figur 3 den steuergerätinternen Datenverkehr mittels der erfindungsgemäßen Dienste-Schicht. FIG. 3 shows the control unit-internal data traffic by means of the service layer according to the invention.
Figur 4 eine Lösungsstrategie zur Verwendung gemeinsam genutzten Speichers im Rahmen eines effizienten Zwischenanwendungsansatzes zur FIG. 4 shows a solution strategy for using shared memory in the context of an efficient intermediate application approach
Interprozesskommunikation. Interprocess communication.
Figur 5 Grundlagen der Separation. FIG. 5 Basics of the separation.
Figur 6 die Wirkung der Separation im Zusammenhang mit FIG. 6 shows the effect of the separation in connection with FIG
Zwischenanwendungen. Between applications.
Figur 7 eine Lösungsstrategie zur Interprozesskommunikation unter Beibehaltung der Trennung von Bereichen mit unterschiedlichen Sicherheitsanforderungen. Figure 7 shows a solution strategy for inter-process communication while maintaining the separation of areas with different security requirements.
Figur 8 die Interprozesskommunikation über gemeinsam genutzten Speicher unter Beibehaltung der Trennung von Bereichen mit unterschiedlichen FIG. 8 shows the inter-process communication via shared memory while maintaining the separation of areas with different ones
Sicherheitsanforderungen. Safety requirements.
Ausführungsformen der Erfindung Embodiments of the invention
Figur 1 illustriert einen zwischenanwendungsorientierten Ansatz gemäß der vorgeschlagenen Lösungsstrategie. Anwendungen (11) bedienen sich hier der Anwendungsprogrammierschnittstelle (application programming Interface, API) besonderer Zwischenanwendungen (12). Datenverkehr wird dabei ausschließlich über die Zwischenanwendungen (12) abgewickelt, was Portabilität, Skalier- und Wiederverwendbarkeit, Datenkapselung usw. ermöglicht. Ein derartiger Ansatz ließe sich beispielsweise im Rahmen einer zukünftig zu definierenden Figure 1 illustrates an inter-application approach according to the proposed solution strategy. Applications (11) use the application programming interface (API) here special intermediate applications (12). Data traffic is handled exclusively via the intermediate applications (12), which enables portability, scalability and reusability, data encapsulation, etc. Such an approach could be, for example, within the framework of a future definition
anpassungsfähigen und offenen Fahrzeugsystemarchitektur (automotive open System architecture, AUTOSAR) verfolgen. track adaptive and open automotive system architecture (AUTOSAR).
Figur 2 veranschaulicht den Datenverkehr zwischen Steuergeräten mittels einer erfindungsgemäßen Dienste-Schicht. Jedes Steuergerät (10) betreibt hierbei neben der AU TOS AR- Basissoftware (15) die spezifische FIG. 2 illustrates the data traffic between control devices by means of a service layer according to the invention. Each control unit (10) operates the specific one in addition to the AU TOS AR basic software (15)
HAD-Anwendungssoftware (14). Die Basissoftware (15) umfasst HAD application software (14). The basic software (15) includes
erfindungsgemäß auch die Zwischenanwendungen (12) der Dienste-Schicht, während die Anwendungssoftware (14) die einzelnen Anwendungen (11) im engeren Sinne umfasst. Wie die Anwendungen (11) über eine According to the invention, the intermediate applications (12) of the service layer, while the application software (14) comprises the individual applications (11) in the strict sense. Like the applications (11) over a
Zwischenanwendungsschnittstelle (13) auf die Zwischenanwendungen (12) zugreifen, so greifen letztere ihrerseits über standardisierte Schnittstellen (16) auf Betriebssystem (17), Datenverbindung (18), Steuergerätabstraktionsschicht (19), Mikrocontrollerabstraktionsschicht (20), komplexe Treiber (21) oder sonstige Dienste der Basissoftware (15) zu. The intermediate application interface (13) accesses the intermediate applications (12), the latter in turn access the operating system (17), data connection (18), control device abstraction layer (19), microcontroller abstraction layer (20), complex drivers (21) or others via standardized interfaces (16) Services of the basic software (15) too.
Figur 3 zeigt in entsprechender Darstellung den Datenverkehr mittels der erfindungsgemäßen Dienste-Schicht innerhalb eines einzelnen FIG. 3 shows, in a corresponding representation, the data traffic by means of the service layer according to the invention within a single one
Steuergerätes (10). Eine derart effiziente steuergerätinterne Control unit (10). Such an efficient control unit internal
Interprozesskommunikation (29) wird durch ausgewählte Elemente Interprocess communication (29) is controlled by selected elements
beispielsweise im Rahmen von AUTOSAR in Kombination mit einer geeigneten API für gemeinsam genutzten Speicher (23) ermöglicht und stellt eine for example, in the context of AUTOSAR in combination with a suitable shared memory API (23) allows and provides a
Schlüsselfähigkeit eingebetteter HAD-Systeme dar. Key capability of embedded HAD systems.
Figur 4 beleuchtet eine Lösungsstrategie zur Verwendung gemeinsam genutzten Speichers (23) im Rahmen des diskutierten Ansatzes. Das Steuergerät (10) umfasst solch einen durch verschiedene Anwendungen (11) und FIG. 4 illustrates a solution strategy for using shared memory (23) in the context of the approach discussed. The control unit (10) comprises such by various applications (11) and
Zwischenanwendungen (12) gemeinsam nutzbaren Speicher (23), über welchen eine der Zwischenanwendungen (31) die Interprozesskommunikation (29) zwischen den Anwendungen A und B abwickelt. Letztere unterliegen in diesem Fall den gleichen Sicherheitsanforderungen, die durch eine gemeinsame Sicherheitsanforderungsstufe (automotive safety integrity level, ASIL) mit der Bezeichnung A, B, C, D oder QM festgelegt werden. (Diese gegebene Inter-application (12) shared memory (23) over which one of the intermediate applications (31) handles the inter-process communication (29) between applications A and B. The latter are in this case subject to the same security requirements imposed by a common Automotive safety integrity level (ASIL) designated A, B, C, D or QM. (This given
Sicherheitsanforderungsstufe trägt im Folgenden stellvertretend das Safety requirement level carries the following representative
Bezugszeichen X.) Reference X.)
Die Grundlagen der Separation (25) seien nunmehr anhand der Figur 5 erläutert. POSIX-konforme Betriebssysteme wie QNX erlauben eine solche Trennung von Anwendungen (11) auf Prozessebene, die somit voraussichtlich auch im Rahmen einer künftigen, anpassungsfähigen AUTOSAR-Implementierung umgesetzt werden kann. (Dies gilt natürlich auch für nicht POSIX-konforme Systeme, die entsprechende Mechanismen enthalten.) Das Steuergerät (10) umfasst zu diesem Zweck eine - als solche nicht abgebildete - Speicherverwaltungseinheit. Bei Verwendung eines entsprechenden Betriebssystems (17) wie QNX unterstützt dessen Mikrokern zur Laufzeit die Separation (25) durch eine adaptive Partitionierung der Anwendungssoftware (14). Einzelne The principles of separation (25) will now be explained with reference to FIG. POSIX-compliant operating systems such as QNX allow such a separation of applications (11) at the process level, which is therefore likely to be implemented as part of a future, adaptive AUTOSAR implementation. (This of course also applies to non-POSIX-compliant systems that contain appropriate mechanisms.) For this purpose, the control unit (10) comprises a memory management unit-not shown as such. When using a corresponding operating system (17) such as QNX whose microkernel supports the runtime separation (25) by an adaptive partitioning of the application software (14). Separate
Ausführungsstränge (24) innerhalb eines Prozesses lassen sich auf diesem Wege nicht ohne Weiteres trennen. Execution strands (24) within a process can not be easily separated in this way.
Es sei bemerkt, dass das exemplarisch angeführte QNX lediglich eines von zahlreichen denkbaren Ziel- Betriebssystemen darstellt. Die beschriebenen Mechanismen sind gleichwohl auch im Umfeld anderweitiger Betriebssysteme denkbar. Sogar ein Ansatz mit Hypervisor kann von einer erfindungsgemäßen Ausgestaltung profitieren. It should be noted that the exemplarily quoted QNX represents only one of numerous conceivable target operating systems. Nevertheless, the mechanisms described are also conceivable in the environment of other operating systems. Even a hypervisor approach may benefit from an embodiment of the invention.
Die Funktion der erfindungsgemäßen Zwischenanwendungen (12) in diesem Zusammenhang erschließt sich aus Figur 6. Betrachtet man den durch die gegebene Sicherheitsanforderungsstufe (X) definierten Bereich, so kann die Separation (25) innerhalb dieses Bereiches durch den Entwicklungsprozess der Software und insbesondere eine stringente Schichtenbildung erzwungen werden. Wo dies nicht möglich ist - etwa in der bereichsübergreifenden Kommunikation mit Anwendungen (11) auf geringerer Sicherheitsanforderungsstufe (Y) - sind ausdrückliche Mechanismen erforderlich. Figur 7 illustriert einen solchen Mechanismus zur The function of the intermediate applications (12) according to the invention in this context can be seen in FIG. 6. If one considers the range defined by the given security requirement level (X), then the separation (25) within this range can be due to the development process of the software and, in particular, stringent stratification be enforced. Where this is not possible - for example in cross-sector communication with applications (11) at a lower security requirement level (Y) - explicit mechanisms are required. Figure 7 illustrates such a mechanism for
Interprozesskommunikation (29) unter Beibehaltung der Trennung von Bereichen mit unterschiedlichen Sicherheitsanforderungen. Während eine erste  Interprocess communication (29) while maintaining the separation of areas with different security requirements. While a first
Zwischenanwendung (31) auf der besagten Sicherheitsanforderungsstufe (X) operiert, greifen einige Anwendungen (11) auf eine zweite Zwischenanwendung geringerer Sicherheitsanforderungsstufe (Y) zu. Diejenigen Anwendungen (11), welche sowohl auf die erste Zwischenanwendung (31) als auch auf die zweite Zwischenanwendung (32) zugreifen, dienen dabei zugleich als Intermediate application (31) operates on said security requirement level (X), some applications (11) access a second intermediate application of lesser security requirement level (Y). Those applications (11) which access both the first intermediate application (31) and the second intermediate application (32) serve at the same time as
Sicherheitsbegrenzer (26) zwischen den Sicherheitsanforderungsstufen (X, Y). Safety limiter (26) between the safety requirement levels (X, Y).
Die Funktion des gemeinsam nutzbaren Speichers (23) in dieser Konstellation veranschaulicht Figur 8: Im Gegensatz zur privilegierten Anwendung A ist die nichtprivilegierte Anwendung C in diesem Szenario nicht zu einem Zugriff auf den gemeinsam nutzbaren Speicher (23) berechtigt (28). Die auf höchster The function of sharable memory (23) in this constellation is illustrated in FIG. 8: unlike Privileged Application A, nonprivileged application C does not have access to shared memory (23) in this scenario (28). The highest
Sicherheitsstufe betriebene und entsprechend privilegierte Anwendung A fungiert zudem als Sicherheitsbegrenzer (27) beim bereichsübergreifenden Zugriff auf den Speicher (23) mittels der zweiten Zwischenanwendung (32). Security level operated and correspondingly privileged application A also acts as a safety limiter (27) for cross-sector access to the memory (23) by means of the second intermediate application (32).

Claims

Steuergerät (10) für ein Kraftfahrzeug, Control unit (10) for a motor vehicle,
gekennzeichnet durch folgende Merkmale: characterized by the following features:
- das Steuergerät (10) ist eingerichtet, mehrere Anwendungen (11) und Zwischenanwendungen (12) zu betreiben,  the control unit (10) is set up to operate a plurality of applications (11) and intermediate applications (12),
- das Steuergerät (10) umfasst einen durch die Anwendungen (11) und Zwischenanwendungen (12) gemeinsam nutzbaren Speicher (23) und - The controller (10) comprises a by the applications (11) and intermediate applications (12) shared memory (23) and
- die Zwischenanwendungen (12) sind eingerichtet, eine - the intermediate applications (12) are set up, one
Interprozesskommunikation (29) zwischen den Anwendungen (11) über den Speicher (23) abzuwickeln.  Interprocess communication (29) between the applications (11) via the memory (23) handle.
Steuergerät (10) nach Anspruch 1, Control device (10) according to claim 1,
gekennzeichnet durch folgende Merkmale: characterized by the following features:
- das Steuergerät (10) ist eingerichtet, eine Anwendungssoftware (14) insbesondere für ein Fahrerassistenzsystem zum hochautomatisierten Fahren des Kraftfahrzeuges und eine Basissoftware (15) zu betreiben, the control device (10) is set up to operate an application software (14), in particular for a driver assistance system for highly automated driving of the motor vehicle and a basic software (15),
- die Basissoftware (15) umfasst die Zwischenanwendungen (12) undthe basic software (15) comprises the intermediate applications (12) and
- die Anwendungssoftware (14) umfasst die Anwendungen (11). - The application software (14) includes the applications (11).
Steuergerät (10) nach Anspruch 2, Control device (10) according to claim 2,
gekennzeichnet durch folgende Merkmale: characterized by the following features:
- die Anwendungen (11) sind eingerichtet, über eine  - The applications (11) are set up via a
Zwischenanwendungsschnittstelle (13) auf die  Intermediate application interface (13) on the
Zwischenanwendungen (12) zuzugreifen und  Intermediate applications (12) to access and
- die Zwischenanwendungen (12) sind eingerichtet, über standardisierte Schnittstellen (16) auf ein Betriebssystem (17), eine  the intermediate applications (12) are set up, via standardized interfaces (16), to an operating system (17), a
Datenverbindung (18), eine Steuergerätabstraktionsschicht (19), eine Mikrocontrollerabstraktionsschicht (20), komplexe Treiber (21) oder sonstige Dienste (22) der Basissoftware (15) zuzugreifen.  Data link (18), a controller abstraction layer (19), a microcontroller abstraction layer (20), complex drivers (21) or other services (22) of the base software (15).
Steuergerät (10) nach Anspruch 3, Control device (10) according to claim 3,
gekennzeichnet durch folgende Merkmale: characterized by the following features:
- die Anwendungen (11) umfassen privilegierte Anwendungen (A, B) und nichtprivilegierte Anwendungen (C), - die Anwendungen (11) weisen jeweils mindestens einen the applications (11) include privileged applications (A, B) and nonprivileged applications (C), - The applications (11) each have at least one
Ausführungsstrang (24) auf und  Execution strand (24) on and
- das Steuergerät (10) und Betriebssystem (17) sind eingerichtet,  the control unit (10) and operating system (17) are set up,
zwischen den Anwendungen (11) eine Separation (25) dergestalt vorzunehmen, dass die nichtprivilegierten Anwendungen (C) nicht zu einem Zugriff auf den gemeinsam nutzbaren Speicher (23) berechtigt sind.  between the applications (11) to perform a separation (25) such that the nonprivileged applications (C) are not authorized to access the sharable memory (23).
5. Steuergerät (10) nach Anspruch 4, 5. Control device (10) according to claim 4,
gekennzeichnet durch folgende Merkmale:  characterized by the following features:
- das Steuergerät (10) umfasst ferner eine Speicherverwaltungseinheit und  - The controller (10) further comprises a memory management unit and
- die Speicherverwaltungseinheit ist eingerichtet, die Separation (25) vorzunehmen.  - The memory management unit is set up to perform the separation (25).
6. Steuergerät (10) nach Anspruch 4 oder 5, 6. Control device (10) according to claim 4 or 5,
gekennzeichnet durch folgende Merkmale:  characterized by the following features:
- für eine gegebene Sicherheitsanforderungsstufe (X) des  for a given security requirement level (X) of the
Kraftfahrzeuges umfassen die Zwischenanwendungen (12) eine erste Zwischenanwendung (31) auf der besagten  Motor vehicle, the intermediate applications (12) include a first intermediate application (31) on said
Sicherheitsanforderungsstufe (X) und mindestens eine zweite  Security requirement level (X) and at least a second one
Zwischenanwendung (32) auf geringerer  Intermediate application (32) on lesser
Sicherheitsanforderungsstufe (Y) und  Security requirement level (Y) and
- diejenigen Anwendungen (11), welche sowohl auf die erste Zwischenanwendung (31) als auch auf die zweite  those applications (11) which apply both to the first intermediate application (31) and to the second one
Zwischenanwendung (32) zugreifen, sind als Sicherheitsbegrenzer (26) zwischen den Sicherheitsanforderungsstufen (X, Y) eingerichtet.  Intermediate application (32) are set up as safety limiters (26) between the safety requirement levels (X, Y).
7. Steuergerät (10) nach einem der Ansprüche 4 bis 6, 7. Control device (10) according to one of claims 4 to 6,
gekennzeichnet durch folgendes Merkmal:  characterized by the following feature:
- das Betriebssystem (17) ist POSIX-konform.  - The operating system (17) is POSIX compliant.
8. Steuergerät (10) nach Anspruch 7, 8. Control device (10) according to claim 7,
gekennzeichnet durch folgendes Merkmal:  characterized by the following feature:
- das Betriebssystem (17) ist QNX. Steuergerät (10) nach Anspruch 8, The operating system (17) is QNX. Control device (10) according to claim 8,
gekennzeichnet durch folgendes Merkmal:  characterized by the following feature:
- die Separation (25) erfolgt durch eine adaptive Partitionieru Anwendungssoftware (14).  - The separation (25) is carried out by an adaptive Partitionieru application software (14).
10. Kraftfahrzeug mit einem Steuergerät (10) nach einem der Ansprüche 1 bis 9. 10. Motor vehicle with a control device (10) according to one of claims 1 to 9.
11. Verfahren zum Steuern eines Kraftfahrzeuges, 11. Method for controlling a motor vehicle
gekennzeichnet durch folgende Merkmale:  characterized by the following features:
- mehrere Anwendungen (11) und Zwischenanwendungen (12) werden auf einem gemeinsamen Steuergerät (10) betrieben,  - several applications (11) and intermediate applications (12) are operated on a common control unit (10),
- ein Speicher (23) des Steuergerätes (10) wird durch die Anwendungen (11) und Zwischenanwendungen (12) gemeinsam genutzt und  - A memory (23) of the control unit (10) is shared by the applications (11) and intermediate applications (12) and
- eine Interprozesskommunikation (29) zwischen den Anwendungen (11) wird durch die Zwischenanwendungen (12) über den Speicher (23) abgewickelt.  - Inter-process communication (29) between the applications (11) is handled by the intermediate applications (12) via the memory (23).
12. Verfahren nach Anspruch 11, 12. The method according to claim 11,
gekennzeichnet durch folgende Merkmale:  characterized by the following features:
- durch das Steuergerät (10) werden eine Anwendungssoftware (14) insbesondere für ein Fahrerassistenzsystem zum hochautomatisierten Fahren des Kraftfahrzeuges und eine Basissoftware (15) betrieben, an application software (14) is operated by the control unit (10) in particular for a driver assistance system for highly automated driving of the motor vehicle and basic software (15),
- die Basissoftware (15) umfasst die Zwischenanwendungen (12) undthe basic software (15) comprises the intermediate applications (12) and
- die Anwendungssoftware (14) umfasst die Anwendungen (11). - The application software (14) includes the applications (11).
13. Verfahren nach Anspruch 12, 13. The method according to claim 12,
gekennzeichnet durch folgende Merkmale:  characterized by the following features:
- die Anwendungen (11) greifen über eine  - The applications (11) have access to one
Zwischenanwendungsschnittstelle (13) auf die  Intermediate application interface (13) on the
Zwischenanwendungen (12) zu und  Intermediate applications (12) to and
die Zwischenanwendungen (12) greifen über standardisierte  the intermediate applications (12) use standardized
Schnittstellen (16) auf ein Betriebssystem (17), eine  Interfaces (16) to an operating system (17), a
Datenverbindung (18), eine Steuergerätabstraktionsschicht (19), eine Mikrocontrollerabstraktionsschicht (20), komplexe Treiber  Data link (18), a controller abstraction layer (19), a microcontroller abstraction layer (20), complex drivers
(21) oder sonstige Dienste (22) der Basissoftware (15) zu.  (21) or other services (22) of the basic software (15).
PCT/EP2018/052568 2017-02-08 2018-02-01 Control unit for a motor vehicle and corresponding motor vehicle WO2018146000A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201880010747.1A CN110291504B (en) 2017-02-08 2018-02-01 Control device for a motor vehicle and corresponding motor vehicle

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102017201966.2A DE102017201966A1 (en) 2017-02-08 2017-02-08 Control device for a motor vehicle and corresponding motor vehicle
DE102017201966.2 2017-02-08

Publications (1)

Publication Number Publication Date
WO2018146000A1 true WO2018146000A1 (en) 2018-08-16

Family

ID=61192897

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2018/052568 WO2018146000A1 (en) 2017-02-08 2018-02-01 Control unit for a motor vehicle and corresponding motor vehicle

Country Status (3)

Country Link
CN (1) CN110291504B (en)
DE (1) DE102017201966A1 (en)
WO (1) WO2018146000A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020182607A1 (en) 2019-03-12 2020-09-17 Robert Bosch Gmbh Data structure for an embedded system, corresponding system and vehicle
WO2020182544A1 (en) 2019-03-12 2020-09-17 Robert Bosch Gmbh Data structure for an embedded system, corresponding system, and vehicle
US11494535B2 (en) 2019-09-17 2022-11-08 Robert Bosch Gmbh Method and device for simulating a control unit
US12005932B2 (en) 2019-09-17 2024-06-11 Robert Bosch Gmbh Method and device for automating a driving function

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022133985A1 (en) * 2022-12-20 2024-06-20 Valeo Schalter Und Sensoren Gmbh Control unit with QM operating system as service architecture for ASIL applications

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070076593A1 (en) 2005-10-03 2007-04-05 Hitachi, Ltd. Vehicle control system
US7730261B1 (en) * 2005-12-20 2010-06-01 Marvell International Ltd. Multicore memory management system
US8286188B1 (en) * 2007-04-27 2012-10-09 Marvell Israel (M.I.S.L.) Ltd. Method and apparatus for advanced interprocess communication
US20130145482A1 (en) 2011-11-16 2013-06-06 Flextronics Ap, Llc Vehicle middleware

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103684963B (en) * 2013-11-18 2017-05-24 重庆邮电大学 Framework system and implementation method of middleware applied to car networking
CN104133728B (en) * 2013-12-16 2015-07-22 腾讯科技(深圳)有限公司 Method and device for communication between processes

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070076593A1 (en) 2005-10-03 2007-04-05 Hitachi, Ltd. Vehicle control system
US7730261B1 (en) * 2005-12-20 2010-06-01 Marvell International Ltd. Multicore memory management system
US8286188B1 (en) * 2007-04-27 2012-10-09 Marvell Israel (M.I.S.L.) Ltd. Method and apparatus for advanced interprocess communication
US20130145482A1 (en) 2011-11-16 2013-06-06 Flextronics Ap, Llc Vehicle middleware

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020182607A1 (en) 2019-03-12 2020-09-17 Robert Bosch Gmbh Data structure for an embedded system, corresponding system and vehicle
WO2020182544A1 (en) 2019-03-12 2020-09-17 Robert Bosch Gmbh Data structure for an embedded system, corresponding system, and vehicle
US11494535B2 (en) 2019-09-17 2022-11-08 Robert Bosch Gmbh Method and device for simulating a control unit
US12005932B2 (en) 2019-09-17 2024-06-11 Robert Bosch Gmbh Method and device for automating a driving function

Also Published As

Publication number Publication date
CN110291504B (en) 2023-11-21
CN110291504A (en) 2019-09-27
DE102017201966A1 (en) 2018-08-09

Similar Documents

Publication Publication Date Title
WO2018146000A1 (en) Control unit for a motor vehicle and corresponding motor vehicle
EP2235628B1 (en) Motor vehicle control device
DE102011117116B4 (en) Control device for at least partially autonomous operation of a vehicle and vehicle with such a control device
WO2013171122A2 (en) Functionally expandable vehicle control device and method for supplementing the functionality of a vehicle control device
EP3929740A1 (en) Method for orchestrating a container-based application on a terminal
WO2019242975A1 (en) Method and device for agreeing cooperation between a first system and a second system
DE102017100118A1 (en) Scalable control system for a motor vehicle
DE10357118A1 (en) Loading software modules
DE102007006614A1 (en) Application of a Distributed Diagnostic Architecture in AUTOSAR
WO2020126439A1 (en) Method for operating a vehicle when transferring processing power from the vehicle to at least one edge cloud computer
DE102016008957B4 (en) Direct access to bus signals in a motor vehicle
DE102004002020A1 (en) Control software architecture for implementing a decentralized cooperative control of several electronic control devices that are connected via a network
DE102019217047A1 (en) Method and device for managing access by several software components to software interfaces
DE102012212680A1 (en) Method and system for fault-tolerant control of actuators for a limited time based on pre-calculated values
EP3560153B1 (en) Method for operating a data processing system, and data processing system
WO2008092412A1 (en) Control of the run time behavior of processes
EP4144003B1 (en) Method for producing a software component for an electronic computing device of a motor vehicle, computer program product, computer-readable storage medium and motor-vehicle-external update system
DE102019208519A1 (en) Method and device for adapting a software application
EP4381386A1 (en) Prioritizing access by a container instance to a file in a file system resource
EP1629637B1 (en) Transmission of messages in a distributed, temporally controlled real time system
DE102021207473A1 (en) MITIGATION OF MANIPULATION OF SOFTWARE OF A VEHICLE
DE102023208876A1 (en) A method for updating an application of an automotive electronic control unit
DE102021204789A1 (en) PROCEDURE AND SYSTEM TO ENSURE GUARANTEED QUALITY OF SERVICE IN VEHICLES
WO2023138721A1 (en) Method for generating a capacity profile of a computing unit
DE102023208140A1 (en) Method for providing a distributed information security system for a vehicle

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: 18704482

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18704482

Country of ref document: EP

Kind code of ref document: A1