DE112017006451B4 - Gemeinsam genutzte Backup-Einheit und Steuersystem - Google Patents

Gemeinsam genutzte Backup-Einheit und Steuersystem Download PDF

Info

Publication number
DE112017006451B4
DE112017006451B4 DE112017006451.1T DE112017006451T DE112017006451B4 DE 112017006451 B4 DE112017006451 B4 DE 112017006451B4 DE 112017006451 T DE112017006451 T DE 112017006451T DE 112017006451 B4 DE112017006451 B4 DE 112017006451B4
Authority
DE
Germany
Prior art keywords
section
program
electronic control
ecu
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE112017006451.1T
Other languages
English (en)
Other versions
DE112017006451T5 (de
Inventor
Nobuhito Miyauchi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE112017006451T5 publication Critical patent/DE112017006451T5/de
Application granted granted Critical
Publication of DE112017006451B4 publication Critical patent/DE112017006451B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/142Reconfiguring to eliminate the error
    • G06F11/143Reconfiguring to eliminate the error with loss of software functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/203Failover techniques using migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2048Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share neither address space nor persistent storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • B60R16/0231Circuits relating to the driving or the functioning of the vehicle
    • B60R16/0232Circuits relating to the driving or the functioning of the vehicle for measuring vehicle parameters and indicating critical, abnormal or dangerous conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/029Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
    • B60W2050/0292Fail-safe or redundant systems, e.g. limp-home or backup systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/029Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
    • B60W2050/0297Control Giving priority to different actuators or systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/04Monitoring the functioning of the control system
    • B60W2050/041Built in Test Equipment [BITE]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/04Monitoring the functioning of the control system
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/04Monitoring the functioning of the control system
    • B60W50/045Monitoring control system parameters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0715Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a system implementing multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0739Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Gemeinsam genutzte Backup-Einheit, umfassendeinen Diagnoseabschnitt (132) zum Diagnostizieren einer Anomalie in mehreren elektronischen Steuereinheiten, die, um eine einzelne Funktion durchzuführen, ein Programm ausführen, das gemäß der Funktion verschieden ist;einen Ladeabschnitt (135) zum Laden, aus einem Speicherabschnitt, der mehrere Programme im Voraus speichert, eines Programms, das dasselbe ist wie ein Programm, das durch eine anormale Einheit ausgeführt wird, die eine elektronische Steuereinheit ist, deren Anomalie durch den Diagnoseabschnitt detektiert worden ist; undeinen Ausführungsabschnitt (131) zum Ausführen des durch den Ladeabschnitt geladenen Programms, wodurch eine Funktion, die dieselbe wie eine Funktion der anormalen Einheit ist, anstelle der anormalen Einheit durchgeführt wird,wobei, wenn die anormale Einheit eine elektronische Steuereinheit ist, die zwei oder mehr Programme ausführt, der Ausführungsabschnitt ein durch den Ladeabschnitt zu ladendes Programm gemäß einer Größe einer Belastung eines Prozessors, die für jedes Programm vorhergesagt wird, auswählt.

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft eine gemeinsam genutzte Backup-Einheit und ein Steuersystem.
  • Stand der Technik
  • Eine Selbstdiagnosefunktion wird einer ECU, die in einem gewerblich erhältlichen Kraftfahrzeug montiert ist, hinzugefügt. Es ist anzumerken, dass „ECU“ eine Abkürzung für Electronic Control Unit - elektronische Steuereinheit ist. Wenn ein Problem auftritt, werden Daten zu diesem Zeitpunkt aufgezeichnet und als ein Referenzmaterial zur Reparatur verwendet. Wenn eine Anomalie in einem Eingangssignal in die ECU auftritt, wird das Eingangssignal zu einem in der ECU gespeicherten Standardwert oder Referenzwert geschaltet, sodass das Fahren des Autos ermöglicht wird, um dadurch die Funktionssicherheit zu gewährleisten. Wenn eine Anomalie in der ECU auftritt, wird ein Ausgang zu einem festgelegten Signal einer Backup-IC geschaltet, sodass das Fahren des Autos ermöglicht wird, um dadurch die Funktionssicherheit zu gewährleisten. Es ist anzumerken, dass „IC“ eine Abkürzung für Integrated Circuit - integrierte Schaltung ist.
  • In den letzten Jahren wird das Sicherheitskonzept in einem automatisierten Fahrsystem, dessen Entwicklung auf nationaler Ebene gefördert wurde, vom Standpunkt der Verhinderung von Unfällen aus gesehen, als sehr wichtig angesehen. Das heutige Kraftfahrzeug ist selbst ein sehr kompliziertes System. Um die Sicherheit zu gewährleisten, ist ISO 26262 formuliert worden, die ein internationaler Sicherheitsstandard für Kraftfahrzeuge ist. Mit ISO 26262 wird ein Rahmen zur systematischen Verwaltung der Funktionssicherheit bestimmt. Ein Produktentwicklungsprozess wird auf Systemebene, Hardwareebene und Softwareebene des Kraftfahrzeugs geregelt. Innerhalb dieses Rahmens werden Risikostufen durch ein Verfahren basierend auf dem für das Kraftfahrzeug charakteristischen Risiko bestimmt. Die das System bildenden Komponenten werden durch ASIIL organisiert. Es ist anzumerken, dass „ASIL“ eine Abkürzung für Automotive Safety Integrity Level - Kraftfahrzeugsicherheitsintegritätsniveau ist.
  • Bezüglich der Funktionsklassifizierung basierend auf ASIL legt die Nicht-Patentliteratur 1 Beispiele seiner Positionierung, das heißt Markterwartung, dar. Ein Assistenzverlust bei einer Abbiegefunktion und ein Fahrfähigkeitsverlust einer Fahrtfunktion sind zum Beispiel bei einem relativ moderaten Niveau von ASIL A oder höher positioniert. Im Gegensatz dazu sind ein Bremsfunktionsverlust einer Anhaltefunktion und eine Lenkradsperre einer Abbiegefunktion bei einem kritischeren Niveau von ASIL C oder höher positioniert. Ein Konzept unter Berücksichtigung der Risikoverwaltung verschiedener Arten von Funktionen des Kraftfahrzeugs wird benötigt.
  • Insbesondere wird bei einer Implementierung der ECU, die der Kern des Steuerprozesses in einem automatisierten Fahrsystem ist, ein Multiplexsystem wie in einer Weltraumrakete und einem Flugzeug angenommen, sodass die ECU selbst wenn beim Auftreten eines Hardwareausfalls nicht unsteuerbar gemacht wird. Selbst wenn ein Kanal im Multiplexsystem ausfällt, kann die ECU die Ausführung der Verarbeitung fortsetzen, solange ein verbleibender Kanal normal arbeiten kann. Die ECU wird allgemein eine ADAS-ECU genannt. Es ist anzumerken, dass „ADAS“ eine Abkürzung für Advanced Driver Assistance System - Fortgeschrittenes Fahrerassistenzsystem ist.
  • 15 stellt ein Konfigurationsbeispiel für ein Multiplexsystem des automatisierten Fahrsystems dar. Zwei Entscheidungs-ECUs 311 in 15 sind ECUs, die eine Routenbestimmungsverarbeitung für automatisiertes Fahren durchführen und ein Duplexsystem bilden. Elemente von Ausgangsinformationen aus den beiden Entscheidungs-ECUs 311 werden durch eine Schalteinheit 361 verglichen. Falls sie nicht übereinstimmen, wird bestimmt, dass ein Ausfall aufgetreten ist, und eine ausfallende Entscheidungs-ECU 311 wird von einem CAN 711 getrennt. Es ist anzumerken, dass „CAN“ eine Abkürzung für Controller Area Network - Steuerungsbereichsnetzwerk ist. Drei Steuerungs-ECUs 211 in 15 sind ECUs, die den Motor und das Lenkrad steuern und ein Triplexsystem bilden. Elemente von Ausgangsinformationen aus den drei Steuerungs-ECUs 211 werden durch eine Schalteinheit 261 verglichen. Falls sie nicht übereinstimmen, wird eine Steuerungs-ECU 211, die meistens in der Minderheit ist, als ausgefallen bestimmt und wird vom CAN 711 getrennt.
  • Kraftfahrzeuge haben sich derart entwickelt, dass sie auch mit vielen ECUs für Anwendungen außer dem automatisierten Fahrsystem ausgestattet sind. Heutzutage tendiert die Anzahl von montierten ECUs auch dazu, beachtlich zuzunehmen. Viele neue ECUs sind zum Beispiel nacheinander hinzugefügt worden, wie etwa eine ECU zur Motorsteuerung, die zur Abgasreduzierung und für niedrigere Kraftstoffkosten als Umweltmaßnahmen ausgerichtet ist, eine ECU zur Airbagsteuerung, die für eine fortgeschrittenere Sicherheitsfunktion gegenüber Unfällen ausgerichtet ist, eine ECU für ein Fußgängerdetektionssystem und eine Bremsassistenzfunktion, eine ECU für ETC (eingetragenes Markenzeichen) für den Komfort des Fahrers und eine ECU für ein Autonavigationssystem. Es ist anzumerken, dass „ETC“ eine Abkürzung für Electronic Toll Collection System - elektronisches Mauterhebungssystem ist.
  • Die ECU hat die Verantwortung für wichtige Funktionen übernommen. Falls jedoch als eine Ausfallgegenmaßnahme einfach viele ECU-Systeme gemultiplext werden, wird eine große Zunahme in den Hardwarekosten unausweichlich sein.
  • Website-Informationen, die als Beispiele für das Multiplexsystem veröffentlicht werden, sind unten angedeutet.
  • Bei der in der Nicht-Patentliteratur 2 beschriebenen Technik werden grundlegende Untersysteme gemultiplext, um eine Funktion zu implementieren, mit der bei Ausfall eines Untersystems dieses durch ein anderes Untersystem ergänzt wird. Die ECUs in dieser Technik sind mit einem Fail-Safe-Mechanismus ausgestattet, der selbst bei Auftreten eines Ausfalls eine sichere Handhabung gewährleistet.
  • Die Nicht-Patentliteratur 3 führt eine Triplex-ECU einer Kraftfahrzeug-Steer-by-Wire-Steuerung ein. Eine ausfallbetreibbare Sicherheitsarchitektur einschließlich Degeneration und Fortführung basierend auf einer Mehrheitsentscheidung von 3 Sätzen von ECUs ist bereitgestellt.
  • Die Nicht-Patentliteratur 4 beschreibt eine Entwicklung einer ECU, mit der eine Anomalie detektiert und ein fehlerhafter Kanal automatisch getrennt wird, wenn eine Fehlfunktion oder ein Ausreißer bei einem Mikrocomputer in einem Sensor oder einer Fahrtsteuerungs-ECU auftritt, sodass ein anormaler Betrieb verhindert wird.
  • Bei der in der Nicht-Patentliteratur 5 beschriebenen Technik ist eine ECU aus einer A-Kanal-CPU und einer B-Kanal-CPU zusammengesetzt. Es ist anzumerken, dass „CPU“ eine Abkürzung für Central Processing Unit - Zentralverarbeitungseinheit ist. Die A-Kanal-CPU und die B-Kanal-CPU führen eine Berechnung durch dasselbe Programm basierend auf denselben Eingangsinformationen durch. Die Berechnungsergebnisse werden in den Speichern der jeweiligen Kanäle gespeichert. Die in den Speichern gespeicherten arithmetischen Ergebnisse werden durch eine FS-Vergleichsschaltung geprüft. Es ist anzumerken, dass „FS“ eine Abkürzung für Fail-Safe ist. Während des Andauerns eines passenden Zustands wird ein FS-Relais EIN geschaltet und befindet sich im Ausgabezustand. Wenn eine Fehlanpassung auftritt, wird das FS-Relais AUS geschaltet und befindet sich in einem Ausgabesperrzustand.
  • Patentliteraturen, die das Multiplexsystem weitgehend annehmen, werden unten angedeutet.
  • Die Patentliteratur 1 beschreibt eine Technik bezüglich Motor-ECU-Multiplexing. Bei dieser Technik werden nicht nur Motor-ECUs einfach gemultiplext, sondern nutzen die Motor-ECUs auch Funktionen gemeinsam und tauschen die Funktionen dynamisch aus, wenn ein Ausfall auftritt.
  • Bei der in der Patentliteratur 2 beschriebenen Technik werden mehrere Standby-Knoten mit unterschiedlichen Spezifikationen für mehrere Ausführungsknoten erstellt. Wenn ein Problem in einem Ausführungsknoten auftritt, wird ein Standby-Knoten ausgewählt, der den Grund des Problems eliminieren kann, und der ausgewählte Standby-Knoten übernimmt die Datenverarbeitung.
  • Gemäß der in der Patentliteratur 3 beschriebenen Technik in einer Duplexkonfiguration einschließlich zwei Computern auf demselben Netzwerk überwacht ein Computer den anderen Computer und schaltet im Fall eines Problems die Leistungsversorgung des anderen Computers aus, um den anderen Computer vom Netzwerk zu trennen.
  • Entgegenhaltungsliste
  • Patentliteratur
    • Patentliteratur 1: JP 2016-71771 A
    • Patentliteratur 2: JP 2007-207219 A
    • Patentliteratur 3: JP 2013-232142 A
  • Nicht-Patentliteratur
    • Nicht-Patentliteratur 1: „Extraction of Work Items and Study for Conforming Software Tools Used in In-Vehicle System Development to Requirement Items of ISO 26262“, [Online], Februar 2013, Information-Technology Promotion Agency [abgerufen am 10. Januar 2017,], Internet <URL: http: // www.ipa.go.jp/ files/000026859.pdf>
    • Nicht-Patentliteratur 2: „Automated Driving“, [Online], japanisches Autoforschungsinstitut, [abgerufen am 10. Januar 2017], Internet <URL: http: //www.jari.or.jp/tabid/111/Default.aspx>
    • Nicht-Patentliteratur 3: KANEKO, Takanobu, NAKAMURA, Hideo, „Research of Safe Architecture in Advanced Driver Assistance System", [Online], Juni 2015, JARI Research Journal, [abgerufen am 10. Januar 2017], Internet <URL: http://www.jari.or.jp/Portals/0/resource/JRJ_q/ JRJ20150607_q_. pdf>
    • Nicht-Patentliteratur 4: AOKI, Keiji, „Development Trend of Automated Driving Technology and Issues for Practical Application", [Online], 24. Januar 2014, ISIT Autoelektronik-Forschungsgruppe, abgerufen am 10. Januar 2017], Internet <URL: http://www.car-electronics.jp/files/2013/11/ CEW14_aoki.pdf>
    • Nicht-Patentliteratur 5: „Research and Development of Automated Driving /Truck Platooning Technique“, [Online], New Energy and Industrial Technology Development Organization [abgerufen am 10. Januar 2017], Internet <URL: http://www.nedo.go.jp/content/100095912.pdf>
    • Nicht-Patentliteratur 6: Manimaran, G. u. a.: A fault-tolerant dynamic scheduling algorithm for multiprocessor real-time systems and its analysis. In IEEE Transactions on Parallel and Distributed Systems, Vol. 9, N. 11, Nov. 1998, S. 1137-1152 beschreibt einen fehlertoleranten dynamischen Planungsalgorithmus für Multiprozessor-Echtzeitsysteme. Hierfür wird ein Algorithmus vorgestellt, der eingehende Echtzeitaufgaben dynamisch zuweist entsprechend verfügbaren Ressourcen und Fehlertoleranzanforderungen an Multiprozessorsysteme. Dieses System erlaubt es, auch mehrere gleichzeitige Fehler zu handhaben.
  • Zusammenfassung der Erfindung
  • Technisches Problem
  • Frühere Kraftfahrzeugsysteme sind konzipiert worden, um ECU-Systeme, die zum Handhaben von Ausfällen wichtig sind, zu multiplexen. Heutzutage tendiert die Anzahl von ECUs dazu, beachtlich anzusteigen. Falls daher viele ECU-Systeme gemultiplext werden, wird eine große Zunahme in den Hardwarekosten unausweichlich sein.
  • Als spezifische Hardware nehmen nicht nur die Mikrocomputer der ECUs, sondern auch Montageplatinen und Peripheriegeräte, wie etwa die Netzwerkschnittstellen, sowie Netzwerkkabel und Gehäuse zu. Die Verdrahtung nimmt auch zu, sodass die Anzahl der Schritte der Verdrahtungsinstallation, Verdrahtungsherstellung und Verdrahtungsinstandhaltung zunehmen. Dies führt eine Zunahme im Preis des Kraftfahrzeugs herbei, was zu einer Zunahme in den Kosten für den Benutzer führt.
  • Während die Anzahl von montierten elektronischen Einrichtungen zunimmt, nimmt auch der Leistungsverbrauch zu. Dies führt zu der Notwendigkeit, die Kapazität der zu montierenden Batterie zu erhöhen.
  • Es ist ein Ziel der vorliegenden Erfindung, ein erhebliches ECU-Multiplexing mit weniger Hardware, insbesondere mit geringerem Backup-Aufwand, zu ermöglichen.
  • Lösung des Problems
  • Dieses Problem wird durch die Backup-Einheit nach einem der Ansprüche 1-7 sowie das Steuersystem nach einem der Ansprüche 8-11 gelöst.
  • Eine gemeinsam genutzte Backup-Einheit gemäß einem Aspekt der vorliegenden Erfindung beinhaltet Folgendes:
    • einen Diagnoseabschnitt zum Diagnostizieren einer Anomalie in mehreren elektronischen Steuereinheiten, die, um eine einzelne Funktion durchzuführen, ein Programm ausführen, das gemäß der Funktion verschieden ist;
    • einen Ladeabschnitt zum Laden, aus einem Speicherabschnitt, der mehrere Programme im Voraus speichert, eines Programms, das dasselbe ist wie ein Programm, das durch eine anormale Einheit ausgeführt wird, die eine elektronische Steuereinheit ist, deren Anomalie durch den Diagnoseabschnitt detektiert worden ist; und
    • einen Ausführungsabschnitt zum Ausführen des durch den Ladeabschnitt geladenen Programms, wodurch eine Funktion, die dieselbe wie eine Funktion der anormalen Einheit ist, anstelle der anormalen Einheit durchgeführt wird.
  • Vorteilhafte Effekte der Erfindung
  • Gemäß der vorliegenden Erfindung kann eine gemeinsam genutzte Backup-Einheit jede ECU dynamisch ersetzen, ohne den Prozessor der Backup-Einheit zu überlasten. Daher wird ein erhebliches ECU-Multiplexing möglich, ohne eine Backup-Einheit für jede ECU getrennt zu erstellen. Das heißt, dass ein erhebliches ECU-Multiplexing gemäß der vorliegenden Erfindung mit weniger Hardware möglich ist.
  • Figurenliste
    • 1 ist ein Blockdiagramm, das eine Konfiguration eines Steuersystems gemäß Ausführungsform 1 veranschaulicht.
    • 2 ist ein Blockdiagramm, das eine Hardwarekonfiguration des Steuersystems gemäß Ausführungsform 1 veranschaulicht.
    • 3 ist ein Diagramm, das ein Beispiel für eine zyklische Multitask-Verarbeitung in Ausführungsform 1 veranschaulicht.
    • 4 ist ein Blockdiagramm, das eine Konfiguration einer gemeinsam genutzten Backup-ECU gemäß Ausführungsform 1 veranschaulicht.
    • 5 ist ein Diagramm, das ein Abfolgebeispiel für einen Prozess zu der gemeinsam genutzten Backup-ECU gemäß Ausführungsform 1 veranschaulicht.
    • 6 ist eine Grafik, die ein Beispiel für eine Verwaltungstabelle in der gemeinsam genutzten Backup-ECU gemäß Ausführungsform 1 veranschaulicht.
    • 7 ist ein Flussdiagramm, das einen Betrieb der gemeinsam genutzten Backup-ECU gemäß Ausführungsform 1 veranschaulicht.
    • 8 ist ein Flussdiagramm, das eine Prozedur eines Backup-Ziel-SWC-Auswahlprozesses der gemeinsam genutzten Backup-ECU gemäß Ausführungsform 1 veranschaulicht.
    • 9 ist eine Grafik, die ein Beispiel für eine Verwaltungstabelle in einer gemeinsam genutzten Backup-ECU gemäß Ausführungsform 2 veranschaulicht.
    • 10 ist ein Flussdiagramm, das eine Prozedur eines Backup-Ziel-SWC-Auswahlprozesses der gemeinsam genutzten Backup-ECU gemäß Ausführungsform 2 veranschaulicht.
    • 11 ist ein Blockdiagramm, das eine Konfiguration einer gemeinsam genutzten Backup-ECU gemäß Ausführungsform 3 veranschaulicht.
    • 12 ist ein Diagramm, das ein Abfolgebeispiel für einen Prozess zu der gemeinsam genutzten Backup-ECU gemäß Ausführungsform 3 veranschaulicht.
    • 13 ist ein Graph, der ein Beispiel für Ausgangssteuerkurven eines Gaspedals und einer Motordrosselklappe in Ausführungsform 3 veranschaulicht.
    • 14 ist ein Flussdiagramm, das einen Betrieb der gemeinsam genutzten Backup-ECU gemäß Ausführungsform 3 veranschaulicht.
    • 15 ist ein Blockdiagramm, das ein Konfigurationsbeispiel für ein Multiplexsystem eines herkömmlichen automatisierten Fahrsystems veranschaulicht.
  • Beschreibung der Ausführungsformen
  • Ausführungsformen der vorliegenden Erfindung werden nachfolgend unter Bezugnahme auf die Zeichnungen beschrieben. In den Zeichnungen werden dieselben oder äquivalente Teile durch dieselbe Bezugsziffer bezeichnet. Die Beschreibung für dieselben oder äquivalente Teile der Ausführungsformen werden entsprechend ausgelassen oder vereinfacht. Die vorliegende Erfindung ist nicht auf die unten beschriebenen Ausführungsformen beschränkt und verschiedene Modifikationen können wie erforderlich vorgenommen werden. Unter den unten beschriebenen Ausführungsformen können zum Beispiel zwei oder mehr Ausführungsformen in Kombination umgesetzt werden. Alternativ dazu kann unter den unten beschriebenen Ausführungsformen eine Ausführungsform oder eine Kombination von zwei oder mehr Ausführungsformen teilweise umgesetzt werden.
  • Ausführungsform 1.
  • Diese Ausführungsform wird unter Bezugnahme auf die 1 bis 8 beschrieben.
  • *** Beschreibung der Konfiguration ***
  • Eine Konfiguration eines Steuersystems 100 gemäß dieser Ausführungsform wird unter Bezugnahme auf 1 beschrieben.
  • Das Steuersystem 100 ist mit mehreren elektronischen Steuereinheiten und einer gemeinsam genutzten Backup-Einheit ausgestattet. Um eine einzelne Funktion durchzuführen, führen die mehreren elektronischen Steuereinheiten ein Programm aus, das gemäß der Funktion verschieden ist. Die gemeinsam genutzte Backup-Einheit ist in der Lage, eine beliebige elektronische Steuereinheit unter den mehreren elektronischen Steuereinheiten zu ersetzen.
  • Bei dieser Ausführungsform entspricht das Steuersystem 100 einem automatisierten Fahrsystem.
  • Das Steuersystem 100 ist mit einer Steuerungs-ECU 201 und einer Entscheidungs-ECU 301 als die mehreren elektronischen Steuereinheiten ausgestattet. Die Entscheidungs-ECU 301 ist eine elektronische Steuereinheit, die eine Entscheidungs-SWC 302 ausführt, die ein Programm ist, das einen Entscheidungsprozess einer Fahrtroute durchführt, um eine Funktion zur Entscheidung der Fahrtroute durchzuführen. Es ist anzumerken, dass „SWC“ eine Abkürzung für Software Component - Softwarekomponente ist. Die Steuerungs-ECU 201 ist eine elektronische Steuereinheit, die eine Steuerungs-SWC 202 ausführt, die ein Programm zum Durchführen eines Steuerprozesses des Motors oder Lenkrades ist, um eine Funktion zur Steuerung des Motors oder Lenkrades durchzuführen.
  • Das Steuersystem 100 ist mit einer gemeinsam genutzten Backup-ECU 101 als eine gemeinsam genutzte Backup-Einheit ausgestattet. Die gemeinsam genutzte Backup-ECU 101 ist eine gemeinsam genutzte Backup-Einheit, die als ein Backup fungiert, wenn entweder die Steuerungs-ECU 201 oder die Entscheidungs-ECU 301 ausfällt.
  • Bei einem tatsächlichen Fall werden mehrere gemeinsam genutzte Backup-ECUs 101 im Gesamtsystem gegen Ausfälle in mehreren ECUs bereitgestellt. Wenn eine gemeinsam genutzte Backup-ECU 101 selbst ausfällt, kann sie dann zu der zweiten oder dritten gemeinsam genutzten Backup-ECU 101 geschaltet werden. Das heißt, das Steuersystem 100 ist hinreichend, solange es mit mindestens einer gemeinsam genutzten Backup-Einheit ausgestattet ist, aber bei dieser Ausführungsform ist nicht nur die in 1 veranschaulichte gemeinsam genutzte Backup-ECU 101, sondern sind auch eine oder mehrere andere gemeinsam genutzte Backup-ECUs 101 als die mehreren gemeinsam genutzten Backup-Einheiten bereitgestellt.
  • Die gemeinsam genutzte Backup-ECU 101 ist über eine Schalteinheit 144 mit einem CAN 701 verbunden. Die Schalteinheit 144 besitzt eine Funktion zum Trennen der gemeinsam genutzten Backup-ECU 101 vom CAN 701.
  • Die Steuerungs-ECU 201 ist über eine Schalteinheit 251 mit dem CAN 701 verbunden. Die Schalteinheit 251 besitzt eine Funktion zum Trennen der Steuerungs-ECU 201 vom CAN 701. Wenn die Steuerungs-ECU 201 ausfällt, wird die Steuerungs-ECU 201 unter Verwendung der Schalteinheit 251 vom CAN 701 getrennt.
  • Die Entscheidungs-ECU 301 ist über eine Schalteinheit 351 mit dem CAN 701 verbunden. Die Schalteinheit 351 besitzt eine Funktion zum Trennen der Entscheidungs-ECU 301 vom CAN 701. Wenn die Entscheidungs-ECU 301 ausfällt, wird die Entscheidungs-ECU 301 unter Verwendung der Schalteinheit 351 vom CAN 701 getrennt.
  • Das CAN 701 kann durch einen anderen Typ von Netzwerk ersetzt werden, wie etwa LIN, FlexRay (eingetragenes Markenzeichen) und Ethernet (eingetragenes Markenzeichen). Es ist anzumerken, dass „LIN“ eine Abkürzung für Local Interconnect Network - lokales Interconnect-Netzwerk ist. Es gibt einen Fall, bei dem ein anderer Typ von Netzwerk mit dem CAN 701 auf eine komplizierte Art und Weise verbunden ist. Es gibt auch einen Fall, bei dem die Netzwerksysteme mehrerer CANs 701 über ein Gateway oder ein Netzwerksystemauswahlschalter miteinander verbunden sind. Beispiele für die Netzwerksysteme sind ein Antriebsstrangsystem einschließlich eines Motors und einer Lenksteuereinrichtung, ein Multimedia-System einschließlich eines Autonavigationssystems und einer Autoaudioeinrichtung., ein Karosseriesystem einschließlich elektrischer Fensterheber und elektrischer Sitze und ein Schalter-/Sensorsystem einschließlich verschiedener Arten von Sensoren und Aktoren.
  • Bei dieser Ausführungsform kann eine Zunahme in den Hardwarekosten durch das gemeinsame Nutzen, zwischen den ECUs, der gemeinsam genutzten Backup-ECU 101, die bei Auftreten eines Ausfalls verwendet werden kann, anstatt jede einzelne ECU zu multiplexen, verringert werden.
  • Die gemeinsam genutzte Backup-ECU 101 weist eine Schaltfunktion 102, eine Analysefunktion 103, eine Ladefunktion 104 und eine Diagnosefunktion 105 auf. Die Schaltfunktion 102 ist eine Funktion zum Schalten einer Backup-Ziel-ECU. Die Analysefunktion 103 ist eine Funktion zum Analysieren einer CAN-Nachricht. Die Ladefunktion 104 ist eine Funktion zum Dekomprimieren eines komprimierten Abbildes einer SWC und Laden des dekomprimierten Abbildes. Die Diagnosefunktion 105 ist eine Funktion zum Analysieren einer Anomalie in einer externen ECU. Durch diese Funktionen aktiviert die gemeinsam genutzte Backup-ECU 101 auf einem Speicher 402 eine Gruppe einer notwendigen minimalen Anzahl von SWCs, die an der Backup-Ziel-ECU zu montieren sind, und führt einen Backup-Prozess aus. Genauer gesagt aktiviert die gemeinsam genutzte Backup-ECU 101 eine Steuerungs-SWC 111, wenn sie die Steuerungs-ECU 201 ersetzt. Die gemeinsam genutzte Backup-ECU 101 aktiviert eine Entscheidungs-SWC 121, wenn sie die Entscheidungs-ECU 301 ersetzt. Die gemeinsam genutzte Backup-ECU 101 geht in ein Standby über, nachdem das OS aktiviert wird, sodass eine SWC bei Auftreten eines Ausfalls zur kontinuierlichen Verarbeitung sofort ausgeführt werden kann. Es ist anzumerken, dass „OS“ eine Abkürzung für Operating System - Betriebssystem ist.
  • Wenn die gemeinsam genutzte Backup-ECU 101 verwendet wird, wird die Netzwerkschnittstelle der ausgefallenen ECU getrennt oder geschaltet oder die Leistungsversorgung der ausgefallenen ECU wird unterbrochen.
  • Informationen über einen Zustand und zum Feststellen der ausgefallenen ECU ist für die kontinuierliche Verarbeitung für ein Backup notwendig und diese Informationen müssen im Voraus während des normalen Betriebs erstellt werden. Ein beliebiges Verfahren kann zum Erstellen dieser Informationen verwendet werden. Diese Ausführungsform verwendet ein Verfahren zum Abspeichern derartiger Informationen in einem unabhängigen Speicherbereich entfernt von der ausgefallenen ECU. Genauer gesagt liest die Steuerungs-ECU 201 die zur Fortführung des Prozesses der Steuerungs-SWC 202 notwendigen Informationen aus einem Speicher 502. Die Steuerungs-ECU 201 überträgt die ausgelesenen Informationen durch eine Übertragungsfunktion 204 über das CAN 701 zu der gemeinsam genutzten Backup-ECU 101. Die gemeinsam genutzte Backup-ECU 101 empfängt die von der Steuerungs-ECU 201 übertragenen Informationen. Die gemeinsam genutzte Backup-ECU 101 speichert die empfangenen Informationen im Speicher 402. Gleichermaßen liest die Entscheidungs-ECU 301 notwendige Informationen zur Fortführung des Prozesses der Entscheidungs-SWC 302 aus einem Speicher 602. Die Entscheidungs-ECU 301 überträgt die ausgelesenen Informationen durch eine Übertragungsfunktion 304 über das CAN 701 zu der gemeinsam genutzten Backup-ECU 101. Die gemeinsam genutzte Backup-ECU 101 empfängt die von der Entscheidungs-ECU 301 übertragenen Informationen. Die gemeinsam genutzte Backup-ECU 101 speichert die empfangenen Informationen im Speicher 402.
  • Bei dieser Ausführungsform wird ein Mechanismus zum Empfangen eines Ausfalldetektionssignals von einer Überwachungsziel-ECU durch die gemeinsam genutzte Backup-ECU 101 erstellt. Genauer gesagt sind Beispiele ein Mechanismus, der ein Fehlerdetektionssignal detektiert, ein Mechanismus, der ein Heartbeat-Signal empfängt, und ein Mechanismus, der Informationen von einer Selbstdiagnoseschaltung empfängt, oder dergleichen.
  • Anstatt alle Softwareelemente der ausgefallenen ECU auszuführen, führt die gemeinsam genutzte Backup-ECU 101, die eine relativ niedrige Leistungsfähigkeit aufweist, bei dieser Ausführungsform eine Prioritätsausführung eines Softwareelements durch, das zum kontinuierlichen Fahren unabdingbar ist. Zu diesem Zweck verwaltet die gemeinsam genutzte Backup-ECU 101 die SWCs basierend auf ASIL und wählt eine auszuführende SWC aus. Gemäß dieser Ausführungsform muss keine gemeinsam genutzte Backup-Einheit, die mit dem Multiplexen einer großen Anzahl von ECUs vergleichbar ist, erstellt werden.
  • Gemäß dieser Ausführungsform komprimiert die gemeinsam genutzte Backup-ECU 101 ein speichergeladenes Abbild einer SWC und hält das komprimierte Abbild, um zu bezwecken, in der Lage zu sein, die SWCs vieler ECUs innerhalb der begrenzten Speicherkapazität der gemeinsam genutzten Backup-ECU 101 selektiv zu aktivieren. Wenn notwendig, dekomprimiert die gemeinsam genutzte Backup-ECU 101 das komprimierte Abbild und führt eine SWC-Fortführung durch. Genauer gesagt dekomprimiert die gemeinsam genutzte Backup-ECU 101 ein komprimiertes Abbild 114 der Steuerungs-SWC 111 und aktiviert die Steuerungs-SWC 111, wenn sie die Steuerungs-ECU 201 ersetzt. Wenn sie die Entscheidungs-ECU 301 ersetzt, dekomprimiert die gemeinsam genutzte Backup-ECU 101 ein komprimiertes Abbild 124 der Entscheidungs-SWC 121 und aktiviert die Entscheidungs-SWC 121.
  • Die Hardwarekonfiguration des Steuersystems 100 wird unter Bezugnahme auf 2 beschrieben.
  • Die gemeinsam genutzte Backup-ECU 101 ist ein Mikrocomputer. Die gemeinsam genutzte Backup-ECU 101 ist mit einem Prozessor 401 sowie anderen Hardwareeinrichtungen, wie etwa dem Speicher 402 und einer CAN-Schnittstelle 403, ausgestattet. Der Prozessor 401 ist über Signalleitungen mit den anderen Hardwareeinrichtungen verbunden und steuert diese anderen Hardwareeinrichtungen.
  • Der Prozessor 401 ist eine IC, die verschiedene Arten von Prozesse durchführt. Der Prozessor 401 ist insbesondere eine CPU.
  • Der Speicher 402 ist zum Beispiel ein Flash-Speicher oder RAM. Es ist anzumerken, dass „RAM“ eine Abkürzung für Random Access Memory - Direktzugriffsspeicher ist. Die CAN-Schnittstelle 403 beinhaltet einen Empfänger zum Empfangen von Daten und einen Sender zum Übertragen von Daten. Die CAN-Schnittstelle 403 ist zum Beispiel ein Kommunikationschip oder eine NIC. Es ist anzumerken, dass „NIC“ eine Abkürzung für Network Interface Card - Netzwerkschnittstellenkarte ist. Die CAN-Schnittstelle 403 kann durch eine USB-Schnittstelle ersetzt werden. Es ist anzumerken, dass „USB“ eine Abkürzung für Universal Serial Bus - universeller serieller Bus ist.
  • Die gemeinsam genutzte Backup-ECU 101 kann mit mehreren Prozessoren ausgestattet sein, die den Prozessor 401 ersetzen. Jeder Prozessor ist eine IC, die verschiedene Arten von Prozesse durchführt, gleichermaßen wie der Prozessor 401.
  • Die Schalteinheit 144 ist mit einem FPGA 411 ausgestattet. Es ist anzumerken, dass „FPGA“ eine Abkürzung für Field-Programmable Gate Array - feldprogrammierbares Gate-Array ist.
  • Die Steuerungs-ECU 201 ist ein Mikrocomputer. Die Steuerungs-ECU 201 ist mit einem Prozessor 501 sowie anderen Hardwareeinrichtungen, wie etwa dem Speicher 502 und einer CAN-Schnittstelle 503, ausgestattet. Der Prozessor 501 ist über Signalleitungen mit den anderen Hardwareeinrichtungen verbunden und steuert diese anderen Hardwareeinrichtungen.
  • Der Prozessor 501, der Speicher 502 und die CAN-Schnittstelle 503 sind dieselben wie der Prozessor 401, der Speicher 402 bzw. die CAN-Schnittstelle 403 der gemeinsam genutzten Backup-ECU 101.
  • Die Steuerungs-SWC 202 ist im Speicher 502 gespeichert. Die Steuerungs-SWC 202 wird durch den Prozessor 501 gelesen und durch den Prozessor 501 ausgeführt.
  • Die Schalteinheit 251 ist mit einem FPGA 511 ausgestattet.
  • Die Entscheidungs-ECU 301 ist ein Mikrocomputer. Die Entscheidungs-ECU 301 ist mit einem Prozessor 601 sowie anderen Hardwareeinrichtungen, wie etwa dem Speicher 602 und einer CAN-Schnittstelle 603, ausgestattet. Der Prozessor 601 ist über Signalleitungen mit den anderen Hardwareeinrichtungen verbunden und steuert diese anderen Hardwareeinrichtungen.
  • Der Prozessor 601, der Speicher 602 und die CAN-Schnittstelle 603 sind dieselben wie der Prozessor 401, der Speicher 402 bzw. die CAN-Schnittstelle 403 der gemeinsam genutzten Backup-ECU 101.
  • Die Entscheidungs-SWC 302 ist im Speicher 602 gespeichert. Die Entscheidungs-SWC 302 wird durch den Prozessor 601 gelesen und durch den Prozessor 601 ausgeführt. Die Schalteinheit 351 ist mit einem FPGA 611 ausgestattet.
  • Ein allgemeiner Implementierungsmodus von eingebetteter Software in einer ECU wird unter Bezugnahme auf 3 beschrieben. Bei dieser Ausführungsformen wird dieser Implementierungsmodus bei einer Backup-Ziel-ECU sowie der gemeinsam genutzten Backup-ECU 101 angewendet. In 3 gibt ein ausgefüllter Pfeil einen Aufgabenausführungszustand an und ein unausgefüllter Pfeil gibt einen Aufgabenausführungs-Standby-Zustand an.
  • Im Grunde wird die Anwendungssoftware auf dem eingebetteten OS in einer Multitask-Umgebung häufig ausgeführt, wie in 3 veranschaulicht. Selbst wenn die Verarbeitung zu der Zeit des Ausfalls unterbrochen wird, falls eine Variable einer einzelnen Aufgabe, eine gemeinsam genutzte Variable oder eine globale Variable und gegenwärtige Informationen, wie etwa festgestellte/gespeicherte Informationen über das Verhalten der Anwendung, im Speicher 402 akkumuliert sind, dann ist es durch die Wiederverwendung der akkumulierten Informationen möglich, eine kontinuierliche Verarbeitung durch die gemeinsam genutzte Backup-ECU 101 auszuführen.
  • Falls der Ausführungszyklus der Anwendungssoftware ein relativ kurzer Zyklus von bis zu etwa mehreren Dutzenden Millisekunden ist, ist die kontinuierliche Verarbeitung durch die gemeinsam genutzte Backup-ECU 101 einfach. Genauer gesagt ist es möglich, die abgespeicherten Informationen zusammen als ein Satz von Eingabeakkumulationsinformationen zu der Verarbeitungsstartzeit zu verwenden. Wenn die Ausführung der Verarbeitung der Anwendungssoftware, die in der Mitte eines Zyklus ausgefallen war, jedoch wieder aufgenommen wird, muss die Verarbeitung dieses Zyklus erneut von Anfang an durchgeführt werden, was zu einer Verzögerung führt.
  • Es besteht auch eine Möglichkeit, dass die Anwendungssoftware während des Abspeicherns der Eingabeakkumulationsinformationen jedes Zyklus ausfallen kann. Daher wird ein Abspeicherungsbeendigungs-Flag erstellt. Aus dem EIN/AUS dieses Flags kann beurteilt werden, ob die Abspeicherung beendet ist. Falls zwei Abspeicherungsbereiche für die Eingabeakkumulationsinformationen reserviert sind, können selbst dann, wenn das Schreiben zum Abspeichern in einem Bereich unvollständig ist, frühere Informationen, die in dem anderen Bereich gespeichert sind, verwendet werden, sodass ein Einfluss nur auf eine einzyklische Verzögerung unterdrückt werden kann.
  • Eine Konfiguration der gemeinsam genutzten Backup-ECU 101 gemäß dieser Ausführungsform wird unter Bezugnahme auf 4 beschrieben.
  • Die gemeinsam genutzte Backup-ECU 101 ist mit einem Ausführungsabschnitt 131, einem Diagnoseabschnitt 132, einem Erzeugungsabschnitt 133, einer Verwaltungstabelle 134, einem Ladeabschnitt 135, einem Dekomprimierungsabschnitt 136, einem ersten Speicherungsabschnitt 137, einem zweiten Speicherungsabschnitt 139, einem Analyseabschnitt 140 und einem Kommunikationsabschnitt 141 als Funktionselemente ausgestattet. Der Ausführungsabschnitt 131 ist mit einem ersten Verarbeitungsabschnitt 142 und einem zweiten Verarbeitungsabschnitt 143 ausgestattet. Die Funktionen des Ausführungsabschnitts 131, des Diagnoseabschnitts 132, des Erzeugungsabschnitts 133, des Ladeabschnitts 135, des Dekomprimierungsabschnitts 136 und des Analyseabschnitts 140 werden durch Software implementiert. Die Verwaltungstabelle 134, der erste Speicherungsabschnitt 137 und der zweite Speicherungsabschnitt 139 werden durch den Speicher 402 implementiert. Der Kommunikationsabschnitt 141 wird durch die CAN-Schnittstelle 403 implementiert.
  • Ein gemeinsam genutztes Backup-Programm, das ein Programm zum Implementieren der Funktionen des Ausführungsabschnitts 131, des Diagnoseabschnitts 132, des Erzeugungsabschnitts 133, des Ladeabschnitts 135, des Dekomprimierungsabschnitts 136 und des Analyseabschnitts 140 ist, ist im Speicher 402 gespeichert. Das gemeinsam genutzte Backup-Programm wird durch den Prozessor 401 gelesen und durch den Prozessor 401 ausgeführt. Das OS ist auch im Speicher 402 gespeichert. Der Prozessor 401 für das gemeinsam genutzte Backup-Programm während der Ausführung des OS aus. Das gemeinsam genutzte Backup-Programm kann teilweise oder vollständig im OS eingebettet sein.
  • Informationen, Daten, Signalwerte und Variablenwerte, die die Verarbeitungsergebnisse des Ausführungsabschnitts 131, des Diagnoseabschnitts 132, des Erzeugungsabschnitts 133, des Ladeabschnitts 135, des Dekomprimierungsabschnitts 136 und des Analyseabschnitts 140 repräsentieren, sind im Speicher 402 oder in einem Register oder Cache-Speicher im Prozessor 401 gespeichert.
  • Alternativ dazu kann das gemeinsam genutzte Backup-Programm in einem portablen Aufzeichnungsmedium gespeichert sein, wie etwa einer magnetischen Platte oder optischen Platte.
  • *** Beschreibung des Betriebs ***
  • Der Überblick des Betriebs der gemeinsam genutzten Backup-ECU 101 gemäß dieser Ausführungsform wird unter Bezugnahme auf 1 beschrieben. Der Betrieb der gemeinsam genutzten Backup-ECU 101 entspricht einem Backup-Verfahren gemäß dieser Ausführungsform.
  • Die gemeinsam genutzte Backup-ECU 101 untersucht die CAN-Nachricht, die über das CAN 701 durch die Analysefunktion 103 eingegangen ist, und detektiert einen Ausfall in der Entscheidungs-ECU 301 oder Steuerungs-ECU 201 durch die Diagnosefunktion 105. Alternativ dazu ist es möglich, ein Verfahren zu implementieren, gemäß dem die Entscheidungs-ECU 301 oder Steuerungs-ECU 201 mit einer Selbstdiagnosefunktion ausgestattet ist und sie eine CAN-Nachricht der Zeit des Auftretens eines Ausfalls zu der gemeinsam genutzten Backup-ECU 101 überträgt.
  • Nach der Detektion eines Ausfalls schlägt die gemeinsam genutzte Backup-ECU 101 durch die Schaltfunktion 102 in der Verwaltungstabelle 134 nach, wählt eine zu sichernde SWC aus und extrahiert ein komprimiertes Abbild der entsprechenden SWC.
  • Genauer gesagt extrahiert die gemeinsam genutzte Backup-ECU 101 das komprimierte Abbild 124 der Entscheidungs-SWC 121 oder das komprimierte Abbild 114 der Steuerungs-SWC 111. Die gemeinsam genutzte Backup-ECU 101 lädt das komprimierte Abbild in den Ausführungsspeicher durch die Ladefunktion 104 und führt die entsprechende SWC aus. Genauer gesagt führt die gemeinsam genutzte Backup-ECU 101 die Entscheidungs-SWC 121 oder Steuerungs-SWC 111 aus.
  • Die gemeinsam genutzte Backup-ECU 101 überträgt eine CAN-Nachricht, die eine Trennanweisung ist, zu der Schalteinheit 351 oder der Schalteinheit 251, sodass die ausgefallene Entscheidungs-ECU 301 oder die ausgefallene Steuerungs-ECU 201 keinen Übertragungs-/Empfangsprozess einer anormalen CAN-Nachricht durchführen wird.
  • Ein Betrieb der gemeinsam genutzten Backup-ECU 101 wird ausführlich unter Bezugnahme auf 4 beschrieben.
  • Der Kommunikationsabschnitt 141 ist mit dem CAN 701 verbunden und führt einen Übertragungs-/Empfangsprozess einer CAN-Nachricht durch. Der Kommunikationsabschnitt 141 transferiert die empfangene CAN-Nachricht zum ersten Verarbeitungsabschnitt 142 und zum Analyseabschnitt 140. Der erste Verarbeitungsabschnitt 142 verarbeitet die empfangene CAN-Nachricht der Zeit, zu der die SWC aktiviert und ausgeführt wird. Der zweite Verarbeitungsabschnitt 143 transferiert eine Übertragungs-CAN-Nachricht der Zeit, zu der die SWC aktiviert und ausgeführt wird, zum Kommunikationsabschnitt 141. Der Erzeugungsabschnitt 133 transferiert eine Übertragungs-CAN-Nachricht für die Schalteinheit 144 zum Kommunikationsabschnitt 141. Der Analyseabschnitt 140 transferiert Informationen bezüglich einer Diagnoseziel-ECU zum Diagnoseabschnitt 132. Der Diagnoseabschnitt 132 bestimmt, ob die ECU ausgefallen ist. Nach der Detektion eines Ausfalls überträgt der Diagnoseabschnitt 132 Ausfalldetektionsinformationen zum Ausführungsabschnitt 131 und zum Erzeugungsabschnitt 133. Der Analyseabschnitt 140 überträgt CAN-Nachrichteninformationen der Zeit, zu der die Diagnoseziel-ECU normal arbeitet, zum zweiten Speicherungsabschnitt 139 und speichert die CAN-Nachrichteninformationen im zweiten Speicherungsabschnitt 139.
  • Wenn der Fehler durch den Diagnoseabschnitt 132 gemeldet wird, schlägt der Ausführungsabschnitt 131 in der Verwaltungstabelle 134 nach und wählt eine SWC aus, die gesichert werden muss. Der Ausführungsabschnitt 131 liest ein notwendiges Speicherabbild aus dem ersten Speicherungsabschnitt 137 und dekomprimiert das Speicherabbild durch den Dekomprimierungsabschnitt 136. Der Ausführungsabschnitt 131 lädt das Speicherabbild durch den Ladeabschnitt 135 in den Speicher 402. Dann aktiviert und führt der Ausführungsabschnitt 131 diese SWC aus.
  • Wie beschrieben diagnostiziert der Diagnoseabschnitt 132 bei dieser Ausführungsform eine Anomalie in den mehreren ECUs. Der Ladeabschnitt 135 lädt, aus dem ersten Speicherabschnitt 137, der mehrere Programme im Voraus speichert, ein Programm, das dasselbe wie ein Programm ist, das durch eine anormale Einheit ausgeführt wird, die eine ECU ist, deren Anomalie durch den Diagnoseabschnitt 132 detektiert worden ist. Der Ausführungsabschnitt 131 führt das durch den Ladeabschnitt 135 geladene Programm aus, wodurch eine Funktion, die dieselbe wie eine Funktion der anormalen Einheit ist, anstelle der anormalen Einheit durchgeführt wird.
  • Als ein spezifisches Beispiel wird angenommen, dass der Diagnoseabschnitt 132 eine Anomalie der Steuerungs-ECU 201 detektiert hat. In diesem Fall lädt der Ladeabschnitt 135 die Steuerungs-SWC 111 aus dem ersten Speicherabschnitt 137, die ein Programm ist, das derselbe wie die Steuerungs-SWC 202 ist, die durch die Steuerungs-ECU 201 ausgeführt wird. Durch das Ausführen der durch den Ladeabschnitt 135 geladenen Steuerungs-SWC 111 führt der Ausführungsabschnitt 131 eine Funktion zum Steuern des Motors oder Lenkrades anstelle der Steuerungs-ECU 201 durch.
  • Der Kommunikationsabschnitt 141 empfängt eine einzelne Nachricht von den mehreren ECUs, die eine Zustandsvariable angibt, die die mehreren ECUs während der Ausführung des Programms verwenden. Der Ausführungsabschnitt 131 stellt eine Zustandsvariable, die zu verwenden ist, wenn das durch den Ladeabschnitt 135 geladene Programm ausgeführt wird, basierend auf den Nachrichten, die durch den Kommunikationsabschnitt 141 von der anormalen Einheit vor der Detektion der Anomalie durch den Diagnoseabschnitt 132 empfangen werden, ein.
  • Als ein spezifisches Beispiel wird angenommen, dass der Diagnoseabschnitt 132 eine Anomalie der Steuerungs-ECU 201 detektiert. In diesem Fall stellt der Ausführungsabschnitt 131 eine Zustandsvariable der durch den Ladeabschnitt 135 geladenen Steuerungs-SWC 111 gemäß einer Zustandsvariable der Steuerungs-SWC 202 ein, die durch eine durch den Kommunikationsabschnitt 141 von der Steuerungs-ECU 201 vor der Detektion der Anomalie durch den Diagnoseabschnitt 132 empfangene CAN-Nachricht angegeben wird.
  • Hinsichtlich der bereitgestellten Verwaltungstabelle 134 ist eine Tabelle nicht notwendigerweise unabdingbar, da ein Auswahlprozess selbst der SWC durch einen Zweigprozess eines if-Satzes oder dergleichen eines Programms umgesetzt werden kann. Nichtsdestotrotz wird eine Tabelle empfohlen, da sie eine Implementierung und Verwaltung des Einstellungsprozesses der SWC erleichtert. Wie die SWC ausgewählt wird, wird spezifisch unter Bezugnahme auf das Beispiel von 5 beschrieben.
  • In dem Beispiel von 5 gibt es als normal arbeitende ECUs drei ECUs, die eine Hochleistung-ECU1, eine Hochleistung-ECU2 und eine Mittelleistung-ECU3 sind. Sowohl die ECU1 als auch die ECU2 entspricht der Steuerungs-ECU 201. Die ECU3 entspricht der Entscheidungs-ECU 301. In der ECU1 wirken drei SWCs, die eine ASIL-D-SWC11, eine ASIL-D-SWC12 und eine ASIL-D-SWC13 sind, jeweils als die Steuerungs-SWC 202 auf einem ASIL-D-orientierten OS 805. In der ECU2 wirken drei SWCs, die eine ASIL-C-SWC21, eine ASIL-B-SWC22 und eine ASIL-A-SWC23 sind, jeweils als die Steuerungs-SWC 202 auf einem ASIL-C-orientierten OS 815. In der ECU3 wirken drei SWCs, die eine ASIL-B-SWC31, eine ASIL-A-SWC32 und eine QM-SWC33 sind, jeweils als die Entscheidungs-SWC 302 auf einem ASIL-B-orientierten OS 825.
  • Im Gegensatz dazu gibt es zwei gemeinsam genutzte Backup-ECUs 101, die eine Niederleistung-BECU1 und eine Niederleistung-BECU2 sind. In der BECU1 läuft ein ASIL-D-orientiertes OS 834 ab. In der BECU2 läuft ein ASIL-D-orientiertes OS 844 ab.
  • In dem Beispiel von 5 findet kein Backup zu der gemeinsam genutzten Backup-ECU 101 statt, wenn die ECU vollständig ausfällt, sondern wenn eine Möglichkeit auftritt, dass die ECU1, ECU2 und ECU3 aufgrund eines Temperaturanstiegs möglicherweise ausfallen. Die als das Backup-Ziel auszuwählende SWC ist eine SWC mit einem ASIL von C oder mehr. Dies hängt von der Voraussetzung ab, dass ein Schlimmstfall vermieden werden kann, selbst wenn die SWC mit einem ASIL von B oder weniger nicht funktioniert.
  • Unter der Annahme, dass aufgrund eines Temperaturanstiegs eine Möglichkeit auftritt, dass die ECU1, ECU2 und ECU3 möglicherweise ausfallen, oder die ECU1, ECU2 und ECU3 tatsächlich ausgefallen sind. In diesem Fall werden die ASIL-D-SWC11 und ASIL-D-SWC12 in der ECU1 zu der BECU1 gesichert und die ASIL-D-SWC13 in der ECU1 und die ASIL-C-SWC21 in der ECU2 werden zu der BECU2 gesichert. Infolgedessen werden in der BECU1 eine ASIL-D-SWC41 und eine ASIL-D-SWC42 jeweils als die Steuerungs-SWC 111 auf dem ASIL-D-orientierten OS 834 ausgeführt. In der BECU2 werden eine ASIL-D-SWC51 und eine ASIL-C-SWC52 jeweils als die Steuerungs-SWC 111 auf dem ASIL-D-orientierten OS 844 ausgeführt. Die anderen SWCs mit einem ASIL von B oder weniger werden nicht gesichert.
  • 6 veranschaulicht ein Beispiel für die Verwaltungstabelle 134, die im Beispiel von 5 verwendet wird.
  • Bezüglich der ECU1, ECU2 und ECU3, die gewöhnlich funktionieren, werden die ID der Backup-Ziel-SWC und die ID der gemeinsam genutzten Backup-ECU 101 als eine Backup-Destination getrennt registriert. Es ist anzumerken, dass „ID“ eine Abkürzung für Identifier - Kennung ist. ASIL-Informationen werden der ID jeder Backup-Ziel-SWC hinzugefügt. Da es zwei gemeinsam genutzte Backup-ECUs 101 gibt, werden die IDs der gemeinsam genutzten Backup-ECU 101 als die Backup-Destination zwei Einträgen in der Verwaltungstabelle 134 zugeordnet. Eine gemeinsam genutzte Backup-ECU 101 ist immer einer SWC mit einem wichtigen ASIL als die Backup-Destination zugeordnet. 1 oder 0 der Backup-Destination wird einer SWC mit einem ASIL mit niedrigem Niveau zugeordnet.
  • In dem oben beschriebenen Ausfallbeispiel werden unter den Backup-Ziel-SWCs die SWC11 und SWC12 der BECU1 zugeordnet und die SWC13 und SWC21 werden der BECU2 zugeordnet. Die Zuteilungsregel lautet, dass ein Maximum von zwei SWCs in der gemeinsam genutzten Backup-ECU 101 betrieben werden. Wenn ein Ausfall auftritt, wird die gemeinsam genutzte Backup-ECU 101 der Backup-Destination zugeordnet. Wenn der Backup-Prozess beendet ist, wird ein In-Gebrauch-Flag der gemeinsam genutzten Backup-ECU 101 der Backup-Destination in der Verwaltungstabelle 134 eingerichtet. Wenn eine ECU das nächste Mal ausfällt, kann somit nicht dieselbe gemeinsam genutzte Backup-ECU 101, sondern eine gemeinsam genutzte Backup-ECU 101, die nicht in Gebrauch ist, ausgewählt werden.
  • Wenn eine anormale Einheit eine ECU ist, die zwei oder mehr Programme ausführt, wählt der Ausführungsabschnitt 131 gemäß dieser Ausführungsform auf diese Art und Weise ein durch den Ladeabschnitt 135 zu ladendes Programm gemäß der im Voraus für jedes Programm definierten Priorität aus. Wenn eine Anomalie in zwei oder mehr ECUs durch den Diagnoseabschnitt 132 detektiert wird, wählt der Ausführungsabschnitt 131 ein durch den Ladeabschnitt 135 zu ladendes Programm gemäß der im Voraus für jede Kombination einer ECU und eines Programms definierten Priorität aus. Bezüglich der Definition der Priorität kann eine beliebige Definition eingesetzt werden. Bei dieser Ausführungsform wird ASIL eingesetzt, wie oben erwähnt.
  • Die Verarbeitungsprozedur des gemeinsam genutzten Backup-Programms, das in der gemeinsam genutzten Backup-ECU 101 betrieben wird, wird unter Bezugnahme auf 7 beschrieben. Sobald in einem Kraftfahrzeug der Motor gestartet und die Leistungsversorgung eingeschaltet wird, wird ein Backup-orientierter Prozess der gemeinsam genutzten Backup-ECU 101 kontinuierlich ausgeführt, bis die Leistungsversorgung durch einen Motorstopp unterbrochen wird.
  • Wenn die Leistungsversorgung eingeschaltet und der Backup-orientierte Prozess gestartet wird, wird in Schritt S11 ein Initialisierungsprozess für interne Informationen ausgeführt. Der Kommunikationsabschnitt 141 startet die Erfassung der CAN-Nachricht auf dem CAN 701.
  • In Schritt S12 empfängt der Analyseabschnitt 140 die gegenwärtigen Informationen jeder als eine Backup-Quelle dienenden ECU und speichert die empfangenen gegenwärtigen Informationen in den zweiten Speicherungsabschnitt 139 ab. Jede als eine Backup-Quelle dienende ECU wird die gegenwärtigen Informationen kontinuierlich zu der gemeinsam genutzten Backup-ECU 101 übertragen. Um die Nachrichtengröße zu verringern, kann jede Backup-Quellen-ECU alternativ dazu die gegenwärtigen Informationen selbst komprimieren und die komprimierten gegenwärtigen Informationen übertragen, und die übertragenen komprimierten gegenwärtigen Informationen können durch die gemeinsam genutzte Backup-ECU 101 dekomprimiert werden.
  • In Schritt S13 bestätigt der Diagnoseabschnitt 132, ob ein Ausfall in irgendeiner ECU aufgetreten ist, aus dem Ergebnis einer Analyse der CAN-Nachricht durch den Analyseabschnitt 140. Falls kein Ausfall aufgetreten ist, wird ein Schleifenprozess wiederholt durchgeführt, wobei dieser erneut mit dem Prozess des Schritts S12 anfängt. Der Diagnoseabschnitt 132 detektiert ein Auftreten eines Ausfalls nicht nur aus dem Ergebnis der Analyse der empfangenen CAN-Nachricht. Falls eine CAN-Nachricht, die periodisch empfangen werden sollte, nicht eingeht, detektiert der Diagnoseabschnitt 132 diesen Fall auch als ein Auftreten eines Ausfalls.
  • Falls ein Ausfall auftritt, bestätigt der Ausführungsabschnitt 131 in Schritt S14, ob diese gemeinsam genutzte Backup-ECU 101 einer Backup-Destination entspricht. Falls diese gemeinsam genutzte Backup-ECU 101 keiner Backup-Destination entspricht, wird der Schleifenprozess wiederholt durchgeführt, der erneut mit dem Prozess des Schritts S12 anfängt.
  • Falls die gemeinsam genutzte Backup-ECU 101 einer Backup-Destination entspricht, dann schlägt der Ausführungsabschnitt 131 in Schritt S15 in der Verwaltungstabelle 134 nach und führt einen Backup-Ziel-SWC-Auswahlprozess zum Auswählen einer Backup-Ziel-SWC aus. 8 veranschaulicht eine Prozedur des Backup-Ziel-SWC-Auswahlprozesses. In Schritt S31 erfasst der Ausführungsabschnitt 131 die IDs von Backup-Ziel-SWCs aus der Verwaltungstabelle 134. In Schritt S32 wählt der Ausführungsabschnitt 131 aus den IDs der Backup-Ziel-SWCs nur IDs mit einem ASIL eines erforderlichen Niveaus oder mehr aus. In Schritt S33 schaltet der Ausführungsabschnitt 131 die In-Gebrauch-Flags der IDs der ausgewählten Backup-Ziel-SWCs innerhalb der Verwaltungstabelle 134 ein.
  • Eine Aktualisierung des In-Gebrauch-Flags der Verwaltungstabelle 134 sollte auch zu der Verwaltungstabelle 134 einer anderen gemeinsam genutzten Backup-ECU 101 durch eine CAN-Nachricht oder dergleichen übertragen werden. Eine Aktualisierung kann in der Tat jedoch ohne eine Übertragung zu der Verwaltungstabelle 134 bearbeitet werden, da eine Auswahldetektion auch in der anderen gemeinsam genutzten Backup-ECU 101 durchgeführt worden ist.
  • In Schritt S16 erfasst der Ladeabschnitt 135 das Speicherabbild der in Schritt S15 ausgewählten SWC aus dem ersten Speicherungsabschnitt 137. Der Ladeabschnitt 135 dekomprimiert das erfasste Speicherabbild durch den Dekomprimierungsabschnitt 136. Der Ladeabschnitt 135 lädt das dekomprimierte Speicherabbild in den Speicher 402.
  • In Schritt S17 trennt der Ausführungsabschnitt 131 die Backup-Quellen-ECU vom CAN 701 durch Betreiben der Schalteinheit, die mit der Backup-Quellen-ECU verbunden ist. Genauer gesagt überträgt der Ausführungsabschnitt 131 eine CAN-Nachricht, die eine Trennung anweist, durch den Kommunikationsabschnitt 141 zu der Schalteinheit 251, falls die Backup-Quellen-ECU die Steuerungs-ECU 201 ist. Falls die Backup-Quellen-ECU die Entscheidungs-ECU 301 ist, überträgt der Ausführungsabschnitt 131 eine CAN-Nachricht, die eine Trennung anweist, durch den Kommunikationsabschnitt 141 zu der Schalteinheit 351.
  • In Schritt S18 aktiviert der Ausführungsabschnitt 131 den Prozess der in Schritt S16 geladenen SWC. Dieser Prozess der SWC wird als eine andere Aufgabe unabhängig vom Hauptschleifenprozess des Backup-orientierten Prozesses aktiviert.
  • Wenn der Prozess der geladenen SWC gestartet wird, dann führt der Ausführungsabschnitt 131 in Schritt S21 den Hauptschleifenprozess der geladenen SWC aus.
  • *** Beschreibung vorteilhafter Effekte der Ausführungsform ***
  • Bei dieser Ausführungsform kann die gemeinsam genutzte Backup-ECU 101 jede ECU dynamisch ersetzen. Die ECUs können daher im Wesentlichen gemultiplext werden, ohne Backup-Einheiten für die jeweiligen ECUs getrennt zu erstellen. Das heißt, die ECUs gemäß dieser Ausführungsform können im Wesentlichen mit weniger Hardware gemultiplext werden.
  • Bei dieser Ausführungsform ist die gemeinsam genutzte Backup-ECU 101 mit dem Ausführungsabschnitt 131, dem Diagnoseabschnitt 132, dem Ladeabschnitt 135, dem ersten Speicherungsabschnitt 137, dem zweiten Speicherungsabschnitt 139, dem Analyseabschnitt 140 und dem Kommunikationsabschnitt 141 ausgestattet. Der Kommunikationsabschnitt 141 verbindet das Netzwerk und führt einen Nachrichtenübertragungs-/-empfangsprozess durch. Der Analyseabschnitt 140 analysiert eine empfangene Nachricht. Der Diagnoseabschnitt 132 bestimmt aus dem Analyseergebnis der Nachricht, ob irgendeine andere ECU ausfällt. Wenn ein Ausfall irgendeiner anderen der mehreren ECUs detektiert wird, aktiviert der erste Verarbeitungsabschnitt 142 des Ausführungsabschnitts 131 nicht notwendigerweise alle der Ersatzsoftwarekomponenten zum Backup, sondern wählt eine geeignete Ersatzsoftwarekomponente einzeln gemäß dem notwendigen Niveau zur kontinuierlichen Ausführung aus und aktiviert die ausgewählte Ersatzsoftwarekomponente. Der zweite Verarbeitungsabschnitt 143 des Ausführungsabschnitts 131 erzeugt eine Trennanweisungsnachricht, die zu einer Schalteinheit, mit der die ausgefallene ECU verbunden ist, zu übertragen ist, und transferiert die erzeugte Trennanweisungsnachricht zum Kommunikationsabschnitt 141. Der erste Speicherungsabschnitt 137 speichert Ausführungsspeicherabbilder der Ersatzsoftwarekomponenten der anderen mehreren ECUs im Voraus. Der Ladeabschnitt 135 lädt die Ausführungsspeicherabbilder in den Ausführungsspeicher.
  • Gemäß dieser Ausführungsform kann die Zunahme der Gesamtanzahl von ECUs, wenn die ECUs gemultiplext werden, durch ein gemeinsames Nutzen der Backup-ECU verringert werden. Infolgedessen kann eine Zunahme in den Hardwareproduktionskosten und dem Leistungsverbrauch unterdrückt werden.
  • Bei dieser Ausführungsform ist es möglich, eine wichtige SWC, die für einen kontinuierlichen Betrieb unabdingbar ist, als eine Backup-Ziel-SWC auszuwählen und die ausgewählte SWC begrenzt auf der gemeinsam genutzten Backup-ECU 101 zu betreiben. Daher muss eine Hochleistung-ECU nicht immer als die Backup-ECU eingesetzt werden, sodass eine Zunahme in den Hardwareproduktionskosten und dem Leistungsverbrauch zusätzlich unterdrückt werden kann.
  • Bei einem Multiplex-ECU-System, falls sich die ECUs im Duplex befinden, wird der Prozess zusammenbrechen, wenn zwei ECUs ausfallen. Falls sich die ECUs im Triplex befinden, wird der Prozess zusammenbrechen, wenn drei ECUs ausfallen. Durch das gemeinsame Nutzen der Backup-ECUs kann jedoch eine große Anzahl von Backup-ECUs durch jede ECU genutzt werden. Infolgedessen ist die Beständigkeit gegenüber einem kontinuierlichen Betrieb besser als die von stationären Multiplex-ECUs. Bei einem Multiplex-ECU-System werden die gemultiplexten ECUs aufgrund der Hardwarekonfigurationsbeschränkungen zusammen auf einer Platine angeordnet sein. In Fällen, bei denen ein lokaler Ausfall im Kraftfahrzeug auftritt und dementsprechend ein Schaden an der Multiplex-ECU-Platine aufgrund eines Temperaturanstiegs und so weiter erwartet wird, besteht eine Möglichkeit, dass die gesamten Multiplex-ECUs gleichzeitig beschädigt werden könnten. Da die gemeinsam genutzten Backup-ECUs 101 getrennt auf separaten Platinen angeordnet sein können, kann der vollständige Zusammenbruch der ECUs im Gegensatz dazu aufgrund des Einflusses eines lokalen Ausfalls vermieden werden. Infolgedessen ist die Beständigkeit gegenüber einem kontinuierlichen Betrieb besser als die einer zentralisierten Multiplex-ECU-Konfiguration.
  • *** Andere Konfigurationen ***
  • Bei dieser Ausführungsform entspricht das Steuersystem 100 einem automatisierten Fahrsystem. Bei einer Modifikation kann ein Steuersystem 100 als ein System außer einem automatisierten Fahrsystem implementiert werden. Insbesondere könnte das Steuersystem 100 im Allgemeinen in Maschinen und Einrichtungen genutzt werden, in denen sehr viele Mikrocomputer integriert sind, eine Betriebsverarbeitung durch eine elektronische Steuerung durchgeführt wird, Gegenmaßnahmen für einen ECU-Ausfall erfordert werden und eine Multiplexsystemkonfiguration gewünscht ist. Beispiele für derartige Maschinen und Einrichtungen sind eine Weltraumrakete, ein künstlicher Satellit, ein Flugzeug, ein Elektrotriebwagen, ein Schiff, ein U-Boot, ein Maschinenwerkzeug, eine Baumaschine, eine medizinische Maschine, ein Roboter und so weiter.
  • Bei dieser Ausführungsform werden die Funktionen des Ausführungsabschnitts 131, des Diagnoseabschnitts 132, des Erzeugungsabschnitts 133, des Ladeabschnitts 135, des Dekomprimierungsabschnitts 136 und des Analyseabschnitts 140 durch Software implementiert. Bei einer Modifikation können die Funktionen eines Ausführungsabschnitts 131, eines Diagnoseabschnitts 132, eines Erzeugungsabschnitts 133, eines Ladeabschnitts 135, eines Dekomprimierungsabschnitts 136 und eines Analyseabschnitts 140 durch eine Kombination von Software und Hardware implementiert werden. Das heißt, manche der Funktionen des Ausführungsabschnitts 131, des Diagnoseabschnitts 132, des Erzeugungsabschnitts 133, des Ladeabschnitts 135, des Dekomprimierungsabschnitts 136 und des Analyseabschnitts 140 können durch eine dedizierte elektronische Schaltung implementiert werden und die verbleibenden Funktionen können durch Software implementiert werden.
  • Die dedizierte elektronische Schaltung ist zum Beispiel eine einzelne Schaltung, eine zusammengesetzte Schaltung, ein programmierter Prozessor, ein parallelprogrammierter Prozessor, eine Logik-IC, ein GA, ein FPGA oder eine ASIC. Es ist anzumerken, dass „GA“ eine Abkürzung für Gate-Array ist und das „ASIC“ eine Abkürzung für Application Specific Integrated Circuit - anwendungsspezifische integrierte Schaltung ist.
  • Der Prozessor 401, der Speicher 402 und die dedizierte elektronische Schaltung werden zusammengefasst „Verarbeitungsschaltkreis“ genannt. Das heiß, egal ob die Funktionen des Ausführungsabschnitts 131, des Diagnoseabschnitts 132, des Erzeugungsabschnitts 133, des Ladeabschnitts 135, des Dekomprimierungsabschnitts 136 und des Analyseabschnitts 140 durch Software oder eine Kombination von Software und Hardware implementiert werden können, werden die Funktionen des Ausführungsabschnitts 131, des Diagnoseabschnitts 132, des Erzeugungsabschnitts 133, des Ladeabschnitts 135, des Dekomprimierungsabschnitts 136 und des Analyseabschnitts 140 durch den Verarbeitungsschaltkreis implementiert.
    „ECU“ der gemeinsam genutzten Backup-ECU 101 kann anderweitig als „Programm“, „Programmprodukt“ oder „computerlesbares Medium, das ein Programm speichert“ gelesen werden. Außerdem kann „Abschnitt“ des Ausführungsabschnitts 131, des Diagnoseabschnitts 132, des Erzeugungsabschnitts 133, des Ladeabschnitts 135, des Dekomprimierungsabschnitts 136 und des Analyseabschnitts 140 anderweitig als „Prozedur“ oder „Prozess“ gelesen werden.
  • Ausführungsform 2.
  • Die Ausführungsform 2 wird hauptsächlich bezüglich Unterschiede zu der Ausführungsform 1 unter Bezugnahme auf die 9 und 10 beschrieben.
  • Bei Ausführungsform 1 wird der Erforderlichkeitsgrad zur kontinuierlichen Ausführung jeder Softwarekomponente in der Verwaltungstabelle 134 gespeichert. Bei Ausführungsform 2 wird die CPU-Belastung während der Ausführung jeder Softwarekomponente zusätzlich in einer Verwaltungstabelle 134 gespeichert. Eine gemeinsam genutzte Backup-ECU 101 wählt eine einzelne Softwarekomponente unter Softwarekomponenten mehrerer ECUs gemäß dem Berechnungsergebnis der CPU-Belastung aus, sodass die Gesamtkapazität der CPU-Belastungen die Obergrenze nicht überschreitet.
  • *** Beschreibung der Konfiguration ***
  • Eine Konfiguration eines Steuersystems 100 gemäß dieser Ausführungsform ist dieselbe wie die der in den 1 und 2 veranschaulichten Ausführungsform 1. Eine Konfiguration der gemeinsam genutzten Backup-ECU 101 gemäß dieser Ausführungsform ist dieselbe wie die der in 4 veranschaulichten Ausführungsform 1.
  • *** Beschreibung des Betriebs ***
  • 9 veranschaulicht ein Beispiel für die Verwaltungstabelle 134, die zusätzlich die Ausführungs-CPU-Belastung der SWC verwaltet.
  • Bei dem Beispiel von 9 ist im Vergleich zum Beispiel von 6 eine Spalte eines CPU-Belastungsgrades hinzugefügt. Die CPU-Belastungen können derart akkumuliert werden, dass die CPU-Belastungen die CPU-Ladekapazität der gemeinsam genutzten Backup-ECU 101, für die ein Backup freigeschaltet ist, nicht überschreiten. Bei dem Beispiel von 9 sind drei gemeinsam genutzte Backup-ECUs 101 für ein fahrzeuginternes Gerätesystem bereitgestellt, in dem fünf ECUs hauptsächlich zum automatischen Fahren bereitgestellt sind. Als die fünf ECUs zum automatischen Fahren sind eine ECU1, die eine Funktion zur Straßensituationserkennung durchführt, eine ECU2, die eine Funktion zur Umgebungssituationserkennung durchführt, eine ECU3, die eine Funktion zur Fahrtwegerzeugung durchführt, eine ECU4, die eine Funktion zur Lenksteuerung durchführt, und eine ECU5, die eine Funktion zur Motorsteuerung durchführt, bereitgestellt. Die SWCs dieser ECUs sind unter den gemeinsam genutzten Backup-ECUs 101 der Backup-Destination verteilt. Die drei gemeinsam genutzten Backup-ECUs 101 sind eine BECU1, eine BECU2 und eine BECU3. Es wird angenommen, dass die maximalen CPU-Belastungskapazitäten der BECU1, BECU2 und BECU3 60, 40 bzw. 40 sind.
  • Als ein Beispiel für eine CPU-Belastungsberechnung wird ein SWC-Backup für einen Fall beschrieben, bei dem die ECU3 und ECU4 ausfallen. In der ECU3 werden eine SWC31, SWC32 und SWC33 ausgeführt. In der ECU4 werden eine SWC41, SWC42 und SWC43 ausgeführt. Es wird angenommen, dass ASIL-C-SWCs und ASIL-D-SWCs zu den gemeinsam genutzten Backup-ECUs 101 gesichert werden. Entsprechende Backup-Ziel-SWCs sind drei SWCs, die die SWC31, SWC41 und SWC 42 sind. Die CPU-Belastungsgrade der SWC31, SWC41 und SWC42 sind 40, 20 bzw. 10.
  • Die Verarbeitung zum Backup der ASIL-D-SWC31 und -SWC41, die wichtig sind, wird zuerst durchgeführt. Für sowohl die SWC31 als auch die SWC41 ist der erste Kandidat für die gemeinsam genutzte Backup-ECU 101 der Backup-Destination die BECU1. Die Belastungsobergrenze der BECU1 beträgt 60. Die Gesamtbelastung der SWC31 und der SWC41 beträgt 60. Daher können sowohl die SWC31 als auch die SWC41 zu der BECU1 gesichert werden. Die In-Gebrauch-Flags der SWC31 und SWC41 werden geprüft, um anzugeben, dass sowohl die SWC31 als auch die SWC41 zu der BECU1 gesichert worden sind. Falls danach ein anderer Ausfall auftreten sollte, ist die BECU1 schon voll und eine andere SWC kann nicht zusätzlich zu der BECU1 gesichert werden.
  • Die Verarbeitung zum Backup der SWC42 wird als Nächstes durchgeführt. Der erste Kandidat für die gemeinsam genutzte Backup-ECU 101 der Backup-Destination ist die BECU2. Die Belastungsobergrenze der BECU2 beträgt 40. Die Einzelbelastung der SWC42 beträgt 10. Daher kann die SWC42 zu der BECU2 ohne irgendwelche Probleme gesichert werden. Das In-Gebrauch-Flag der SWC42 wird geprüft, um anzugeben, dass die SWC42 zu der BECU2 gesichert worden sind. Falls danach ein anderer Ausfall auftreten sollte, ist, da ein Belastungsspielraum von 30 in der BECU2 verbleibt, ein zusätzliches SWC-Backup entsprechend diesem Spielraum möglich.
  • Auf diese Art und Weise wählt ein Ausführungsabschnitt 131 bei dieser Ausführungsform, wenn eine anormale Einheit eine ECU ist, die zwei oder mehr Programme ausführt, ein durch einen Ladeabschnitt 135 zu ladendes Programm gemäß einer Größe einer Belastung eines Prozessors 401, die für jedes Programm vorhergesagt wird, aus. Wenn eine Anomalie in zwei oder mehr ECUs durch einen Diagnoseabschnitt 132 detektiert wird, wählt der Ausführungsabschnitt 131 ein durch den Ladeabschnitt 135 zu ladendes Programm gemäß einer Größe einer Belastung des Prozessors 401, die für jede Kombination einer ECU und eines Programms vorhergesagt wird, aus.
  • Die Verarbeitungsprozedur eines gemeinsam genutzten Backup-Programms, das in der gemeinsam genutzten Backup-ECU 101 arbeitet, ist dieselbe wie die der in 7 veranschaulichten Ausführungsform mit der Ausnahme des Backup-Ziel-SWC-Auswahlprozesses des Schritts S15. 10 veranschaulicht die Prozedur des Backup-Ziel-SWC-Auswahlprozesses. Der Prozess von Schritt S41 und der Prozess von S42 sind dieselben wie der Prozess des Schritts S31 bzw. der Prozess von S32 von 8. In Schritt S43 wählt der Ausführungsabschnitt 131 nur die IDs von Backup-Ziel-SWCs, die gesichert werden können, unter den IDs der in Schritt S42 ausgewählten Backup-Ziel-SWCs basierend auf dem gegenwärtigen CPU-Belastungsstatus aus. Im Schritt S44 schaltet der Ausführungsabschnitt 131 die In-Gebrauch-Flags in der Verwaltungstabelle 134 für die IDs der Backup-Ziel-SWCs, die in Schritt S43 ausgewählt werden, ein.
  • *** Beschreibung vorteilhafter Effekte der Ausführungsform ***
  • Bei Ausführungsform 1 wird die Anzahl von SWCs der Backup-Quellen-ECU, die auf der gemeinsam genutzten Backup-ECU 101 der Backup-Destination ausgeführt wird, im Voraus definiert. Die Ausführungs-CPU-Belastungen der SWCs variieren von einer leichten Belastung zu einer starken Belastung. Somit werden die Ausführungs-CPU-Belastungen der SWCs bei dieser Ausführungsform auch durch die Verwaltungstabelle 134 verwaltet. Das heißt, eine Ausführungsziel-SWC wird durch eine Berechnung der CPU-Belastung derart hinzugefügt, dass die CPU-Belastung gleich oder unter dem oberen Grenzwert der CPU-Leistung bleibt. Daher kann die CPU der gemeinsam genutzten Backup-ECU 101 effizient genutzt werden.
  • Ausführungsform 3.
  • Ausführungsform 3 wird hauptsächlich bezüglich Unterschiede zu der Ausführungsform 1 unter Bezugnahme auf die 11 und 14 beschrieben.
  • Bei Ausführungsformen 1 werden gegenwärtige Informationen, die zur Ausführung einer Ersatzsoftwarekomponente für ein Backup notwendig sind, von anderen mehreren ECUs zu der gemeinsam genutzten Backup-ECU als eine Nachricht auf einem Netzwerk übertragen und im zweiten Speicherungsabschnitt 139 gespeichert. Bei Ausführungsformen 3 wird, anstelle des Übertragens derartiger gegenwärtiger Informationen als eine Nachricht auf dem Netzwerk, der Inhalt einer Nachricht auf dem Netzwerk, die durch einen bestehenden Netzwerkübertragungs-/-empfangsprozess übertragen wird, analysiert und eine Fortführung des Prozesses wird unter Verwendung des Analyseergebnisses durchgeführt. Genauer gesagt sagt eine gemeinsam genutzte Backup-ECU 101, obwohl sie keine gegenwärtigen Informationen über eine ausgefallene ECU aufweist, durch Extrapolation Informationen, die die Softwarekomponente der ausgefallenen ECU nach dem Ausfall ausgegeben haben sollte, aus Informationen vorher, die durch die Softwarekomponente der ausgefallenen ECU vor dem Ausfall ausgegeben werden.
  • Das Abspeichern von Informationen über einen Zustand und das Feststellen der ausgefallenen ECU, wobei diese Informationen für die kontinuierliche Verarbeitung zum Backup notwendig sind, in einen unabhängigen Speicherbereich der gemeinsam genutzten Backup-ECU 101 mittels einer CAN-Nachricht oder dergleichen führt zu einem Verbrauch des Kommunikationsbandes eines CAN 701. Anstatt die Zustandsinformationen der ausgeführten SWC periodisch in den Abspeicherungsbereich abzuspeichern, sammelt die gemeinsam genutzte Backup-ECU 101 bei dieser Ausführungsform daher die übertragenen bestehenden CAN-Nachrichten und sagt einen Ausgabesteuerwert durch Extrapolation vorher und führt die kontinuierliche Verarbeitung durch.
  • *** Beschreibung der Konfiguration ***
  • Eine Konfiguration der gemeinsam genutzten Backup-ECU 101 gemäß dieser Ausführungsform wird unter Bezugnahme auf 11 beschrieben.
  • Die gemeinsam genutzte Backup-ECU 101 ist ferner mit einem Berechnungsabschnitt 138 als ein Funktionselement ausgestattet. Die Funktion des Berechnungsabschnitts 138 wird durch Software implementiert.
  • *** Beschreibung des Betriebs ***
  • Bei Ausführungsform 1 werden die CAN-Nachrichteninformationen der Diagnoseziel-ECU in einem normalen Betrieb vom Analyseabschnitt 140 zum zweiten Speicherungsabschnitt 139 übertragen und wie unter Bezugnahme auf 4 beschrieben abgespeichert. Bei Ausführungsform 1 werden interne Variableninformationen, die zur kontinuierlichen Ausführung der SWC notwendig sind, in eine CAN-Nachricht platziert und die CAN-Nachricht wird von jeder SWC zu der gemeinsam genutzten Backup-ECU 101 übertragen. Daher wird zusätzlich eine CAN-Nachricht zur Abspeicherung in die gemeinsam genutzte Backup-ECU 101 übertragen. Dies wird den Verbrauch des Kommunikationsbandes des CAN 701 erhöhen. Daher muss die Kommunikationsbelastung geschätzt werden, sodass die Verbrauchsmenge nicht übermäßig groß wird.
  • Bei dieser Ausführungsform muss keine zusätzliche CAN-Nachricht übertragen werden. Im Grunde wird eine von einer SWC übertragene bestehende CAN-Nachricht in der gemeinsam genutzten Backup-ECU 101 genutzt und analysiert. Wenn eine Ausgangs-CAN-Nachricht einer Backup-SWC erzeugt wird, wird ein durch Extrapolation vorhergesagter Ausgabewert berechnet.
  • Auf diese Art und Weise empfängt ein Kommunikationsabschnitt 141 bei dieser Ausführungsform eine einzelne Nachricht von mehreren ECUs, die die mehreren ECUs als ein Programmausführungsergebnis übertragen. Ein Ausführungsabschnitt 131 sagt eine Zustandsvariable, die eine anormale Einheit während der Programmausführung verwendet, basierend auf einer Nachricht, die durch den Kommunikationsabschnitt 141 von der anormalen Einheit vor der Detektion der Anomalie durch den Diagnoseabschnitt 132 empfangen wird, vorher. Der Ausführungsabschnitt 131 stellt eine Zustandsvariable, die bei Ausführung eines durch einen Ladeabschnitt 135 geladenen Programms zu verwenden ist, gemäß der vorhergesagten Zustandsvariable ein.
  • Genauer gesagt wird angenommen, dass der Diagnoseabschnitt 132 eine Anomalie in einer Steuerungs-ECU 201 detektiert. In diesem Fall sagt der Ausführungsabschnitt 131 eine Zustandsvariable einer Steuerungs-SWC 202 aus einem Ausgabewert der Steuerungs-SWC 202 vorher, der durch die CAN-Nachricht angegeben wird, die durch den Kommunikationsabschnitt 141 von der Steuerungs-ECU 201 vor der Detektion der Anomalie durch den Diagnoseabschnitt 132 empfangen wird. Der Ausführungsabschnitt 131 stellt eine Zustandsvariable einer durch den Ladeabschnitt 135 geladenen Steuerungs-SWC 111 gemäß der vorhergesagten Zustandsvariable ein.
  • Ein elektronisch gesteuertes Drosselklappensystem 150, wie in 12 veranschaulicht, wird jetzt als ein spezifisches Beispiel besprochen. Das elektronisch gesteuerte Drosselklappensystem 150 ist ein Mechanismus, der ein Gaspedal eines Kraftfahrzeugs und eine Drosselklappe eines Motors 153 elektrisch verbindet und steuert. Die Ausgangssteuerung des Gaspedals und der Drosselklappe wird gemäß einem grundlegenden Steuermuster durchgeführt. Es gibt dementsprechend wenige irreguläre Fälle und die Vorhersage durch Berechnung ist einfach. Als ein Zustand des Motors 153 besteht zum Beispiel ein sogenannter Über-Venturi, wie in 13 veranschaulicht. Dies bezieht sich auf einen Zustand, bei dem, bevor der Motor 153 eine ausreichende Drehfrequenz erreicht, selbst wenn eine Drosselklappe vollständig geöffnet ist, sich die Dichte eines Zufuhrluftstroms nicht erhöht und der Ladewirkungsgrad schlecht ist. Um diesen Zustand zu vermeiden, wird in dem elektronisch gesteuerten Drosselklappensystem 150 ein Ausgabesteuerwert aus einem Öffnungsgrad der Drosselklappe, einer Drehfrequenz des Motors 153 und dergleichen berechnet, um den Öffnungsgrad der Drosselklappe zu der Zeit des Öffnens des Gaspedals zu beschränken.
  • Das elektronisch gesteuerte Drosselklappensystem 150 ist mit einem Steuersystem 100, einem Gaspedalsensor 152 und einem Motorsensor 154, die als Eingabeeinrichtungen dienen, und dem Motor 153, der als eine Ausgabeeinrichtung dient, ausgestattet. Das Steuersystem 100 ist mit einer Hochleistung-ECU1 als die Steuerungs-ECU 201 ausgestattet. Das Steuersystem 100 ist mit einer Niederleistung-BECU1 als die gemeinsam genutzte Backup-ECU 101 ausgestattet. In der ECU1 wird die Steuerungs-SWC 202, die die Ausgabe des Motors 153 steuert, ausgeführt. Wenn ein Ausfall auftritt, wird die Steuerungs-SWC 111 auf der BECU1, die die Ausgabe des Motors 153 steuert, ausgeführt. Eine Vorhersage-SWC 157, die den vorhergesagten Ausgabewert durch Extrapolation berechnet, wird auch auf der BECU1 ausgeführt.
  • Eine Berechnungsformel f zum Ermitteln eines Ausgabewerts Z zu dem Motor 153 aus einem Eingangswert X aus dem Gaspedalsensor 152 für die Steuerungs-SWC 202 der ECU1, einem Eingangswert Y aus dem Motorsensor 154 für die Steuerungs-SWC 202 der ECU1 und internen Variableninformationen S der Steuerungs-SWC 202 lautet: Z = f ( X , Y , S )
    Figure DE112017006451B4_0001
  • In der BECU1 werden die internen Variableninformationen S, die zur kontinuierlichen Ausführung der Steuerungs-SWC 202 der ECU1 notwendig sind, nicht durch eine CAN-Nachricht bereitgestellt, wie in Ausführungsform 1, und sind unbekannt. Eine Berechnungsformel g zum Vorhersagen des Ausgabewerts Z durch Extrapolation lautet: Z = g ( X , Y )
    Figure DE112017006451B4_0002
  • Der Berechnungsabschnitt 138 erhält den Motorausgabewert Z unter Verwendung der Berechnung g während eines gewissen vorbestimmten Zeitraums, unmittelbar nachdem das Backup der Steuerungs-SWC 202 der ECU1 gestartet wird. Im Grunde können die internen Variableninformationen S aus dem früheren Zustand erhalten werden. Nach dem Verstreichen des oben beschriebenen vorbestimmten Zeitraums können daher neue interne Variableninformationen S vorhergesagt werden, sodass eine Berechnung des Ausgabewerts Z durch die Berechnungsformel f möglich ist.
  • Als die Berechnungsformel g wird eine Formel verwendet, die eine ungefähre Kurve repräsentiert, wie etwa eine sekundäre Kurve und eine tertiäre Kurve. Der Ausgabewert Z kann durch ein Polynom, eine Differenzialgleichung oder dergleichen unter Verwendung eines bestehenden Verfahrens berechnet werden. Bei dieser Ausführungsform wird, obwohl das Berechnungsverfahren selbst ein herkömmliches Verfahren sein kann, der Ausgabewert zu der Zeit der Fortführung aus einem Ausgabewert der CAN-Nachricht zum Zwecke der Fortführung zu der Zeit des Backups vorhergesagt.
  • Dies ist das charakteristische Merkmal dieser Ausführungsform.
  • Eine Verarbeitungsprozedur eines gemeinsam genutzten Backup-Programms, das in der gemeinsam genutzten Backup-ECU 101 betrieben wird, wird unter Bezugnahme auf 14 beschrieben.
  • Der Prozess des Schritts S51 ist der gleiche wie der Prozess des Schritts S11 von 7. Der Prozess des Schritts S53 bis zum Schritt S58 ist der gleiche wie der Prozess des Schritts S13 bis zum Schritt S18 von 7.
  • Diese Verarbeitungsprozedur unterscheidet sich von der der in 7 veranschaulichten Ausführungsform 1 hauptsächlich hinsichtlich der folgenden zwei Aspekte.
  • In Schritt S12 von 7 erfasst der Analyseabschnitt 140 die gegenwärtigen Informationen einschließlich der internen Variableninformationen von jeder ECU, die eine Backup-Quelle ist, durch eine zusätzliche CAN-Nachricht. Diese zusätzliche CAN-Nachricht ist eine Nachricht, die an die gemeinsam genutzte Backup-ECU 101 gerichtet ist. Im Gegensatz dazu erfasst ein Analyseabschnitt 140 in Schritt S52 einen Ausgabewert für eine Einrichtung, wie etwa den Motor 153, aus einer normalen CAN-Nachricht. Diese normale CAN-Nachricht ist keine Nachricht, die an die gemeinsam genutzte Backup-ECU 101 gerichtet ist, sondern ist eine Nachricht, die an die Einrichtung, wie etwa den Motor 153, gerichtet ist.
  • In Schritt S21 von 7 führt der Ausführungsabschnitt 131 den Hauptschleifenprozess der geladenen SWC aus. Dieser Hauptschleifenprozess wird gestartet, unmittelbar nachdem das Backup gestartet wird. Im Gegensatz dazu wird bei dieser Ausführungsform ein Ausgangssteuerprozess durch Extrapolation für einen vorbestimmten Zeitraum durchgeführt und danach wird ein Hauptschleifenprozess einer geladenen SWC gestartet. Genauer gesagt bestimmt der Ausführungsabschnitt 131 in Schritt S61, ob der vorbestimmte Zeitraum verstrichen ist oder nicht. Falls der vorbestimmte Zeitraum nicht verstrichen ist, dann berechnet der Berechnungsabschnitt 138 in Schritt S63 einen Ausgabewert durch die Berechnungsformel g. Der Ausführungsabschnitt 131 überträgt den durch den Berechnungsabschnitt 138 berechneten Ausgabewert zu einer Einrichtung, wie etwa dem Motor 153. Falls der vorbestimmte Zeitraum verstrichen ist, dann führt der Ausführungsabschnitt 131 in Schritt S62 den Hauptschleifenprozess der geladenen SWC aus. In diesem Hauptschleifenprozess berechnet der Ausführungsabschnitt 131 einen Ausgabewert durch die Berechnungsformel f. Der Ausführungsabschnitt 131 überträgt den berechneten Ausgabewert zu der Einrichtung, wie etwa dem Motor 153.
  • *** Beschreibung vorteilhafter Effekte der Ausführungsform ***
  • Bei dieser Ausführungsform wird, anstatt des Abspeicherns von Informationen über einen Zustand und das Feststellen der ausgefallenen ECU, wobei diese Informationen für die kontinuierliche Verarbeitung für ein Backup notwendig sind, in einen unabhängigen Speicherbereich der gemeinsam genutzten Backup-ECU 101 mittels einer zusätzlichen CAN-Nachricht oder dergleichen, die übertragene CAN-Nachricht gewöhnlich gesammelt und der Ausgabewert wird durch Extrapolation vorhergesagt. Daher können die Kommunikationskosten der zusätzlichen CAN-Nachricht verringert werden und die Zunahme des Verbrauchs des Bandes des Netzwerks kann vermieden werden.
  • Bei dieser Ausführungsform wird die übertragene CAN-Nachricht gewöhnlich gesammelt und der Ausgabesteuerwert wird durch Extrapolation vorhergesagt, wodurch eine kontinuierliche Verarbeitung ermöglicht wird. Infolgedessen ist eine Modifikation einer SWC der bestehenden ECU in einer Systemkonfiguration, bei der eine Backup-ECU nicht vom Anfang an vorhanden ist, nicht notwendig. Da eine Entwicklung zum Hinzufügen der gemeinsam genutzten Backup-ECU 101 getrennt und unabhängig ausgeführt werden kann, wird die Entwicklungseffizienz verbessert.
  • Ausführungsform 4.
  • Ausführungsform 4 wird hauptsächlich bezüglich Unterschiede zu Ausführungsform 1 beschrieben.
  • Bei Ausführungsform 1 beträgt die Anzahl von Kernen der eingebauten CPU der gemeinsam genutzten Backup-ECU 101 Eins. In diesem Fall können mehrere OSs nicht ausgeführt werden, insofern keine Hypervisor-Konfiguration eingesetzt wird. Die Voraussetzung der Ausführungsform 1 ist die Ausführung eines einzigen OS, ebenfalls aufgrund der Einzelkern-Hardwareleistung der ECU. Bei Ausführungsformen 4 wird ein Mikrocomputer mit einer eingebauten Mehrkern-CPU oder ein Mikrocomputer mit einem eingebauten Multiprozessor als eine gemeinsam genutzte Backup-ECU 101 eingesetzt. Aus diesem Grund können entsprechende SWCs kontinuierlich ausgeführt werden, wenn unterschiedliche OSs, wie etwa AUTOSTAR (eingetragenes Markenzeichen) und Linux (eingetragenes Markenzeichen), betrieben werden.
  • Ausführungsform 5.
  • Ausführungsform 5 wird hauptsächlich bezüglich Unterschiede zu Ausführungsform 1 beschrieben.
  • Bei Ausführungsform 1 wird die gemeinsam genutzte Backup-ECU 101 in einem Netzwerksystem gemeinsam genutzt. Bei Ausführungsform 5 werden mehrere Netzwerksysteme durch ein Gateway verbunden, obwohl dies nicht veranschaulicht ist. Eine gemeinsam genutzte Backup-ECU 101, die durch die mehreren Netzwerksysteme gemeinsam genutzt werden kann, befindet sich am Standort dieses Gateways. Wenn sich die gemeinsam genutzte Backup-ECU 101 auf einem Netzwerksystem mit der höchsten Kommunikationsgeschwindigkeit befindet, verbessert sich die Kommunikationseffizienz.
  • Ausführungsform 6.
  • Ausführungsform 6 wird hauptsächlich bezüglich Unterschiede zu Ausführungsform 1 beschrieben.
  • Der allgemeine Trend besteht darin, eine große Anzahl von ECUs mit einem CAN zu verbinden, und dementsprechend gibt es ein Bedenken über eine Erschöpfung von CAN-IDs. Angesichts dessen wird bei dieser Ausführungsform, anstelle einzelne CAN-IDs mehreren gemeinsam genutzten Backup-ECUs 101 zuzuordnen, den mehreren gemeinsam genutzten Backup-ECUs 101 insgesamt eine CAN-ID zugeordnet. Kurz gesagt, nutzen die gemeinsam genutzten Backup-ECUs 101 einer Gruppe eine ID gemeinsam, um die bestehende ECU-Gruppe zu überwachen und einen Backup-orientierten Prozess in einem Notfall durchzuführen. Sobald der Backup-orientierte Prozess gestartet wird, wird eine lokale ID, die sich von der CAN-ID unterscheidet, in einer CAN-Nachricht als Anwendungsinformationen gespeichert, um eine Unterscheidung zwischen den einzelnen gemeinsam genutzten Backup-ECUs 101 durchzuführen.
  • Auf diese Art und Weise beinhaltet eine einzelne Nachricht, die durch die mehreren ECUs als das Programmausführungsergebnis übertragen wird, bei dieser Ausführungsform eine Kennung, die gemäß der ECU verschieden ist, als die Senderadresse. Eine einzelne Nachricht, die die mehreren gemeinsam genutzten Backup-ECUs 101 als das Programmausführungsergebnis eines Ausführungsabschnitts 131 übertragen, beinhaltet eine gemeinsame Kennung als die Senderadresse und die Kennung, die gemäß der gemeinsam genutzten Backup-ECU 101 verschieden ist, als Teil von Übertragungsdaten. Als die Kennung, die gemäß der ECU verschieden ist, und als die gemeinsame Kennung kann eine ID einer beliebigen Adressarchitektur zugeteilt werden, aber bei dieser Ausführungsform wird die CAN-ID zugewiesen, wie oben beschrieben. Als die Kennung, die gemäß der gemeinsam genutzten Backup-ECU verschieden ist, kann eine ID einer beliebigen Adressarchitektur zugeteilt werden, aber bei dieser Ausführungsform wird eine lokale ID, die sich von der CAN-ID unterscheidet, zugewiesen, wie oben beschrieben.
  • Ausführungsform 7.
  • Ausführungsform 7 wird hauptsächlich bezüglich Unterschiede zu Ausführungsform 1 beschrieben.
  • Bei Ausführungsform 1 sind verschiedene Typen von ECUs und der gemeinsam genutzten Backup-ECUs 101 mit dem verdrahteten Fahrzeugnetzwerk, wie etwa dem CAN 701, verbunden. Zusammen mit der heutigen dramatischen Zunahme von Kraftfahrzeug-ECUs wird jedoch die CAN-Netzwerkkabelverdrahtung allgemein sehr kompliziert und die Netzwerkkabelverdrahtung wird überall in der Kraftfahrzeugherstellung schwierig. Angesichts dessen wird gemäß dieser Ausführungsform, obwohl ein herkömmliches verdrahtetes Netzwerk für die herkömmliche Netzwerkkommunikation eingesetzt wird, ein drahtloses Netzwerk für eine begrenzte Anwendung eines Backup-Prozesses zu der Zeit des Ausfalls eingesetzt. Das heißt, der notwendige Backup-Kommunikationsprozess wird über das drahtlose Netzwerk ausgeführt.
  • Bei einem spezifischen Beispiel sind mehrere gemeinsam genutzte Backup-ECUs 101 zusammen in einem Kasten untergebracht. Eine drahtlose Kommunikation wird zwischen diesem Kasten und einem drahtlosen Gateway auf einem Backbone-CAN durchgeführt. Mit dieser Konfiguration kann ein Kasten für die gemeinsam genutzten Backup-ECUs 101 anschließend in einem bestehenden fertiggestellten Kraftfahrzeugnetzwerksystem ohne die Notwendigkeit zur Berücksichtigung der Verdrahtung installiert werden.
  • Bezugszeichenliste
  • 100: Steuersystem; 101: gemeinsam genutzte Backup-ECU; 102: Schaltfunktion; 103: Analysefunktion; 104: Ladefunktion; 105: Diagnosefunktion; 111: Steuerungs-SWC; 114: komprimiertes Abbild; 121: Entscheidungs-SWC; 124: komprimiertes Abbild; 131: Ausführungsabschnitt; 132: Diagnoseabschnitt; 133: Erzeugungsabschnitt; 134: Verwaltungstabelle; 135: Ladeabschnitt; 136: Dekomprimierungsabschnitt; 137: erster Speicherungsabschnitt; 138: Berechnungsabschnitt; 139: zweiter Speicherungsabschnitt; 140: Analyseabschnitt; 141: Kommunikationsabschnitt; 142: erster Verarbeitungsabschnitt; 143: zweiter Verarbeitungsabschnitt; 144: Schalteinheit; 150: elektronisch gesteuertes Drosselklappensystem; 152: Gaspedalsensor; 153: Motor; 154: Motorsensor; 157: Vorhersage-SWC; 201: Steuerungs-ECU; 202: Steuerungs-SWC; 204: Übertragungsfunktion; 211: Steuerungs-ECU; 251: Schalteinheit; 261: Schalteinheit; 301: Entscheidungs-ECU; 302: Entscheidungs-SWC; 304: Übertragungsfunktion; 311: Entscheidungs-ECU; 351: Schalteinheit; 361: Schalteinheit; 401: Prozessor; 402: Speicher; 403: CAN-Schnittstelle; 411: FPGA; 501: Prozessor; 502: Speicher; 503: CAN-Schnittstelle; 511: FPGA; 601: Prozessor; 602: Speicher; 603: CAN-Schnittstelle; 611: FPGA; 701: CAN; 711: CAN; 805: ASIL-D-orientiertes OS; 815: ASIL-C-orientiertes OS; 825: ASIL-B-orientiertes OS; 834: ASIL-D-orientiertes OS; 844: ASIL-D-orientiertes OS

Claims (11)

  1. Gemeinsam genutzte Backup-Einheit, umfassend einen Diagnoseabschnitt (132) zum Diagnostizieren einer Anomalie in mehreren elektronischen Steuereinheiten, die, um eine einzelne Funktion durchzuführen, ein Programm ausführen, das gemäß der Funktion verschieden ist; einen Ladeabschnitt (135) zum Laden, aus einem Speicherabschnitt, der mehrere Programme im Voraus speichert, eines Programms, das dasselbe ist wie ein Programm, das durch eine anormale Einheit ausgeführt wird, die eine elektronische Steuereinheit ist, deren Anomalie durch den Diagnoseabschnitt detektiert worden ist; und einen Ausführungsabschnitt (131) zum Ausführen des durch den Ladeabschnitt geladenen Programms, wodurch eine Funktion, die dieselbe wie eine Funktion der anormalen Einheit ist, anstelle der anormalen Einheit durchgeführt wird, wobei, wenn die anormale Einheit eine elektronische Steuereinheit ist, die zwei oder mehr Programme ausführt, der Ausführungsabschnitt ein durch den Ladeabschnitt zu ladendes Programm gemäß einer Größe einer Belastung eines Prozessors, die für jedes Programm vorhergesagt wird, auswählt.
  2. Gemeinsam genutzte Backup-Einheit, umfassend einen Diagnoseabschnitt (132) zum Diagnostizieren einer Anomalie in mehreren elektronischen Steuereinheiten, die, um eine einzelne Funktion durchzuführen, ein Programm ausführen, das gemäß der Funktion verschieden ist; einen Ladeabschnitt (135) zum Laden, aus einem Speicherabschnitt, der mehrere Programme im Voraus speichert, eines Programms, das dasselbe ist wie ein Programm, das durch eine anormale Einheit ausgeführt wird, die eine elektronische Steuereinheit ist, deren Anomalie durch den Diagnoseabschnitt detektiert worden ist; und einen Ausführungsabschnitt (131) zum Ausführen des durch den Ladeabschnitt geladenen Programms, wodurch eine Funktion, die dieselbe wie eine Funktion der anormalen Einheit ist, anstelle der anormalen Einheit durchgeführt wird, wobei, wenn eine Anomalie in zwei oder mehr elektronischen Steuereinheiten durch den Diagnoseabschnitt detektiert wird, der Ausführungsabschnitt ein durch den Ladeabschnitt zu ladendes Programm gemäß einer Größe einer Belastung eines Prozessors, die für jede Kombination einer elektronischen Steuereinheit und eines Programms vorhergesagt wird, auswählt.
  3. Gemeinsam genutzte Backup-Einheit nach Anspruch 1 oder 2, ferner umfassend einen Kommunkationsabschnitt (141) zum Empfangen von den mehreren elektronischen Steuereinheiten einer einzelnen Nachricht, die eine Zustandsvariable angibt, die die mehreren elektronischen Steuereinheiten während der Ausführung des Programms verwenden, wobei der Ausführungsabschnitt eine Zustandsvariable, die zu verwenden ist, wenn das durch den Ladeabschnitt geladene Programm ausgeführt wird, basierend auf den Nachrichten, die durch den Kommunikationsabschnitt von der anormalen Einheit vor der Detektion der Anomalie durch den Diagnoseabschnitt empfangen wurden, einstellt.
  4. Gemeinsam genutzte Backup-Einheit nach Anspruch 1 oder 2, ferner umfassend einen Kommunikationsabschnitt (141) zum Empfangen, von den mehreren elektronischen Steuereinheiten, einer einzelnen Nachricht, die die mehreren elektronischen Steuereinheiten als ein Programmausführungsergebnis übertragen, wobei der Ausführungsabschnitt eine Zustandsvariable, die die anormale Einheit während der Programmausführung verwendet, basierend auf einer Nachricht vorhersagt, die durch den Kommunikationsabschnitt von der anormalen Einheit vor der Detektion der Anomalie durch den Diagnoseabschnitt empfangen wurde, und eine Zustandsvariable, die zu verwenden ist, wenn das durch den Ladeabschnitt geladene Programm ausgeführt wird, gemäß der vorhergesagten Zustandsvariablen einstellt.
  5. Gemeinsam genutzte Backup-Einheit, umfassend einen Diagnoseabschnitt (132) zum Diagnostizieren einer Anomalie in mehreren elektronischen Steuereinheiten, die, um eine einzelne Funktion durchzuführen, ein Programm ausführen, das gemäß der Funktion verschieden ist; einen Ladeabschnitt (135) zum Laden, aus einem Speicherabschnitt, der mehrere Programme im Voraus speichert, eines Programms, das dasselbe ist wie ein Programm, das durch eine anormale Einheit ausgeführt wird, die eine elektronische Steuereinheit ist, deren Anomalie durch den Diagnoseabschnitt detektiert worden ist; einen Ausführungsabschnitt (131) zum Ausführen des durch den Ladeabschnitt geladenen Programms, wodurch eine Funktion, die dieselbe wie eine Funktion der anormalen Einheit ist, anstelle der anormalen Einheit durchgeführt wird, und einen Kommunikationsabschnitt (141) zum Empfangen, von den mehreren elektronischen Steuereinheiten, einer einzelnen Nachricht, die die mehreren elektronischen Steuereinheiten als ein Programmausführungsergebnis übertragen, wobei der Ausführungsabschnitt eine Zustandsvariable, die die anormale Einheit während der Programmausführung verwendet, basierend auf einer Nachricht vorhersagt, die durch den Kommunikationsabschnitt von der anormalen Einheit vor der Detektion der Anomalie durch den Diagnoseabschnitt empfangen wurde, und eine Zustandsvariable, die zu verwenden ist, wenn das durch den Ladeabschnitt geladene Programm ausgeführt wird, gemäß der vorhergesagten Zustandsvariablen einstellt.
  6. Gemeinsam genutzte Backup-Einheit nach einem der Ansprüche 1 bis 5, wobei, wenn die anormale Einheit eine elektronische Steuereinheit ist, die zwei oder mehr Programme ausführt, der Ausführungsabschnitt ein durch den Ladeabschnitt zu ladendes Programm gemäß einer im Voraus für jedes Programm definierten Priorität auswählt.
  7. Gemeinsam genutzte Backup-Einheit nach einem der Ansprüche 1 bis 6, wobei, wenn eine Anomalie in zwei oder mehr elektronischen Steuereinheiten durch den Diagnoseabschnitt detektiert wird, der Ausführungsabschnitt ein durch den ladeabschnitt zu ladendes Programm gemäß einer im Voraus für jede Kombination einer elektronischen Steuereinheit und eines Programms definierten Priorität auswählt.
  8. Steuersystem (100), umfassend: die gemeinsam genutzte Backup-Einheit nach einem der Ansprüche 1 bis 7; und die mehreren elektronischen Steuereinheiten.
  9. Steuersystem (100) nach Anspruch 8, umfassend mehrere gemeinsam genutzte Backup-Steuereinheiten, die jeweils die gemeinsam genutzte Backup-Einheit sind, wobei eine einzelne Nachricht, die die mehreren elektronischen Steuereinheiten als ein Programmausführungsergebnis übertragen, eine Kennung, die gemäß der elektronischen Steuereinheit verschieden ist, als eine Senderadresse beinhaltet, und wobei eine einzelne Nachricht, die die mehreren gemeinsam genutzten Backup-Einheiten als das Programmausführungsergebnis des Ausführungsabschnitts übertragen, eine gemeinsame Kennung als eine Senderadresse und eine Kennung, die gemäß der gemeinsam genutzten Backup-Einheit verschieden ist, als Teil von Übertragungsdaten beinhaltet.
  10. Steuersystem (100) umfassend: mehrere elektronische Steuereinheiten, die um eine einzelne Funktion auszuführen, ein Programm ausführen, das gemäß der Funktion verschieden ist; eine Vielzahl von gemeinsam genutzten Backup-Einheiten, die enthalten: einen Diagnoseabschnitt (132) zum Diagnostizieren einer Anomalie in mehreren elektronischen Steuereinheiten; einen Ladeabschnitt (135) zum Laden, aus einem Speicherabschnitt, der mehrere Programme im Voraus speichert, eines Programms, das dasselbe ist wie ein Programm, das durch eine anormale Einheit ausgeführt wird, die eine elektronische Steuereinheit ist, deren Anomalie durch den Diagnoseabschnitt detektiert worden ist; und einen Ausführungsabschnitt (131) zum Ausführen des durch den Ladeabschnitt geladenen Programms, wodurch eine Funktion, die dieselbe wie eine Funktion der anormalen Einheit ist, anstelle der anormalen Einheit durchgeführt wird, wobei eine einzelne Nachricht, die die mehreren elektronischen Steuereinheiten als ein Programmausführungsergebnis übertragen, eine Kennung, die gemäß der elektronischen Steuereinheit verschieden ist, als eine Senderadresse beinhaltet, und wobei eine einzelne Nachricht, die die mehreren gemeinsam genutzten Backup-Einheiten als das Programmausführungsergebnis des Ausführungsabschnitts übertragen, eine gemeinsame Kennung als eine Senderadresse und eine Kennung, die gemäß der gemeinsam genutzten Backup-Einheit verschieden ist, als Teil von Übertragungsdaten beinhaltet.
  11. Steuersystem (100) umfassend: mehrere elektronische Steuereinheiten, die, um eine einzelne Funktion durchzuführen, durch einen Prozessor ein Programm ausführen, das gemäß der Funktion verschieden ist; eine Vielzahl von gemeinsam genutzten Backup-Einheiten, die enthalten: einen Diagnoseabschnitt (132) zum Diagnostizieren einer Anomalie in mehreren elektronischen Steuereinheiten; einen Ladeabschnitt (135) zum Laden, aus einem Speicherabschnitt, der mehrere Programme im Voraus speichert, eines Programms, das dasselbe ist wie ein Programm, das durch eine anormale Einheit ausgeführt wird, die eine elektronische Steuereinheit ist, deren Anomalie durch den Diagnoseabschnitt detektiert worden ist; und einen Ausführungsabschnitt (131) zum Ausführen, durch einen Prozessor, der weniger leistungsfähig ist als der Prozessor der mehreren elektronischen Steuereinheiten, des durch den Ladeabschnitt geladenen Programms, wodurch eine Funktion, die dieselbe wie eine Funktion der anormalen Einheit ist, anstelle der anormalen Einheit durchgeführt wird, wobei, wenn die anormale Einheit eine elektronische Steuereinheit ist, die zwei oder mehr Programme ausführt, der Ausführungsabschnitt ein durch den Ladeabschnitt zu ladendes Programm auswählt, in Übereinstimmung, ob oder ob nicht eine gemeinsam genutzte Backup-Einheit einem Backupziel, das für jedes Programm vorab bestimmt wurde, entspricht.
DE112017006451.1T 2017-01-24 2017-01-24 Gemeinsam genutzte Backup-Einheit und Steuersystem Expired - Fee Related DE112017006451B4 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/002340 WO2018138775A1 (ja) 2017-01-24 2017-01-24 共用バックアップユニットおよび制御システム

Publications (2)

Publication Number Publication Date
DE112017006451T5 DE112017006451T5 (de) 2019-09-12
DE112017006451B4 true DE112017006451B4 (de) 2020-07-16

Family

ID=59720427

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112017006451.1T Expired - Fee Related DE112017006451B4 (de) 2017-01-24 2017-01-24 Gemeinsam genutzte Backup-Einheit und Steuersystem

Country Status (5)

Country Link
US (1) US20190340116A1 (de)
JP (1) JP6189004B1 (de)
CN (1) CN110214312A (de)
DE (1) DE112017006451B4 (de)
WO (1) WO2018138775A1 (de)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6719433B2 (ja) 2017-09-22 2020-07-08 株式会社日立製作所 移動体の制御システムおよび移動体の制御方法
JP6753388B2 (ja) * 2017-11-13 2020-09-09 株式会社デンソー 自動運転制御装置、車両の自動運転制御方法
US11003153B2 (en) * 2017-11-17 2021-05-11 Intel Corporation Safety operation configuration for computer assisted vehicle
DE112018006016T5 (de) * 2017-12-25 2020-10-29 Hitachi Automotive Systems, Ltd. Fahrzeugsteuervorrichtung und elektronisches Steuersystem
WO2019131003A1 (ja) * 2017-12-25 2019-07-04 日立オートモティブシステムズ株式会社 車両制御装置および電子制御システム
JP2021067960A (ja) * 2018-02-14 2021-04-30 日立Astemo株式会社 車両監視システム
JP7010087B2 (ja) * 2018-03-16 2022-01-26 トヨタ自動車株式会社 プログラム更新管理装置、プログラム更新管理方法、およびプログラム
JP6981357B2 (ja) * 2018-04-25 2021-12-15 株式会社デンソー 車両制御装置
JP6922852B2 (ja) * 2018-06-12 2021-08-18 株式会社デンソー 電子制御装置および電子制御システム
JP7048439B2 (ja) * 2018-07-03 2022-04-05 本田技研工業株式会社 制御装置、制御ユニット、制御方法、およびプログラム
JP7192415B2 (ja) * 2018-11-06 2022-12-20 株式会社オートネットワーク技術研究所 プログラム更新システム及び更新処理プログラム
WO2020132305A1 (en) * 2018-12-19 2020-06-25 Zoox, Inc. Safe system operation using latency determinations and cpu usage determinations
US11281214B2 (en) 2018-12-19 2022-03-22 Zoox, Inc. Safe system operation using CPU usage information
DE102019104948A1 (de) * 2019-02-27 2020-08-27 Zf Active Safety Gmbh Kommunikationssystem und Verfahren zur Kommunikation für ein Kraftfahrzeug
US20220052871A1 (en) * 2019-03-13 2022-02-17 Nec Corporation Vehicle control system, vehicle control method, and non-transitory computer-readable medium in which vehicle control program is stored
CN111891134B (zh) * 2019-05-06 2022-09-30 北京百度网讯科技有限公司 自动驾驶处理系统和片上系统、监测处理模块的方法
JP6972437B2 (ja) * 2019-06-27 2021-11-24 三菱電機株式会社 電子制御ユニット及びプログラム
WO2021002164A1 (en) * 2019-07-02 2021-01-07 Hitachi Automotive Systems, Ltd. Method and control system for operating ecus of vehicles in fails-safe mode
CN115716455A (zh) * 2019-09-12 2023-02-28 华为技术有限公司 实现汽车中电子控制功能的系统、方法以及汽车
US20200017114A1 (en) * 2019-09-23 2020-01-16 Intel Corporation Independent safety monitoring of an automated driving system
JP6779354B1 (ja) 2019-10-30 2020-11-04 三菱電機株式会社 制御通信システム
CN113556373B (zh) * 2020-04-26 2023-06-02 华为技术有限公司 一种代理服务方法、装置及系统
JP7496756B2 (ja) * 2020-10-16 2024-06-07 株式会社日立製作所 制御システム及びその制御方法
CN114596716A (zh) * 2020-11-19 2022-06-07 常州江苏大学工程技术研究院 基于云计算平台的悬架道路工况识别系统及控制方法
JP2022114880A (ja) * 2021-01-27 2022-08-08 株式会社オートネットワーク技術研究所 車載装置、及び状態変化検出方法
CN113905101B (zh) * 2021-12-06 2022-02-25 北京数字小鸟科技有限公司 多控制核心备份的视频处理设备
JP2024046295A (ja) * 2022-09-22 2024-04-03 株式会社アドヴィックス 制動制御装置及びソフトウェア更新方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007207219A (ja) 2006-01-06 2007-08-16 Hitachi Ltd 計算機システムの管理方法、管理サーバ、計算機システム及びプログラム
JP2013232142A (ja) 2012-05-01 2013-11-14 Hitachi Ltd 二重化装置および電源停止方法
JP2016071771A (ja) 2014-10-01 2016-05-09 株式会社デンソー 制御装置及び監視装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001022708A (ja) * 1999-07-05 2001-01-26 Mitsubishi Electric Corp 車両用ネットワークシステム
JP4399987B2 (ja) * 2001-01-25 2010-01-20 株式会社デンソー 車両統合制御におけるフェイルセーフシステム
JP3864747B2 (ja) * 2001-10-09 2007-01-10 株式会社デンソー 冗長系信号処理装置
JP2004318498A (ja) * 2003-04-16 2004-11-11 Toyota Central Res & Dev Lab Inc フェールセーフ装置
JP4410661B2 (ja) * 2004-11-09 2010-02-03 株式会社日立製作所 分散制御システム
JP2010285001A (ja) * 2009-06-09 2010-12-24 Toyota Motor Corp 電子制御システム、機能代行方法
JP2011213210A (ja) * 2010-03-31 2011-10-27 Denso Corp 電子制御装置及び制御システム
JP6032174B2 (ja) * 2013-10-24 2016-11-24 トヨタ自動車株式会社 通信制御装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007207219A (ja) 2006-01-06 2007-08-16 Hitachi Ltd 計算機システムの管理方法、管理サーバ、計算機システム及びプログラム
JP2013232142A (ja) 2012-05-01 2013-11-14 Hitachi Ltd 二重化装置および電源停止方法
JP2016071771A (ja) 2014-10-01 2016-05-09 株式会社デンソー 制御装置及び監視装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
AOKI, Keiji, „Development Trend of Automated Driving Technology and Issues for Practical Application", [Online], 24. Januar 2014
KANEKO, Takanobu, NAKAMURA, Hideo, „Research of Safe Architecture in Advanced Driver Assistance System", [Online], Juni 2015, JARI Research Journal, [abgerufen am 10. Januar 2017]
Manimaran, G. u. a.: A fault-tolerant dynamic scheduling algorithm for multiprocessor real-time systems and its analysis. In IEEE Transactions on Parallel and Distributed Systems, Vol. 9, N. 11, Nov. 1998, S. 1137-1152
MANIMARAN, G. u.a.: A fault-tolerant dynamic scheduling algorithm for multiprocessor real-time systems and its analysis. In IEEE Transactions on Parallel and Distributed Systems, Vol. 9, N. 11, Nov. 1998, S. 1137-1152 *

Also Published As

Publication number Publication date
US20190340116A1 (en) 2019-11-07
DE112017006451T5 (de) 2019-09-12
JP6189004B1 (ja) 2017-08-30
JPWO2018138775A1 (ja) 2019-02-14
CN110214312A (zh) 2019-09-06
WO2018138775A1 (ja) 2018-08-02

Similar Documents

Publication Publication Date Title
DE112017006451B4 (de) Gemeinsam genutzte Backup-Einheit und Steuersystem
DE112018002176B4 (de) Anormalitätsbestimmungsvorrichtung, Anormalitätsbestimmungsverfahren und Anormalitätsbestimmungsprogramm
DE112017006492T5 (de) Bordsteuervorrichtung
DE112017002909T5 (de) Fahrzeugvorrichtung
DE102013205285A1 (de) Systeme und Verfahren für die ECU-Aufgaben-Rekonfiguration
DE112018004053T5 (de) Steuervorrichtung, Steuerverfahren und Computerprogramm
EP3704573B1 (de) Verfahren zum durchführen eines softwareupdates in einem steuergerät eines kraftfahrzeugs sowie entsprechend eingerichtetes kraftfahrzeug
DE112013000997T5 (de) Datenübertragungssystem, Vermittlungseinrichtung und Verfahren zum Steuern der Stromversorgung
DE112018001894T5 (de) Steuervorrichtung, Übertragungsverfahren und Computerprogramm
DE102016009195B3 (de) Verfahren zum Extrahieren von Fahrzeugdaten aus einem Kraftfahrzeug, Steuervorrichtung und Kraftfahrzeug
DE102020100498A1 (de) Hybridstromnetz für ein fahrzeug
DE112018002769T5 (de) Aufzeichnungssteuervorrichtung
DE112014002675T5 (de) Optimierte Spannungsversorgungsarchitektur
DE102020208245A1 (de) Datenspeicherungsvorrichtung und Datenspeicherungsprogramm
DE112009000500T5 (de) Weiterleitungseinrichtung, Kommunikationssystem und Kommunikationsverfahren
DE102013205390A1 (de) Datenausgabevorrichtung für ein fahrzeug
DE102016215564A1 (de) Leistungsversorgung von Fahrzeugkomponenten im Notbetrieb
DE102019111623A1 (de) Lenksteuerapparat und lenksteuerverfahren und lenksystem
DE102018217311B4 (de) Elektronische Steuereinheit
DE102013008455A1 (de) System und Verfahren zur Übertragung von Daten über ein Bussystem
DE102019004612A1 (de) Verfahren zum Betreiben eines Fahrzeugs mit einem Steuergerät
DE102019217015A1 (de) Kommunikationsvorrichtung
DE102018204923A1 (de) Steuereinheit und Verfahren zum Betrieb eines Bordnetzes mit einem sicherheitsrelevanten Verbraucher
DE102020213407A1 (de) Steuerkommunikationssystem
DE102021130899A1 (de) Elektronische steuerungseinheit, software-aktualisierungsverfahren, software-aktualisierungsprogramm und elektronisches steuerungssystem

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee