-
Die vorliegende Erfindung betrifft eine elektronische Steuerungsvorrichtung.
-
Wie es in der
JP 2016 - 126 692 A beschrieben ist, ist eine elektronische Steuerungsvorrichtung bekannt, die eine Hardwareeigentestfunktion aufweist, um eine Funktionssicherheitsanforderung gemäß
ISO26262 zu erfüllen. Im Folgenden kann der Hardwareeigentest als BIST bezeichnet werden. BIST ist eine Abkürzung für eingebauter Eigentest.
-
Eine herkömmliche elektronische Steuerungsvorrichtung führt beim Starten eines Mikrocomputers eine Diagnose durch den BIST aus, bevor eine Software betrieben wird. Eine Diagnose durch den BIST benötigt eine Zeit in der Größenordnung von mehreren zehn Millisekunden. Wenn der BIST ausgeführt wird, kann es daher dauern, bis der Mikrocomputer einen normalen Steuerungsprozess startet, nachdem die Stromzufuhr zu dem Mikrocomputer eingeschaltet wurde. Das heißt, es wird eine Startzeit eines Systems, das die elektronische Steuerungsvorrichtung enthält, lang.
-
Daher ist eine Aufgabe der vorliegenden Erfindung, eine elektronische Steuerungsvorrichtung zu schaffen, die eine Verkürzung der Startzeit des Systems ermöglicht, während die Funktionssicherheitsanforderung erfüllt wird.
-
Gemäß einem Aspekt der vorliegenden Erfindung enthält eine elektronische Steuerungsvorrichtung einen Mikrocomputer, der einen eingebauten Eigentest (BIST) durchführt; mehrere BIST-Ziele, für die der BIST ausgeführt wird; einen Startausführungsteil, der den BIST in Bezug auf einen Teil der BIST-Ziele beim Starten des Mikrocomputers ausführt; und einen Herunterfahr-Ausführungsteil, der den BIST in Bezug auf den oder die verbleibenden BIST-Ziele beim Herunterfahren des Mikrocomputers ausführt, wobei der oder die verbleibenden BIST-Ziele mindestens ein BIST-Ziel der BIST-Ziele ist, für das der BIST beim Starten des Mikrocomputers nicht ausgeführt wurde.
-
Gemäß der elektronischen Steuerungsvorrichtung ist es möglich, die Funktionssicherheitsanforderung durch Ausführen des BIST zu erfüllen. Der BIST wird in Bezug auf einen Teil der BIST-Ziele beim Starten des Mikrocomputers ausgeführt, und der Rest des BIST wird beim Herunterfahren ausgeführt. Mit anderen Worten, der andere BIST wird für die verbleibenden BIST-Ziele ausgeführt, die nicht die vorher genannten Teile der BIST-Ziele sind. Daher ist es möglich, die Startzeit des Systems zu verkürzen. Es ist möglich, die Startzeit des Systems zu verkürzen, während die Funktionssicherheitsanforderung erfüllt wird.
-
Die obigen und weiteren Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden anhand der folgenden detaillierten Beschreibung mit Bezug auf die zugehörigen Zeichnungen deutlich. Es zeigen:
- 1 ein Diagramm, das eine schematische Konfiguration einer elektronischen Steuerungsvorrichtung gemäß einer ersten Ausführungsform zeigt;
- 2 ein Flussdiagramm, das einen Prozess zeigt, der von einem Mikrocomputer ausgeführt wird;
- 3 ein Flussdiagramm, das einen LBIST-Prozess zeigt;
- 4 ein Flussdiagramm, das einen Herunterfahr-Prozess zeigt;
- 5 ein Flussdiagramm, das einen MBIST-Prozess zeigt;
- 6 ein Flussdiagramm, das einen Softwareinitialisierungsprozess zeigt;
- 7 ein Zeitdiagramm, das eine Periode von einem Einschalten einer Stromzufuhr des Mikrocomputers bis zu dem Ausschalten der Stromzufuhr des Mikrocomputers zeigt.
-
Im Folgenden wird eine Ausführungsform mit Bezug auf die Zeichnungen beschrieben.
-
Erste Ausführungsform
-
Eine schematische Konfiguration einer elektronischen Steuerungsvorrichtung 10 wird mit Bezug auf 1 erläutert. Eine elektronische Steuerungsvorrichtung kann auch als eine elektronische Steuerungseinheit (ECU) bezeichnet werden.
-
Die elektronische Steuerungsvorrichtung 10, die in 1 gezeigt ist, ist beispielsweise in einem Fahrzeug installiert. Gemäß der Ausführungsform ist die elektronische Steuerungsvorrichtung 10 als eine Verbrennungsmotor-ECU ausgebildet.
-
Die elektronische Steuerungsvorrichtung 10 enthält einen Mikrocomputer 11, eine Eingangsschaltung 12, eine Ausgangsschaltung 13 und eine Leistungsschaltung 14. Der Mikrocomputer 11 führt einen vorbestimmten Prozess durch Ausführen eines Programms aus, das in einem nichtflüchtigen Speicher gespeichert ist.
-
Die Eingangsschaltung 12 gibt ein Signal aus, das von außerhalb des Mikrocomputers 11 eingegeben wird. Ein Startsignal wird als ein Eingangssignal eingegeben. Gemäß der Ausführungsform wird ein IG-Signal (Zündsignal) von einem Zündschalter 200 als Startsignal eingegeben. Die Eingangsschaltung 12 gibt das IG-Signal (das heißt das Startsignal) an die Leistungsschaltung 14 aus. Erfassungssignale von mehreren Sensoren 201, die einen Zustand des Fahrzeugs oder einen Zustand einer Fahrzeugumgebung erfassen, werden beispielsweise in die Eingangsschaltung 12 eingegeben. Die Sensoren 201 enthalten beispielsweise einen Kurbelwinkelsensor, einen Nockenwinkelsensor und einen Fahrzeuggeschwindigkeitssensor. Der Mikrocomputer 11 führt unter Verwendung des Erfassungssignals der Sensoren 201 eine Berechnung aus, um eine geeignete Kraftstoffeinspritzung entsprechend einem Zustand eines Verbrennungsmotors durchzuführen, wobei das Erfassungssignal durch die Eingangsschaltung 12 erhalten wird. Der Verbrennungsmotor kann eine Brennkraftmaschine sein.
-
Die Ausgangsschaltung 13 gibt an einen externen Aktuator (externes Stellglied) 202 ein Steuersignal aus, das ein Rechenergebnis des Mikrocomputers 11 ist. Der Aktuator 202 enthält beispielsweise eine Einspritzeinrichtung für die Kraftstoffeinspritzung. Die Ausgangsschaltung 13 gibt ein Benachrichtigungssignal für einen Nutzer an einen externen Benachrichtigungsteil 203 aus, wenn das Ergebnis des BIST als abnorm bestimmt wird. Es kann beispielsweise eine Warnleuchte als Benachrichtigungsteil 203 verwendet werden.
-
Der Leistungsschaltung 14 führt dem Mikrocomputer 11 Leistung (Strom) zu, wenn das IG-Signal von einem Aus-Zustand in einen Ein-Zustand gewechselt wird. In dem Fall, in dem das IG-Signal von dem Ein-Zustand in den Aus-Zustand gewechselt wird, wird die Stromzufuhr zu dem Mikrocomputer 11 nach dem Prozess des Mikrocomputers 11 beim Herunterfahren ausgeschaltet.
-
Der Mikrocomputer 11 weist eine Funktion eines Hardwareeigentestes auf. Der Hardwareeigentest kann als BIST (eingebauter Eigentest) bezeichnet werden. Der Mikrocomputer 11 weist einen ersten Kern 20, einen zweiten Kern 30, einen RAM 40, einen ROM 50, eine BIST-Steuerung 60, eine DMA-Steuerung 70, eine Zeitgebereinheit (Zeitnehmereinheit) 80, einen Überwachungszeitgeber (Überwachungszeitnehmer) 90 und einen I/O-Port 100 auf. Jeder der Funktionsblöcke kommuniziert mit den anderen über einen Bus 110. DMA ist eine Abkürzung für direkten Speicherzugriff.
-
Der erste Kern 20 weist eine Logikschaltung 21 mit einer CPU 210 und einem Register 211 und einen Cache-Speicher 22 auf. Der Cache-Speicher 22 weist einen Daten-Cache 22, der ein Bereich ist, der zeitweilig Daten speichert, die ein Prozessziel des Programms sind, und einen Anweisungs-Cache 221 auf, der ein Bereich ist, der zeitweilig das Programm speichert. Der Anweisungs-Cache 221 kann auch als Anweisungs-Cache bezeichnet werden. Gemäß der Ausführungsform ist ein Stapel-Bereich (Stack-Bereich) 220a, der ein zeitweiliger Rückzugsbereich ist, in dem Daten-Cache angeordnet. CPU ist eine Abkürzung für zentrale Verarbeitungseinheit.
-
Der zweite Kern 30 ist ähnlich wie der erste Kern 20 aufgebaut. Der zweite Kern 30 weist eine Logikschaltung 31 mit einer CPU 310 und einem Register 311 und einen Cache-Speicher 32 auf. Der Cache-Speicher 32 weist einen Daten-Cache 320 und einen Anweisungs-Cache 321 auf. Ein Stapel-Bereich 320a ist in dem Daten-Cache 320 angeordnet.
-
Der RAM 40 weist einen Bereich, der eine Speicher-BIST-Anfrage speichert, und einen Bereich auf, der eine Ausführungshistorie eines Speicher-BIST speichert. Der ROM 50 speichert das Programm oder feste Daten, die von dem Programm verwendet werden. Der ROM entspricht einem nichtflüchtigen Speicher. Der ROM 50 speichert ein BIST-Ergebnis. ROM ist eine Abkürzung für Nur-Lese-Speicher. RAM ist eine Abkürzung für Speicher mit wahlfreiem Zugriff.
-
Die BIST-Steuerung 60 führt den BIST in Kooperation mit dem ersten Kern 20 aus. Die BIST-Steuerung 60 für den BIST durch Steuern eines Timing (Zeitgebung) und eines Inhaltes einer BIST-Schaltung (nicht gezeigt) aus. Die BIST-Schaltung ist jeweils in den ersten Kern 20, dem zweiten Kern 30, dem RAM 40, der DMA-Steuerung 70, der Zeitgebereinheit 80, dem Überwachungszeitgeber 90 und dem I/O-Port 100 angeordnet.
-
Die DMA-Steuerung 70 steuert eine Datenübertragung zwischen dem Speicher, beispielsweise dem RAM 40, und einer externen Vorrichtung nicht über den ersten Kern 20 (genauer gesagt die CPU 210) und den zweiten Kern 30 (genauer gesagt die CPU 310). DMA ist eine Abkürzung für direkten Speicherzugriff. Die DMA-Steuerung 70 weist eine Logikschaltung 71 und einen Speicher 72 auf.
-
Die Zeitgebereinheit 80 ist ein Prozessor, der eine Funktion einer Zeitverwaltung aufweist. Die Zeitgebereinheit 80 kann als Zeitprozessoreinheit bezeichnet werden. Die Zeitgebereinheit 80 weist einen Zähler auf, in den ein Takt eingegeben wird. Die Zeitgebereinheit 80 führt eine Zeitmessung durch. Die Zeitgebereinheit 80 weist eine Logikschaltung 81 und einen Speicher 82 auf.
-
Der Überwachungszeitgeber 90 kann als Watchdog-Zeitgeber bezeichnet werden. Der erste Kern 20 gibt beispielsweise ein Watchdog-Löschsignal (im Folgenden als WDC-Signal bezeichnet) in den Überwachungszeitgeber 90 ein. Der Überwachungszeitgeber 90 gibt ein Rücksetzsignal des Mikrocomputers 11 an eine Rücksetz- Schaltung (nicht gezeigt) aus, wenn der Überwachungszeitgeber 80 das WDC-Signal nicht innerhalb einer vorbestimmten Zeit empfängt. Dadurch führt die Rücksetz-Schaltung ein WDC-Rücksetzen für den Mikrocomputer 11 aus.
-
Ein Prozess, der von dem Mikrocomputer 11 ausgeführt wird, wird mit Bezug auf die 2 bis 7 erläutert.
-
Ein Logik-BIST ist der BIST, der einen Logikschaltungsteil einem Diagnosebereich unterzieht. Der Logik-BIST kann als LBIST bezeichnet werden. In dem Mikrocomputer 11 entsprechen die Logikschaltung 21 des ersten Kerns 20, die Logikschaltung 31 des zweiten Kerns 30, die Logikschaltung 71 der DMA-Steuerung 70, die Logikschaltung 81 der Zeitgebereinheit 80, der Überwachungszeitgeber 90 und der I/O-Port 100 dem Logikschaltungsteil. Die Logikschaltungen 21, 31, 71, 81, der Überwachungszeitgeber 90 und der I/O-Port 100 können jeweils als Logikschaltungsteile 21, 31, 71, 81, 90, 100 bezeichnet werden.
-
Der Speicher-BIST ist der BIST, der einen Speicherteil dem Diagnosebereich unterzieht, darauf abzielt. Der Speicher-BIST wird als MBIST bezeichnet. In dem Mikrocomputer 11 entsprechen der Cache-Speicher 22 des ersten Kerns 20, der Cache-Speicher 32 des zweiten Kerns 30, der RAM 40, der Speicher 72, der DMA-Steuerung 70 und der Speicher 82 der Zeitgebereinheit 80 im Speicherteil (dem RAM). Der Cache-Speicher 22, der Cache-Speicher 32, der RAM 40, der Speicher 72 und der Speicher 82 können als Speicherteil bezeichnet werden. Der Logikschaltungsteil und der Speicherteil entsprechen den BIST-Zielen. Mit anderen Worten, der Cache-Speicher 22, der Cache-Speicher 32, der RAM 40, der Speicher 72 und der Speicher 82 entsprechen jeweils einem BIST-Ziel. Der ROM 50 entspricht keinem Zielspeicher des BIST. Der BIST wird für diesen Nicht-Zielspeicher nicht ausgeführt.
-
Die Leistungsschaltung 14 führt dem Mikrocomputer 11 Leistung (Strom) zu, wenn der Zündschalter 200 eingeschaltet wird und das IG-Signal gewechselt wird. Es wird ein Leistung-Ein-Rücksetzen ausgeführt. Dadurch wird der Mikrocomputer 11 initialisiert, und es wird das Vorhandensein einer Ausführung in der Ausführungshistorie des Leistung-Ein-Rücksetzens eingestellt. Es wird beispielsweise „1“ in einem Fall des Vorhandenseins der Ausführung eingestellt, und es wird „0“ in einem Fall der Abwesenheit der Ausführung eingestellt. Die Ausführungshistorie des Rücksetzens einschließlich des Leistungs-Ein-Rücksetzens wird in einem Rücksetzbereich des Mikrocomputers 11, beispielsweise dem RAM 40 oder einem Register (nicht gezeigt), eingestellt. Der Mikrocomputer 11 wird durch das Leistung-Ein-Rücksetzen initialisiert, während die Stromzufuhr eingeschaltet ist, und der Mikrocomputer 11 führt den Prozess aus.
-
Wenn eine Initialisierung des Mikrocomputers 11 beendet ist, führt der Mikrocomputer 11 einen LBIST-Prozess (Schritt S10) aus, wie es in 2 gezeigt ist. Der LBIST-Prozess entspricht einem Startausführungsteil. Der LBIST-Prozess wird mit Bezug auf 3 beschrieben.
-
Wie es in 3 gezeigt ist, wird die Initialisierung des Mikrocomputers 11 beendet und die CPU 210 des ersten Kerns 20 weist die BIST-Steuerung 60 an, den LBIST auszuführen. Dadurch startet die BIST-Steuerung 60 den LBIST (Schritt S20). Die BIST-Steuerung 60 bestimmt, ob der LBIST beendet ist (Schritt S21). Wenn bestimmt wird, dass der LBIST beendet ist, speichert die BIST-Steuerung 60 das LBIST-Ergebnis, das das Diagnoseergebnis des LBIST ist, in dem Register innerhalb der BIST-Steuerung 60 (Schritt S22), und die BIST-Steuerung gibt ein Signal an die CPU 210 aus, das eine Beendigung des LBIST angibt. Der Prozess, der oben beschrieben wurde, wird beendet, und dadurch endet der LBIST-Prozess, der in 2 gezeigt ist.
-
Auch wenn es in der Zeichnung nicht dargestellt ist, wird der Mikrocomputer 11 erneut initialisiert, da ein Initialisierungswert durch eine Ausführung des LBIST geändert wird. Bei der Initialisierung wird die Ausführungshistorie des Leistung-Ein-Rücksetzens gehalten.
-
Der Mikrocomputer 11 führt einen Softwareinitialisierungsprozess (Schritt S11) aus. Der Softwareinitialisierungsprozess wird mit dem Leistung-Ein-Rücksetzen ausgeführt. Zusammen mit dem MBIST-Prozess wird der Softwareinitialisierungsprozess mit Bezug auf 6 erläutert. Der in 6 gezeigte Prozess wird beendet, und dadurch endet der in 2 (Schritt S11) gezeigte Softwareinitialisierungsprozess. Die Details der 6 werden später beschrieben.
-
Der Mikrocomputer 11 führt einen normalen Steuerungsprozess (Schritt S12) aus. Die CPU 210 führt beispielsweise einen Kraftstoffeinspritzsteuerungsprozess als normalen Steuerungsprozess aus.
-
Die CPU 210 bestimmt, ob das IG-Signal von dem Ein-Zustand in den Aus-Zustand gewechselt wurde (Schritt S13). Wenn bestimmt wird, dass das IG-Signal nicht ausgeschaltet ist, wird der normale Steuerungsprozess des Schrittes S12 wiederholt. Wenn im Gegensatz dazu bestimmt wird, dass das IG-Signal ausgeschaltet ist, führt der Mikrocomputer 11 einen Herunterfahr-Prozess zum Ausschalten der Energiezufuhr (Leistung bzw. Strom) des Mikrocomputers 11 aus (Schritt S14). Der Herunterfahr-Prozess wird mit Bezug auf 4 erläutert.
-
Wie es in 4 gezeigt ist, bestimmt die CPU 210, ob das Vorhandensein der Ausführung in einer MBIST-Ausführungshistorie eingestellt ist (Schritt S40), wenn bestimmt wird, dass das IG-Signal ausgeschaltet ist. Gemäß der Ausführungsform wird bestimmt, ob der MBIST ausgeführt wird, nachdem die MBIST Ausführungshistorie aus dem RAM 40 ausgelesen wurde und das IG-Signal eingeschaltet wurde. Es wird beispielsweise „1“ in einem Fall des Vorhandenseins der Ausführung eingestellt, und es wird „0“ in einem Fall der Abwesenheit der Ausführung eingestellt.
-
Wenn in Schritt S40 die Abwesenheit der Ausführung bestimmt wird, wird das Vorhandensein der Anfrage in der MBIST-Anfrage des RAM 40 eingestellt, um den MBIST in Schritt S15 auszuführen (Schritt S41). Der Herunterfahr-Prozess endet. Wenn im Gegensatz dazu in Schritt S40 das Vorhandensein der Ausführung des MBIST bestimmt wird, wird der Prozess in Schritt S41 nicht ausgeführt, und der Herunterfahr-Prozess endet. Der oben beschriebene Prozess wird beendet, und dadurch auch der in 4 gezeigte Herunterfahr-Prozess.
-
Der Mikrocomputer 11 führt den MBIST-Prozess aus (Schritt S15). Der MBIST-Prozess entspricht einem Herunterfahr-Ausführungsteil. Der MBIST-Prozess wird mit Bezug auf 5 erläutert.
-
Wie es in 5 gezeigt ist, führt die CPU 210 eine Einstellung des I/O-Ports 100 aus (Schritt S60). Insbesondere wird die Einstellung des I/O-Ports 100 in einen Zustand nach der Initialisierung des Mikrocomputers 11 durch das Leistung-Ein-Rücksetzen versetzt. Mit anderen Worten, der I/O-Port 100 wird auf eine sichere Seite gesetzt. Dadurch wird der Ausgang des Aktuators 202 beschränkt.
-
Die CPU 210 bestimmt, ob das Vorhandensein der Anfrage in der MBIST-Anfrage des RAMS 40 eingestellt ist (Schritt S61). Es wird beispielsweise „1“ in einem Fall des Vorhandenseins der Anfrage eingestellt, und es wird „0“ in einem Fall der Abwesenheit der Anfrage eingestellt.
-
Wenn das Vorhandensein der Anfrage bestimmt wird, führt die CPU 210 die Prozesse in den Schritten S62 bis S65 aus. In Schritt S62 stoppt der Betrieb des Überwachungszeitgebers 90. In Schritt S63 werden der Anweisungs-Cache 221 und der Anweisungs-Cache 321 invalidiert. Das heißt, die Programmanweisung, die zeitweilig in dem Anweisungs-Cache 221 und dem Anweisungs-Cache 321 gespeichert ist, wird invalidiert. In Schritt S64 stoppt der Betrieb der DMA-Steuerung 70. In Schritt S65 stoppt der Betrieb der Zeitgebereinheit 80. Ein Invalidieren meint beispielsweise ein Sperren.
-
Der Prozess in Schritt S65 endet und die CPU 210 weist die BIST-Steuerung 60 an, den MBIST auszuführen. Dadurch startet die BIST-Steuerung 60 den MBIST (Schritt S66). Die BIST-Steuerung 60 bestimmt, ob der MBIST beendet ist (Schritt S67). Wenn bestimmt wird, dass der MBIST beendet ist, speichert die BIST-Steuerung 60 das MBIST-Ergebnis, das das Diagnoseergebnis des MBIST ist, in dem Register innerhalb der BIST-Steuerung 60 (Schritt S68).
-
Gemäß der Ausführungsform liest die CPU 210 direkt einen Wert aus dem ROM 50 und führt den MBIST aus, um den Anweisungs-Cache 221 zu invalidieren. Das Programm, das den MBIST ausführt, ist eine Programmkonfiguration, die keinen Funktionsaufruf verwendet. Mit anderen Worten, das Programm, das den MBIST ausführt, kann ein Programm sein, das keinen Funktionsaufruf enthält. Das heißt, das Programm, das den MBIST ausführt, wird als ein Programm betrachtet, das den Stapelbereich 220a und den Stapelbereich 320a nicht verwendet. Daher können der Stapelbereich 220a und der Stapelbereich 320a auch ein Ziel des MBIST sein.
-
Wenn der Prozess in Schritt S68 endet, führt die Rücksetz-Schaltung das Rücksetzen des Mikrocomputers 11 aus (Schritt S69). Durch das Rücksetzen (das MBIST-Rücksetzen) in dem MBIST-Prozess wird der Mikrocomputer 11 initialisiert, und das Vorhandensein der Ausführung wird in der Ausführungshistorie des MBIST-Rücksetzens eingestellt. Es wird beispielsweise „1“ in einem Fall des Vorhandenseins der Ausführung eingestellt, und es wird „0“ in einem Fall der Abwesenheit der Ausführung eingestellt. Wie es oben beschrieben wurde, wird die Rücksetzausführungshistorie in dem Rücksetzbereich des Mikrocomputers 11, beispielsweise in dem Register, eingestellt. Wenn in Schritt S61 bestimmt wird, dass das Vorhandensein der Anfrage in der MBIST-Anfrage nicht eingestellt ist, schreitet der Prozess zu dem Stromausschaltprozess in Schritt S70. Der Mikrocomputer 11 beendet die Folge von Prozessen. Der Prozess, der oben beschrieben wurde, endet, und dadurch endet der in 5 gezeigte MBIST-Prozess.
-
Der Mikrocomputer 11 führt einen Softwareinitialisierungsprozess (Schritt S16) aus. Der Softwareinitialisierungsprozess wird mit dem MBIST-Rücksetzen ausgeführt. Der Softwareinitialisierungsprozess wird mit Bezug auf 6 erläutert. Der in 6 gezeigte Prozess wird beendet, und dadurch endet der Softwareinitialisierungsprozess in Schritt S16. Die Details der 6 werden später beschrieben.
-
Die CPU 210 weist die Leistungsschaltung 14 an, die Stromzufuhr des Mikrocomputers 11 auszuschalten (Schritt S17), und dann endet die Prozessfolge.
-
Der Softwareinitialisierungsprozess wird im Folgenden erläutert.
-
Wie es in 6 gezeigt ist, bestimmt der Mikrocomputer 11, ob der Rücksetzprozess, der vor dem Softwareinitialisierungsprozess ausgeführt wurde, das Leistung-Ein-Rücksetzen oder das MBIST-Rücksetzen ist (Schritt S80). Die CPU 210 liest die Rücksetzausführungshistorie aus und bestimmt, ob der Rücksetzprozess das Leistung- Ein-Rücksetzen oder das MBIST-Rücksetzen ist.
-
In einem Fall des Softwareinitialisierungsprozesses in Schritt S11 ist es der CPU 210 möglich, zu bestimmen, dass der Rücksetzprozess das Leistung-Ein-Rücksetzen ist, da das Vorhandensein der Ausführung in der Ausführungshistorie des Leistung-Ein-Rücksetzen eingestellt ist. Die Ausführungshistorie des MBIST-Rücksetzens wird durch Initialisieren des Mikrocomputers 11 mit dem Leistung-Ein-Rücksetzen oder dem Ausschalten der Energiezufuhr gelöscht.
-
In einem Fall des Softwareinitialisierungsprozesses in Schritt S16 ist es der CPU 210 möglich zu bestimmen, dass der Rücksetzprozess das MBIST-Rücksetzen ist, da das Vorhandensein der Ausführung in der Ausführungshistorie des MBIST-Rücksetzen eingestellt ist. Die Ausführungshistorie des Leistung-Ein-Rücksetzens wird durch das Initialisieren des Mikrocomputers 11 mit dem MBIST-Rücksetzen oder dem Ausschalten der Energiezufuhr gelöscht.
-
Wenn das Ergebnis der Bestimmung in Schritt S80 ja lautet, führt die CPU 210 ein Speicher-Löschen aus (Schritt S81). Das Speicher-Löschen löscht die Daten, die durch das normale Rücksetzen gespeichert wurden. Das normale Rücksetzen ist ein anderes Rücksetzen als das Leistung-Ein-Rücksetzen und des MBIST-Rücksetzen. Die gespeicherten Daten befinden sich unter den Daten des Speicherteils (des RAM), der oben beschrieben wurde. Gemäß der Ausführungsform enthält das normale Rücksetzen ein Rücksetzen durch den Überwachungszeitgeber 90, das heißt das WDC-Rücksetzen.
-
Nach der Ausführung des Speicher-Löschens bestimmt die CPU 210, ob der Rücksetzprozess das MBIST-Rücksetzen ist (Schritt S82). Der CPU 210 ist es auf der Grundlage der Ausführungshistorie des MBIST-Rücksetzens möglich, zu bestimmen, ob der Rücksetzprozess das MBIST-Rücksetzen ist. Wenn in Schritt S80 bestimmt wird, dass der Rücksetzprozess nicht das Leistung-Ein-Rücksetzen und das MBIST-Rücksetzen ist, das heißt, wenn bestimmt wird, dass der Rücksetzprozess das normale Rücksetzen ist, wird der Prozess in Schritt S81 nicht ausgeführt, und es wird der Prozess in Schritt S82 ausgeführt.
-
Wenn bestimmt wird, dass das MBIST-Rücksetzen ausgeführt wird, stellt die CPU 210 das Vorhandensein der Ausführung in der MBIST-Ausführungshistorie des RAM 40 ein (Schritt S83). Wenn bestimmt wird, dass der Rücksetzprozess nicht das MBIST-Rücksetzen ist, stellt die CPU 210 die Abwesenheit der Ausführung in der MBIST-Ausführungshistorie ein (Schritt S84).
-
Die CPU 210 liest das BIST-Ergebnis aus dem Register der BIST-Steuerung 16 aus und speichert das BIST-Ergebnis in dem RAM 50 (Schritt S85). Das BIST-Ergebnis des RAM 50 wird durch den Prozess in S85 aktualisiert.
-
In dem Softwareinitialisierungsprozess in Schritt S11 speichert die CPU 210 das LBIST-Ergebnis, das das Diagnoseergebnis des LBIST ist, der in Schritt 10 ausgeführt wurde, in dem RAM 50. In dem Softwareinitialisierungsprozess in Schritt S16 speichert die CPU 210 das MBIST-Ergebnis, das das Diagnoseergebnis des MBIST ist, der in Schritt S15 ausgeführt wurde, in dem RAM 50. Sogar wenn die Stromzufuhr in Schritt S17 ausgeschaltet wird und der Mikrocomputer 11 durch das Leistung-Ein-Rücksetzen initialisiert wird, wird daher das MBIST-Ergebnis gehalten.
-
Die CPU-210 bestimmt, ob das IG-Signal eingeschaltet wird (Schritt S86). Das heißt, es wird bestimmt, ob der Zündschalter 200 eingeschaltet wird.
-
In dem Fall des Softwareinitialisierungsprozesses in Schritt S11 wird bestimmt, dass das IG-Signal eingeschaltet wird. Die CPU 210 bestimmt, ob das BIST-Ergebnis abnorm ist (Schritt S87). Die CPU 210 liest das LBIST-Ergebnis und das MBIST-Ergebnis aus dem RAM 50 aus und bestimmt, ob das BIST-Ergebnis abnorm ist. Daher ist das LBIST-Ergebnis ein derzeitiger Wert, und das MBIST-Ergebnis ist der vorherige Wert.
-
Wenn das BIST-Ergebnis abnorm ist, führt die CPU 210 einen Prozess eines abnormen Falles auf (Schritt S88). Die CPU 210 gibt beispielsweise über den I/O-Port 100 und die Ausgangsschaltung 13 ein Signal an den Benachrichtigungsteil 203 aus, das eine Abnormität angibt. Dadurch wird die Warnleuchte als Benachrichtigungsteil 203 beleuchtet. Auf diese Weise teilt der Benachrichtigungsteil 203 dem Nutzer die Abnormität mit. Der Benachrichtigungsteil 203 ist nicht auf die Warnleuchte beschränkt. Es ist möglich, eine Benachrichtigung durch das Anzeigen auf einem bordeigenen Monitor, Geräusche oder Ähnliches durchzuführen. Eine Maßnahme in einem abnormen Fall ist nicht auf die Benachrichtigung bzw. Mitteilung beschränkt. Die CPU 210 kann beispielsweise die Ausführung eines Ausfallsicherungsprozesses des Fahrzeugs anweisen bzw. befehlen.
-
Wenn der Prozess eines abnormen Falls endet, beendet der Mikrocomputer 11 den Softwareinitialisierungsprozess in Schritt S11. Wenn in Schritt S87 bestimmt wird, dass das BIST-Ergebnis nicht abnorm ist, endet die Prozessfolge, ohne den Prozess in Schritt S88 auszuführen. In dem Fall des Softwareinitialisierungsprozesses in Schritt S86 wird bestimmt, dass das IG-Signal nicht eingeschaltet ist bzw. wird. In diesem Fall endet die Prozessfolge, ohne den Prozess in Schritt S87 und den Prozess in Schritt S88 auszuführen.
-
Im Folgenden wird ein Beispiel der Wirkungen der elektronischen Steuerungsvorrichtung 10 gemäß der Ausführungsform beschrieben.
-
Gemäß der Ausführungsform ist es möglich, die Funktionssicherheitsanforderung durch Ausführen des BIST zu erfüllen. Der BIST wird für einen Teil der BIST-Ziele beim Starten des Mikrocomputers 11 ausgeführt, und der BIST für das oder die anderen BIST-Ziele wird beim Herunterfahren ausgeführt. Mit anderen Worten, gemäß der vorliegenden Erfindung wird der BIST beim Starten eines Mikrocomputers nicht für sämtliche BIST-Ziele ausgeführt. Stattdessen wird der BIST beim Starten des Mikrocomputers und auch beim Herunterfahren des Mikrocomputers ausgeführt, das heißt es wird ein Teil der BIST-Ziele dem BIST beim Starten unterzogen, und der übrige Teil der BIST-Ziele wird dem BIST beim Herunterfahren unterzogen. Dementsprechend ist es möglich, die Startzeit des Systems zu verkürzen. Es ist möglich, die Startzeit des Systems zu verkürzen, während die Funktionssicherheitsanforderung erfüllt wird.
-
Insbesondere wird gemäß der Ausführungsform der LBIST (Logik-BIST) beim Starten des Mikrocomputers 11 in Bezug auf die Logikschaltungsteile 21, 31, 71, 81, 90, 100 als Diagnoseziele ausgeführt. Die jeweilige Logikschaltungsteile 21, 31, 71, 81, 90, 100 entsprechen den BIST-Zielen. Der MBIST (Speicher-BIST) wird beim Herunterfahren des Mikrocomputers 11 in Bezug auf die Speicherteile 22, 32, 40, 72, 82 als Diagnoseziele ausgeführt. Auf diese Weise ist es möglich, die Sicherheit zu verbessern, da der LBIST beim Starten vor der Ausführung der normalen Steuerung ausgeführt wird. Es ist möglich, die Startzeit zu verkürzen, da der MBIST beim Herunterfahren ausgeführt wird. Der Wert des RAM wird überschrieben, da der Speicher-BIST den Mikrocomputer 11 zurücksetzt. Es ist jedoch möglich, aufgrund der Ausführung beim Herunterfahren viele Speicherteile als BIST-Ziele einzustellen.
-
7 zeigt ein Zeitdiagramm, das eine Periode zwischen dem Einschalten der Stromzufuhr des Mikrocomputers 11 und einem Ausschalten der Stromzufuhr des Mikrocomputers 11 zeigt. Gemäß der Ausführungsform wird zu dem Zeitpunkt t1 der Zündschalter 200 eingeschaltet, dem Mikrocomputer 11 wird Strom zugeführt, und der Mikrocomputer 11 wird durch das Rücksetzen des Leistung-Ein-Rücksetzens initialisiert. Zu dem Zeitpunkt t1 startet der LBIST. Die Softwareinitialisierung wird anschließend an den LBIST ausgeführt. Die normale Steuerung startet zu dem Zeitpunkt t2, bei dem die Softwareinitialisierung beendet ist.
-
Wenn der Zündschalter 200 zu dem Zeitpunkt t3 ausgeschaltet wird, wird der Herunterfahr-Prozess ausgeführt. Wenn der Herunterfahr-Prozess endet, wird der MBIST ausgeführt. Die Softwareinitialisierung wird nach dem Ende des MBIST ausgeführt. Bei Beendigung der Softwareinitialisierung wird die Stromzufuhr des Mikrocomputers 11 zu dem Zeitpunkt t4 nach dem Stromausschaltprozess ausgeschaltet.
-
Auf diese Weise wird nur der LBIST beim Starten ausgeführt. Im Vergleich zu der herkömmlichen Konfiguration, gemäß der sowohl der LBIST als auch der MBIST beim Starten ausgeführt werden, ist es dementsprechend möglich, die Startzeit zu verkürzen, wie es in 7 gezeigt ist. Wenn beispielsweise die Zeit für den LBIST 15ms beträgt und die Zeit für den MBIST 15ms beträgt, ist es möglich, die Startzeit um 15ms zu verkürzen.
-
Gemäß der Ausführungsform sind der Cache-Speicher 22 und der Cache-Speicher 32 in dem Stapelbereich 220a und dem Stapelbereich 320a angeordnet. Das Programm, das den MBIST ausführt, ist als Programm ausgebildet, das keinen Funktionsaufruf verwendet. Auf diese Weise ist es möglich, den Stapelbereich 220a und den Stapelbereich 320a als MBIST-Ziele dem MBIST zu unterziehen, da das Programm den Stapelbereich 220a und den Stapelbereich 320 nicht verwenden kann. Dadurch ist es möglich, eine Fehlfunktionserfassungsrate zu verbessern. Die Anordnung des Stapelbereiches ist nicht auf den Cache-Speicher 22 und den Cache-Speicher 32 beschränkt. Es ist ebenfalls eine Konfiguration möglich, die eine Anordnung in einem anderen Speicher beinhaltet, um eine ähnliche Wirkung zu erzielen.
-
Gemäß der Ausführungsform werden der Anweisungs-Cache 221 und der Anweisungs-Cache 321 zu dem Zeitpunkt der Ausführung des MBIST invalidiert, die CPU 210 liest den Wert aus dem ROM 50 direkt aus und führt den MBIST aus. Daher ist es möglich, den MBIST für den Cache-Speicher 22 und den Cache-Speicher 32, insbesondere den Anweisungs-Cache 221 und den Anweisungs-Cache 321, auszuführen. Dadurch ist es möglich, eine Fehlfunktionserfassungsrate zu verbessern. Es ist möglich, eine fehlerhafte Erfassung zum Invalidieren des Anweisungs-Cache 221, der das MBIST-Ziel ist, zu verhindern.
-
Gemäß der Ausführungsform wird der MBIST nach einem Stoppen der DMA-Steuerung 70 zu dem Zeitpunkt der Ausführung des MBIST ausgeführt. Daher ist es möglich, den MBIST ebenfalls für den Speicher 72 der DMA-Steuerung 70 auszuführen. Es ist möglich, eine fehlerhafte Erfassung zu verhindern, da die DMA-Steuerung 70, die das MBIST-Ziel ist, stoppt.
-
Gemäß der Ausführungsform wird der MBIST nach dem Stoppen der Zeitgebereinheit 80 zu dem Zeitpunkt der Ausführung des MBIST ausgeführt. Daher ist es möglich, den MBIST ebenfalls für den Speicher 82 der Zeitgebereinheit 80 auszuführen. Es ist möglich, eine fehlerhafte Erfassung zu verhindern, da die Zeitgebereinheit 80, die das MBIST-Ziel ist, stoppt.
-
Gemäß der Ausführungsform wird der MBIST nach dem Stoppen des Überwachungszeitgebers 90 zu dem Zeitpunkt der Ausführung des MBIST ausgeführt. Dadurch ist es möglich, eine fehlerhafte Ausführung des WDC-Rücksetzens zu verhindern.
-
Die vorliegende Erfindung ist nicht auf die beschriebene Ausführungsform beschränkt. Die Erfindung beinhaltet die beschriebenen Ausführungsformen und Modifikationen, die für den Fachmann auf der Grundlage der obigen Beschreibung ersichtlich sind. Die vorliegende Erfindung ist beispielsweise nicht auf die Kombination der Elemente, die in den Ausführungsformen gezeigt sind, beschränkt. Die vorliegende Erfindung kann in verschiedenen Kombinationen implementiert werden. Der offenbarte technische Bereich ist nicht auf die Beschreibung der Ausführungsform beschränkt. Verschiedene technische Bereiche, die offenbart sind, sind in den Ansprüchen angegeben und beinhalten sämtliche Modifikationen innerhalb der Bedeutung und des Äquivalenzbereiches der Ansprüche.
-
Die Konfiguration des Mikrocomputers 11 ist nicht auf das oben beschriebene Beispiel beschränkt. Auch wenn ein Beispiel des Mikrocomputers 11 den Überwachungszeitgeber 90 enthält, ist die vorliegende Erfindung nicht darauf beschränkt. Die elektronische Steuerungsvorrichtung 10 kann eine Überwachungs-IC enthalten, die eine Funktion des Überwachungszeitgebers getrennt von dem Mikrocomputer 11 aufweist.
-
Auch wenn gemäß einem Beispiel der Mikrocomputer 11 den ersten Kern 20 und den zweiten Kern 30 als mehrere Rechner aufweist, ist die vorliegende Erfindung nicht auf das Beispiel beschränkt. Die Mehrfachkernkonfiguration ist nicht auf das Beispiel beschränkt, und es können drei oder mehr Kerne enthalten sein. Außerdem ist der Mikrocomputer 11 nicht auf die Mehrfachkernkonfiguration beschränkt. Der Mikrocomputer 11 kann beispielsweise eine Konfiguration mit einem einzelnen Kern aufweisen.
-
Auch wenn ein Beispiel beschrieben ist, bei dem der LBIST beim Starten des Mikrocomputers 11 ausgeführt wird und der MBIST beim Herunterfahren des Mikrocomputers 11 ausgeführt wird, ist die vorliegende Erfindung nicht darauf beschränkt. Der BIST kann für einen Teil der BIST-Ziele beim Starten ausgeführt werden. Der BIST kann für den anderen Teil der BIST-Ziele beim Herunterfahren ausgeführt werden.
-
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
-
-
Zitierte Nicht-Patentliteratur
-