DE112010005557T5 - Fehlerprüfgerät und Fehlerprüfverfahren - Google Patents

Fehlerprüfgerät und Fehlerprüfverfahren Download PDF

Info

Publication number
DE112010005557T5
DE112010005557T5 DE112010005557T DE112010005557T DE112010005557T5 DE 112010005557 T5 DE112010005557 T5 DE 112010005557T5 DE 112010005557 T DE112010005557 T DE 112010005557T DE 112010005557 T DE112010005557 T DE 112010005557T DE 112010005557 T5 DE112010005557 T5 DE 112010005557T5
Authority
DE
Germany
Prior art keywords
error
processing load
cpus
cpu
error checking
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.)
Withdrawn
Application number
DE112010005557T
Other languages
English (en)
Inventor
Eiichiro Shigehara
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor 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 Toyota Motor Corp filed Critical Toyota Motor Corp
Publication of DE112010005557T5 publication Critical patent/DE112010005557T5/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/24Marginal checking or other specified testing methods not covered by G06F11/26, e.g. race tests

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

Die vorliegende Erfindung betrifft ein Fehlerprüfgerät zur Durchführung einer Fehlerprüfung mehrerer CPUs, wobei das Fehlerprüfgerät eingerichtet ist, eine Verarbeitungslast der CPUs insgesamt auf der Grundlage von Fahrzeuginformationen in Bezug auf Prozesse der CPUs vorherzusagen oder zu erfassen, und eine Art der Durchführung einer Fehlerprüfung entsprechend einem Vorhersage- oder Erfassungsergebnis der Verarbeitungslast zu ändern. Die CPUs können CPUs in einem Mehrkernprozessor sein. Das Fehlerprüfgerät kann die Fehlerprüfung durchführen, falls vorhergesagt oder erfasst wird, dass die Verarbeitungslast der CPUs insgesamt niedriger als eine vorbestimmte Referenz ist.

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft ein Fehlerprüfgerät und ein Fehlerprüfverfahren zur Durchführung einer Fehlerprüfung von mehreren CPUs.
  • Stand der Technik
  • Eine Multiprozessorvorrichtung ist bekannt, bei der mehreren jobbasierte Prozessorvorrichtungen und eine allgemeine Steuerungsprozessorvorrichtung zur Gesamtsteuerung der jobbasierten Prozessorvorrichtungen über einen gemeinsamen Bus verbunden sind, und ein Diagnosetestprogramm zur Überprüfung der jobbasierten Prozessorvorrichtung auf einen Fehler ist auf Basis einer jobbasierten Prozessorvorrichtung vorgesehen (vergl. Patentdokument 1). Entsprechend dieser Konfiguration diagnostiziert die jobbasierte Prozessorvorrichtung, die einen Fehler erfasst, den Fehler mit dem darin installierten Diagnosetestprogramm, weshalb sie die Unterstützung von der allgemeinen Steuerungsprozessorvorrichtung bei der Durchführung der Diagnose nicht benötigt. Daher ist es nicht erforderlich, den gemeinsamen Bus zu belegen, andere Prozesse jedes Mal zu unterbrechen, wenn die Diagnose durchgeführt wird, und wird die Verarbeitungslast nicht der allgemeinen Steuerungsprozessorvorrichtung beaufschlagt.
    [Patentdokument 1] Japanische offengelegte Patentveröffentlichung Nr. 7-325730
  • Offenbarung der Erfindung
  • Durch die Erfindung zu lösendes Problem
  • Da CPUs eines in einem Fahrzeug eingebauten Mikrocomputers (ECU) einen Fehlerprüfprozess zusätzlich zu einem normalen Prozess (beispielsweise einen Fahrzeugsteuerungsprozess) durchführen, kann der normale Prozess durch Durchführung des Fehlerprüfprozesses beeinflusst werden.
  • Daher liegt in der vorliegenden Erfindung die Aufgabe zugrunde, ein Fehlerprüfgerät und ein Fehlerprüfverfahren anzugeben, die in der Lage sind, den Fehlerprüfprozess derart durchzuführen, dass der Einfluss auf den normalen Prozess der CPUs auf ein Minimum reduziert wird.
  • Mittel zum Lösen des Problems
  • Zum Erzielen der vorstehend beschriebenen Aufgabe wird gemäß einem ersten Aspekt der vorliegenden Erfindung ein Fehlerprüfgerät zur Durchführung einer Fehlerprüfung von mehreren CPUs angegeben, wobei das Fehlerprüfgerät eingerichtet ist, eine Verarbeitungslast der CPUs insgesamt auf der Grundlage von Fahrzeuginformationen in Bezug auf Prozesse der CPUs vorherzusagen oder zu erfassen, und eine Art der Durchführung der Fehlerprüfung entsprechend einem Vorhersage- oder Erfassungsergebnis der Verarbeitungslast zu ändern.
  • Vorteil der Erfindung
  • Gemäß der vorliegenden Erfindung können ein Fehlerprüfgerät und ein Fehlerprüfverfahren erhalten werden, die in der Lage sind, den Fehlerprüfprozess derart durchzuführen, dass der Einfluss auf den normalen Prozess der CPUs auf ein Minimum reduziert wird.
  • Kurze Beschreibung der Zeichnungen
  • 1 zeigt eine Darstellung zur Veranschaulichung einer Hardware-Konfiguration eines Fehlerprüfgeräts 1 gemäß einem Ausführungsbeispiel (ersten Ausführungsbeispiel) der vorliegenden Erfindung.
  • 2 zeigt eine Darstellung zur Veranschaulichung einer Systemschicht in dem Fall, in dem ein SoC, in dem eine Mehrkern CPU 12 eingebaut ist, als Hardware-Resource verwendet wird.
  • 3 zeigt ein Flussdiagramm eines Beispiels für eine Fehlerprüfteststeuerung in einem Betriebssystem (OS).
  • 4 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für eine ausführliche Konfiguration der in 1 veranschaulichten Mehrkern-CPU 12.
  • 5 zeigt eine Darstellung zur Veranschaulichung eines Überblicks eines Verbindungszustands von Multiplexern 201, 202, und 205 unmittelbar vor Start der Fehlerprüfung eines CPU-Kerns 101.
  • 6 zeigt eine Darstellung zur Veranschaulichung eines Zustands, in dem Daten für die Fehlerprüfung und ein erwarteter Wert gelesen werden.
  • 7 zeigt eine Darstellung zur Veranschaulichung eines Zustands, in dem ein Testergebnis aus den CPU-Kern 101 ausgegeben wird.
  • 8 zeigt eine Darstellung zur Veranschaulichung eines Überblicks eines Verbindungszustands von Multiplexern 201, 202, und 205 unmittelbar nach Abschluss der Fehlerprüfung des CPU-Kerns 201.
  • 9 zeigt ein Flussdiagramm eines weiteren Beispiels für eine Fehlerprüfteststeuerung.
  • 10 zeigt eine Darstellung zur Veranschaulichung einer Konfiguration in dem Fall, in dem die Fehlerprüfteststeuerung in einer Anwendungsschicht installiert ist.
  • 11 zeigt eine Darstellung zur Veranschaulichung eines Überblicks einer Dreieckwellenvergleich-PWM.
  • 12 zeigt eine Darstellung zur schematischen Veranschaulichung der Änderung in der Zeitdauer, die dem CPU-Kern zugeordnet ist, aufgrund der Änderung in der Trägerfrequenz (Änderung in der Drehzahl eines Elektromotors zum Antrieb eines Fahrzeugs).
  • 13 zeigt eine Darstellung zur schematischen Veranschaulichung der Änderung in den notwendigen Suchbereich in einem Umgebungsüberwachungssystems aufgrund der Änderung in der Fahrzeuggeschwindigkeit.
  • 14 zeigt eine Darstellung zur Veranschaulichung einer Hardware-Konfiguration eines Fehlerprüfgeräts 2 gemäß einem weiteren Ausführungsbeispiel (zweiten Ausführungsbeispiel) der vorliegenden Erfindung.
  • 15 zeigt eine Darstellung zur Veranschaulichung eines Beispiels einer Fehlerprüfteststeuerung zur Änderung eines Teils einer durchzuführenden Fehlerprüfung des CPU-Kerns gemäß einer Verarbeitungslast.
  • 16 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für eine Fehlerprüfteststeuerung zur Durchführung der Aufgabenjustierung entsprechend der Verarbeitungslast, um ausführbare Gelegenheiten der Fehlerprüfung des CPU-Kerns zu erhöhen.
  • 17 zeigt eine Darstellung zur Veranschaulichung eines Beispiels einer Fehlerprüfteststeuerung zum Aussetzen der Fehlerprüfung, falls die Verarbeitungslast während der Testbetriebsart hoch wird.
  • Bezugszeichenliste
  • 1, 2
    Fehlerprüfgerät
    12
    Mehrkern
    13
    Datenzugriffssteuerungseinrichtung
    14
    Speichersteuerungseinrichtung
    15
    Aufzeichnungsträger
    16
    Aufzeichnungsträger
    18
    Zeitgeber
    20
    Datenbus
    22
    Datenbus
    101, 102, 103, 104
    CPU-Kern
    200
    Datensteuerungseinrichtung
    201
    Multiplexer
    202
    Multiplexer
    203
    Betriebsartsteuerungseinrichtung
    204
    CPU-Nummerregister
    205
    Multiplexer
    210
    Fehlerprüfblock
    212, 214
    Speicherteil
    216
    Vergleichsteil
  • Beste Art zur Ausführung der Erfindung
  • Nachstehend ist die beste Art zur Ausführung der vorliegenden Erfindung ausführlich unter Bezugnahme auf die beiden Zeichnungen beschrieben.
  • 1 zeigt eine Darstellung zur Veranschaulichung einer Hardware-Konfiguration eines Fehlerprüfgeräts 1 gemäß einem Ausführungsbeispiel (ersten Ausführungsbeispiel) der vorliegenden Erfindung. Das Fehlerprüfgerät 1 ist durch eine LSI (Large-Scale-Integration, hohe Verdichtung) 10 verkörpert. Die LSI 10 weist einen Mehrkern-CPU 12, eine Datenzugriffsteuerungseinrichtung 13, eine Speichersteuerungseinrichtung 14, einen Zeitgeber 18 usw. auf.
  • Die Mehrkern-CPU 12 weist mehrere CPU-Kerne (gemäß diesem Ausführungsbeispiel zwei CPU-Kerne 101 und 102) sowie eine Datensteuerungseinrichtung 200 für die Datenverbindung zwischen den CPU-Kernen 101 und 102 auf.
  • Die Datenzugriffssteuerungseinrichtung 13 steuert den Zugriff auf einen Aufzeichnungsträger 15, in dem Daten, die zu dem Zeitpunkt der Durchführung der Fehlerprüfung der CPU-Kerne 101 und 102 notwendig sind, gespeichert sind. Der Aufzeichnungsträger 15 kann beispielsweise ein Speicher, eine HDD (Festplatte), usw. sein. Die Datenzugriffssteuerungseinrichtung 13 und die Mehrkern-CPU 12 sind mit einem Datenbus 20 verbunden.
  • Die Speichersteuerungseinrichtung 14 steuert den Zugriff auf einen Aufzeichnungsträger 16, in dem Programme und Daten gespeichert sind, die für normale Operationen notwendig sind. Der Aufzeichnungsträger 16 kann beispielsweise ein Speicher, eine HDD (Festplatte) usw. sein. Die Speichersteuerungseinrichtung 14 und die Mehrkern-CPU 12 sind mit einem Datenbus 22 verbunden.
  • 2 zeigt eine Darstellung zur Veranschaulichung einer Systemschicht in dem Fall, in dem ein SoC (System-On-a-Chip, Ein-Chip-System), bei dem eine Mehrkern-CPU 12 eingebaut ist, als eine Hardware-Resource verwendet wird. Ein OS (Betriebssystem) schätzt die zukünftige CPU-Last auf der Grundlage der durchzuführenden Anwendung und führt die Verwaltung des Betriebszustands der CPU-Kerne 101 und 102 sowie die Aufgabenzuordnung durch.
  • 3 zeigt ein Flussdiagramm eines Beispiels für eine Fehlerprüfteststeuerung in einem OS.
  • In Schritt 300 werden Fahrzeuginformationen zugeführt, die sich auf die Verarbeitungslast der CPU-Kerne 101 und 102 beziehen. Die Fahrzeuginformationen können beliebig sein, solange wie diese verwendet werden können, um die Verarbeitungslast der CPU-Kerne 101 und 102 vorherzusagen (oder zu erfassen). Die konkreten Beispiele für die Fahrzeuginformationen sind nachstehend beschrieben.
  • In Schritt 301 wird die Verarbeitungslast der CPU-Kerne 101 und 102 (d. h. die Verarbeitungslast der Multikern-CPU 12) auf der Grundlage der in Schritt 300 zugeführten Fahrzeuginformationen vorhergesagt. Beispielsweise kann die Verarbeitungslast der CPU-Kerne 101 und 102 innerhalb einer vorbestimmten Zeitdauer T (die nachstehend als Lastvorhersagezeitdauer T bezeichnet ist) von dem gegenwärtigen Zeitpunkt an vorhergesagt werden. Die Lastvorhersagezeitdauer T1 kann einer Zeit (einem maximalen Wert der Zeit, die es für die Prozesse von Schritt 310 zu Schritt 328 benötigt) entsprechen, die erforderlich ist, um die nachstehend beschriebene Fehlerprüfung durchzuführen. Weiterhin können die Verarbeitungslast der CPU-Kerne 101 und 102 als ein Durchschnittswert oder ein maximaler Wert der Verarbeitungslast der CPU-Kerne 101 und 102 innerhalb der Lastvorhersagezeitdauer T von dem gegenwärtigen Zeitpunkt an vorhergesagt werden. Es sei bemerkt, dass die Verarbeitungslast der CPU-Kerne 101 und 102 unter der Annahme vorhergesagt wird, dass die CPU-Kerne 101 und 102 die normalen Operationen von dem gegenwärtigen Zeitpunkt an durchführen, und nicht die eine ist, die unter der Annahme vorhergesagt wird, dass die CPU-Kerne 101 und 102 die nachstehend beschriebene Fehlerprüfung durchführen.
  • In Schritt 302 ist die in Schritt 301 vorhergesagte Verarbeitungslast höher als ein vorbestimmter Pegel. Der vorbestimmte Pegel kann den maximalen Pegel der Verarbeitungslast entsprechen, der durch den einzelnen CPU-Kern bewältigt werden kann. In diesem Fall kann der vorbestimmte Pegel individuell an die Fähigkeit (das Leistungsvermögen) der CPU-Kerne 101 und 102 angepasst werden. Es sei bemerkt, dass im allgemeinen das Leistungsvermögen des CPU-Kerns 101 dasselbe wie das Leistungsvermögen des CPU-Kerns 102 ist. Falls die in Schritt 301 vorhergesagte Verarbeitungslast höher als ein vorbestimmter Pegel ist, geht die Verarbeitungsroutine zu Schritt 304 über, wobei bestimmt wird, dass die Verarbeitung nicht durch den einzelnen CPU-Kern bewältigt werden kann. Falls demgegenüber die in Schritt 301 vorhergesagte Verarbeitungslast nicht größer als der vorbestimmte Pegel ist, geht die Verarbeitungsroutine zu Schritt 310 über, wobei bestimmt wird, dass der Prozess durch den einzelnen CPU-Kern bewältigt werden kann.
  • In Schritt 304 werden die CPU-Kerne 101 und 102 dazu gebracht, in der normalen Betriebsart zu arbeiten, und wird die Last zwischen den CPU-Kernen 101 und 102 verteilt. Anders ausgedrückt führen die CPU-Kerne 101 und 102 eine SMP-Operation durch (Symmetric-Multi-Processing, symmetrische Mehrverarbeitung).
  • In Schritt 306 führen die CPU-Kerne 101 und 102 die jeweiligen Aufgaben durch, die durch das OS geplant werden.
  • In Schritt 308 wird bestimmt, ob die Ausführungszeit der normalen Operationen der CPU-Kerne 101 und 102 (die von Schritt 304 an gemessene Ausführungszeit) die Lastvorhersagezeitdauer T erreicht. Falls die Ausführungszeit der normalen Operationen der CPU-Kerne 101 und 102 die Lastvorhersagezeitdauer T nicht erreicht, kehrt die Verarbeitungsroutine zu Schritt 306 zurück. Falls demgegenüber die Ausführungszeit der normalen Operationen der CPU-Kerne 101 und 102 die Lastvorhersagezeitdauer T erreicht, kehrt die Verarbeitungsroutine zu Schritt 300 zurück.
  • In Schritt 310 wird die CPU-Nummer, die den der Fehlerprüfung zu unterziehenden CPU-Kern () angibt, aufgerufen. Die CPU-Nummer gibt irgendeinen der CPU-Kerne 101 und 102 an, die abwechselnd in einer vorbestimmten Reihenfolge aufgerufen werden.
  • In Schritt 312 wird bestimmt, ob der zu prüfende CPU-Kern (CPU-Kern 101 oder 102) eine Aufgabe, die noch nicht abgeschlossen ist, (d. h. eine sich in Verarbeitung befindliche Aufgabe) hat. Falls es eine Aufgabe gibt, die noch nicht abgeschlossen worden ist, geht die Verarbeitungsroutine zu Schritt 314 über. Falls demgegenüber es keine Aufgabe gibt, die noch nicht abgeschlossen ist, geht die Verarbeitungsroutine zu Schritt 318 über.
  • In Schritt 314 nimmt die Verarbeitungsroutine einen Wartezustand für die noch nicht abgeschlossene Aufgabe an.
  • In Schritt 316 wird bestimmt, ob der zu prüfende CPU-Kern (CPU-Kern 101 oder 102) eine Aufgabe hat, die noch nicht abgeschlossen ist, wie es der Fall bei dem vorstehend beschriebenen Schritt 312 ist. Falls es eine Aufgabe gibt, die noch nicht abgeschlossen worden ist, kehrt die Verarbeitungsroutine zu Schritt 314 zurück. Falls es demgegenüber keine Aufgabe gibt, die noch nicht abgeschlossen ist, geht die Verarbeitungsroutine zu Schritt 318 über.
  • In Schritt 318 wird die Betriebsart des zu prüfenden CPU-Kerns (CPU-Kern 101 oder 102) von der normalen Betriebsart auf eine Testbetriebsart geändert. Auf diese Weise werden die Operationen der CPU-Kerne 101 und 102 von der SMP auf die AMP (Asymmetric Multiprocessing, asymmetrische Mehrfachverarbeitung) geändert. Insbesondere arbeitet der zu prüfende CPU-Kern 101 oder 102 in der Testbetriebsart und führt der andere CPU-Kern (der CPU-Kern 101 oder 102, der nicht zu prüfen ist) die durch das OS geplante Aufgabe durch.
  • In Schritt 320 wird die Testbetriebsart des zu prüfenden CPU-Kerns (CPU-Kern 101 oder 102) gestartet und wird ein Fehlerprüfprozess gestartet. Insbesondere wird das Lesen der Fehlerprüftestdaten und der entsprechenden vorhergesagten Werte aus dem Aufzeichnungsträger 15 über die Datenzugriffsteuerungseinrichtung 13 (vergl. 1) gestartet. Dann wird das Vergleichsergebnis zwischen dem vorhergesagten Wert und dem Testergebnis in den Aufzeichnungsträger geschrieben.
  • Während der Testbetriebsart weist das OS alle Aufgaben dem anderen CPU-Kern (dem nicht zu prüfenden CPU-Kern 101 oder 102) zu. Selbst in einem derartigen Fall können alle Aufgaben durch den anderen CPU-Kern alleine bewältigt werden, solange wie die Vorhersage und die Bestimmung in den Schritten 301 und 302 korrekt sind, da alle Aufgaben die Verarbeitungslast mit dem Pegel haben, der durch die einzelne CPU bewältigt werden kann, wie es vorstehend beschrieben worden ist. Somit können die dem anderen CPU-Kern zu dieser Zeit zugewiesenen Aufgaben die Aufgabe umfassen, die dem zu prüfenden CPU-Kern zugewiesen worden wäre, falls der CPU-Kern den SMP-Betrieb ausführen würde.
  • Der Inhalt des Fehlerprüfprozesses in Schritt 320 kann beliebig sein, solange wie die Fehlerprüfung als solches in geeigneter Weise durchgeführt werden kann. Beispielsweise kann der Fehlerprüfprozess einen Operationstest (Berechnungstest) oder der gleichen der ALU des CPU-Kerns alleine aufweisen. Das bevorzugte Beispiel für den Fehlerprüfprozess ist nachstehend beschrieben.
  • In Schritt 322 wird bestimmt, ob der Fehlerprüfprozess abgeschlossen ist. Falls bestimmt wird, dass der Fehlerprüfprozess abgeschlossen ist, geht die Verarbeitungsroutine zu Schritt 326 über. Falls demgegenüber bestimmt wird, dass der Fehlerprüfprozess nicht abgeschlossen ist, geht die Verarbeitungsroutine zu Schritt 324 über.
  • In Schritt 324 wird der Fehlerprüfprozess fortgesetzt. Um den Fehlerprüfprozess fortzusetzen, werden die nächsten Fehlerprüfdaten und der entsprechende vorhergesagte Wert aus der Datenzugriffssteuerungseinrichtung 13 gelesen. Dann wird das Vergleichsergebnis zwischen dem vorhergesagten Wert und dem Testergebnis in den Aufzeichnungsträger geschrieben. Der Prozess von Schritt 324 wird fortgesetzt, solange der Fehlerprüfprozess fortgesetzt wird (bis der Test für alle Fehlerprüftestdatensätze abgeschlossen ist).
  • In Schritt 326 wird die Betriebsart des zu prüfenden CPU-Kerns von der Testbetriebsart auf die normale Betriebsart geändert. Anders ausgedrückt, wird die normale Betriebsart des zu prüfenden CPU-Kerns wieder hergestellt.
  • In Schritt 328 aktualisiert die Datensteuerungseinrichtung 200 in der Mehrkern-CPU 12 die CPU-Nummer derart, dass diese den nächsten zu prüfenden CPU-Kern angibt.
  • 4 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für eine ausführliche Konfiguration der in 1 dargestellten Mehrkern-CPU 12.
  • Die Datensteuerungseinrichtung 200 der Mehrkern-CPU 12 weist Multiplexer (MUX) 201, 202 und 205, eine Betriebsartsteuerungseinrichtung 203, ein CPU-Nummerregister 204 und einen Fehlerprüfblock 210 auf. Der Multiplexer 201 wählt einen der Datenzugriffssteuerungseinrichtungen 13 (die Datenzugriffssteuerungseinrichtung 13 zum Zugreifen auf den Aufzeichnungsträger 15, in dem die zur Durchführung der Fehlerprüfung notwendigen Daten gespeichert sind) und die Speichersteuerungseinrichtung 14 (die Speichersteuerungseinrichtung 14 zum Zugriff auf den Aufzeichnungsträger 16, in dem die für normale Operationen notwendigen Daten gespeichert sind) aus, mit denen das Lesen/Schreiben der eingegebenen/ausgegebenen Daten des CPU-Kerns 101 durchgeführt wird.
  • Der Multiplexer 202 wählt die Datenzugriffssteuerungseinrichtung 13 oder die Speichersteuerungseinrichtung 14 aus, mit der das Lesen/Schreiben der eingegebenen/ausgegebenen Daten des CPU-Kerns 102 durchgeführt wird, wie es der Fall bei dem Multiplexer 201 ist.
  • Die Betriebsartsteuerungseinrichtung 203 wählt die Betriebsart (die normale Betriebsart oder die Testbetriebsart für die Fehlerprüfung) der CPU-Kerne 101 und 102 aus.
  • Das CPU-Nummerregister 204 speichert die CPU-Nummer des CPU-Kerns (des CPU-Kerns 101 oder 102), der als nächstes zu prüfen ist (vergl. Schritte 310 und 328 in 3).
  • Der Multiplexer 205 wählt die Ausgangsdaten des zu prüfenden CPU-Kerns (des CPU-Kerns 101 oder 102) aus.
  • Der Fehlerprüfblock 210 weist eine Funktion des Vergleichens des Ausgangsergebnisses (Verarbeitungsergebnisses) des zu prüfenden CPU-Kerns (des CPU-Kerns 101 oder 102) mit dem vorhergesagten Wert des Testergebnisses auf. Der Fehlerprüfblock 210 weist einen Speicherteil 212, der das Ausgangsergebnis des zu prüfenden CPU-Kerns (des CPU-Kerns 101 oder 102) speichert, einen Speicherteil 214, der den vorhergesagten Wert des Testergebnisses speichert, und einen Vergleichsteil 216 auf, der diese vergleicht.
  • Hier ist unter Bezugnahme auf 3 und 5 bis 8 eine Erläuterung der Operation während der Testbetriebsart angegeben, das heißt, bis die Testbetriebsart (Fehlerprüfprozess) des CPU-Kerns 101 abgeschlossen ist, nachdem die Betriebsart des CPU-Kerns 101 von der normalen Betriebsart auf die Testbetriebsart geändert worden ist.
  • Es sei bemerkt, dass als eine Vorgabe angenommen wird, dass das CPU-Nummerregister 204 der Datensteuerungseinrichtung 200 einen Wert ”0” darin gespeichert hat. Der Wert ”0” entspricht der CPU-Nummer des CPU-Kerns 101, und der Wert ”1” entspricht der CPU-Nummer des CPU-Kerns 102.
  • Als Erstes werden die Fahrzeuginformationen zugeführt (vergl. Schritt 300 in 3). Danach wird die Verarbeitungslast der CPU-Kerne 101 und 102 (d. h. die Verarbeitungslast insgesamt) auf der Grundlage der zugeführten Fahrzeuginformationen geschätzt (vorhergesagt) (vergl. Schritt 301 in 3). Falls die geschätzte Verarbeitungslast sich auf den Pegel befindet, die nicht durch den einzelnen CPU-Kern bewältigt werden kann (vergl. JA in Schritt 203 in 3), werden die Verarbeitungen der Schritte 304 bis 308 gemäß 3 durchgeführt und wird somit der Fehlerprüftest nicht durchgeführt.
  • Bei dem nächsten Aktualisierungszeitpunkt der Fahrzeuginformationen wird die Verarbeitungslast der CPU-Kerne 101 und 102 auf der Grundlage der zugeführten Fahrzeuginformationen geschätzt (vergl. Schritt 301 in 3). Falls die geschätzte Verarbeitungslast sich auf dem Pegel befindet, der durch den einzelnen CPU-Kern bewältigt werden kann (vergl. NEIN in Schritt 302 in 3), wird die CPU-Nummer des zu prüfenden CPU-Kerns aus der Datensteuerungseinrichtung 200 als die Vorbereitung zum Umschalten auf die Testbetriebsart für die Fehlerprüfung gelesen. Zu dieser Zeit ist der CPU-Kern 101 der zu prüfenden CPU-Kern, da der Wert ”0” in den CPU-Nummerregister 204 gespeichert ist.
  • Falls der CPU-Kern 101 den normalen Prozess durchführt, wenn der CPU-Kern 101 als der zu prüfende CPU-Kern bestimmt wird, ist es nicht möglich, unmittelbar die Betriebsart zum Starten des Fehlerprüfprozesses zu ändern (falls der Fehlerprüfprozess gestartet werden würde, würde das Verarbeitungsergebnis des normalen Prozesses anormal werden). Aus diesem Grund wird ein Wartezustand gebildet, bis der CPU-Kern 101 den Prozess der unbeendeten Aufgabe abschließt (vergl. Schritte 312 bis 316 in 3).
  • Falls es keine Aufgabe gibt, die durch den CPU-Kern 101 verarbeitet wird (d. h. falls der CPU-Kern 101 den Prozess der unbeendeten Aufgabe abgeschlossen hat), wird die Betriebsart des CPU-Kerns 101 durch die Betriebsartsteuerungseinrichtung 203 in der Datensteuerungseinrichtung 200 geändert (vergl. Schritt 318 in 3). Anders ausgedrückt wird die Betriebsart des CPU-Kerns 101 von der normalen Betriebsart auf die Testbetriebsart geändert. Gleichzeitig verbindet die Betriebsartsteuerungseinrichtung 203 die Multiplexer 201, 202 und 205 mit dem Bus für den Test. In Bezug auf diesen Zustand sind das interne Verbindungsbild der Multiplexer 201, 202 und 205 sowie die Betriebsarteinstellungssignale zu den CPU-Kernen 101 und 102 in 5 veranschaulicht.
  • Wenn die Betriebsart des CPU-Kerns 101 auf die Testbetriebsart geändert wird und die Verbindung zu dem Bus für den Test implementiert wird, werden die Daten für die Fehlerprüfung aus dem Aufzeichnungsträger 15 für den Test zu dem CPU-Kern 101 zugeführt und wird der entsprechende vorhergesagte Wert aus dem Aufzeichnungsträger 15 für den Test zu dem Speicherteil 214 des Fehlerprüfblocks 210 zugeführt. Dieser Zustand ist in 6 veranschaulicht.
  • Wenn die Daten für die Fehlerprüfung zugeführt werden, verarbeitet der CPU-Kern 101 die Daten und gibt die Ergebnisse nacheinander aus. Die Ausgangsergebnisse werden in den Speicherteil 212 des Fehlerprüfbocks 210 in der Datensteuerungseinrichtung 200 gespeichert. Dieser Zustand ist in 7 veranschaulicht.
  • Die Datensteuerungseinrichtung 200 vergleicht nacheinander die Ausgangsergebnisse des CPU-Kerns 101 mit den vorhergesagten Werten in dem Speicherteil 214 (vergl. Schritte 320 bis 324 in 3).
  • Wenn der Fehlerprüfprozess unter Verwendung aller Fehlerprüftestdatensätze abgeschlossen ist und der Vergleich zwischen den jeweiligen Ausgangsergebnissen und den entsprechenden vorhergesagten Werten ohne Fehler abgeschlossen ist, wird die Betriebsart des CPU-Kerns 101 von der Testbetriebsart auf die normale Betriebsart geändert (vergl. Schritt 326 in 3). Gleichzeitig wird der Wert des CPU-Nummerregisters 204 auf ”1” geändert (vergl. Schritt 328 in 3). Dieser Zustand ist in 8 veranschaulicht. Es sei bemerkt, dass, falls ein Fehler als Ergebnis des Fehlerprüfergebnis erfasst wird (d. h. falls es eine Nichtübereinstimmung zwischen den jeweiligen Ausgangsergebnissen und den entsprechenden vorhergesagten Werten gibt) ein Ausgangssignal ausgegeben werden kann, das den Fehler berichtet. Falls dieses Signal ausgegeben wird, kann eine Audiomitteilung und/oder eine visuelle Mitteilung oder dergleichen, die einen Anwender (einen Fahrer) zum Austausch oder zur Überprüfung der ECU aufgrund des Fehlers der ECU auffordert, zu dem Anwender (den Fahrer) ausgegeben werden.
  • Es sei bemerkt, dass, nachdem die Verarbeitungslast der CPU Kerne 101 und 102 vorhergesagt wird, und falls die vorhergesagte Verarbeitungslast sich auf dem Pegel befindet, der durch den einzelnen CPU-Kern innerhalb der für die Fehlerprüfung erforderlichen Zeit (d. h. der Lastvorhersagezeitdauer T) bewältigt werden kann, die Fehlerprüfung des CPU-Kerns 102 gleichermaßen durchgeführt wird.
  • Entsprechend dem Fehlerprüfgerät 1 gemäß diesem Ausführungsbeispiel kann die nachfolgende Wirkung unter anderem erhalten werden.
  • Da der Fehlerprüfprozess durchgeführt wird, wenn die Verarbeitungslast der CPU Kerne 101 und 102 insgesamt niedrig ist, wie es vorstehend beschrieben worden ist, kann der Fehlerprüfprozess der CPU Kerne 101 und 102 ohne Beeinträchtigen der normalen Prozesse der CPU Kerne 101 und 102 durchgeführt werden. Insbesondere wird es durch Vorhersagen der Verarbeitungslast der CPU Kerne 101 und 102 auf der Grundlage der Fahrzeuginformationen und Durchführen der Fehlerprüfung bei dynamischem Schalten der Betriebsart der Mehrkern-CPU 12 von der SMP-Operation auf die AMP-Operation möglich, die Fehlerprüfung der CPU Kerne 101 und 102 ohne Beeinträchtigen des Leistungsvermögens der normalen Prozesse der Mehrkern-CPU 12 zu implementieren. Weiterhin ist es, da die Fehlerprüfung für die jeweiligen CPU Kerne 101 und 102 durchgeführt wird, möglich, den Fehler von einem der CPU Kerne 101 und 102 zu erfassen und zu identifizieren, welcher der CPU Kerne 101 und 102 unter der Situation versagt, in der einer der CPU Kerne 101 und 102 versagt.
  • Es sei bemerkt, dass gemäß dem vorstehend beschriebenen Ausführungsbeispiel die Daten für die Fehlerprüfung und die vorhergesagten Werte aus dem Aufzeichnungsträger 15 zu der Datensteuerungseinrichtung 200 gelesen werden. Jedoch sind in dem Fall einer Konfiguration, bei der die Fehlerprüfung der CPU Kerne 101 und 102 stets unter Verwendung desselben Testmusters durchgeführt werden, die vorhergesagten Werte fest eingestellt. Somit können im Falle einer derartigen Konfiguration die vorhergesagten Werte vorab in dem Speicherbereich wie einem ROM, einem RAM oder dergleichen in der Datensteuerungseinrichtung 200 gespeichert werden. Entsprechend einer derartigen Konfiguration wird Datenzugriff über die Datenzugriffsteuerungseinrichtung 13 unnötig, und kann somit das Risiko der Reduktion der Fähigkeiten des Busses beim Durchführen der Fehlerprüfung verringert werden.
  • Weiterhin wird gemäß dem Ausführungsbeispiel die in 3 veranschaulichte Verarbeitungsroutine mit einem Zyklus entsprechend dem Aktualisierungszyklus der Fahrzeuginformationen (beispielsweise eine Sekunde) ausgeführt; jedoch kann der Ausführungszyklus beliebig sein, in Abhängigkeit von den Inhalten der Fehlerprüfung usw.. Beispielsweise ist es in Hinblick auf die Prüfung des Fehlers aufgrund einer profanen Variation es ausreichend, wenn die Fehlerprüfung jeden Tag im Falle des minimalen Intervalls ausgeführt wird. Somit kann die Zeit, zu der die vorhergehende Fehlerprüfung ausgeführt worden ist, gespeichert werden, und kann der Prozess gemäß 3 lediglich dann ausgeführt werden, falls die Fehlerprüfung für mehr als eine gewisse Zeitdauer nicht durchgeführt worden ist. Insbesondere können, wie es in 9 veranschaulicht ist, die Verarbeitungen der Schritte 900 und 902 zu der in 3 veranschaulichten Fehlerprüfteststeuerung hinzugefügt werden. In diesem Fall wird der letzte (vorhergehende) Fehlerprüfzeitpunkt der CPU Kerne 101 und 102 mit der gegenwärtigen Zeit verglichen und wird die Prozessroutine gemäß 3 (von Schritt 300 an) lediglich durchgeführt, falls die Fehlerprüfung für länger als eine gewisse Zeitdauer (beispielsweise einem Tag) nicht durchgeführt worden ist. Es sei bemerkt, dass die in 9 veranschaulichte Fehlerprüfteststeuerung für den Fall angepasst ist, in dem die CPU Kerne 101 und 102 die ECU des Systems konfigurieren, die nicht auf das Fahrzeugantriebleistungsvermögen bezogen ist (d. h. einem System zur Verbesserung der Bequemlichkeit oder des Komforts, wie ein Navigationssystem).
  • Weiterhin wird gemäß dem vorstehend beschriebenen Ausführungsbeispiel die Fehlerprüfteststeuerung (vergl. 3) durch das OS implementiert; jedoch kann dieselbe Wirkung durch Verwendung der Anwendungs- oder Mittelschicht (Middle Layer) erhalten werden. In diesem Fall werden der CPU-Kern zur Steuerung der jeweiligen Anwendungen und der Fehlerprüftest vorab bestimmt. Beispielsweise wird in dem 10 veranschaulichten Beispiel die Fehlerprüfteststeuerung dem CPU-Kern 101 zugewiesen. In diesem Fall arbeiten die CPU Kerne 101 und 102 in der AMP-Betriebsart.
  • Nachstehend sind konkrete Beispiele für ein Verfahren zur Vorhersage der Verarbeitungslast der CPU Kerne 101 und 102 anhand der Fahrzeuginformationen erläutert.
  • Ein erstes Beispiel bezieht sich auf ein Verfahren zur Vorhersage der Verarbeitungslast der CPU Kerne 101 und 102 unter Verwendung der Trägerfrequenz eines PWM-Signals als die Fahrzeuginformationen. Das PWM-Signal wird zur Steuerung eines Elektromotors zum Antrieb des Fahrzeugs verwendet. Dabei führen die CPU Kerne 101 und 102 die Steuerung des Elektromotors zum Antrieb des Fahrzeugs durch. Anders ausgedrückt befinden sich die CPU Kerne 101 und 102 in der ECU eines Hybridsystems.
  • In dem Hybridfahrzeug (und einem Elektrofahrzeug) wird die Fahrzeugfahrt durch Steuerung des Elektromotors zum Antrieb des Fahrzeugs gesteuert. Im Allgemeinen wird eine Dreieckwellenvergleichs-PWM, wie sie in 11 veranschaulicht ist, für die Steuerung des Elektromotors zum Antrieb des Fahrzeugs verwendet. Eine synchronisierte PWM-Steuerung (Trägerphasensynchronisation) wird verwendet, um eine gleichförmige Steuerung eines Umrichters zu implementieren. Gemäß der synchronisierten PWM-Steuerung wird die Trägerfrequenz mit der Umdrehungszahl des Elektromotors zum Antrieb des Fahrzeugs variiert. Anders ausgedrückt wird die Trägerfrequenz umso höher, je höher die Umdrehungszahl des Elektromotors zum Antrieb des Fahrzeugs wird. Wenn die Trägerfrequenz hoch wird, wird die Verarbeitungsfähigkeit, die für die CPU Kerne 101 und 102 angefordert wird, hoch. Insbesondere wird, wie es in 12 veranschaulicht ist, wenn die Trägerfrequenz höher wird, die Frequenz der Sinuswelle kürzer, und wird die Zeit, die den CPU Kernen 101 und 102 zur Durchführung der Prozesse zugewiesen wird, kürzer, weshalb die Verarbeitungslast der CPU Kerne 101 und 102 höher wird. Daher ist es bei dem System, bei dem die Steuerung des Elektromotors zum Antrieb des Fahrzeugs mit der synchronisierten PWM-Steuerung durchgeführt wird, möglich, die Verarbeitungslast der CPU Kerne 101 und 102 unter Verwendung der Trägerfrequenz (und des Zählers zur Steuerung der Trägerfrequenz) als die Fahrzeuginformationen vorherzusagen. Aus diesem Grund wird gemäß dem ersten konkreten Beispiel ein Zeitgeber für die Trägerfrequenz als der Zeitgeber 18 (vergl. 4) verwendet. Weiterhin wird gemäß dem in 3 veranschaulichten Flussdiagram der Trägerfrequenzsteuerungszähler als die Fahrzeuginformationen zugeführt (Schritt 300), wird die Verarbeitungslast der CPU Kerne 101 und 102 auf der Grundlage der Trägerfrequenz vorhergesagt (vergl. Schritt 301) und wird bestimmt, ob die vorhergesagte Verarbeitungslast höher als der vorbestimmte Pegel ist (Schritt 302). Es sei bemerkt, dass als die Verarbeitungen der Schritte 301 und 302 gemäß 3 bestimmt werden kann, ob die Trägerfrequenz höher als ein vorbestimmter Schwellenwert (vorbestimmte Frequenz) ist. In diesem Fall kann auf der Grundlage des gleichen Konzepts der vorbestimmte Schwellwert auf den maximalen Pegel der Verarbeitungslast angepasst werden, die durch den einzelnen CPU-Kern bewältigt werden kann. Beispielsweise kann in dem Fall, in dem die Betriebsfrequenz der CPU Kerne 101 und 102 64 MHz beträgt, falls die Trägerfrequenz des PWM-Signals niedriger als 5 kHz ist, die Fehlerprüfung durchgeführt werden, wenn bestimmt wird, dass die Verarbeitungslast durch den einzelnen CPU-Kern bewältigt werden kann. Falls dem gegenüber die Trägerfrequenz des PWM-Signals gleich oder größer als 5 kHz ist, kann die Fehlerprüfung nicht durchgeführt werden, wenn bestimmt wird, dass die Verarbeitungslast nicht durch den einzelnen CPU-Kern bewältigt werden kann.
  • Es sei bemerkt, dass gemäß dem ersten konkreten Ausführungsbeispiel die Trägerfrequenz des PWM-Signals auf der Grundlage anderer Steuerungsinformationen des Elektromotors zum Antrieb des Fahrzeugs (beispielsweise der Drehzahl, des Drehmoments, der Drehrichtung des Elektromotors zum Antrieb des Fahrzeugs usw.) berechnet oder bestimmt werden kann.
  • Ein zweites konkretes Beispiel bezieht sich auf ein Verfahren zur Vorhersage der Verarbeitungslast der CPU Kerne 101 und 102 unter Verwendung von Bedienungsinformationen eines Anwenders in einem Navigationssystem (Multimediasystem) (oder Informationen bezüglich des Steuerungszustands des Systems auf der Grundlage der Bedienung durch den Anwender) als die Fahrzeuginformationen. Dabei führen die CPU Kerne 101 und 102 die Steuerung des Navigationssystems durch. Anders ausgedrückt befinden sich die CPU Kerne 101 und 102 in der ECU des Navigationssystems.
  • In dem Navigationssystem können die Anwendungen, die gleichzeitig zu betreiben sind, anhand der Bedienungen durch den Anwender (beispielsweise der Bildschirmbedienungen auf einem Touch-Panel) erkannt werden, und somit kann die Verarbeitungslast der CPU Kerne 101 und 102 auf der Grundlage der Bedienungen des Anwenders vorhergesagt werden. Beispielsweise umfassen die Anwendungen, die gleichzeitig durch die Bildschirmbedienungen des Anwenders in dem Navigationssystem bearbeitet werden können, eine Routensuchfunktion der Navigation, das Rippen der CD, der Empfang und die Audioausgabe eines DTV (digitales TV) usw.. Dabei wird die Verarbeitungslast der CPU Kerne 101 und 102 umso höher, je größer die Anzahl der gleichzeitig zu bearbeitenden Anwendungen wird. Daher ist es in dem Navigationssystem, in dem die Anwendungen gleichzeitig durch die Bedienungen durch den Anwender betrieben werden können, möglich, die Verarbeitungslast der CPU Kerne 101 und 102 auf der Grundlage von Bedienungsinformationen des Anwenders (und der Anzahl der gleichzeitig durch die Bedienungen zu betreibenden Anwendungen) als die Fahrzeuginformationen vorherzusagen. Aus diesem Grund werden gemäß dem zweiten konkreten Beispiel die Bedienungsinformationen der Mehrkern-CPU 12 zugeführt. Weiterhin werden gemäß dem in 3 veranschaulichten Flussdiagram die Bedienungsinformationen als die Fahrzeuginformationen zugeführt (Schritt 300), wird die Anzahl der gleichzeitig zu bearbeitenden Anwendungen als die Verarbeitungslast der CPU Kerne 101 und 102 auf der Grundlage der Bedienungsinformationen vorhergesagt (Schritt 301) und wird bestimmt, ob die vorhergesagte Verarbeitungslast höher als der vorbestimmte Pegel (eine vorbestimmte Anzahl der Anwendungen) ist (Schritt 302). In diesem Fall kann auf der Grundlage des gleichen Konzepts die vorbestimmte Anzahl der Anwendungen auf den maximalen Pegel der Verarbeitungslast (der maximalen Anzahl der Anwendungen) angepasst werden, die durch den einzelnen CPU-Kern bewältigt werden kann. Beispielsweise kann, wenn die Betriebsfrequenz der CPU Kerne 101 und 102 400 MHz beträgt, die vorbestimmte Anzahl der Anwendungen zwei sein. In diesem Fall kann, falls lediglich der Routensuchprozess beispielsweise aufgrund der Bedienung durch den Anwender durchzuführen ist, die Fehlerprüfung durchgeführt werden, wenn bestimmt wird, dass die Verarbeitungslast durch den einzelnen CPU-Kern bewältigt werden kann. Falls demgegenüber beispielsweise der Routensuchprozess und der Ripp-Prozess aufgrund der Bedienungen durch den Anwender gleichzeitig durchzuführen sind, kann die Fehlerprüfung nicht durchgeführt werden, wenn bestimmt wird, dass die Verarbeitungslast nicht durch den einzelnen CPU-Kern bewältigt werden kann.
  • Ein drittes konkretes Beispiel bezieht sich auf ein Verfahren zur Vorhersage der Verarbeitungslast der CPU-Kerne 101 und 102 unter Verwendung der Informationen bezüglich der Fahrzeuggeschwindigkeit als die Fahrzeuginformationen. Dabei führen die CPU-Kerne 101 und 102 die Steuerung eines Umgebungsüberwachungssystems durch, das eine am Fahrzeug angebrachte Umgebungsüberwachungskamera verwendet. Anders ausgedrückt befinden sich die CPU-Kerne 101 und 102 in der ECU des Umgebungsüberwachungssystems. Typischerweise wird in dem Umgebungsüberwachungssystem ein vorbestimmtes Zielobjekt (beispielsweise die Straßenmarkierungen wie eine weiße Linie, Straßenverkehrszeichen, Hindernisse) durch die Bilderkennung anhand des durch die am Fahrzeug angebrachten Umgebungsüberwachungskamera aufgenommenen Bildes erfasst. Es sei bemerkt, dass das Bilderkennungsergebnis in einem Warnsystem zum Hinweis des Anwenders auf das Vorhandensein eines Hindernisses oder dergleichen beispielsweise, einen Fahrzeugsteuerungssystem zur Durchführung der Fahrzeugsteuerung auf der Grundlage der Positionsbeziehung zwischen dem Hindernis oder dergleichen und dem Fahrzeug usw. verwendet werden kann.
  • Bei dem Umgebungsüberwachungssystem wird die Verarbeitungslast der CPU-Kerne 101 und 102 umso höher, je höher die Fahrzeuggeschwindigkeit wird, da der Suchbereich für das Zielobjekt wie einem Hindernis größer wird. Anders ausgedrückt wird, da die Distanz, die das Fahrzeug in einer vorbestimmten Zeit zurücklegt, mit größer werdender Fahrzeuggeschwindigkeit größer wird, die Länge des zu überwachenden Bereiches größer. Beispielsweise kann, wie es vereinfacht in 13 veranschaulicht ist, der Suchbereich bei einer niedrigen Fahrzeuggeschwindigkeit von dem Bild von 1 Meter voraus bis zu dem Bild von 10 Meter voraus sein, wohingegen der Suchbereich bei einer hohen Fahrzeuggeschwindigkeit das Bild von 20 Meter voraus erfordert. Daher ist es bei dem Umgebungsüberwachungssystem, bei dem der Bildverarbeitungsbereich mit der Fahrzeuggeschwindigkeit variiert wird, möglich, die Verarbeitungslast der CPU-Kerne 101 und 102 unter der Verwendung der Fahrzeuggeschwindigkeitsinformationen als die Fahrzeuginformationen vorherzusagen. Aus diesem Grund wird gemäß dem dritten konkreten Beispiel die Fahrzeuggeschwindigkeitsinformationen der Mehrkern-CPU 12 zugeführt. Die Fahrzeuggeschwindigkeitsinformationen können aus einem Fahrzeug-Raddrehzahlsensor erhalten werden oder können Informationen sein, die sich auf die Fahrzeuggeschwindigkeit beziehen, wie die Drehzahl der Ausgangswellen eines Getriebes. Weiterhin wird gemäß dem in 3 veranschaulichten Flussdiagramm die Fahrzeuggeschwindigkeitsinformationen als die Fahrzeuginformationen zugeführt (Schritt 300), wird der Suchbereich für das Zielobjekt als die Verarbeitungslast der CPU-Kerne 101 und 102 auf der Grundlage der Fahrzeuggeschwindigkeitsinformationen vorhergesagt (vergl. 301) und wird bestimmt, ob die vorhergesagte Verarbeitungslast höher als der vorbestimmte Pegel (einem Suchbereich) ist (Schritt 302). In diesem Fall kann auf der Grundlage des gleichen Konzepts der vorbestimmte Suchbereich auf den maximalen Pegel der Verarbeitungslast (der maximale Suchbereich) angepasst werden, der durch den einzelnen CPU-Kern bewältigt werden kann. Alternativ dazu kann, als die Verarbeitungen der Schritte 301 und 302 gemäß 3, bestimmt werden, ob die Fahrzeuggeschwindigkeit höher als ein vorbestimmter Schwellwert (eine vorbestimmte Fahrzeuggeschwindigkeit) ist. In diesem Fall kann auf der Grundlage des gleichen Konzepts die vorbestimmte Fahrzeuggeschwindigkeit auf den maximalen Pegel der Verarbeitungslast angepasst werden, die durch den einzelnen CPU-Kern bewältigt werden kann. Falls sich beispielsweise die Fahrzeuggeschwindigkeit innerhalb eines niedrigen Geschwindigkeitsbereichs befindet, der niedriger als die vorbestimmte Fahrzeuggeschwindigkeit ist, kann die Fehlerprüfung durchgeführt werden, wenn bestimmt worden ist, dass die Verarbeitungslast durch den einzelnen CPU-Kern bewältigt werden kann. Falls dem gegenüber die Fahrzeuggeschwindigkeit sich innerhalb eines mittleren oder hohen Geschwindigkeitsbereichs befindet, der gleich oder größer als die vorbestimmte Fahrzeuggeschwindigkeit ist, kann die Fehlerprüfung nicht durchgeführt werden, wenn bestimmt worden ist, dass die Verarbeitungslast durch den einzelnen CPU-Kern nicht bewältigt werden kann.
  • Ein viertes konkretes Beispiel bezieht sich auf ein Verfahren zur Vorhersage der Verarbeitungslast der CPU-Kerne 101 und 102 unter Verwendung der Informationen der Maschinendrehzahl als die Fahrzeuginformationen. Dabei führen die CPU-Kerne 101 und 102 die Steuerung eines Maschinensteuerungssystems durch. Anders ausgedrückt konfigurieren die CPU-Kerne 101 und 102 eine EFI-ECU. Das Maschinensteuerungssystem führt verschiedene Maschinensteuerungen wie eine Kraftstoffeinspritzung, Zündung usw. durch.
  • In dem Maschinensteuerungssystem wird die Verarbeitungslast der CPU-Kerne 101 und 102 umso höher, je höher die Maschinendrehzahl wird. Daher ist es in dem Maschinensteuerungssystem möglich, die Verarbeitungslast der CPU-Kerne 101 und 102 unter Verwendung der Maschinendrehzahl als die Fahrzeuginformationen vorherzusagen. Aus diesem Grund wird gemäß dem vierten konkreten Beispiel die Maschinendrehzahl der Mehrkern-CPU 12 zugeführt. Weiterhin wird gemäß dem in 3 veranschaulichtem Flussdiagramm die Maschinendrehzahl als die Fahrzeuginformationen zugeführt (Schritt 300), wird die Verarbeitungslast der CPU-Kerne 101 und 102 auf der Grundlage der Maschinendrehzahl vorhergesagt (vergl. Schritt 301) und wird bestimmt, ob die vorhergesagte Verarbeitungslast höher als der vorbestimmte Pegel ist (Schritt 302). Es sei bemerkt, dass als die Verarbeitungen der Schritte 301 und 302 gemäß 3 bestimmt werden kann, ob die Maschinendrehzahl höher als ein vorbestimmter Schwellwert (eine vorbestimmte Maschinendrehzahl) ist. Falls beispielsweise die Maschinendrehzahl niedriger ist als die vorbestimmte Maschinendrehzahl ist, kann die Fehlerprüfung durchgeführt werden, wobei bestimmt worden ist, dass die Verarbeitungslast durch den einzelnen CPU-Kern bewältigt werden kann. Falls demgegenüber die Maschinendrehzahl gleich oder größer als die vorbestimmte Maschinendrehzahl ist, kann die Fehlerprüfung nicht durchgeführt werden, wenn bestimmt worden ist, dass die Verarbeitungslast durch den einzelnen CPU-Kern nicht bewältigt werden kann. In diesem Fall kann, auf der Grundlage des gleichen Konzepts, der vorbestimmte Schwellwert (vorbestimmte Maschinendrehzahl) auf der Grundlage des maximalen Pegels der Verarbeitungslast, die durch den einzelnen CPU-Kern bewältigt werden kann, angepasst werden.
  • 14 zeigt eine Darstellung zur Veranschaulichung einer Hardware-Konfiguration eines Fehlerprüfgeräts 2 gemäß einem weiteren Ausführungsbeispiel (zweiten Ausführungsbeispiel) der vorliegenden Erfindung.
  • Das Fehlerprüfgerät 2 gemäß dem vorliegenden Ausführungsbeispiel unterscheidet sich von dem Fehlerprüfgerät 1 gemäß dem vorstehend beschriebenen Ausführungsbeispiel hauptsächlich in der Anzahl der CPU-Kerne. Insbesondere weist das Fehlerprüfgerät 2 gemäß dem vorliegenden Ausführungsbeispiel vier CPU-Kerne 101, 102, 103 und 104 auf. Auf diese Weise kann die Anzahl der CPU-Kerne in der Mehrkern-CPU 12 beliebig sein, solange sie gleich oder größer als 2 ist.
  • Gemäß dem Ausführungsbeispiel kann die Fehlerprüfteststeuerung durchgeführt werden, wie sie in dem Flussdiagramm gemäß 3 veranschaulicht ist. In diesem Fall kann in Bezug auf die Bestimmung in Schritt 302 der vorbestimmte Pegel den maximalen Pegel entsprechen, der durch drei CPU-Kerne bewältigt werden kann. Anders ausgedrückt kann der vorbestimmte Pegel dem maximalen Pegel der Verarbeitungslast entsprechen, bei dem ein CPU-Kern die Fehlerprüfung durchführen kann und die anderen drei CPU-Kerne die normalen Prozesse durchführen können. In diesem Fall kann gleichermaßen der vorbestimmte Pegel individuell auf die Fähigkeit (Leistungsvermögen) der CPU-Kerne 101, 102, 103 und 104 angepasst werden. Es sei bemerkt, dass im Allgemeinen die Fähigkeiten der CPU-Kerne 101, 102, 103 und 104 dieselben sind. In Bezug auf die Bestimmung von Schritt 302 gilt, falls die vorhergesagte Verarbeitungslast höher als der vorbestimmte Pegel ist, die Verarbeitungsroutine zu Schritt 304 über, in dem die CPU-Kerne 101, 102, 103 und 104 die SMP-Operationen durchführen. Falls demgegenüber die vorhergesagte Verarbeitungslast niedriger als der vorbestimmte Pegel ist, geht die Verarbeitungsroutine zu Schritt 310 über, in dem die CPU-Nummer des zu prüfenden CPU-Kerns aufgerufen wird. Gemäß dem Ausführungsbeispiel kann die CPU-Nummer in dem CPU-Nummerregister 204 periodisch in der Reihenfolge von ”0”, ”1”, ”2” und ”3” beispielsweise aktualisiert werden. Die CPU-Nummern ”0”, ”1”, ”2” und ”3” entsprechen jeweils den CPU-Kernen 101, 102, 103 und 104. Es sei bemerkt, dass die Reihenfolge der Aktualisierung der CPU-Nummer beliebig ist. Beispielsweise kann die CPU-Nummer beispielsweise periodisch in der Reihenfolge von ”1”, ”0”, ”2” und ”3” aktualisiert werden.
  • Weiterhin kann auch gemäß dem vorliegenden Ausführungsbeispiel die Datensteuerungseinrichtung 200 dieselbe Konfiguration aufweisen, wie sie in 4 veranschaulicht ist. Jedoch sind, wie es der Fall bei den CPU-Kernen 101 und 102 ist, für die die Multiplexer 201 und 202 vorgesehen sind, jeweilige Multiplexer für die CPU-Kerne 103 und 104 vorgesehen. Weiterhin ist das CPU-Nummerregister 204 ein 2-Bit-Register zum Unterbringen der vier Nummern der CPU-Kerne 101, 102, 103 und 104. Weiterhin ist der Multiplexer 205 derart eingerichtet, dass er nicht nur den Eingang von den CPU-Kernen 101 und 102 sondern ebenfalls den Eingang aus den CPU-Kernen 103 und 104 empfängt.
  • Es sei bemerkt, dass gemäß dem zweiten Ausführungsbeispiel die CPU-Kerne 101, 102, 103 und 104 eingerichtet sind, die Fehlerprüfung einzeln durchzuführen; jedoch können die CPU-Kerne 101, 102, 103 und 104 derart eingerichtet sein, dass einer, zwei oder drei der CPU-Kerne 101, 102, 103 und 104 selektiv die Fehlerprüfung parallel ausführen. Falls beispielsweise die vorhergesagte Verarbeitungslast sich auf einem Pegel befindet, der durch den einzelnen CPU-Kern bewältigt werden kann, können die verbleibenden drei CPU-Kerne die Fehlerprüfung parallel durchführen, falls die vorhergesagte Verarbeitungslast sich auf dem Pegel befindet, der nicht durch den einzelnen CPU-Kern bewältigt werden kann, jedoch durch zwei CPU-Kerne bewältigt werden kann, können die verbleibenden zwei CPU-Kerne die Fehlerprüfung parallel durchführen, und falls die vorhergesagte Verarbeitungslast sich auf einem Pegel befindet, der nicht durch die zwei CPU-Kerne bewältigt werden kann, jedoch durch drei CPU-Kerne bewältigt werden kann, kann der verbleibende eine CPU-Kern die Fehlerprüfung durchführen. In diesem Fall können drei Fehlerprüfblöcke 210 (vergl. 4) vorbereitet werden.
  • Die vorliegende Erfindung ist unter Bezugnahme auf die bevorzugten Ausführungsbeispiele offenbart. Jedoch sollte verstanden werden, dass die vorliegende Erfindung nicht auf die vorstehend beschriebenen Ausführungsbeispiele begrenzt ist, sondern dass Variationen und Modifikationen ohne Verlassen des Umfangs der vorliegenden Erfindung gemacht werden können.
  • Beispielsweise wird gemäß dem vorstehend beschriebenen Ausführungsbeispielen die Verarbeitungslast der CPU-Kerne anhand der Fahrzeuginformationen vorhergesagt und wird auf der Grundlage des Vorhersageergebnisses bestimmt, ob die Fehlerprüfung durchzuführen ist; jedoch kann die Verarbeitungslast der CPU-Kerne anhand der Fahrzeuginformationen erfasst werden und kann auf der Grundlage des Erfassungsergebnisses bestimmt werden, ob die Fehlerprüfung durchzuführen ist. Beispielsweise kann, falls die Zeit, die es benötigt, um den Fehlerprüfprozess durchzuführen (der mögliche Maximalwert der Zeit, die für die Schritte 310 des 328 gemäß 3 erforderlich ist) wesentlich kürzer als die Zeit ist, in der die Verarbeitungslast der CPU-Kerne sich signifikant ändert, auf der Grundlage der in Echtzeit erfassten Verarbeitungslast der CPU-Kerne bestimmt werden, ob die Fehlerprüfung durchzuführen ist. Es sei bemerkt, dass zur Erfassung der Verarbeitungslast der Mehrkern-CPU 12 die Anzahl der in der Mehrkern-CPU 12 innerhalb einer vorbestimmten Zeitdauer vor dem gegenwärtigen Zeitpunkt aufgerufenen Funktionen usw. als die Fahrzeuginformationen zusätzlich zu den vorstehend beschriebenen Informationen wie die Trägerfrequenz (der gegenwärtige Wert) des PWM-Signals usw. verwendet werden können.
  • Weiterhin wird gemäß dem vorstehend beschriebenen Ausführungsbeispielen entsprechend davon, ob die vorhergesagte Verarbeitungslast der Mehrkern-CPU 12 größer als der vorbestimmte Pegel bestimmt, ob die Fehlerprüfung des bzw. der entsprechenden einen, zwei oder mehr als zwei CPU-Kernen durchzuführen ist; jedoch kann die Art der Durchführung der Fehlerprüfung in vielerlei Weise entsprechend der vorhergesagten Verarbeitungslast der Mehrkern-CPU 12 geändert werden.
  • Beispielsweise kann ein Ausführungsteil der Fehlerprüfung in Bezug auf einen bestimmten einzelnen CPU-Kern entsprechend der vorhergesagten Verarbeitungslast der Mehrkern-CPU 12 geändert werden. Genauer kann, falls die Fehlerprüfung unter Verwendung einer Vielzahl von Fehlerprüftestdatensätzen durchgeführt wird, die Anzahl der bei der Durchführung der Fehlerprüfung zu verarbeitenden Fehlerprüftestdatensätze in Bezug auf den bestimmten einzelnen CPU-Kern entsprechend der vorhergesagten Verarbeitungslast der Mehrkern-CPU 12 justiert werden. In diesem Fall verarbeitet bei der nächsten Gelegenheit (oder nächsten Gelegenheiten) der bestimmte einzelne CPU-Kern die (den) verbleibenden Fehlerprüftestdatensätze(-satz) für die Fehlerprüfung des bestimmten einzelnen CPU-Kerns.
  • 15 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für eine Fehlerprüfteststeuerung zur Änderung eines Teils einer durchzuführenden Fehlerprüfung des CPU-Kerns entsprechend einer Verarbeitungslast. Gemäß dem in 15 veranschaulichten Flussdiagramm werden die Fahrzeuginformationen in Schritt 1500 zugeführt (wie es der Fall bei Schritt 300 ist), wird die Verarbeitungslast der CPU-Kerne 101 und 102 in Schritt 1501 vorhergesagt (wie es der Fall bei Schritt 301 ist), und wird in Schritt 1502 bestimmt, ob die vorhergesagte Verarbeitungslast höher als der vorbestimmte Pegel ist (wie es der Fall bei Schritt 302 ist). Falls die vorhergesagte Verarbeitungslast höher als der vorbestimmte Pegel ist, wird in Schritt 1504 der normale Prozess durchgeführt (wie es bei den Schritten 304, 306 und 308 der Fall ist). Falls demgegenüber die vorhergesagte Verarbeitungslast nicht höher als der vorbestimmte Pegel ist, wird in Schritt 1506 bestimmt, ob die Differenz zwischen der vorhergesagten Verarbeitungslast und dem vorbestimmten Pegel klein ist. Anders ausgedrückt wird bestimmt, ob die vorhergesagte Verarbeitungslast nahe genug an dem vorbestimmten Pegel ist, so dass die Verarbeitungslast den vorbestimmten Pegel innerhalb einer kurzen Zeitdauer (kürzer als die Lastvorhersagezeitdauer T) überschreiten kann. Falls die Differenz zwischen der vorhergesagten Verarbeitungslast und dem vorbestimmten Pegel klein ist, geht die Verarbeitungsroutine zu Schritt 1510 über, wenn bestimmt worden ist, dass die Verarbeitungslast im weiteren Verlauf den vorbestimmten Pegel in einer kurzen Zeitdauer überschreiten kann, die kürzer als die Lastvorhersagezeitdauer T ist. Falls demgegenüber die Differenz zwischen der vorhergesagten Verarbeitungslast und dem vorbestimmten Pegel nicht klein ist, geht die Verarbeitungsroutine zu Schritt 1508 über. In Schritt 1508 wird die Verarbeitung der Fehlerprüfung vollständig durchgeführt. Die vollständige Fehlerprüfung kann durchgeführt werden, wie es in den Schritten 310 bis 328 gemäß 3 beschrieben worden ist. Demgegenüber wird in Schritt 1510 ein Teil der Fehlerprüfung derart durchgeführt, dass die Fehlerprüfung in der Zeitdauer abgeschlossen werden kann, die kürzer als die Lastvorhersagezeitdauer T ist. Der Teil der Fehlerprüfung kann durchgeführt werden, wie es in den Schritten 310 bis 328 gemäß 3 beschrieben worden ist. Jedoch wird in diesem Fall in Schritt 328 die CPU-Nummer nicht aktualisiert, bis der restliche Teil der Fehlerprüfung durchgeführt wird. Der verbleibende Teil der Fehlerprüfung kann im weiteren Verlauf bei der Gelegenheit (oder Gelegenheiten) durchgeführt werden, wenn die vorhergesagte Verarbeitungslast niedriger als der vorbestimmte Pegel wird.
  • Es sei bemerkt, dass bei der in 15 veranschaulichten Fehlerprüfteststeuerung die vorhergesagte Verarbeitungslast im Wesentlichen unter Verwendung von zwei Schwellwerten untersucht wird. Anders ausgedrückt wird, falls die vorhergesagte Verarbeitungslast höher als ein erste Schwellwert (der vorbestimmte Pegel) ist, die Fehlerprüfung nicht durchgeführt, falls die vorhergesagte Verarbeitungslast niedriger als der erste Schwellwert und höher als ein zweiter Schwellwert (zweiter vorbestimmter Pegel) ist, wird ein Teil der Fehlerprüfung durchgeführt, und falls die vorhergesagte Verarbeitungslast niedriger als der zweiter Schwellwert ist, wird die gesamte Fehlerprüfung (in Bezug auf de einzelnen CPU-Kern) durchgeführt. Jedoch kann die Verarbeitungslast in drei oder mehr Schwellwerte unterteilt werden. Alternativ dazu kann gemäß einer Variante der in 3 veranschaulichten Fehlerprüfteststeuerung lediglich der mögliche Bereich der Fehlerprüfung (ein Teil der Fehlerprüfung) durchgeführt werden, selbst wenn die vorhergesagte Verarbeitungslast höher als der vorbestimmte Pegel ist.
  • Weiterhin kann die Aufgabenjustierung entsprechend der vorhergesagten Verarbeitungslast der Mehrkern-CPU 12 durchgeführt werden, so dass der Fehlerprüfprozess durchgeführt werden kann. Beispielsweise wird gemäß der in 3 veranschaulichten Fehlerprüfteststeuerung die Aufgabenjustierung zwischen den CPU-Kernen 101 und 102 im Wesentlichen durch Umschalten des AMP-Betriebs während der Testbetriebsart implementiert. Zusätzlich zu einer derartigen Aufgabenjustierung kann eine Aufgabenjustierung derart durchgeführt werden, dass der Fehlerprüfprozess durchgeführt werden kann, falls die vorhergesagte Verarbeitungslast der Mehrkern-CPU 12 höher als der vorbestimmte Pegel ist.
  • 16 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für eine Fehlerprüfteststeuerung zur Durchführung der Aufgabenjustierung entsprechend der Verarbeitungslast, um die Gelegenheiten zum Ausführen der Fehlerprüfung der CPU-Kerne zu erhöhen.
  • Gemäß dem in 16 veranschaulichten Flussdiagramm werden die Fahrzeuginformationen in Schritt 1600 zugeführt (wie es der Fall bei Schritt 300 ist), wird die Verarbeitungslast der CPU-Kerne 101 und 102 in Schritt 1601 vorhergesagt (wie es der Fall bei Schritt 301 ist), und wird in Schritt 1602 bestimmt, ob die vorhergesagte Verarbeitungslast höher als der vorbestimmte Pegel ist (wie es der Fall bei Schritt 302) ist. Falls die vorhergesagte Verarbeitungslast höher als der vorbestimmte Pegel ist, wird die Aufgabenjustierung in Schritt 1604 durchgeführt. Die Aufgabenjustierung kann derart durchgeführt werden, dass beispielsweise die Aufgabe mit einer niedrigeren Priorität nach der Lastvorhersagezeitdauer T durchgeführt wird (d. h. der Zeitpunkt der Durchführung der Aufgabe mit der niedrigeren Priorität wird verzögert). In Schritt 1606 wird die Verarbeitungslast der CPU-Kerne 101 und 102 erneut unter Berücksichtigung der Aufgabenjustierung in Schritt 1604 vorhergesagt (wie es der Fall bei Schritt 301 ist), und in Schritt 1606 wird erneut bestimmt, ob die vorhergesagte Verarbeitungslast höher als der vorbestimmte Pegel ist (wie es der Fall bei Schritt 302 ist). Falls die vorhergesagte Verarbeitungslast immer noch höher als der vorbestimmte Pegel ist, wird in Schritt 1608 der normale Prozess durchgeführt (wie es der Fall in den Schritten 304, 306 und 308 ist). Jedoch kann in diesem Fall die in Schritt 1604 durchgeführte Aufgabenjustierung aufgehoben werden. Falls demgegenüber die vorhergesagte Verarbeitungslast niedriger als der vorbestimmte Pegel ist, wird die Fehlerprüfung in Schritt 1610 durchgeführt (wie es der Fall bei den Schritten 310 bis 328 ist).
  • Weiterhin kann es einen Fall geben, in dem die tatsächliche Verarbeitungslast der Mehrkern-CPU 12 sich von der vorhergesagten Verarbeitungslast der Mehrkern-CPU 12 unterscheidet. Daher kann, falls die Verarbeitungslast während der Testbetriebsart derart hoch wird, dass der CPU-Kern 101 oder 102, der nicht der zu prüfende CPU-Kern ist, diese nicht bewältigen kann, die Testbetriebsart des zu prüfenden CPU-Kerns ausgesetzt werden.
  • 17 zeigt eine Darstellung zur Veranschaulichung eines Beispiels für eine Fehlerprüfteststeuerung zum Aussetzen der Fehlerprüfung, falls die Verarbeitungslast während der Testbetriebsart hoch wird.
  • Das in 17 veranschaulichte Flussdiagramm unterscheidet sich von der in 3 veranschaulichten Fehlerprüfteststeuerung dahingehend, dass die Prozesse von Schritt 1723 und Schritt 1725 hinzugefügt sind. In Schritt 1723 wird während der Testbetriebsart die Verarbeitungslast der CPU-Kerne 101 und 102 auf der Grundlage der neu eingegebenen Fahrzeuginformationen erneut vorhergesagt oder erfasst, und falls die vorhergesagte oder erfasste Verarbeitungslast höher als der vorbestimmte Pegel ist, geht die Verarbeitungsroutine zu Schritt 1725 über, in dem die Testbetriebsart des zu prüfenden CPU-Kerns ausgesetzt wird. In diesem Fall wird die Betriebsart des zu prüfenden CPU-Kerns von der Testbetriebsart auf die Normalbetriebsart geändert, und auf diese Weise geht die Verarbeitung zu Schritt 304 über. Es sei bemerkt, dass danach, falls die in Schritt 302 vorhergesagte Verarbeitungslast niedriger als der vorbestimmte Pegel ist, die Fehlerprüfung des zu prüfenden CPU-Kerns erneut von dem Prozess von Schritt 302 gestartet wird. Das erneute Starten kann von dem Beginn der Fehlerprüfung oder von einem mittleren Punkt sein.
  • Weiterhin beziehen sich die vorstehend beschriebenen Ausführungsbeispiele auf die Mehrkern-CPU 12; jedoch können diese erweitert auf ein Multi-Prozessor-System einschließlich mehrerer Mikrocomputer angewendet werden. Anders gesagt können die CPUs der Mikrocomputer wie in dem Fall mit den CPU-Kernen 101 und 102 (oder den CPU-Kernen 101, 102, 103 und 104) gemäß den vorstehend beschriebenen Ausführungsbeispielen behandelt werden. In diesem Fall ist eine Konfiguration zum Koordinieren der Daten zwischen dem Mikrocomputern, die der Datensteuerungseinrichtung 200 entspricht (vergl. 4 usw.), zwischen den Mikrocomputern vorgesehen. Weiterhin wird die bei der Fehlerprüfung erforderliche Aufgabenjustierung zwischen den Mikrocomputern durchgeführt.
  • Schließlich sind die nachfolgenden Ausgestaltungen in Zusammenhang mit der vorstehend beschriebenen Erläuterung offenbart.
  • (Ausgestaltung 1)
  • Fehlerprüfgerät zur Durchführung einer Fehlerprüfung mehrerer CPUs eines Mehrkernprozessors, wobei
    das Fehlerprüfgerät eingerichtet ist,
    eine Verarbeitungslast der CPUs insgesamt auf der Grundlage von Fahrzeuginformationen in Bezug auf Prozesse der CPUs vorherzusagen oder zu erfassen, und
    dynamisch eine Betriebsart der CPUs zwischen SMP und AMP entsprechend einem Vorhersage- oder Erfassungsergebnis der Verarbeitungslast zu ändern, wobei
    eine bestimmte CPU der CPUs die Fehlerprüfung alleine durchführt, wenn die Betriebsart auf AMP geändert worden ist.
  • (Ausgestaltung 2)
  • Fehlerprüfgerät nach Anspruch 1, wobei das Fehlerprüfgerät die Betriebsart von SMP auf AMP ändert, falls die vorhergesagte oder erfasste Verarbeitungslast niedriger als eine vorbestimmte Referenz ist.
  • (Ausgestaltung 3)
  • Fehlerprüfgerät nach Ausgestaltung 1 oder 2, wobei in der AMP-Betriebsart die anderen CPU(s) als die bestimmte CPU einen normalen Prozess durchführt (durchführen).
  • (Ausgestaltung 4)
  • Fehlerprüfgerät nach einer der Ausgestaltungen 1 bis 3, wobei die SMP-Betriebsart beibehalten wird, falls die vorhergesagte oder erfasste Verarbeitungslast höher als eine vorbestimmte Referenz ist.
  • (Ausgestaltung 5)
  • Fehlerprüfgerät nach einer der Ausgestaltungen 1 bis 4, wobei das Fehlerprüfgerät entsprechend der vorhergesagten oder erfassten Verarbeitungslast einen Verarbeitungsinhalt (beispielsweise die Anzahl der zu verarbeitenden Fehlerprüftestdatensätze oder eines zu verarbeitenden Bereichs) der durch die bestimmte CPU durchzuführenden Fehlerprüfung ändert.
  • (Ausgestaltung 6)
  • Fehlerprüfgerät nach einer der Ausgestaltungen 1 bis 5, wobei die bestimmte CPU eine oder mehrere CPUs aufweist.
  • (Ausgestaltung 7)
  • Fehlerprüfgerät zur Durchführung einer Fehlerprüfung mehrere CPUs, wobei das Fehlerprüfgerät eingerichtet ist, eine Verarbeitungslast der CPUs insgesamt auf der Grundlage von Fahrzeuginformationen in Bezug auf Prozesse der CPUs vorherzusagen oder zu erfassen, und eine Art der Durchführung der Fehlerprüfung entsprechend einem Vorhersage- oder Erfassungsergebnis der Verarbeitungslast zu ändern.
  • (Ausgestaltung 8)
  • Fehlerprüfgerät nach Ausgestaltung 7, wobei die CPUs CPUs in einem Mehrkernprozessor sind.
  • (Ausgestaltung 9)
  • Fehlerprüfgerät nach Ausgestaltung 7 oder 8, wobei das Fehlerprüfgerät die Fehlerprüfung durchführt, falls vorhergesagt oder erfasst wird, dass die Verarbeitungslast der CPUs insgesamt niedriger als eine vorbestimmte Referenz ist.
  • (Ausgestaltung 10)
  • Fehlerprüfgerät nach einer der Ausgestaltungen 7 bis 8, wobei das Fehlerprüfgerät zumindest einen Teil der Fehlerprüfung nicht durchführt (d. h., das Fehlerprüfgerät lediglich einen Teil der Fehlerprüfung durchführt oder die Fehlerprüfung überhaupt nicht durchführt), falls vorhergesagt oder erfasst wird, dass die Verarbeitungslast der CPUs insgesamt höher als eine vorbestimmte Referenz ist.
  • (Ausgestaltung 11)
  • Fehlerprüfgerät nach einer der Ausgestaltungen 1 bis 10, wobei das Fehlerprüfgerät die Durchführung zumindest eines Teils der Fehlerprüfung stoppt, falls die Verarbeitungslast der CPUs während der Fehlerprüfung insgesamt höher als eine vorbestimmte Referenz wird.
  • (Ausgestaltung 12)
  • Fehlerprüfgerät nach einer der Ausgestaltungen 1 bis 11, wobei die CPUs die Fehlerprüfung selbst auf einer CPU-Basis durchführen.
  • (Ausgestaltung 13)
  • Fehlerprüfgerät nach einer der Ausgestaltungen 1 bis 12, wobei das Fehlerprüfgerät eine Justierung von Aufgaben zwischen den CPUs durchführt, wenn das Fehlerprüfgerät die Fehlerprüfung durchführt.
  • (Ausgestaltung 14)
  • Fehlerprüfgerät nach einer der Ausgestaltungen 1 bis 13, wobei die CPUs eine Steuerung zum Antrieb eines Motors durchführen, und die Fahrzeuginformationen sich auf eine Drehzahl des Antriebsmotors beziehen.
  • (Ausgestaltung 15)
  • Fehlerprüfgerät nach einer der Ausgestaltungen 1 bis 14, wobei die CPUs eine Steuerung einer Brennkraftmaschine durchführen, und die Fahrzeuginformationen sich auf eine Drehzahl der Maschine beziehen.
  • (Ausgestaltung 16)
  • Fehlerprüfgerät nach einer der Ausgestaltungen 1 bis 15, wobei die Fahrzeuginformationen sich auf eine Fahrzeuggeschwindigkeit beziehen.
  • (Ausgestaltung 17)
  • Fehlerprüfgerät nach einer der Ausgestaltungen 1 bis 15, wobei die CPUs eine Steuerung eines Umgebungsüberwachungssystems durchführen, und die Fahrzeuginformationen sich auf eine Fahrzeuggeschwindigkeit beziehen.
  • (Ausgestaltung 18)
  • Fehlerprüfgerät nach einer der Ausgestaltungen 1 bis 17, wobei die CPUs eine Steuerung eines Navigationssystems durchführen, und die Fahrzeuginformationen sich auf eine Bedienung des Navigationssystems durch einen Anwender beziehen.
  • (Ausgestaltung 19)
  • Fehlerprüfgerät nach einer der Ausgestaltungen 7, 9 bis 18 wobei die CPUs CPUs sind, die in mehreren Mikrocomputern enthalten sind.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 7-325730 [0002]

Claims (11)

  1. Fehlerprüfgerät zur Durchführung einer Fehlerprüfung mehrere CPUs, wobei das Fehlerprüfgerät eingerichtet ist, eine Verarbeitungslast der CPUs insgesamt auf der Grundlage von Fahrzeuginformationen in Bezug auf Prozesse der CPUs vorherzusagen oder zu erfassen, und eine Art der Durchführung der Fehlerprüfung entsprechend einem Vorhersage- oder Erfassungsergebnis der Verarbeitungslast zu ändern.
  2. Fehlerprüfgerät nach Anspruch 1, wobei die CPUs CPUs in einem Mehrkernprozessor sind.
  3. Fehlerprüfgerät nach Anspruch 1, wobei das Fehlerprüfgerät die Fehlerprüfung durchführt, falls vorhergesagt oder erfasst wird, dass die Verarbeitungslast der CPUs insgesamt niedriger als eine vorbestimmte Referenz ist.
  4. Fehlerprüfgerät nach Anspruch 1, wobei das Fehlerprüfgerät zumindest einen Teil der Fehlerprüfung nicht durchführt, falls vorhergesagt oder erfasst wird, dass die Verarbeitungslast der CPUs insgesamt höher als eine vorbestimmte Referenz ist.
  5. Fehlerprüfgerät nach Anspruch 1, wobei das Fehlerprüfgerät die Durchführung zumindest eines Teils der Fehlerprüfung stoppt, falls die Verarbeitungslast der CPUs während der Fehlerprüfung insgesamt höher als eine vorbestimmte Referenz wird.
  6. Fehlerprüfgerät nach Anspruch 1, wobei die CPUs die Fehlerprüfung selbst auf einer CPU-Basis durchführen.
  7. Fehlerprüfgerät nach Anspruch 1, wobei das Fehlerprüfgerät eine Justierung von Aufgaben zwischen den CPUs durchführt, wenn das Fehlerprüfgerät die Fehlerprüfung durchführt.
  8. Fehlerprüfgerät nach Anspruch 1, wobei die CPUs eine Steuerung zum Antrieb eines Motors durchführen, und die Fahrzeuginformationen sich auf eine Drehzahl des Antriebsmotors beziehen.
  9. Fehlerprüfgerät nach Anspruch 1, wobei die CPUs eine Steuerung einer Brennkraftmaschine durchführen, und die Fahrzeuginformationen sich auf eine Drehzahl der Maschine beziehen.
  10. Fehlerprüfgerät nach Anspruch 1, wobei die Fahrzeuginformationen sich auf eine Fahrzeuggeschwindigkeit beziehen.
  11. Fehlerprüfverfahren zur Durchführung einer Fehlerprüfung mehrerer CPUs eines Mehrkernprozessors, mit Zuführen von Fahrzeuginformationen in Bezug auf Prozesse der CPUs, Vorhersagen oder Erfassen einer Verarbeitungslast der CPUs insgesamt auf der Grundlage der Fahrzeuginformationen, und Ändern einer Art der Durchführung der Fehlerprüfung entsprechend einem Vorhersage- oder Erfassungsergebnis der Verarbeitungslast.
DE112010005557T 2010-05-10 2010-05-10 Fehlerprüfgerät und Fehlerprüfverfahren Withdrawn DE112010005557T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/057910 WO2011141992A1 (ja) 2010-05-10 2010-05-10 故障診断装置及び故障診断方法

Publications (1)

Publication Number Publication Date
DE112010005557T5 true DE112010005557T5 (de) 2013-04-18

Family

ID=44914061

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112010005557T Withdrawn DE112010005557T5 (de) 2010-05-10 2010-05-10 Fehlerprüfgerät und Fehlerprüfverfahren

Country Status (4)

Country Link
US (1) US20130061098A1 (de)
JP (1) JPWO2011141992A1 (de)
DE (1) DE112010005557T5 (de)
WO (1) WO2011141992A1 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5900061B2 (ja) * 2012-03-19 2016-04-06 富士通株式会社 試験方法、試験装置及びプログラム
JP6181925B2 (ja) * 2012-12-12 2017-08-16 キヤノン株式会社 画像処理装置、画像処理装置の制御方法およびプログラム
US9891917B2 (en) * 2013-03-06 2018-02-13 Infineon Technologies Ag System and method to increase lockstep core availability
KR101944873B1 (ko) * 2013-12-24 2019-04-17 후아웨이 디바이스 컴퍼니 리미티드 지능형 단말기의 하드웨어가 비정상적으로 작동하는지 여부를 검사하는 방법 및 지능형 단말기
JP6601237B2 (ja) * 2016-01-27 2019-11-06 富士通株式会社 試験装置、ネットワークシステム、及び試験方法
KR102131982B1 (ko) * 2018-05-31 2020-07-08 현대오트론 주식회사 차량용 소프트웨어 진단 시스템 및 그것의 동작 방법
CN109101009B (zh) * 2018-09-06 2020-08-14 华为技术有限公司 故障诊断***及服务器
JP7176341B2 (ja) * 2018-10-10 2022-11-22 株式会社デンソー モータ制御用の情報処理装置
CN114153485B (zh) * 2021-12-06 2024-07-02 成都航天通信设备有限责任公司 基于高速口的多处理器程序升级方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07325730A (ja) 1994-06-01 1995-12-12 Fuji Xerox Co Ltd マルチプロセッサ装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62286131A (ja) * 1986-06-05 1987-12-12 Nec Corp 情報処理装置の自動自己診断方式
JPH06250869A (ja) * 1993-03-01 1994-09-09 Hitachi Ltd 分散制御システム
JPH0844678A (ja) * 1994-07-29 1996-02-16 Canon Inc 画像処理装置及びシステム
JP2565141B2 (ja) * 1994-09-02 1996-12-18 株式会社日立製作所 自動車における負荷分担制御方法
JPH1196044A (ja) * 1997-09-24 1999-04-09 Denso Corp 異常監視回路の異常検出装置及び異常検出方法
JP2001256063A (ja) * 2000-03-13 2001-09-21 Denso Corp 制御装置及びエンジン制御装置
JP2002049405A (ja) * 2001-06-01 2002-02-15 Hitachi Ltd 分散制御装置、システム及びコントローラ
WO2007029475A1 (ja) * 2005-09-09 2007-03-15 Sharp Kabushiki Kaisha ***縦物用情報表示システム、並びに、このシステムを組み込んだ操縦席用モジュールおよび***縦物
US20070220369A1 (en) * 2006-02-21 2007-09-20 International Business Machines Corporation Fault isolation and availability mechanism for multi-processor system
JP2007249491A (ja) * 2006-03-15 2007-09-27 Fujitsu Ltd マルチサーバ環境においてバッチジョブを分散させるプログラム、装置、および方法
JPWO2008038741A1 (ja) * 2006-09-28 2010-01-28 富士通テン株式会社 車載機、頻度収集装置、及び、頻度収集方法
JP2008123439A (ja) * 2006-11-15 2008-05-29 Denso Corp オペレーティング・システム、プログラム及び移動体操縦支援装置
US20080091974A1 (en) * 2006-10-11 2008-04-17 Denso Corporation Device for controlling a multi-core CPU for mobile body, and operating system for the same
JP2008198072A (ja) * 2007-02-15 2008-08-28 Mitsubishi Electric Corp リアルタイム計算機
JP2008247052A (ja) * 2007-03-29 2008-10-16 Honda Motor Co Ltd 車両の制御装置
JP2009251967A (ja) * 2008-04-07 2009-10-29 Toyota Motor Corp マルチコアシステム
DE112009001700B4 (de) * 2008-07-22 2019-02-07 Toyota Jidosha Kabushiki Kaisha Multikernsystem, fahrzeugseitige elektronische Steuerungseinheit und Aufgabenumschaltverfahren

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07325730A (ja) 1994-06-01 1995-12-12 Fuji Xerox Co Ltd マルチプロセッサ装置

Also Published As

Publication number Publication date
JPWO2011141992A1 (ja) 2013-07-22
US20130061098A1 (en) 2013-03-07
WO2011141992A1 (ja) 2011-11-17

Similar Documents

Publication Publication Date Title
DE112010005557T5 (de) Fehlerprüfgerät und Fehlerprüfverfahren
DE102014219456A1 (de) Deaktivieren eines autonomen fahrmodus eines fahrzeugs
DE102010051133A1 (de) Fehlerdiagnose und -prognose unter Verwendung von Diagnosestörungscode-Markov-Ketten
DE112008001528T5 (de) Multiprozessorsystem und Steuerverfahren hierfür
DE102014108249A1 (de) Realisieren erweiterter Fehlerbehandlung für einen gemeinsam genutzten Adapter in einem virtualisierten System
DE112018005858T5 (de) Elektronische steuervorrichtung
DE102008049754A1 (de) Verfahren und Vorrichtung zur Verschleißdiagnose eines Kraftfahrzeugs
DE102013203358A1 (de) System und verfahren zum verifizieren der integrität eines sicherheitskritischen fahrzeugsteuerungssystems
DE102015107671A1 (de) Steuerung und Diagnose einer Steuerungs-Wakeup-Funktionalität
DE102018112812A1 (de) Spieldetektionsdiagnose beim starten
DE102010038351A1 (de) Verfahren und Vorrichtung zum Betreiben eines hybriden Antriebssystems
DE202017106569U1 (de) Analyse grossangelegter Datenverarbeitungsaufträge
DE102019124301A1 (de) Vorrichtung und Verfahren zur Gewährleistung der Fail-Safe-Funktion eines autonomen Fahrsystems
DE102010003538A1 (de) Verfahren zur Überprüfung von Signal- und Modulaktivitäten in einem Timermodul und Timermodul
CN112147968A (zh) 车辆故障诊断方法、装置及***
DE102021126726A1 (de) Verteiltes system und datenübertragungsverfahren
DE102016223670B4 (de) Elektronische Steuereinheit
DE102012221277A1 (de) Fahrzeugsteuervorrichtung
DE112021002403T5 (de) Fahrzeugsteuervorrichtung
DE102016219449A1 (de) Parallelisierungsverfahren, Parallelisierungswerkzeug und fahrzeugverbaute Einrichtung
DE112020002650T5 (de) Fahrzeugvorrichtung
DE10328059A1 (de) Verfahren und Vorrichtung zur Überwachung eines verteilten Systems
DE102017216745A1 (de) Bestimmung fahrzeugindividueller Anpassungen für eine Fahrzeugflotte
DE102016206490A1 (de) Elektronische steuereinheit
DE102017219195B4 (de) Verfahren zum gewährleisten eines betriebs eines rechners

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee