DE10133439A1 - Elektronisches Steuergerät für Fahrzeugbremssysteme - Google Patents

Elektronisches Steuergerät für Fahrzeugbremssysteme

Info

Publication number
DE10133439A1
DE10133439A1 DE2001133439 DE10133439A DE10133439A1 DE 10133439 A1 DE10133439 A1 DE 10133439A1 DE 2001133439 DE2001133439 DE 2001133439 DE 10133439 A DE10133439 A DE 10133439A DE 10133439 A1 DE10133439 A1 DE 10133439A1
Authority
DE
Germany
Prior art keywords
eeprom
memory
data
electronic control
control device
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
DE2001133439
Other languages
English (en)
Inventor
Detlef Zerfowski
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.)
Knorr Bremse Systeme fuer Nutzfahrzeuge GmbH
Knorr Bremse Systeme fuer Schienenfahrzeuge GmbH
Original Assignee
Knorr Bremse Systeme fuer Nutzfahrzeuge GmbH
Knorr Bremse Systeme fuer Schienenfahrzeuge GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Knorr Bremse Systeme fuer Nutzfahrzeuge GmbH, Knorr Bremse Systeme fuer Schienenfahrzeuge GmbH filed Critical Knorr Bremse Systeme fuer Nutzfahrzeuge GmbH
Priority to DE2001133439 priority Critical patent/DE10133439A1/de
Publication of DE10133439A1 publication Critical patent/DE10133439A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C14/00Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

Das Steuergerät weist eine Speichereinrichtung (1) auf, bei der die physikalsichen Lese- und Schreiboperationen, die relativ zeitaufwendig sind, von den zeitlich nicht vorhersehbaren Zugriffen externer Anwendungsfunktionen bzw. Komponenten auf die Speichereinrichtung entkoppelt sind. Hierzu sind zwei hintereinander geschaltete Speicherebenen (2, 3) vorgesehen, nämlich ein EEPROM-Speicher (2) und ein RAM-Speicher (3), wobei ein Austausch von Betriebsdaten zwischen der Speichereinrichtung (1) und externen Modulen im Normalbetrieb ausschließlich über den RAM-Speicher (3) erfolgt.

Description

  • Die vorliegende Erfindung betrifft ein elektronisches Steuergerät für Fahrzeugbremssysteme gemäß den Merkmalen des Patentanspruches 1.
  • Moderne Nutzfahrzeuge sind mit einem elektronischen Fahrstabilitätsprogramm (ESP) ausgestattet, was die Speicherung einer Reihe von veränderlichen Fahrzustandsgrößen in einem nicht flüchtigen Speicher erforderlich macht.
  • Aus anmeldeinternem Stand der Technik sind verschiedene ESP-Steuergeräte bekannt, die speziell für die besonderen Einsatzbedingungen in einem Nutzfahrzeug konzipiert sind, wobei im Hinblick auf sicherheitskritische Anwendungen eine hohe Zuverlässigkeit ein wichtiges "Gütekriterium" ist. Ablaufroutinen bzw. Algorithmen eines solchen Steuergerätes müssen einerseits robust gegen Störungen sein, wie z. B. elektromagnetische Störfelder, plötzlichen Spannungsabfall etc. Andererseits müssen während der "Programmlaufzeit", d. h. während des Betriebes nicht behebbare Fehler erkannt und geeignete Fehlerreaktionen eingeleitet werden. Des weiteren dürfen andere Systemkomponenten durch das Laufzeitverhalten des Steuergerätes bzw. der Speichereinrichtung des Steuergerätes nicht beeinträchtigt werden, um das Echtzeitverhalten des Gesamtsystems nicht zu stören.
  • Aufgabe der Erfindung ist es, eine Speichereinrichtung für Fahrzeugsteuergeräte zu schaffen, die den eingangs genannten Anforderungen gerecht wird.
  • Diese Aufgabe wird durch die Merkmale des Patentanspruches 1 gelöst. Vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung sind den Unteransprüchen zu entnehmen.
  • Das Grundprinzip der Erfindung besteht in einer Speichereinrichtung, bei der die physikalischen Lese- und Schreiboperationen, die relativ zeitaufwendig sind, von den zeitlich nicht vorhersehbaren Zugriffen externer Anwendungsfunktionen bzw. Komponenten auf die Speichereinrichtung entkoppelt sind.
  • Hierzu weist die Speichereinrichtung zwei "hintereinander geschaltete" Speicherebenen auf. Konkret sind eine Dauerspeicherebene, die durch einen EEPROM-Speicher gebildet ist, und eine Arbeitsspeicherebene, die durch einen RAM- Speicher gebildet ist, hintereinander geschaltet. Der RAM-Speicher bildet vereinfacht ausgedrückt ein "virtuelles" EEPROM. Anders ausgedrückt kann der RAM-Speicher als "gespiegelter" EEPROM-Speicher angesehen werden.
  • Das virtuelle EEPROM dient dazu, die Konsistenz zwischen physikalisch in das EEPROM geschriebenen Daten und den Daten zu gewährleisten, die von bzw. für "externe" Funktionen bzw. Module zur Verfügung gestellt werden. Unter "externen Funktionen bzw. Modulen" sind ganz allgemein Systemkomponenten, wie z. B. Sensoren, Steuergeräte etc. zu verstehen, die der Speichereinrichtung Daten liefern und/oder Daten aus der Speichereinrichtung auslesen.
  • Hierzu ist vorgesehen, daß ein Austausch von Betriebsdaten zwischen der Speichereinrichtung und externen "Modulen" ausschließlich über den "RAM-Speicher" erfolgt. Hierdurch wird ein reibungsloser Datenaustausch, d. h. eine hohe "Zugriffsverfügbarkeit" für externe Module gewährleistet. Der EEPROM-Speicher kommuniziert im Normalbetrieb also nicht direkt mit externen Modulen, sondern arbeitet im "Hintergrund".
  • Applikationsfunktionen bzw. externen Modulen werden lediglich zwei Funktionsaufrufe für den Zugriff auf das EEPROM zur Verfügung gestellt, nämlich eine Lese- und eine Schreibfunktion. Diese können zu beliebigen Zeitpunkten aufgerufen werden. Die Synchronisation konkurrierender EEPROM-Zugriffe wird dabei im Hintergrund durch EEPROM-Routinen realisiert.
  • Konkreter gesagt kommunizieren externe Module nur mit einem ersten Teilspeicherbereich des RAM, in dem "aktuelle" Betriebsdaten gespeichert sind. Bei einer Veränderung tatsächlicher Betriebsdaten des Fahrzeugs, was z. B. durch im Fahrzeug vorgesehene Sensoren erfaßt wird, werden die im ersten Teilbereich des RAM gespeicherten Daten praktisch in Echtzeit aktualisiert. In einem anderen bzw. zweiten Teilbereich des RAM sind "ältere" Betriebsdaten gespeichert. Diese älteren Betriebsdaten repräsentieren einen "eingefrorenen" zeitlich zurückliegenden Betriebsdatenzustand, der ständig wiederholend mit den aktuellen Betriebsdaten verglichen wird. Wenn die aktuellen Betriebsdaten bezüglich der "älteren" Betriebsdaten eine bestimmte als zulässig angesehene "Abweichung" überschreiten erfolgt ein "Update". Hierbei werden die aktuellen (geänderten) Betriebsdaten in den EEPROM und in den anderen Teilspeicherbereich des RAM geschrieben, wobei nun diese Daten den älteren eingefrorenen Betriebsdatenzustand repräsentieren.
  • Bei der Konzipierung der Datenstruktur des EEPROM wurden die Erfordernisse für einen sicheren Betrieb und eine sichere Fehlererkennung und Fehlerbehebung berücksichtigt. Hierzu ist vorgesehen, daß Daten, die sich während der Systemlaufzeit bzw. während des Betriebes nicht ändern, wie z. B. "Header-Informationen", Konfigurationsdaten etc., im EEPROM durch eine geeignet gewählte Prüfsumme geschützt sind. Mittels der Prüfsumme können dann mögliche Fehler in der EEPROM- Hardware aufgedeckt werden.
  • Demgegenüber können Daten, die während der Systemlaufzeit "gelernt" werden und sich somit ändern, nicht über dieselbe Prüfsumme geschützt werden. Um eine Verfälschung bzw. einen Verlust solcher Daten beispielsweise bei einem Spannungsabfall während des Programmiervorganges des EEPROM zu vermeiden, werden sie durch eine "redundante Ablage" gegen Verfälschung gesichert, was noch detaillierter erläutert wird.
  • Während des "Power-on-Zyklus", d. h. beim Einschalten der Speichereinrichtung, wird der Speicherinhalt des physikalischen EEPROM in das virtuelle EEPROM gespiegelt und dabei auf Korrektheit überprüft. Für die unveränderlichen Daten wird die Prüfsumme kontrolliert und für die redundant abgelegten Daten wird die "Redundanz" auf Korrektheit überprüft. Die im EEPROM redundant abgelegten Daten werden beim Spiegeln in das virtuelle EEPROM im virtuellen EEPROM jedoch nur einfach abgelegt und zwar in einem speziellen RAM-Speicherbereich, der im folgenden als "Wertespeicherbereich" des virtuellen EEPROM bezeichnet wird. Anschließend wird der Wertespeicherbereich in einem weiteren Speicherbereich des virtuellen EEPROM kopiert, der im folgenden als "Modifizierungsspeicherbereich" bezeichnet wird.
  • Nach einer Weiterbildung der Erfindung bildet der Modifizierungsspeicherbereich eine "Anwendungsschnittstelle", über die die Speichereinrichtung mit externen Funktionen bzw. Modulen kommuniziert. Applikationsfunktionen haben also im Normalbetrieb ausschließlich Zugriff auf den Modifizierungsspeicherbereich. Daten, die in den Modifizierungsspeicherbereich des RAM geschrieben werden, stehen ohne Zeitverzögerung den angeschlossenen Applikationen zur Verfügung und zwar auch dann, wenn der physikalische Speichervorgang im EEPROM noch nicht abgeschlossen wurde.
  • In der Speichereinrichtung laufen diverse Steuer- und Überwachungsroutinen ab, die im folgenden als "EEPROM-Service-Routinen" bezeichnet werden. Eine dieser Routinen wird als "Zustandsautomat" bezeichnet. Der Zustandsautomat führt unabhängig von der jeweiligen Applikation "im Hintergrundbetrieb" die notwendigen Überwachungs- und Steueroperationen aus.
  • Der Zustandsautomat durchläuft dabei zyklisch parallel die beiden oben genannten Speicherbereiche des virtuellen EEPROM, d. h. den Wertespeicherbereich und den Modifizierungsspeicherbereich und sucht nach eventuellen Abweichungen korrespondierender Dateneinträge. Wenn die Abweichungen einen vordefinierten parameterabhängigen Wert überschreiten, löst der Zustandsautomat eine physikalische Schreiboperation aus. Dabei werden gelernte Daten, die im Modifizierungsspeicherbereich des Arbeitsspeichers abgelegt sind, im EEPROM abgespeichert und zwar mehrfach, d. h. in separierten Speicherbereichen. Hierbei wird bei jedem Schreibvorgang überprüft, ob er erfolgreich ausgeführt wurde.
  • Die mehrfach separierte Abspeicherung hat wesentliche Vorteile hinsichtlich der Datensicherheit. Fällt nämlich während des Schreibvorganges die Programmierspannung z. B. bei einer Betätigung der Zündung des Fahrzeuges aus, so wird im ungünstigsten Fall ein Datum der "redundanten Ablage" fehlerhaft gespeichert. Beim nächsten "Power-on-Zyklus" wird dann das fehlerhafte Datum anhand der unverfälschten redundanten Daten wieder restauriert. Für die Art und Weise der redundanten Datenablage gibt es unterschiedliche Verfahren. Beispielsweise kann eine Mehrfachablage vorgesehen sein oder es können geeignete fehlerkorrigierende Codes verwendet werden.
  • Ergänzend kann eine Diagnoseschnittstelle vorgesehen sein, die einen direkten physikalischen Zugriff auf das EEPROM zuläßt. Eine solche Diagnoseschnittstelle bietet die Möglichkeit, einen in einem ROM gespeicherten Standarddatensatz in das EEPROM einzuprogrammieren.
  • Im folgenden wird die Erfindung anhand eines Ausführungsbeispieles im Zusammenhang mit der Zeichnung näher erläutert.
  • Die einzige Fig. 1 zeigt schematisch die Funktionsweise der Speichereinrichtung des elektronischen Steuergerätes gemäß der Erfindung und verdeutlicht das der Erfindung zugrundeliegende Verfahren zum Betrieb der Steuereinrichtung.
  • Fig. 1 zeigt eine Speichereinrichtung 1 eines elektronischen Steuergerätes. Die Speichereinrichtung 1 weist zwei hintereinander geschaltete "Speicherebenen" auf nämlich eine Dauerspeicherebene, die durch einen EEPROM-Speicher 2 gebildet ist und eine Arbeitsspeicherebene, die hier als "virtuelles EEPROM" bzw. als "gespiegeltes EEPROM" bezeichnet wird und die durch einen RAM-Speicher 3 gebildet ist.
  • Der EEPROM-Speicher 2 ist hier schematisch in einen ersten Speicherbereich 2.1 und in einen zweiten Speicherbereich 2.2 unterteilt. Das "virtuelle EEPROM" 3 ist hier schematisch in drei Speicherbereiche 3.1, 3.2 und 3.3 unterteilt.
  • Im Speicherbereich 2.1 des EEPROM 2 sind solche Daten gespeichert, die sich während des Betriebes nicht verändern, wie z. B. Header-Daten, Konfigurationsdaten und Testdaten, z. B. für einen zyklisch wiederholt durchgeführten Redundanzcheck.
  • Im Speicherbereich 2.2 hingegen sind sog. "selbstgelernte Daten" abgespeichert. Hierbei handelt es sich um Betriebsdaten, also um Daten, die sich während des Betriebes der Speichereinrichtung bzw. des Fahrzeugsteuergerätes ändern können. Diese Daten werden der Speichereinrichtung während des Betriebs von externen "Modulen" zugeführt, worauf noch nähereingegangen wird. Die selbstgelernten Daten sind hier aus Sicherheitsgründen dreifach im Speicherbereich 2.2 abgespeichert (3- Tupel).
  • Im Speicherbereich 3.1 des virtuellen EEPROM 3 sind während des Betriebes unveränderliche Daten abgespeichert, z. B. "Header-Daten". Im Speicherbereich 3.2, der im folgenden als Modifizierungsspeicherbereich bezeichnet wird und im Speicherbereich 3.3, der im folgenden als Wertespeicherbereich bezeichnet wird, sind jeweils Betriebsdaten abgespeichert, worauf noch detaillierter eingegangen wird.
  • Der Modifizierungsspeicherbereich 3.2 des RAM bzw. virtuellen EEPROM bildet eine Anwendungsschnittstelle 4 zu ganz allgemein gesprochen "externen elektronischen Komponenten", d. h. anderen "Funktionen" bzw. Modulen des Steuergerätes, im Fahrzeug angeordneten Sensoren, anderen Steuergeräten etc.
  • Die externen elektronischen Komponenten können Daten in den Modifizierungsspeicherbereich 3.2 schreiben und aus dem Modifizierungsspeicherbereich 3.2 auslesen, was durch die beiden Pfeile angedeutet ist, die mit WriteEEPROM bzw. ReadEEPROM beschriftet sind.
  • Des weiteren ist eine Schnittstelle 5 vorgesehen, die ausschließlich zu Diagnosezwecken dient. Über diese "Diagnoseschnittstelle" 5 können Daten in den EEPROM-Speicher 2 geschrieben bzw. ausgelesen werden, was durch die Pfeile dargestellt ist, die mit WriteEE Physical bzw. ReadEE Physical beschriftet sind.
  • Ferner ist ein ROM-Speicherbaustein 6 vorgesehen, in dem "Default-Daten" bzw. sonstige Codedaten gespeichert sind, die zu Diagnosezwecken in die Speicherbereiche 3.1 und 3.3 des virtuellen EEPROM 3 geladen werden können.
  • Weiter ist ein Speicher 7 vorgesehen, aus dem feste vorgegebene Daten in die Speicherbereiche 2.1 und 2.2 des EEPROM 2 geladen werden können.
  • Im folgenden werden die oben bereits erwähnten "EEPROM-Service-Routinen" näher erläutert, die primär den Datenaustausch zwischen den beiden Speicherebenen steuern und überwachen, d. h. zwischen dem EEPROM 2 und dem virtuellen EEPROM 3.
  • Die EEPROM-Service-Routinen stellen Funktionen zum Lesen und Schreiben von EEPROM-Daten zur Verfügung. Diese Funktionen ermöglichen es an die Speichereinrichtung 1 angeschlossenen Modulen (nicht dargestellt), Parameterdatensätze oder gelernte Daten während normaler Steuergeräteoperationen zu speichern. Die Verwendung kunden- bzw. fahrzeugspezifischer EEPROM-Datensätze ermöglicht eine einfache Anpassung von Parametersätzen, ohne eine Modifizierung des ROM-Codes.
  • Um einen einfachen Zugriff auf das EEPROM zu ermöglichen und die Wartung von Anwendungsfunktionen zu verbessern, welche die EEPROM-Service-Routinen benutzen, ist eine "kleine" kompakte Anwendungsschnittstelle 4 vorgesehen. Die Anwendungsschnittstelle 4 stellt die Funktionen "ReadEEPROM", "WriteEEPROM" zum Lesen und Schreiben zur Verfügung sowie den primär zwischen den beiden Speicherebenen agierenden sog. "Zustandsautomaten".
  • Im Prinzip sind zwei Schnittstellen für den Zugriff auf den EEPROM-Speicher vorgesehen.
  • Die Anwendungsschnittstelle 4 stellt Verfahren für den Zugriff auf Datensätze des EEPROM 2 für alle externen angeschlossenen Module zur Verfügung und zwar ohne daß diese die interne Repräsentierung der Daten kennen.
  • Die Diagnoseschnittstelle 5 kann als "Expertenschnittstelle" bezeichnet werden und wird ausschließlich von Diagnoseroutinen benutzt, d. h. nicht im Normalbetrieb. Andere Module sind nicht berechtigt, Funktionen der Diagnoseschnittstelle 5 zu verwenden.
  • Diese Schnittstellenarchitektur "verdeckt" also die interne Repräsentierung der Daten im EEPROM. Somit wirken sich Änderungen der "internen" Datenrepräsentierung nicht nach außen hin aus.
  • Laden von Default-Daten in das EEPROM
  • Es gibt verschiedene Möglichkeiten, komplette EEPROM-Datensätze in das EEPROM zu schreiben.
    • 1. Die Funktion "GetDefaultEEData" liest einen Default-Datensatz aus dem ROM- Speicher 6 und kopiert diesen Datensatz in das virtuelle EEPROM, d. h. in den RAM- Speicher 3. Anschließend können die Inhalte des virtuellen EEPROM 3 physikalisch in das EEPROM 2 geschrieben werden und zwar durch mehrmalige Aufrufe der Funktion "RAM To-EEPROM".
      Die Verwendung dieser Funktionen ist auf Diagnosezwecke beschränkt. Da der Betriebszustand des Zustandsautomat während des gesamten Ladevorganges unterbrochen werden muß, kann die Funktion GetDefaultEEData nicht während des normalen Betriebes verwendet werden.
    • 2. Die Funktion WriteEE Physical kann zum Schreiben von Daten in eine Speicherzelle des EEPROM 2 verwendet werden. Hierzu sind jedoch spezielle Informationen über die interne Datenrepräsentation im EEPROM 2 erforderlich. Die Verwendung dieser Funktionen ist auf Diagnosezwecke beschränkt. Sie kann nicht im Normalbetrieb verwendet werden.
    Interne Datenrepräsentierung im EEPROM
  • Das EEPROM 2 enthält feste Datensätze, wie beispielsweise "Hardware ID, Customer ID" und gelernte Daten.
  • Feste Daten sind teilweise durch eine Prüfsumme geschützt. Dadurch können mögliche Fehler in EEPROM-Zellen detektiert werden. Daten, die bereits bei der Herstellung in das EEPROM geschrieben werden, sind nicht durch eine Prüfsumme geschützt.
  • Da gelernte Daten ständig modifiziert werden, können sie nicht in effizienter Weise durch eine Prüfsumme geschützt werden. Im Unterschied zu festen Daten werden gelernte Daten dadurch geschützt, daß sie dreifach abgespeichert werden. Wenn ein redundantes Datum zerstört worden ist, kann der korrekte Wert aus den beiden anderen Werte rekonstruiert werden. Betrachtet man den prinzipiellen Aufbau eines EEPROM-Datensatzes, so läßt er sich folgendermaßen unterteilen:
    • - EEPROM-Header
    • - EOL-Parameter (einschließlich Prüfsumme)
    • - ungeschützte Daten
    • - selbstgelernte Daten.
    Beschreibung des EEPROM-Zustandsautomaten
  • Bei Verwendung eines Echtzeitbetriebssystems muß der Zustandsautomat in bestimmten Zeittakten von beispielsweise 10 ms arbeiten. Da eine einzige Schreiboperation im EEPROM ca. 14 ms dauert, ist es nicht möglich, die gesamte Schreibfunktion des EEPROM während eines Taktzyklus abzuarbeiten. Aus diesem Grund wird die Funktion auf mehrere Zustände des Zustandsautomaten aufgeteilt.
  • Dies ist insbesondere für den uneingeschränkten Zugriff von Anwendungsfunktionen auf Werte der selbstgelernten Daten notwendig. Der Zustandsautomat führt physikalische Schreiboperationen daher unabhängig bzw. entkoppelt von Anwendungsfunktionen aus, was ein wesentliches Charakteristikum der Erfindung ist. Ein "Ausgabewert" des Zustandsautomaten zeigt dabei an, ob eine physikalische Schreiboperation notwendig ist oder nicht. Der Zustandsautomat "verdeckt" auch die interne Datenrepräsentierung des EEPROM.
  • Im folgenden werden Arbeitszustände erläutert, die der Zustandsautomat einnehmen kann. Diese sind:
    • - POWER ON
    • - TEST FOR-WRITE
    • - WRITE VALUE
    • - TEST WRITE OK
    • - WAIT-STATE.
    POWER ON-Zustand
  • Nach dem Einschalten wird beim ersten Aufruf des Zustandsautomaten das virtuelle EEPROM "initialisiert". Das heißt, es werden Daten in das virtuelle EEPROM 3 geschrieben, die physikalisch aus dem physikalischen EEPROM 2 ausgelesen werden. Dieser Zustand wird bei jedem Einschaltvorgang genau einmal eingenommen.
  • Anschließend laufen die folgenden Operationen ab. Die im EEPROM 3 gespeicherte Prüfsumme wird überprüft. Der EEPROM-Header wird in den RAM-Speicher, d. h. in das virtuelle EEPROM 3 "gespiegelt". Danach werden die selbstgelernten Daten gelesen und auf ihre Konsistenz überprüft. Die redundant gespeicherten selbstgelernten Daten werden hierbei jedoch nicht vollständig gespiegelt. Das heißt, es werden nur die Werte und nicht die Trippel der selbstgelernten Parameter in den Wertespeicherbereich 3.3 und in den Modifizierungsspeicherbereich 3.2 gespeichert.
  • Am Ende des POWER ON-Zustandes enthalten der Wertespeicherbereich 3.3 und der Modifizierungsspeicherbereich 3.2 dann die gleichen Daten. Die Schreib- und Lesefunktion "WriteEEPROM" und "ReadEEPROM", die von den "externen" Anwendungsmodulen benutzt werden, arbeiten jedoch ausschließlich mit dem Modifizierungsspeicherbereich 3.2.
  • Nachdem das virtuelle EEPROM initialisiert worden ist, geht der Zustandsautomat in den Zustand TEST FOR WRITE über.
  • Für den Fall, daß das EEPROM gelöscht worden ist, meldet der Zustandsautomat einen Prüfsummenfehler. Die Prüfsumme wird im EEPROM nicht korrigiert. Während der nachfolgenden Operationen des Zustandsautomaten werden alle selbstgelernten Daten "repariert" und zwar hinsichtlich Trippelkonsistenz.
  • Zyklische Zustände des Zustandsautomaten TEST FOR WRITE
  • Nachdem die Initialisierung des virtuellen EEPROM durchgeführt worden ist, überwacht der Zustandsautomat die im Modifizierungsspeicherbereich 3.2 und im Wertespeicherbereich 3.3 gespeicherten Daten. Im Zustand TEST FOR WRITE werden alle einander zugeordneten Wertepaare der beiden Bereiche verglichen. Wenn sich zwei einander zugeordnete Werte um mehr als einen vorgegebenen Differenzwert (delta value) unterscheiden, ist ein "Update" des physikalischen EEPROM 2 erforderlich. In einem solchen Fall geht der Zustandsautomat in den Zustand WRITE VALUE über. Ansonsten bleibt der Zustandsautomat im Zustand TEST FOR WRITE.
  • WRITE VALUE
  • In diesem Zustand werden die physikalischen Schreiboperationen durchgeführt. Um Probleme beispielsweise bei einem Stromausfall zu vermeiden, werden alle selbstgelernten Parameter physikalisch dreifach gespeichert (Wert, Komplement, Wert). Die "Komponenten" eines solchen Wertetrippels müssen aus Sicherheitsgründen separat gespeichert werden. Somit sind für einen einzigen selbstgelernten Parameter drei Schreiboperationen erforderlich. Wenn eine einzelne Komponente des Trippels geschrieben wurde, geht der Zustandsautomat in den Zustand WAIT STATE über.
  • WAIT STATE
  • Während Schreiboperationen ist eine Leseoperation auf dem EEPROM nicht erlaubt. Der Zustandsautomat muß also einen 10 ms-Zyklus nach dem Start von Schreiboperationen warten, bevor überprüft wird, ob die Schreiboperation erfolgreich durchgeführt wurde. Der nächste Zustand ist TEST WRITE OK.
  • TEST WRITE OK
  • Der Zustand TEST WRITE OK überprüft, ob die Schreiboperation erfolgreich durchgeführt worden ist. Wenn kein Fehler detektiert worden ist, geht der Zustandsautomat in den Zustand WRITE VALUE oder TEST FOR WRITE über. Wenn die letzte Komponente des selbstgelernten Trippels geschrieben worden ist, d. h. wenn das letzte redundante Datum des selbstgelernten Parameters korrekt geschrieben worden ist, geht der Zustandsautomat in den Zustand TEST FOR WRITE über. Andernfalls geht der Zustandsautomat in den Zustand WRITE VALUE über, um die nächste Trippelkomponente zu schreiben.
  • Wenn während des Schreibvorganges ein Fehler auftritt, geht der Zustandsautomat in den Zustand WRITE VALUE über, um die gleiche Schreiboperation noch einmal zu versuchen. Wenn dieser Fehler dreimal auftritt, wird eine Fehlernachricht an einen "Fehlermanager" gesandt und der Zustandsautomat geht in den Zustand TEST FOR WRITE über. Um beim Schreiben ein- und desselben Parameters eine Endlosschleife zu vermeiden, wird der TEST FOR WRITE-Zustand für den nächsten selbstgelernten Parameter aufgerufen.
  • Sicherheitsaspekte und Fehler
  • Die EEPROM-Service-Routinen führen verschiedene Laufzeittests durch, um Fehler zu detektieren. Wenn ein Fehler auftritt, dann wird eine entsprechende Fehlernummer an den Fehlermanager gesandt.
  • DatensatzversionsID
  • Beim Einschalten wird überprüft, ob die DatensatzversionsID (Datensatzversionsnummer), die im EEPROM gespeichert ist, der DatensatzversionsID im ROM entspricht. Somit ist es nicht möglich, daß die Software mit einem falschen EEPROM-Datensatz läuft.
  • Prüfsumme
  • Am Ende des EEPROM-Header-Datensatzes ist eine Prüfsumme gespeichert. Diese Summe wird verwendet um zu bestimmen, ob die EEPROM-Speicherzellen, die den Header enthalten, fehlerhaft sind oder nicht. Die Prüfsumme wird während des Einschaltzustandes berechnet und mit dem im EEPROM gespeicherten Wert verglichen.
  • Redundant gespeicherte selbstgelernte Daten
  • Wie bereits erwähnt, werden Daten, die während des Systembetriebs "gelernt", d. h. der Speichereinrichtung von externen Modulen zugeführt werden, redundant gespeichert und zwar trippelweise (Wert, Komplement, Wert). Wenn eine Komponente des Trippels beschädigt ist, kann der korrekte Wert unter Verwendung der beiden anderen Komponenten wiederhergestellt werden. Insbesondere wenn bei einer EEPROM-Schreiboperation ein Stromausfall auftritt, kann es zu einem fehlerhaften Schreibvorgang kommen. Aus diesem Grund muß das Trippel, wie oben bereits erwähnt, in drei separaten Schritten geschrieben werden.
  • Wenn zwei Komponenten des Trippels beschädigt sind, dann nimmt der Zustandsautomat den ersten Wert als korrekt an. Dies kann passieren, wenn die Schreiboperation von Komplementwerten gestört ist. In diesem Fall enthält die erste Komponente den tatsächlich zu speichernden Wert. Die Komplementkomponente kann ein korruptes Datum enthalten und die dritte Komponente enthält den "alten" Parameterwert.
  • Bei diesem Fehler handelt es sich nicht um einen Steuergerätefehler und somit soll das Steuergerät auch nicht in einen passiven Zustand übergehen. Vielmehr muß der zugeordnete selbstgelernte Parameter erneut gelernt werden.
  • Reparatur beschädigter selbstgelernter Daten
  • Wenn eine Komponente des redundanten Datentrippels beschädigt ist, dann wird die zerstörte Komponente des selbstgelernten Parameters repariert. Der Fehler wird im Einschaltzustand detektiert. Da zwei der drei Komponenten korrekt sind, kann der Originalwert rekonstruiert werden. Anstatt der Durchführung spezieller Reparaturzyklen ist der Zustandsautomat zu einem "Update" des beschädigten selbstgelernten Datums gezwungen. Dies wird folgendermaßen durchgeführt. Wenn genau eine korrupte Komponente detektiert worden ist, wird zunächst der korrekte Parameterwert in den Modifizierungsspeicherbereich geschrieben. Anschließend wird ein Wert, der um mehr als der zugeordnete Deltawert abweicht, im Wertespeicherbereich gespeichert.

Claims (18)

1. Elektronisches Steuergerät für Fahrzeugbremssysteme mit einer Speichereinrichtung (1), die zwei hintereinander geschaltete Speicherebenen (2, 3) aufweist, nämlich eine Dauerspeicherebene, die durch einen EEPROM-Speicher (2) gebildet ist und eine Arbeitsspeicherebene, die durch einen RAM-Speicher (3) gebildet ist, wobei ein Austausch von Betriebsdaten zwischen der Speichereinrichtung (1) und externen Modulen im Normalbetrieb ausschließlich über den RAM-Speicher (3) erfolgt.
2. Elektronisches Steuergerät nach Anspruch 1, dadurch gekennzeichnet, daß der RAM-Speicher (3) mehrere separate Speicherbereiche (3.1, 3.2, 3.3) aufweist, wobei externe Module ausschließlich mit einem dieser Speicherbereiche (3.2) kommunizieren, und zwar über eine Anwendungsschnittstelle (4), die einen Leseanschluß (ReadEEPROM) und einen Schreibanschluß (WriteEEPROM) aufweist.
3. Elektronisches Steuergerät nach Anspruch 2, dadurch gekennzeichnet, daß über die Anwendungsschnittstelle (4) zu jedem Zeitpunkt ein Datenaustausch möglich ist und zwar unabhängig von einem eventuellen Datenaustausch zwischen den beiden Speicherebenen (2, 3), insbesondere entkoppelt von Schreibe- und Leseoperationen auf dem EEPROM-Speicher (2).
4. Elektronisches Steuergerät nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß das EEPROM (2) einen ersten Speicherbereich (2.1) aufweist, in dem Daten gespeichert sind, die während des Betriebes unveränderlich sind und daß diesen Daten Prüfdaten zugeordnet sind, zur Diagnose von Fehlern der Speichereinrichtung (1).
5. Elektronisches Steuergerät nach Anspruch 4, dadurch gekennzeichnet, daß im ersten Speicherbereich (2.1) Konfigurationsdaten und Prüfdaten gespeichert sind.
6. Elektronisches Steuergerät nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß das EEPROM (2) einen zweiten Speicherbereich (2.2) aufweist, in dem mehrfach separat Betriebsdaten gespeichert sind, die sich während des Betriebes ändern können.
7. Elektronisches Steuergerät nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß während des Einschaltvorganges der Speicherinhalt des EEPROM (2) in den RAM-Speicher (3) kopiert wird.
8. Elektronisches Steuergerät nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß der RAM-Speicher (3) einen ersten Speicherbereich (3.1) aufweist, in den die während der Systemlaufzeit unveränderlichen Daten aus dem EEPROM (2) kopiert werden, einen Wertespeicherbereich (3.3), in den die Betriebsdaten aus dem EEPROM (2) kopiert werden, und einen Modifizierungsspeicherbereich (3.2), in den die Betriebsdaten aus dem Wertespeicherbereich (3.3) kopiert werden.
9. Elektronisches Steuergerät nach Anspruch 8, dadurch gekennzeichnet, daß von den Betriebsdaten, die im EEPROM (2) in mehreren redundanten Datensätzen gespeichert sind, nur ein Betriebsdatensatz in den Wertespeicherbereich (3.3) kopiert wird.
10. Elektronisches Steuergerät nach einem der Ansprüche 7 bis 9, dadurch gekennzeichnet, daß beim Kopieren von Daten aus dem EEPROM (2) in den RAM- Speicher (3) überprüft wird, ob die Daten korrekt übertragen werden.
11. Elektronisches Steuergerät nach einem der Ansprüche 8 bis 10, dadurch gekennzeichnet, daß externe Module ausschließlich mit dem Modifizierungsspeicherbereich (3.2) kommunizieren.
12. Elektronisches Steuergerät nach einem der Ansprüche 8 bis 11, dadurch gekennzeichnet, daß eine Zustandsüberwachungseinrichtung vorgesehen ist, die zyklisch parallel den Wertespeicherbereich (3.3) und den Modifizierungsspeicherbereich (3.2) miteinander vergleicht und nach Abweichungen in den korrespondierenden Daten sucht.
13. Elektronisches Steuergerät nach Anspruch 12, dadurch gekennzeichnet, daß die Zustandsüberwachungseinrichtung festgestellte Abweichungen zwischen den Einträgen des Wertespeicherbereiches (3.3) und des Modifizierungsspeicherbereiches (3.2) größenmäßig bewertet, daß zulässige Grenzwerte für Abweichungen zwischen Einträgen des Wertespeicherbereiches (3.3) und des Modifizierungsspeicherbereiches (3.2) vorgegeben sind und daß die Zustandsüberwachungseinrichtung bei Überschreiten der zulässigen Grenzwerte ein Update des EEPROM (2) durchführt, wobei Daten vom Modifizierungsspeicherbereich (3.2) in das EEPROM (2) kopiert werden.
14. Elektronisches Steuergerät nach Anspruch 13, dadurch gekennzeichnet, daß die vom Modifizierungsspeicherbereich (3.2) in das EEPROM (2) kopierten Daten im EEPROM (2) mehrfach separiert gespeichert werden.
15. Elektronisches Steuergerät nach einem der Ansprüche 12 bis 14, dadurch gekennzeichnet, daß die Zustandsüberwachungseinrichtung bei Überschreiten der zulässigen Grenzwerte Daten vom Modifizierungsspeicherbereich (3.2) in den Wertespeicherbereich (3.3) kopiert.
16. Elektronisches Steuergerät nach einem der Ansprüche 1 bis 15, dadurch gekennzeichnet, daß eine Diagnoseschnittstelle (5) mit einem Lese- und einem Schreibanschluß vorgesehen ist, über die bei einer Störung ein unmittelbarer physikalischer Zugriff auf das EEPROM (2) ermöglicht wird.
17. Elektronisches Steuergerät nach einem der Ansprüche 1 bis 16, dadurch gekennzeichnet, daß die Speichereinrichtung (1) einen ROM-Speicher (7) aufweist, wobei über die Diagnoseschnittstelle (5) unmittelbar Daten aus dem ROM-Speicher (7) in das EEPROM (2) übertragbar sind.
18. Elektronisches Steuergerät nach einem der Ansprüche 1 bis 17, dadurch gekennzeichnet, daß eine Steuereinrichtung zur Überwachung von Zuständen der Speichereinrichtung (1) und zur Steuerung des Datenaustausches zwischen dem EEPROM (2) und dem RAM (3) vorgesehen ist.
DE2001133439 2001-07-10 2001-07-10 Elektronisches Steuergerät für Fahrzeugbremssysteme Withdrawn DE10133439A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE2001133439 DE10133439A1 (de) 2001-07-10 2001-07-10 Elektronisches Steuergerät für Fahrzeugbremssysteme

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2001133439 DE10133439A1 (de) 2001-07-10 2001-07-10 Elektronisches Steuergerät für Fahrzeugbremssysteme

Publications (1)

Publication Number Publication Date
DE10133439A1 true DE10133439A1 (de) 2003-01-23

Family

ID=7691253

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2001133439 Withdrawn DE10133439A1 (de) 2001-07-10 2001-07-10 Elektronisches Steuergerät für Fahrzeugbremssysteme

Country Status (1)

Country Link
DE (1) DE10133439A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007048493A1 (de) * 2005-10-28 2007-05-03 Vector Informatik Gmbh Messvorrichtung und messverfahren zur erfassung von steuergerät-variablen

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007048493A1 (de) * 2005-10-28 2007-05-03 Vector Informatik Gmbh Messvorrichtung und messverfahren zur erfassung von steuergerät-variablen
DE102005051673A1 (de) * 2005-10-28 2007-05-03 Vector Informatik Gmbh Messvorrichtung und Messverfahren zur Erfassung von Steuergerät-Variablen

Similar Documents

Publication Publication Date Title
DE10341786B4 (de) Elektronische Fahrzeugsteuervorrichtung
DE602004005642T2 (de) Sicherheitssteuerung zur Durchführung von Standard- und Sicherheitssteuerungsprogrammen
EP0629773A1 (de) Diagnoseverfahren für Kraftfahrzeuge zum Überprüfen elektronisch gesteuerter Systeme
DE19839680B4 (de) Verfahren und Vorrichtung zur Veränderung des Speicherinhalts von Steuergeräten
EP2359204A1 (de) Adaptives zentrales wartungssystem und verfahren zum planen von wartungsvorgängen von systemen
DE2225841C3 (de) Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers
EP1639603A2 (de) Verfahren zur durchführung eines software-updates eines elektronischen steuergerätes durch eine flash-programmierung über eine serielle schnittstelle und ein entsprechender zustandsautomat
DE3382810T2 (de) Mikroprozessorsysteme für Frankiermaschinenanordnungen
EP1110130B1 (de) Steuergerät
EP1043641A2 (de) Fehlersicheres Automatisierungssystem mit Standard-CPU und Verfahren für ein fehlersicheres Automatisierungssystem
EP3709166B1 (de) Verfahren und system zur sicheren signalmanipulation für den test integrierter sicherheitsfunktionalitäten
EP0624843B1 (de) Adressierfehlererkennungsverfahren für ein elektrisches Gerät
DE3200626C2 (de) Verfahren zur Überprüfung, ob ein außer dem Hauptspeicher vorgesehener weiterer Speicher in ein Mikrocomputersystem eingefügt ist
EP1359485B1 (de) Steuer- und Überwachungssystem
DE10133439A1 (de) Elektronisches Steuergerät für Fahrzeugbremssysteme
DE102007052106A1 (de) Elektronische Fahrzeug-Steuereinrichtung und Steuerungsspezifikations-Festlegungsverfahren für dieselbe
WO2007071590A1 (de) Verfahren zur erkennung einer versorgungsunterbrechung in einem datenspeicher und zur wiederherstellung des datenspeichers
DE102020200141A1 (de) Fehlertolerantes Regelsystem
DE19545645A1 (de) Sicherheitskonzept für Steuereinheiten
DE4223398C2 (de) Verfahren und Vorrichtung zur Programmierung von nichtflüchtigen Speichern
DE102018219700B4 (de) Steuervorrichtung
EP1176508B1 (de) Anordnung zur Überwachung des ordnungsgemässen Betriebes von die selben oder einander entsprechende Aktionen ausführenden Komponenten eines elektrischen Systems
DE102019220156A1 (de) Verfahren zum Betreiben einer Speichereinheit einer Recheneinheit
DE10148157B4 (de) Programmgesteuerte Einheit
DE112017006135T5 (de) Ersetzungseinrichtung, informationsverarbeitungssystem und ersetzungsverfahren

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee