Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
MONITORING COMPUTER IN A CONTROL DEVICE
Document Type and Number:
WIPO Patent Application WO/2011/072662
Kind Code:
A1
Abstract:
The invention relates to a monitoring computer (UR) for monitoring a processing unit on which an arithmetic element is executed, said arithmetic unit comprising essentially three program modules which are used to influence the drivability of the motor vehicle. The processing unit essentially comprises a functional computer (FR) and a monitoring computer (UR) which is physically independent from the functional computer (FR), the monitoring computer (UR) comprising two monitoring units (MU1, MU2) which are independent of each other.

Inventors:
JACOBI MALTE (DE)
BOEHM EDWIN (DE)
Application Number:
PCT/DE2010/001492
Publication Date:
June 23, 2011
Filing Date:
December 20, 2010
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
CONTI TEMIC MICROELECTRONIC (EC)
JACOBI MALTE (DE)
BOEHM EDWIN (DE)
International Classes:
F02D11/10; F02D41/26; G06F11/00
Domestic Patent References:
WO2003056427A22003-07-10
Foreign References:
DE4438714A11996-05-02
EP2090952A22009-08-19
DE4438714A11996-05-02
Other References:
See also references of EP 2513456A1
Download PDF:
Claims:
Patentansprüche

1. Überwachungsrechner (UR) zur Überwachung eines Prozessors, auf dem ein Rechenelement ausgeführt wird, wobei der Prozessor neben dem Überwachungsrechner (UR) im wesentlichen einen Funktionsrechner (FR) umfasst, und wobei das Rechenelement ein Funktionsmodul (El), ein Sicherheitsmodul (E2) und ein Überwachungsmodul (E3) umfasst, alle Module (El, E2 und E3) auf dem Funktionsrechner (FR) ausführbar sind, und der Überwachungs- rechner (UR) mit zumindest dem Überwachungsmodul (E3) auf dem Funktionsrechner (FR) mittels eines Frage- Antwort- Verfahrens über eine Schnittstelle kommuniziert,

dadurch gekennzeichnet, dass

der Funktionsrechner (FR) und der Überwachungsrechner (ÜR) physikalisch unabhängig voneinander sind und der Überwachungsrechner (UR) zwei voneinander unabhängige Monitoring Units (MU1, MU2) umfasst, wobei durch jede Monitoring Unit (MU1, MU2) im Funktionsrechner (FR) mittels eines entsprechenden Monitioring Elements ( ME1 , ME2) jeweils eine Kontrolle (Kl, K2) zur Überwachung der ordnungsgemäßen Abarbeitung der Pro- grammbefehle des Furiktionsrechners (FR) ausführbar ist.

2. Überwachungsrechner (UR) nach Anspruch 1, dadurch gekennzeichnet, dass mittels der ersten Monitoring Unit (MU1) eine erste Kontrolle (Kl) im Sicherheitsmodul (E2) und mittels der zweiten Monitoring Unit (MU2) eine zweite Kontrolle (K2) im Überwachungsmodul (E3) jeweils in Testpfaden (TP 1 , TP2) durchführbar ist.

3. Überwachungsrechner (UR) nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass mittels der ersten Monitoring Unit (MU1) als erste Kontrolle (Kl) im Sicherheitsmodul (E2) einen Speichertest und eine Programmablaufkontrolle durchführbar ist. Überwachungsrechner (UR) nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass mittels der zweiten Monitoring Unit (MU2) als zweite Kontrolle (K2) im Überwachungsmodul (E3) einen Befehlssatztest und ein AD- Wandler-Test durchführbar ist.

Überwachungsrechner (UR) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass beim Auftreten eines Fehlers in der Kontrolle (Kl, K2) ein Fehlerzähler bedienbar ist und bei Überschreiten von frei programmierbaren Fehlerreaktionsschwellen ( thresh, reset thresh ) durch den Überwachungsrechner (UR) eine Systemreaktion unabhängig vom Funktionsrechner (FR) auslösbar ist.

Überwachungsrechner (UR) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass jeweils mittels einer State Machine (SM1, SM2) beim Initialisieren des Prozessors im Rechenelement beim Konfigurieren der entsprechenden Monitoring Unit (MUl, MU2) neben anderen Parametern eine Antwortzeit, ein Antwortzeitfenster, eine Abschaltschwelle (thresh) und eine Reset-Schwelle (reset thresh) festlegbar sind, wobei die Parameter je Monitoring Unit (MUl, MU2) voneinander abweichen können.

Überwachungsrechner (UR) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Fehlerzählung asymmetrisch aufgebaut ist.

Überwachungsrechner (UR) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Ausgänge (URA) des Überwachungsrechners (UR) komplementär ausgeführt sind.

9. Überwachungsrechner (UR) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Antwortzeit frei konfigurierbar im Bereich zwischen 1 ms und 255 ms liegt. 10. Überwachungsrechner (UR) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Antwortzeitfenster im Bereich zwischen 1 ms und 255 ms liegt, wobei das Verhältnis von Antwortzeit und Antwortzeitfenster frei skalierbar ist. 11. Überwachungsrechner (UR) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein Abschaltpfadtest (SOPC) als eigener Zustand in der State Machine (SM 1, SM2) ausgeführt ist

12. Überwachungsrechner (UR) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein kontinuierlicher CRC-Test (Checksum- Test) im Hintergrund durchführbar ist.

13. Überwachungsrechner (UR) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass eine Zufallszahlengenerierung zur Auswahl der Fragen im Frage-Antwort-Verfahren mittels eines Linear Feedback Shift Registers erfolgt.

14. Prozessor mit einem Funktionsrechner (FR) und einen Überwachungsrechner (UR) nach Anspruch 1 , wobei auf dem Prozessor ein Rechenelement zur Steu- erung wenigstens einer Funktion eines Kraftfahrzeugs in Abhängigkeit wenigstens einer Eingangsgröße ausgeführt wird, und der Überwachungsrechner (UR) mit dem Funktionsrechner (FR) mittels eines Frage- Antwort-Verfahrens über eine Schnittstelle kommuniziert, dadurch gekennzeichnet, dass der Funktionsrechner (FR) und der Überwachungsrechner (UR) physikalisch un- abhängig voneinander sind und der Überwachungsrechner (UR) zwei voneinander unabhängige Monitoring Units (MU1, MU2) umfasst, wobei durch je- de Monitomg Unit (MUl, MU2) mittels eines entsprechenden Monitioring Elements (EMI, EM2) im Funktionsrechner (FR) jeweils eine Kontrolle (Kl, K2) zur Überwachung der ordnungsgemäßen Abarbeitung der Programmbefehle des Funktionsrechners (FR) ausführbar ist.

5

15. Verfahren zur Überwachung eines Prozessors nach Anspruch 14, dadurch gekennzeichnet, dass der Funktionsrechner (FR) und der Überwachungsrechner (UR) physikalisch unabhängig voneinander sind und der Überwachungsrechner (UR) zwei voneinander unabhängige Monitoring Units (MUl, 10 MU2) umfasst, wobei durch jede Monitorng Unit (MUl , MU2) mittels eines entsprechenden Monitioring Elements (EMI, EM2) im Funktionsrechner (FR) jeweils eine Kontrolle (Kl, K2) zur Überwachung der ordnungsgemäßen Abarbeitung der Programmbefehle des Funktionsrechners (FR) ausgeführt wird.

15

20.

25

30

Description:
Überwachungsrechner in einem Steuergerät

Die Erfindung betrifft einen Überwachungsrechner zur Überwachung eines Prozessors, einen Prozessor und ein Verfahren zur Überwachung eines Prozessors nach den Oberbegriffen der unabhängigen Ansprüche.

Es existieren verschiedene Konzepte, ein Steuergerät mit einem Rechnerelement zum Einsatz in einem Kraftfahrzeug einzelsicherfrei bzw. eigensicher zu gestalten. Eine Möglichkeit die Eigensicherheit eines Steuergerätes zu erreichen ist die Überwachung im 3 -Ebenen Konzept.

Aus der DE 44 38 714 A1 sind ein Verfahren und eine Vorrichtung zur Steuerung einer Antriebseinheit eines Fahrzeugs bekannt. Hierbei weist das Steuergerät zur Leistungssteuerung nur ein einziges Rechnerelement auf. Das Rechnerelement führt sowohl die Abschaltpfad Steuerung als auch die Überwachung durch. Betriebssicherheit und Verfügbarkeit werden dabei dadurch sicher gestellt, dass zur DurcMuhrung der Steuerung und der Überwachung wenigstens zwei, voneinander unabhängige Ebenen in einem einzigen Rechnerelement vorgesehen sind, wobei in einer ersten Ebene die Funktionen zur Leistungssteuerung bestimmt und in einer zweiten Ebene, insbesondere in Zusammenarbeit mit einem Überwa- ' chungsmodul , diese Funktionen und somit die Funktionsfähigkeit des Rechnerelement selbst überwacht werden.

Ferner wird in der DE 44 38 714 AI eine dritte Ebene beschrieben, die eine Ab- laufkontrolle der zweiten Ebene durchführt. Diese Überwachung durch die dritte Ebene steigert die Zuverlässigkeit und Verfügbarkeit des Steuergerätes erheblich. Insbesondere wird im Überwachungsmodul die Ablaufkontrolle als Frage- Antwort-Kommunikation ausgeführt. Das 3 -Ebenen Überwachungskonzept (EGAS-Konzept) wird bevorzugt bei

BESTÄTIGUNGSKOPIE Motorsteuergeräten von Fahrzeugen zur Überwachung elektronischer Motorsteuersysteme eingesetzt. Dabei besteht das Motorsteuergerät aus dem sog. Funktionsrechner und dem Überwachüngsrechner. Funktionsrechner und Überwachungsrechner kommunizieren über ein Frage- Antwort-Verfahren. Darüber hin- aus verfügen sie über separate Abschaltpfade.

Die Ebene 1 umfasst das eigentliche Funktionsmodul zur Funktionssteuerung der Antriebseinheit des Fahrzeugs. Sie wird daher auch als Funktionsebene bezeichnet. Sie beinhaltet Motorsteuerungsfunktionen, u.a. zur Umsetzung der angefor- derten Motormomente, Komponentenüberwachungen, die Diagnose der Ein- und Ausgangsgrößen, sowie die Steuerung der Systemreaktionen im erkannten Fehlerfall. Die Ebene 1 wird auf dem Funktionsrechner ausgeführt.

Die Ebene 2, auch als Funktions-Überwachungsebene bezeichnet, umfasst das Sicherheitsmodul und wird ebenfalls auf dem Funktionsrechner ausgeführt. Sie erkennt den fehlerhaften Ablauf überwachungsrelevanter Umfange des Funktionsmoduls der Ebene 1, u. a. durch die Überwachung der berechneten Momente oder der Fahrzeugbeschleunigung. Im Fehlerfall erfolgt die Auslösung von Systemreaktionen, wie zum Beispiel das Abschalten von sicherheitsrelevanten End- stufen..

Die Ebene 2 wird in einem durch die Ebene 3 abgesicherten Hardwarebereich des Funktionsrechners durchgeführt. Die Ebene 3, auch Rechner-Überwachungsebene genannt, umfasst das Überwachungsmodul auf einem unabhängigen Funk- tionsrechner mit Befehlssatztest, Programmablaufkontrolle, A/D Wandler-Test sowie zyklische und vollständige Speichertests der Ebene 2 . Das Überwachungsmodul wird auf einem Funktionsrechner ausgeführt. Der vom Funktionsrechner unabhängige Überwachungsrechner testet durch ein Frage- Antwort- Verfahren die ordnungsgemäße Abarbeitung der Programmbefehle des Funkti- onsrechners. Im Fehlerfall erfolgt die Auslösung von Systemreaktionen unabhängig vom Funktionsrechner. Bei aktuellen elektronischen Motorsteuerungssystemen ist die gesamte Funkti- ons- und Überwachüngssoftware in einem Steuergerät integriert. Das Überwachungskonzept kann auch in anderen Fahrzeugsteuergeräten, insbesondere Ge- triebesteuergeräten realisiert werden

Aus dem Stand der Technik sind Überwachungskonzepte bekannt, bei denen ein Überwachungsrechner mittels einer einzigen Überwachungseinheit (Monitoring Unit) im Funktionsrechner mehr als eine Programmablaufkontrolle durchführt. Dabei muss diese eine Überwachungseinheit sowohl die Einzelantworten aus den einzelnen Prograrnmablaufkontrollen synchronisieren als auch die einzelnen Antworten zu einer Gesamtantwort zusammenfügen. Dabei können Fehler sowohl bei der Synchronisierung als auch beim Zusammenfügen der Antworten auftreten.

Es stellt sich daher die Aufgabe, die bekannten Überwachungsrechner zur Überwachung eines Prozessors in einem Kraftfahrzeugsteuergerät zu verbessern.

Erfindungsgemäß wird die Aufgabe gelöst durch einen Überwachungsrechner mit den Merkmalen des unabhängigen Anspruchs 1.

Der Prozessor umfasst im wesentlichen einen Überwachungsrechner und einen Funktionsrechner. Auf dem Prozessor wird ein Rechenelement ausgeführt. Das Rechenelement umfasst im Besonderen drei Software-Programmmodule: ein Funktionsmodul zur Funktionssteuerung des Kräftfahrzeugs, ein Sicherheitsmodul zur Überprüfung des Funktionsmoduls und ein Überwachungsmodul wenigstens zur Überprüfung des Sicherheitsmoduls. Der Überwachungsrechner kommuniziert mit dem Überwachungsmodul auf dem Funktionsrechner mittels eines Frage- Antwort-Verfahrens über eine Schnittstelle. Insbesondere sind der Überwachungsrechner und der Funktionsrechner als physikalisch voneinander unabhängige Hardware-Bausteine ausgeführt. Vorteilhafterweise umfasst der Überwachungsrechner zwei funktional voneinander unabhängige Monitoring Units, wobei durch jede, als Hardware ausgeführte

Monitoring Unit im Funktionsrechner mittels eines entsprechenden, als Software ausgeführten Monitioring Elements jeweils eine Kontrolle zur Überwachung der ordnungsgemäßen Abarbeitung insbesondere der Programmbefehle des Funktionsrechners ausführbar ist. Dadurch wird vor allem eine Beschleunigung der Programmablaufkontrolle und eine Erhöhung der Sicherheit in der Kontrolle erreicht.

Die erste Monitoring Unit fuhrt mittels des ersten Monitoring Elements als erste Kontrolle im Sicherheitsmodul insbesondere einen Speichertest und eine Programmablaufkontrolle durch. Weiterhin fuhrt die zweite Monitoring Unit mittels des zweiten Monitoring Elements als zweite Kontrolle im Überwachungsmodul insbesondere einen Befehlssatztest und einen AD- Wandler-Test durch. Vorteilhafterweise werden die jeweiligen Kontrollen in sogenannten Testpfaden durchgeführt. Besonders hervorzuheben ist, dass beim Auftreten eines Fehlers in einer der beiden Kontrollen jeweils ein Fehlerzähler bedienbar ist und bei Überschreiten von frei programmierbaren Fehlerreaktionsschwellen unabhängig vom Funktionsmodul eine Systemreaktion durch das Überwachungsmodul auslösbar ist. Eine derartige Systemreaktion kann sein, das Fahrzeug in einen eingeschränk- ten Notlauf modus zu bringen, der es zum Beispiel erlaubt, gerade noch auf dem Standstreifen einer Fahrbahn auszurollen.

Dabei kann die Fehlerzählung zur Erhöhung der Sicherheit beispielsweise asymmetrisch sein, das heißt, dass eine falsche Antwort im Frage-Antwort - Verfahren zweifach nach oben, eine richtige Antwort dagegen nur einfach nach unten gezählt wird. Insbesondere mit dem Einschalten des Steuergerätes wird im Rechenelement jeweils eine sogenannte State Machine zum Konfigurieren der zugehörigen Monitor Unit durchlaufen. Eine State Machine ist ein Verhaltensmodell, beste- hend aus Zuständen, den sog. States, Zustandsübergängen und Aktionen. Ein Zustand speichert die Information über die Vergangenheit. Er spiegelt die Änderungen der Eingabe seit dem Systemstart bis zum aktuellen Zeitpunkt wieder. Ein Zustandsübergang zeigt eine Änderung des Zustandes der State Machine und wird durch logische Bedingungen beschrieben, die erfüllt sein müssen, um den Übergang zu ermöglichen. Eine Aktion ist die Ausgabe der State Machine, die in einer gewissen Situation erfolgt.

Vorzugsweise wird beim Initialisieren des Steuergerätes im Rechenelement die entsprechende Monitoring Unit konfiguriert. Bei diesem Vorgang werden je- weils mittels der zugehörigen State Machine, neben anderen Parametern, beispielsweise eine Antwortzeit und ein Antwortzeitfenster des Frage- Antwort- Verfahrens sowie eine Abschaltschwelle und eine Reset-Schwelle festgelegt. Dabei können die Parameter je Monitoring Unit durchaus voneinander abweichen. Es ist aber auch denkbar, dass beide Monitoring Units gleich konfiguriert werden.

Wenn beide State Machines erfolgreich durchlaufen worden sind, nehmen die beiden Monitoring Units vorteilhafterweise mittels des jeweiligen Monitoring Elements die Überwachung des Rechenelements auf.

Die Ausgänge des Überwachungsrechners sind insbesondere komplementär ausgeführt. Das heißt, wenn ein Ausgang high ist, ist der andere low. Bei Zerstörung des Chips werden mit hoher Wahrscheinlichkeit beide Ausgänge entweder high oder low sein. Dadurch sind die sicherheitskritischen Endstufen über den Abschaltpfad im Aus-Zustand. Die Antwortzeit, die beim Durchlaufen der State Machine festgelegt wird, ist im wesentlichen frei konfigurierbar und liegt üblicherweise im Bereich zwischen 1 ms und 255 ms. Typische Fehlerreaktionszeiten liegen bei ca. 60ms. Diese Zeit kann aber variieren abhängig von Getriebeauslegung, Kundenanforderungen, etc. Als Kompromiss zwischen größtmöglicher Korifigurierbarkeit und Implementierungsaufwand wurde dieser Bereich gewählt.

Das Antwortzeitfenster wird ebenfalls in der State Machine festgelegt und liegt primär im Bereich zwischen 1 ms und 255 ms.

Die Antwortzeit ist der spätest mögliche Zeitpunkt zum Senden der Antwort. Als zweites wird ein sogenanntes„closed window" konfiguriert. In diesem Bereich darf keine Antwort gesendet werden. Die Differenz aus Antwortzeit und„closed window" ergibt das„open window" bzw. Antwortzeitfenster. Das Verhältnis zwischen Antwortzeit und Antwortzeitfenster ist insbesondere frei skalierbar. Bei einem möglichen Funktions-Software-Fehler (z.B. verfälschtes Timing) könnte es passieren, dass die richtigen Antworten zu schnell gesendet werden. Durch das„closed window" werden diese zu frühen Antworten nicht gewertet, was zu einer Erhöhung des Fehlerzählers führt.

In der State Machine ist ein Abschaltpfadtest vorteilhafterweise als eigener Zustand ausgeführt. Dadurch können die Antworten aus dem Frage- Antwort- Verfahren zwischen dem Überwachungsrechner und dem Funktionsrechner mög- liehst schnell ohne Rücksicht auf das Antwortzeitfenster geschickt werden. Damit kann die System-Hochlaufzeit kurz gehalten werden. Ein Abschaltpfadtest kann prüfen , ob der Funktionsrechner oder der Überwachungsrechner zum Beispiel die sicherheitsrelevanten Endstufen korrekt abschalten kann, wenn ein Fehler auftritt.

Dadurch, dass auf dem Überwachungsrechner im Hintergrund ein kontinuierlicher Checksum-Test ( CRC-Test) durchführbar ist, werden hauptsächlich even- tuelle„Bit-Kipper", verursacht z.B. durch EMV-Störungen, in den Konfigurationsdaten erkannt. Diese Fehler fuhren dann in der Regel zum Auslösen des Äb- schaltpfads. Insbesondere, um keine Vorhersage der nächsten Frage zu ermöglichen, erfolgt die Zufallszahlengenerierung im Zusammenhang mit der Auswahl der Fragen im Frage-Antwort- Verfahren mittels eines Linear Feedback Shift Registers. Je ein Linear Feedback Shift Register .befindet sich in der Monitoring Unit MUl und MU2.

Eine weitere Aufgabe der Erfindung ist es, einen gegenüber dem genannten Stand der Technik verbesserten Prozessor mit einem vorbeschriebenen Überwachungsrechner in einem Steuergerät eines Kraftfahrzeugs anzugeben. Diese Aufgabe ist erfindungsgemäß gelöst durch einen Prozessor mit den

Merkmalen des unabhängigen Anspruchs 14.

Wie weiter oben ausführlich ausgeführt, umfasst das Rechenelement, das auf dem Prozessor des Steuergerätes ausgeführt wird, im wesentlichen die drei Pro- grammmodule: Funktionsmodul, Sicherheitsmodul und Überwachungsmodul. Der Prozessor ist insbesondere unterteilt in einen Fuhktionsrechner und einen Überwachungsrechner, wobei das Funktionsmodul, das Sicherheitsmodul und das Überwachungsmodul auf dem Funktionsrechner ausgeführt werden. Der Überwachungsrechner kommuniziert mit dem Funktionsrechner üblicherweise mittels eines Frage-Antwort- Verfahrens über eine Schnittstelle.

Der Kern der Erfindung ist, dass der Funktionsrechner und der Überwachungsrechner insbesondere physikalisch unabhängig voneinander sind und der Überwachungsrechner zudem zwei funktional voneinander unabhängige Monitoring Units umfasst. Zur Überwachung der ordnungsgemäßen Abarbeitung der Programmbefehle des Funktionsrechners ist im Funktionsrechner vorteilhafterweise durch jede Monitoring Unit mittels eines entsprechenden Monitoring Elements jeweils eine Kontrolle ausführbar. Dadurch kann das Kontrollverfahren vorteilhafterweise beschleunigt und zudem auch sicherer gestaltet werden. In der nachfolgenden Beschreibung werden die Merkmale und Einzelheiten der Erfindung in Zusammenhang mit den beigefügten Zeichnungen anhand von Ausführungsbeispielen näher erläutert. Dabei sind in einzelnen Varianten beschriebene Merkmale und Zusammenhänge grundsätzlich auf alle Ausfuhrungsbeispiele übertragbar. In den Zeichnungen zeigen:

Fig. 1 ein 3 -Ebenen Konzept, unterteilt in Module (Software) und

Rechner (Hardware), und

Fig. 2 eine State Machine mit Zuständen, Übergängen und Bedingungen.

Die Kästchen in Fig. 1 mit strichpunktierten bzw. gestrichelten Umrandungen , zeigen je eine Hardware-Komponente, die Kästchen mit durchgezogenen Umrandungen zeigen je eine Software-Komponente. Die geradlinigen Pfeile zwi- sehen den Kästchen zeigen je einen Datenaustausch.

Fig. 1 zeigt ein im wesentlichen aus dem EGAS-Konzept bekanntes 3-Ebenen- Überwachungsmodell, wie es beispielsweise in einem Motorsteuergerät oder einem Getriebesteuergerät in Kraftfahrzeugen eingesetzt wird.

Das erste strichpunktierte Kästchen kennzeichnet den Funktionsrechner (FR) des Prozessors. Das zweite strichpunktierte Kästchen kennzeichnet den Überwachungsrechner (UR) des Prozessors. Funktionsrechner (FR) und Überwachungsrechner (UR) sind physikalisch voneinander getrennt auf dem Prozessor angeord- net. Der Überwachungsrechner (UR) kann beispielsweise als ASIC ausgeführt sein. Die drei Programmmodule Funktionsmodul (El), Sicherheitsmodul (E2) und Überwachurigsmodul (E3) werden auf dem Funktionsrechner (FR) ausgeführt .

Das Funktionsmodul (El) stellt die Ebene 1 des EGAS-Konzepts dar, die auch als Funktionsebene bezeichnet wird. Sie dient insbesondere zur Funktionssteuerung der Antriebseinheit des Fahrzeugs, und beinhaltet, wie oben erläutert, zum Beispiel Motorsteuerungsfunktionen, u.a. zur Umsetzung der angeforderten Motormomente, Komponentenüberwachungen, die Diagnose der Ein- und Ausgangsgrößen, sowie die Steuerung der Systemreaktionen im erkannten Fehlerfall.

Das Sicherheitsmodul (E2) stellt die Ebene 2 des EGAS-Konzepts dar, die auch als Funktions-Überwachungsebene bezeichnet wird. Sie erkennt den fehlerhaften Ablauf überwachungsrelevanter Umfange des Funktionsmoduls (El) der Ebene 1. So werden insbesondere die berechneten Momente oder zum Beispiel die Fahrzeugbeschleunigung überwacht. Tritt ein Fehler auf, erfolgt insbesondere die Auslösung von Systemreaktionen. Das Sicherheitsmodul (E2) wird primär in einem durch das Überwachungsmodul (E3) abgesicherten Hardwarebereich des Funktionsrechners (FR) durchgeführt. Das Überwachungsmodul (E3) stellt die Ebene 3 des EGAS-Konzepts dar, die auch als Rechner-Überwachungsebene bezeichnet wird. Das Überwachungsmodul (E3) wird insbesondere auf dem vom Überwachungsrechner (UR) unabhängigen Funktionsrechner (FR) ausgeführt Der Überwachungsrechner (UR) testet zum Beispiel durch wenigstens ein Frage- Antwort- Verfahren die ordnungsge- , mäße Abarbeitung der Programmbefehle des Funktionsrechners (FR). Tritt ein Fehler auf, erfolgt im Besonderen eine Auslösung von Systemreaktionen unabhängig vom Funktionsrechner (FR).

Der Überwachungsrechner (UR) umfasst im wesentlichen zwei voneinander un- abhängige Monitoring Units (MUl, MU2). Auf jeder Monitoring Unit (MUl, MU2) wird ein entsprechendes Monitoring Element (MEl, ME2) zur Kontrolle (Kl, K2) des Sicherheitsmoduls (E2) bzw. des Überwachungsmoduls (E3) ausgeführt.

So führt zum Beispiel die erste Monitoring Unit (MU1) mittels des ersten

Monitoring Elements (ME 1) als erste Kontrolle (Kl) über den ersten Testpfad (TP1) im Sicherheitsmodul (E2) einen Speichertest und eine Programmablaufkontrolle durch.

Parallel dazu und unabhängig von der Kontrolle Kl führt die zweite

Monitoring Unit (MU2) mittels des zweiten Monitoring Elements (ME2) als zweite Kontrolle (K2) über den zweiten Testpfad (TP2) im Überwachungsmodul (E3) vorzugsweise einen Befehlssatztest und einen AD- Wandler-Test durch. Die zweite Kontrolle (K2) könnte auch auf der ersten Monitoring Unit (MU1) mittels des ersten Monitoring Elements (ME1) über den ersten Testpfad (TP1) ausgeführt werden, und umgekehrt.

Insbesondere erfolgt die besagte Progammablaufkontrolle als Frage-Antwort- Verfahren zwischen einer Monitoring Unit (MU1, MU2) und dem Funktionsrechner (FR). Die entsprechenden Fragen werden zum Beispiel in einem

Monitoring Element (ME 1, ME2) zugeordneten Fragengenerator (FG) erzeugt Die Fragengeneratoren (FG) sind gleich ausgeführt, aber die Auswahl einer Frage erfolgt per Zufall. Daher sind die Fragen von Monitoring Unit (MU1) und Monitoring Unit (MU2) praktisch immer unterschiedlich. Tritt in der Kontrolle (Kl , K2) ein Fehler auf, so wird vorteilhafterweise jeweils ein Fehlerzähler hoch gesetzt. Bei Überschreiten einer entsprechenden frei, programmierbaren Fehlerreaktionsschwelle wird im Besonderen durch das Überwachungsmodul (E3) eine Systemreaktion unabhängig vom Funktionsmodul (El) ausgelöst. Die frei programmierbaren Fehlerreaktionsschwellen können für verschiedene Systemreaktionen, wie zum Beispiel dem Abschalten der sicherheitsrelevanten Endstufen oder dem Reset des Funktionsrechners (FR) unterschiedlich sein. Wenn eine der Monitoring Units (MU1, MU2) einen Reset , generiert, wird das komplette System incl. State Machine (SM1 , SM2) und Funktionsrechner (FR) zurückgesetzt. Die Konfiguration könnte aber beispielsweise so sein, dass nur bei Fehlern der Monitoring Unit (MU1) ein Reset ausgelöst wird, und bei Fehlern der Monitoring Unit (MU2) lediglich die sicherheitsrelevante Endstufe abgeschaltet wird.

Ferner kann die Erzeugung eines Reset-Befehls als Fehlerreaktion wahlweise freigegeben oder gesperrt werden.

Die Ausgänge (URA) des Überwachungsrechners (UR) sind vorteilhafterweise komplementär ausgeführt. Bei einem Totalausfall des beispielsweise als ASIC ausgeführten Überwachungsrechners (UR) zum Beispiel durch einen Chip- Bruch oder einen sogenannten Latch-up, d. h. einem Übergang eines Halbleiter- bauelements in einen niederohmigen Zustand, geht man davon aus, dass alle Ausgänge des Überwachungsrechners (UR) entweder gleichzeitig auf einem high- oder einem low-Pegel liegen. Die komplementären Ausgänge zusammen mit einer nicht gezeigten externen Beschaltung sorgen in diesem Fall dafür, dass der Sicherheitspfad des Systems und damit die sicherheitsrelevanten Endstufen des Systems abgeschaltet werden. Die externe Beschaltung besteht z. B. aus

Widerständen und Transistoren und sorgt dafür, dass nur genau eine Kombination der komplementären Ausgänge die sicherheitsrelevanten Endstufen freigibt.

Fig. 2 zeigt eine State Machine. Die State Machine ist vorteilhafterweise mit geringem Hardware- Aufwand realisierbar. Dabei ist diese Ausfuhrungsform der State Machine schneller, sicherer und weniger störanfällig als eine als Software ausgeführte State Machine . Zudem ist sie nicht manipulierbar. Wie in der Beschreibungseinleitung bereits dargelegt, ist eine State Machine ein Verhaltensmodell, bestehend aus Zuständen, den sog. States, Zustandsübergängen und Aktionen. Ein Zustand speichert die Information über die Vergangenheit. Er gibt die Änderungen der Eingabe seit dem Systemstart bis zum aktuellen Zeitpunkt wieder. Ein Zustandsübergang zeigt eine Änderung des Zustandes der State Ma- chine und wird durch logische Bedingungen beschrieben, die erfüllt sein müssen, um den Übergang zu ermöglichen. Eine Aktion ist die Ausgabe der State Machine, die in einer bestimmten Situation erfolgt. Die State Machines werden in digi- talen Schaltungen hauptsächlich durch speicherprogrammierbare Steuerungen, logische Gatter, Flip-Flops oder Relais realisiert. Zur Implementierung der Hardware verwendet man in der Regel ein Register zum Speichern der Zu- standsvariablen, eine Logikeinheit, die die Zustandsübergänge auswählt, und eine weitere Logikeinheit, die für die Ausgabe zuständig ist. Jedem Monitoring Element (ME 1, ME2) ist eigens eine State Machine (SM 1, SM2) zugeordnet.

Beim Initialisieren oder nach einem Reset des Steuergeräts wird der (INIT) State eingenommen. Im (ΓΝΙΤ) State wird die Monitoring Unit (MU1, MU2) durch das Funktionsmodul (El) über ein Kommunikationsinterface zwischen Überwa- chungsrechner (UR) und Funktionsrechner (FR) konfiguriert. Dabei werden insbesondere die Antwortzeit, das Antwortzeitfenster, die Fehlerreaktionsschwelle, speziell die Abschaltschwelle (thresh) und die Reset-Schwelle (reset thresh) festgelegt. Die Antwortzeit, die beim Durchlaufen der State Machine (SM1, SM2) festgelegt wird, ist im wesentlichen frei konfigurierbar und liegt üblicherweise im Bereich zwischen 1 ms und 255 ms.

Insbesondere wird auch das Antwortzeitfenster in der State Machine festgelegt und liegt primär im Bereich zwischen 1 ms und 255 ms. Das Verhältnis zwischen Antwortzeit und Antwortzeitfenster ist insbesondere frei skalierbar.

Ferner wird der Anfangswert des Fehlerzählers automatisch oberhalb der Abschaltschwelle (thresh) gesetzt, um sicherzustellen, dass der Fehlerzähler im (ΓΝΙΤ) State abgeschaltet bleibt. Durch die Aktion (EOI) (= End Of ΓΝΙΤ State) ist die Konfiguration des Monitoring Element (ME1, ME2), abgeschlossen und auch nicht mehr änderbar. Damit ist der Zustandsübergang in den State

(SOPCDIS) (= Switch Off Path Check Disable) vollzogen, wobei (SOPC) der Abschaltpfadtest ist, wobei ein Abschaltpfadtest sicherstellen kann, dass der Funktionsrechner oder der Überwachungsrechner zum Beispiel die sicherheitsre- levanten Leistungsendstufen korrekt abschalten kann, wenn ein Fehler auftritt. In diesem State sind die Leistungsendstufen noch nicht freigeschaltet.

Beim Abschaltpfadtest werden in der State Machine die Zustände (SOPCDIS) und (SOPCENA) eingenommen. Beim ersten sind die Endstufen abgeschaltet, beim zweiten freigegeben. Vorteil dieser Lösung ist, dass während des Abschaltpfadtests die Antworten schnellstmöglich ohne Rücksicht auf das Antwortzeit- ferister geschickt werden können. Damit kann die System-Hochlaufzeit kurz gehalten werden. Mit dem Erreichen des State (SOPCDIS) wird unter anderem der SOPC timer gestartet, der die Zeit misst bis zum Befehl (EOSOPC) (=End of SOPC). Wenn der Test zu lange dauert, wird er abgebrochen und der State (SOPCDIS) wird über die Aktion (SOPC timeout) überführt in den State (RESET). Im State (SOPCDIS) startet das Frage- Antwort- Spiel zwischen Überwachungsrechner (UR) und Funktionsrechner (FR) vorzugsweise ohne zeitliche Beschränkung, um einen möglichst schnellen Ablauf des Tests zu gewährleisten. Das heißt, das Antwortzeitfenster ist offen. Bei einer falschen Antwort wird der Fehlerzähler erhöht. Wenn der Fehlerzähler unterhalb einer Abschalt-Schwelle (thresh ) liegt, erfolgt insbesondere unverzüglich der Übergang in den State (SOPCENA) (= Switch Off Path Check Enable ) durch die Bedingung

(EC<disable thresh). Die Leistungsendstufen werden damit freigeschaltet.

Der Übergang vom State (SOPCDIS) in den State (DISABLE) erfolgt über die Bedingung (EOSOPC) (= End Of Switch Off Path Check), die durch das

Kommunikationsinterface zwischen Funktionsrechner (FR) und Überwachungs- rechner (UR) angestoßen wird. Die Leistungsendstufen bleiben, wie im State (SOPCDIS) definiert , gesperrt bzw. abgeschaltet. Einzige Bedingung ist das richtige Kommando vor Ablauf der Bedingung (SOPC timeout). Bei Erreichen des State (SOPCENA), insbesondere ausgehend vom State

(SOPCDIS), läuft der SOPC timer vorteilhafterweise weiter. Das Frage- Antwort-Spiel zwischen Überwachungsrechner (UR) und Funktionsrechner (FR) läuft ebenfalls ohne zeitliche Beschränkung weiter. Wenn der Fehlerzähler eine Abschält -Schwelle (thresh ) erreicht bzw. überschritten hat, erfolgt insbesondere ein Übergang zurück in den State (SOPCDIS) durch die Bedingung

(EC>=disable thresh).

Wenn der Abschaltpfadtest zu lange dauert, wird er abgebrochen und der State (SOPCENA) wird über die Bedingung (SOPC timeout) in den State (RESET) überfuhrt. Der anschließende Übergang vom State (RESET) in den State (INIT) erfolgt automatisch.

Der Übergang vom State (SOPCENA) in den State (NORMAL) erfolgt vorwiegend über die Bedingung (EOSOPC), die wieder durch das Kornmunikationsin- terface angestoßen wird.

Im State (NORMAL) werden die Leistungsendstufen freigeschaltet, sofern sie nicht schon in einem vorherigen State freigeschaltet worden sind. In diesem State wird das Frage-Antwort-Spiel zwischen Überwachungsrechner (UR) und Funktionsrechner (FR) fortgesetzt, wobei insbesondere der Zählerstand des Fehlerzählers aus dem vorherigen State übernommen wird. Im Gegensatz zu den States (SOPCENA) und (SOPCDIS) des Abschaltpfadtests gibt es hier vorzugsweise eine zeitliche Beschränkung bezüglich Antwortzeit und Antwortzeitfenster. Antwort darf nicht zu früh und nicht zu spät kommen, um eine Laufzeitüberwa- chung des Betriebssystem des Funktionsrechners sicherzustellen. Die Antwortzeit ist der spätest mögliche Zeitpunkt zum Senden der Antwort. Als zweites wird ein sogenanntes„closed window" konfiguriert. In diesem Bereich darf keine Antwort gesendet werden. Die Differenz aus Antwortzeit und„closed window" ergibt das„open window" bzw. Antwortzeitfenster. Antwortzeit und Äntwortzeitfenster sind zuvor im State (ΓΝΊΤ) programmiert worden. Der Fehlerzähler wird vorteilhafterweise erhöht sowohl bei einer falschen Antwort als auch beim Überschreiten der Antwortzeit oder des Antwortzeitfensters. Beim Erreichen beziehungsweise Überschreiten einer Abschalt- Schwelle (thresh )erfolgt der Übergang in den State (DISABLE) durch die Be- dingung (EC>=disable thresh).

Im State (DISABLE) werden die Leistungsendstufen ausgeschaltet. In diesem State wird das Frage- Antwort-Spiel zwischen Überwachungsrechner (UR) und Funktionsrechner (FR) mit unverändertem Fehlerzählerstand fortgesetzt. Auch hier gibt es eine zeitliche Beschränkung bezüglich Antwortzeit und Antwortzeitfenster. Der Fehlerzähler wird ebenfalls sowohl bei einer falschen Antwort als auch beim Überschreiten der Antwortzeit bzw. des Antwortzeitfensters erhöht. Beim Unterschreiten der Schwelle (thresh ) erfolgt durch die Bedingung

(EC<disable thresh) der Übergang zurück in den State (NORMAL). Im State (NORMAL) sind die Endstufen wieder freigegeben.

Sobald im State (DISABLE) der Fehlerzähler eine Reset- Schwelle (reset thresh) erreicht hat und das Register für die Reset-Freigabe den voreingestellten Wert 1 hat, erfolgt durch die Bedingung (EC>=reset thresh AND

i_req_rst_en=l) der Übergang in den State (RESET). Der anschließende Übergang vom State (RESET) in denen State (INIT) erfolgt wieder automatisch.

Um den gesamten Ablauf in der State Machine noch schneller zu gestalten , kann in der State Machine der States (SOPCENA) ausgelassen werden. Ein schneller Abschaltpfadtest findet dann nicht statt. Wenn beide State Machines erfolgreich durchlaufen worden sind, nehmen die beiden Monitoring Units im NORMAL State vorteilhafterweise mittels des jeweiligen Monitoring Elements die Überwachung des Rechenelements auf.

Zusammenfassend kann gefolgert werden, dass das erfindungsgemäße Überwa- chungskonzept zur Überwachung eines Rechenelements in einem Steuergerät eines Kraftfahrzeugs, gegenüber den bekannten Überwachungskonzepten sowohl bzgl. Schnelligkeit, Programmieraufwand und Sicherheit eine Verbesserung darstellt.