DE19619354A1 - Verfahren zum Betreiben eines eine Steuerfunktion aufweisenden Steuergerätes mit einer programmierbaren Speichereinrichtung - Google Patents

Verfahren zum Betreiben eines eine Steuerfunktion aufweisenden Steuergerätes mit einer programmierbaren Speichereinrichtung

Info

Publication number
DE19619354A1
DE19619354A1 DE19619354A DE19619354A DE19619354A1 DE 19619354 A1 DE19619354 A1 DE 19619354A1 DE 19619354 A DE19619354 A DE 19619354A DE 19619354 A DE19619354 A DE 19619354A DE 19619354 A1 DE19619354 A1 DE 19619354A1
Authority
DE
Germany
Prior art keywords
sector
control function
data
control
self
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.)
Ceased
Application number
DE19619354A
Other languages
English (en)
Inventor
Carsten Dipl Ing Franz
Klaus Dipl Ing Scherer
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch 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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE19619354A priority Critical patent/DE19619354A1/de
Priority to IT97MI001074A priority patent/IT1291326B1/it
Priority to FR9705777A priority patent/FR2748830B1/fr
Priority to JP9123613A priority patent/JPH1049205A/ja
Publication of DE19619354A1 publication Critical patent/DE19619354A1/de
Ceased legal-status Critical Current

Links

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • F02D41/263Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor the program execution being modifiable by physical parameters
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23194Check validity data by writing in sector control data and check data
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23404If data error detected, switch automatically to program mode
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23406Programmer device, portable, handheld detachable programmer
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25265Flash memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Read Only Memory (AREA)
  • Programmable Controllers (AREA)
  • Selective Calling Equipment (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

Stand der Technik
Die vorliegende Erfindung betrifft ein Verfahren gemäß dem Oberbegriff des Patentanspruchs 1, d. h. ein Verfahren zum Betreiben eines eine Steuerfunktion aufweisenden Steuergera­ tes mit einer programmierbaren Speichereinrichtung zum Spei­ chern von für die Ausübung der Steuerfunktion erforderlichen Steuerfunktionsprogrammen und Steuerfunktionsdaten.
Ein derartiges Verfahren ist beispielsweise in der DE 44 25 388 A1 offenbart. Das in dieser Druckschrift beschriebene Steuergerät ist ein Kraftfahrzeugsteuergerät, dessen mögli­ cher Aufbau und Einbettung in ein Gesamtsystem nachfolgend unter Bezugnahme auf Fig. 2 näher beschrieben wird.
Das Kraftfahrzeugsteuergerät ist in der Fig. 2 mit dem Be­ zugszeichen 10 bezeichnet; es enthält einen Mikrorechner 11 und Ein-/Ausgabeschaltkreise 12.
Der Mikrorechner 11 umfaßt eine Zentraleinheit 13, einen elektrisch lösch- und programmierbaren nichtflüchtigen Spei­ cher 14 in Form eines Flash-EPROMs, einen Schreib-/Lese­ speicher 15, einen Nur-Lese-Speicher 16 und eine serielle Schnittstelle 21.
Das Kraftfahrzeugsteuergerät erhält über die Ein-/Ausgabe­ schaltkreise 12 Eingangssignale von Sensoren wie einem Drosselklappenpotentiometer 17, einem Drehzahlfühler 23 und weiteren Sensoren 18. Die weiteren Sensoren 18, auf welche hier nicht näher eingegangen werden soll, sind je nach Kraftfahrzeugsteuergerät ein Motor-Temperaturfühler, ein Ansaugluft-Temperaturfühler, ein Luftmassenmesser, ein Leerlaufschalter usw.
Das Kraftfahrzeugsteuergerät 10 gibt andererseits über die Ein-/Ausgabeschaltkreise 12 Ausgangssignale an Aktuatoren 19 zur Steuerung von beispielsweise Einspritzventilen, Zündspu­ len usw. aus.
Diese Steuerungen gehen maßgeblich von der als eine zentrale Steuereinheit dienenden Zentraleinheit 13 aus, welche übli­ cherweise als Mikroprozessor, Mikrocontroller oder derglei­ chen realisiert ist.
Die Steuereinheit greift zur Ausübung der ihr übertragenen Steuerfunktion auf in den Speichereinrichtungen 14, 15 und 16 gespeicherte Steuerfunktionsprogramme und Steuerfunktionsdaten zu, wobei der Speichereinrichtung 14, genauer gesagt deren Realisierung durch eine elektrisch lösch- und programmierbare nichtflüchtige Speichereinrichtung eine besondere Bedeutung zukommt.
Die Verwendung von elektrisch lösch- und programmierbaren nichtflüchtigen Speichereinrichtungen wie der Speicherein­ richtung 14 erweist sich bei einem Kraftfahrzeugsteuergerät nämlich als besonders vorteilhaft, weil diese sich jederzeit umprogrammieren lassen, was insbesondere bei später entdeck­ ten Fehlern oder individuellen Kundenwünschen von nicht unerheblicher Bedeutung ist.
Die Verwendung von Flash-EPROMs als elektrisch lösch- und programmierbare nichtflüchtige Speichereinrichtungen gewinnt dabei zunehmend an Bedeutung, weil diese die Vorzüge eines "normalen" EPROM (hohe Speicherzellendichte) und eines EEPROM (elektrisches und damit einfaches und bequemes Löschen des Speicherinhalts) in sich vereinen.
Zur anfänglichen Programmierung der Flash-EPROMs (vorzugs­ weise in Abhängigkeit vom Kraftfahrzeug-Typ im Kraftfahrzeug-Herstellungsbetrieb) oder zur späteren Umprogrammierung derselben (beim Kundendienst zur Fehlerbeseitigung oder entsprechend individuellen Kundenwünschen) wird ein externes Programmiergerät 20, beispielsweise in Form eines Personal Computer an das Steuergerät 10 angeschlossen.
Der Anschluß erfolgt beispielsweise über eine serielle Schnittstellenleitung 22 und die bereits erwähnte serielle Schnittstelle 21.
Weitere Details zum Aufbau und zur Funktion des Kraftfahr­ zeugsteuergerätes 10 können der Druckschrift Bosch - Techni­ sche Unterrichtung, kombiniertes Zünd- und Benzineinspritz­ system Motronic, Robert Bosch GmbH, 1983 entnommen werden und bedürfen hier deshalb keiner näheren Erläuterung.
Wenn bei einem derart oder ähnlich ausgebildeten Steuergerät - aus welchem Grund auch immer - der Fall eintritt, daß eine Steuerfunktionsprogramme und/oder Steuerfunktionsdaten spei­ chernde Speichereinrichtung, insbesondere also das Flash-EPROM, unerwünschterweise (aufgrund einer Fehlfunktion, ver­ sehentlich oder mißbräuchlich) nicht oder nur unvollständig programmiert, ganz oder teilweise wieder gelöscht oder defekt ist, kann dies sehr unangenehme Folgen haben. Im günstigsten Fall wirkt sich dies nur dahingehend aus, daß die Steuerung durch das Steuergerät nicht mehr optimal, aber immer noch brauchbar arbeitet. Andererseits ist es aber durchaus auch vorstellbar, daß derartige Mängel sich zu einem nicht unerheblichen Sicherheitsrisiko ausweiten können.
Der vorliegenden Erfindung liegt daher die Aufgabe zugrunde, das Verfahren gemäß dem Oberbegriff des Patentanspruchs 1 derart weiterzubilden, daß aus Speichereinrichtungs- und/oder Speichereinrichtungsprogrammierungsfehlern und dergleichen resultierende Steuerfunktionsmängel auf ein Minimum reduzierbar sind.
Diese Aufgabe wird erfindungsgemäß durch die im kennzeichnenden Teil des Patentanspruchs 1 beanspruchten Merkmale gelöst.
Demnach ist vorgesehen, daß einhergehend mit dem Einschreiben der Steuerfunktionsprogramme und Steuerfunktionsdaten in die Speichereinrichtung an vorbestimmten Stellen innerhalb der Speichereinrichtung bestimmte, nicht zu den Steuerfunktionsprogrammen und Steuerfunktionsdaten gehörende Selbststeuerdaten eingeschrieben werden, und daß das Steuergerät in Ab­ hängigkeit davon betrieben wird, ob an den vorbestimmten Stellen die bestimmten Selbststeuerdaten gespeichert sind.
Durch Überprüfen des Vorhandenseins der Selbststeuerdaten kann eine zuverlässige Aussage darüber getroffen werden, ob die Speichereinrichtung in funktionsfähigem Zustand ist und ob die dort bereitzustellenden Steuerfunktionsprogramme und Steuerfunktionsdaten vollständig in die Speichereinrichtung geschrieben und nicht wieder teilweise oder ganz gelöscht wurden.
Berücksichtigt man das Ergebnis einer derartigen Überprüfung in angemessener Weise bei der Festlegung der internen Steue­ rung des Steuergerätes, d. h., verhindert man den Versuch einer Ausführung bzw. einer Verwendung von nicht ordnungs­ gemäß zugänglichen oder nicht bzw. nicht vollständig in der Speichereinrichtung abgespeicherten Steuerfunktionsprogrammen und Steuerfunktionsdaten, so können die bislang daraus resultierenden Steuerfunktionsmängel zuverlässig ausgeschlossen werden.
Ein Erkennen der Tatsache, daß benötigte Steuerfunktionspro­ gramme und Steuerfunktionsdaten nicht ordnungsgemäß zugäng­ lich oder nicht bzw. nicht vollständig in der Speicherein­ richtung abgespeichert sind, läßt sich darüber hinaus bei­ spielsweise auch dahingehend auswerten, daß die Steuerein­ richtung in einem solchen Fall automatisch in eine Program­ mierungsbetriebsart geschaltet wird, in welcher eine Neu- oder Umprogrammierung der Speichereinrichtung möglich ist. Eine solche, durch das Steuergerät selbst veranlaßbare Um­ schaltung in die Programmierungsbetriebsart ermöglicht es, auf das bisher durch ein externes Programmiergerät über eine separate Signalleitung (Write-Enable- bzw. Programmierspan­ nungsleitung), über welche eine vorbestimmte, relativ genau einzuhaltende Spannung zum Steuergerät zu geben war, bewerk­ stelligte Veranlassen einer derartigen Umschaltung zu ver­ zichten, so daß sich trotz der erhöhten Zuverlässigkeit des Steuergerätes der vorzusehende Hardwareaufwand reduzieren läßt.
Vorteilhafte Weiterbildungen der Erfindung sind Gegenstand der Unteransprüche.
Die Erfindung wird nachfolgend anhand eines Ausführungsbei­ spiels unter Bezugnahme auf die Zeichnung näher erläutert. Es zeigen
Fig. 1 schematisch die interne Struktur eines Flash-EPROMs und einhergehend mit der Programmierung desselben darin gespeicherte Selbststeuerdaten, und
Fig. 2 eine Anordnung, die ein der Durchführung des erfin­ dungsgemäßen Verfahrens bedürfendes Steuergerät aufweist.
Die nachstehenden Erläuterungen betreffen ein Verfahren zum Betreiben eines Steuergerätes, insbesondere eines Steuergerätes zur Steuerung beispielsweise des Motors, des Getriebes, der Bremsen etc. eines Kraftfahrzeuges, also eines Kraftfahrzeugsteuergerätes.
Das betrachtete Kraftfahrzeugsteuergerät enthält programmierbare Speichereinrichtungen, genauer gesagt lösch- und programmierbare nichtflüchtige Speichereinrichtungen in Form von Flash-EPROMs, deren besondere Vorzüge für diesen Anwendungsbereich bereits eingangs erwähnt wurden.
Die Programmierung dieser Flash-EPROMs erfolgt über ein ex­ ternes Programmiergerät, das beispielsweise über eine serielle Schnittstelle mit dem Kraftfahrzeugsteuergerät verbindbar ist.
Eine mögliche Ausführung einer ein derartiges Kraftfahrzeug­ steuergerät enthaltenden Anordnung ist die in der Fig. 2 gezeigte Anordnung, auf deren eingangs bereits erfolgte aus­ führliche Beschreibung hiermit ausdrücklich Bezug genommen wird.
Die vorliegende Erfindung ist jedoch nicht auf das Betreiben von Flash-EPROMs aufweisenden Kraftfahrzeugsteuergeräten, die unter Verwendung eines externen Programmiergerätes programmierbar sind, beschränkt. Sie ist vielmehr überall dort anwendbar, wo es ganz allgemein um das Betreiben eines eine Speichereinrichtung aufweisenden Steuergerätes geht.
Flash-EPROMs sind intern in Sektoren unterteilt oder unter­ teilbar, welche grundsätzlich nur jeweils in ihrer Gesamtheit löschbar, aber beliebig (sektorunabhängig) beschreibbar bzw. programmierbar und auslesbar sind.
Typische Sektorgrößen liegen im Bereich zwischen 8 und 128 KBytes.
Die interne Struktur eines Flash-EPROM, genauer gesagt dessen interne Unterteilung in Sektoren ist in der Fig. 1 veranschaulicht.
Das in der Fig. 1 gezeigte Flash-EPROM weist vier Sektoren, nämlich einen ersten Sektor 100, einen zweiten Sektor 200, einen dritten Sektor 300 und einen vierten Sektor 400 auf.
Der erste Sektor 100 weist an seinem Anfang erste Selbst­ steuerdaten in Form einer Anfangsmarke 101 und an seinem Ende zweite Selbststeuerdaten in Form einer Endemarke 102 auf.
Der zweite Sektor 200 weist nur an seinem Anfang Selbst­ steuerdaten in Form einer Anfangsmarke 201 auf.
Der dritte Sektor 300 weist nur an seinem Ende Selbst­ steuerdaten in Form einer Endemarke 301 auf.
Der vierte Sektor 400 weist keine Selbststeuerdaten auf.
Die in der Fig. 1 gezeigte Zusammenstellung von Sektoren, insbesondere der darin enthaltenen Selbststeuerdaten dient ausschließlich der Erläuterung; ob ein Aufeinandertreffen derart unterschiedlicher Sektoren in der Praxis überhaupt eintreten kann bzw. durch entsprechende Überwachungsmechanismen tunlichst zu vermeiden ist, kann hier dahingestellt bleiben.
Die genannten Selbststeuerdaten in Form von Anfangs- und Endemarken werden beim Programmieren, genauer gesagt beim Beschreiben des Flash-EPROMs mit für die Ausübung einer Steuerfunktion erforderlichen Steuerfunktionsprogrammen und Steuerfunktionsdaten in die jeweiligen Sektoren eingeschrie­ ben.
Die Selbststeuerdaten werden durch ein Bitmuster repräsen­ tiert, das grundsätzlich eine beliebige Länge und einen be­ liebigen Inhalt aufweisen kann. Die Länge und der Inhalt der Selbststeuerdaten sind jedoch im Hinblick darauf auszuwählen, daß eine sichere Identifizierung derselben als Selbststeuerdaten gewährleistet ist, d. h. eine geringe Wahrscheinlichkeit besteht, daß zufällig den Selbststeuerdaten entsprechende andere Daten an der betreffenden Stelle zu stehen kommen.
Die Selbststeuerdaten sind, wie der Name schon besagt, Daten, die der Selbststeuerung des Steuergerätes dienen; sie sind nicht Bestandteil der eigentlich abzuspeichernden (im folgenden der Einfachheit halber als Nutzdaten bezeichneten) Steuerfunktionsprogramme und Steuerfunktionsdaten.
Die Selbststeuerdaten können durch ein von den Nutzdaten vollkommen unabhängiges, d. h. immer gleich aussehendes festes Bitmuster gebildet werden. Die Verwendung eines derartigen starren Bitmusters als Selbststeuerdaten ermöglicht ein besonders einfaches und zuverlässiges Einschreiben, Auffinden und Auswerten der Selbststeuerdaten.
Alternativ oder zusätzlich können die Selbststeuerdaten bei Bedarf jedoch auch durch ein variables Bitmuster gebildet werden, welches beispielsweise (wie eine Checksumme oder dergleichen) zugleich eine Überprüfung der gespeicherten Nutzdaten ermöglicht. Die Verwendung eines derartigen Bitmusters als Selbststeuerdaten erfordert zwar einen erhöhten Aufwand beim Einschreiben, Auffinden und Auswerten, kann aber in Fällen, wo dies eine untergeordnete Rolle spielt, gleichwohl vorteilhaft eingesetzt werden.
Im vom Hersteller ausgelieferten und im gelöschten Zustand des Flash-EPROM weist dieses noch keine Selbststeuerdaten auf; seine Sektoren sind wie der vierte Sektor 400 gemäß der Darstellung in der Fig. 1 leer.
Vor dem Beschreiben des Flash-EPROMs (sicherheitshalber gegebenenfalls auch vor dem erstmaligen Beschreiben) müssen die darin gespeicherten Daten gelöscht werden, denn nur durch Löschen kann eine binäre "0" in eine binäre "1" geändert werden. Beim Löschen eines Sektors werden sämtliche darin enthaltene Informationen, d. h. sowohl die Nutzdaten als auch die Selbststeuerdaten komplett gelöscht.
In einem solchen Zustand des Flash-EPROMs kann das Beschrei­ ben desselben beginnen. Es wird - wenngleich hierfür belie­ bige andere Möglichkeiten denkbar sind und existieren - im folgenden zunächst davon ausgegangen, daß die Beschreibungs­ richtung innerhalb der jeweiligen Sektoren jeweils vom Sek­ toranfang zum Sektorende hin verläuft.
Der Vorgang eines derartigen Beschreibens eines Sektors läuft dabei wie folgt ab:
Zunächst, d. h. zu Beginn des Beschreibungsvorganges, wird (vorzugsweise an den Anfang des zu beschreibenden Sektors) eine Anfangsmarke geschrieben; dieses Zwischenstadium ent­ spricht dem Zustand des zweiten Sektors 200 gemäß der Dar­ stellung in der Fig. 1. Danach werden die Nutzdaten in den betreffenden Sektor eingeschrieben, und zwar maximal bis kurz vor das Sektorende. Abschließend, d. h. nach dem Einschreiben der Nutzdaten in den betreffenden Sektor, wird (vorzugsweise an das Sektorende) eine Endemarke geschrieben. Damit ist für diesen Sektor ein Endzustand erreicht, der dem Zustand des ersten Sektors 100 gemäß der Darstellung in der Fig. 1 entspricht, wobei die Anfangsmarke mit dem Bezugszeichen 101 und die Endemarke mit dem Bezugszeichen 102 bezeichnet ist.
Die genannten Anfangs- und/oder Endemarken werden vorzugs­ weise an solche Stellen innerhalb des betreffenden Sektors geschrieben, die bereits zu Beginn eines jeweiligen Löschvorgangs ganz oder teilweise gelöscht werden. Es erleichtert das vorliegend betrachtete, d. h. vom Sektoranfang zum Sektorende oder umgekehrt erfolgende Beschreiben der jeweiligen Sektoren, wenn die Anfangsmarken und die Endemarken wie in Fig. 1 gezeigt an den Sektoranfang und das Sektorende oder umgekehrt geschrieben werden können. Allerdings besteht hierauf keine Einschränkung. Insbesondere für den Fall, daß ein beginnender Löschvorgang den Sektoranfang und/oder das Sektorende unbeeinflußt, d. h. nicht wenigstens teilweise löscht, sollten - abweichend von der Darstellung in der Fig. 1 - die Anfangs- und/oder Endemarken an solche Stellen innerhalb der Sektoren versetzt werden, die bereits zu Beginn eines Löschvorganges erfaßt werden. Entsprechendes gilt selbstverständlich auch für den Fall, daß das Beschreiben eines jeweiligen Sektors anders als vom Sektoranfang zum Sektorende oder umgekehrt erfolgt.
Ein ordnungsgemäß beschriebener und danach nicht teilweise oder vollständig gelöschter Sektor, und nur ein solcher Sek­ tor weist demnach zwei unversehrte Selbststeuerdatenab­ schnitte, nämlich eine unversehrte Anfangsmarke und eine unversehrte Endemarke auf.
Da dem Steuergerät die Positionen derartiger Marken in den jeweiligen Sektoren eines Flash-EPROMs bekannt sind, kann es deren Vorhandensein und Unversehrtheit auf einfache Weise überprüfen. Eine solche Überprüfung wird vorzugsweise für das gesamte Flash-EPROM im Rahmen eines Selbsttests des Steuergerätes insbesondere nach dem Einschalten und/oder Rücksetzen desselben durchgeführt.
Alternativ hierzu oder zusätzlich kann vorgesehen werden, die Überprüfung auf die jeweils aktuell benötigten Sektoren zu beschränken und diese entweder einmalig (beispielsweise erst unmittelbar vor dem ersten Zugriff nach dem Einschalten oder Rücksetzen des Steuergerätes) oder vor jedem Zugriff durchzuführen. Sofern sich das Programm und die Daten, auf welche zur Ausführung einer auszuführenden Steuerfunktion zuzugreifen ist, über mehrere Sektoren erstrecken (im Gegensatz zum Löschen des Flash-EPROMs kann das Lesen wahlfrei, also beliebig frei innerhalb eines Sektors und unabhängig von Sektorgrenzen erfolgen), kann es sich als vorteilhaft erweisen, wenn vor dem Beginn der Ausführung dieser Steuerfunktion eine vollständige Überprüfung aller betroffenen Sektoren durchgeführt wird.
Unabhängig vom Anlaß und der Häufigkeit solcher Überprüfungen wird ein jeweiliger Sektor als ordnungsgemäß eingestuft, wenn dieser sowohl eine unversehrte Anfangsmarke als auch eine unversehrte Endemarke aufweist, deren Inhalt, wie vorstehend bereits erwähnt, unabhängig von den dazwischen gespeicherten Nutzdaten sein kann oder von denselben abhängig sein kann, wobei diese Abhängigkeit in letzterem Fall gegebenenfalls vorzugsweise ebenfalls zu überprüfen wäre.
Werden sämtliche Sektoren, über welche sich ein gespeichertes Steuerfunktionsprogramm und zur Ausführung desselben erforderliche Steuerfunktionsdaten erstrecken, als ordnungsgemäß eingestuft, steht einer Ausführung bzw. Verwendung der darin gespeicherten Nutzdaten nichts entgegen.
Anderenfalls, d. h. wenn ein untersuchter Sektor wie der vierte Sektor 400 weder eine Anfangsmarke noch eine Endemarke aufweist oder wie der zweite Sektor 200 nur eine Anfangsmarke 201 (und keine Endemarke) aufweist oder wie der dritte Sektor 300 nur eine Endemarke 301 (und keine Anfangsmarke) aufweist oder - wie in der Fig. 1 nicht gezeigt - nicht vollständig unversehrte Anfangs- und/oder Endemarken aufweist, wird der betreffende Sektor als nicht ordnungsgemäß zugänglich oder als von Anfang an nicht oder mittlerweile nicht mehr ordnungsgemäß beschrieben eingestuft.
Der Fall, daß ein Sektor wie der vierte Sektor 400 weder eine Anfangsmarke noch eine Endemarke aufweist, kann insbesondere auftreten, wenn das Flash-EPROM, genauer gesagt der betrachtete Sektor noch nie beschrieben oder dessen Inhalt wieder vollständig gelöscht wurde.
Der Fall, daß ein Sektor wie der zweite Sektor 200 nur eine Anfangsmarke 201 aufweist, tritt normalerweise auf, wenn in einem erstmals beschriebenen oder zuvor komplett gelöschten Sektor das Beschreiben zwar begonnen, aber nicht mehr ord­ nungsgemäß beendet wurde.
Der Fall, daß ein Sektor wie der dritte Sektor 300 nur eine Endemarke 301 aufweist, kann beispielsweise auftreten, wenn ein an einem bereits beschriebenen Sektor ausgeführter Löschvorgang vorzeitig abgebrochen wurde.
Bei den drei soeben beschriebenen Fällen, bei denen ein Sek­ tor nicht sowohl eine Anfangsmarke als auch eine Endemarke aufweist oder wenn gegebenenfalls vorhandene Anfangs- und Endemarken nicht unversehrt sind, sind im betreffenden Sektor entweder überhaupt keine Nutzdaten oder zumindest mit großer Wahrscheinlichkeit nur lückenhaft oder unvollständig gespeicherte oder zugängliche Nutzdaten vorhanden, so daß der Inhalt dieses Sektors zurecht von einer Verwendung ausgeschlossen wird.
Auf das Einschreiben und/oder Auswerten einer wie beim vor­ stehend beschriebenen Ausführungsbeispiel zu Beginn des Be­ schreibens eines Sektors geschriebenen Anfangsmarke kann verzichtet werden, wenn die nach Beendigung des Einschreibens von Nutzdaten in den betreffenden Sektor einzuschreibende Endemarke derart innerhalb des betreffenden Sektors positioniert wird, daß sie gleich zu Beginn eines Löschvorganges von diesem erfaßt, also zumindest einer teilweisen Löschung unterworfen wird. Dann kann nämlich
  • 1) aus dem Vorhandensein der Endemarke gefolgert werden, daß ein ordnungsgemäßes Beschreiben stattgefunden hat, und
  • 2) aus der Unversehrtheit der Endemarke gefolgert werden, daß die eingeschriebenen Daten nicht wieder ganz oder teilweise gelöscht oder unzugänglich sind,
so daß die Beschränkung der Selbststeuerdaten auf eine Ende­ marke ein im wesentlichen vollwertiger Ersatz für das ein­ gangs beschriebene Vorsehen von Anfangs- und Endemarken ist.
Unabhängig von der Art und Weise der Feststellung, daß ein Sektor nicht oder zumindest nicht vollständig beschrieben ist, können im Ansprechen auf das Erfassen eines solchen Zu­ standes unterschiedlichste Maßnahmen ergriffen werden.
Im Hinblick auf die Sicherheit des zu steuernden Kraftfahr­ zeuges und dessen Insassen sollte ein Steuerfunktionspro­ gramm, das ganz oder teilweise in einem als nicht ordnungs­ gemäß eingestuften Sektor gespeichert ist oder das auf in einem derartigen Sektor gespeicherte Daten zugreift, von der Verwendung bzw. Ausführung ausgeschlossen sein, und zwar selbst dann, wenn es sich als lauffähig erweisen sollte. Unter Umständen kann es auch ratsam sein, nicht nur unmittelbar von dem Mangel betroffene Steuerfunktionsprogramme, sondern alle Steuerfunktionsprogramme sofort (definiert) zu beenden bzw. deren Ausführung zu sperren.
Darüber hinaus könnte in einem solchen Fall vorgesehen wer­ den, das Steuergerät bei Erfassen eines als nicht ordnungs­ gemäß eingestuften Sektors automatisch in eine Programmier­ betriebsart zu schalten, in welcher durch ein Programmier­ gerät eine Programmierung oder Umprogrammierung des Flash-EPROMs erfolgen kann. Eine solche automatische Umschaltung in die Programmierbetriebsart böte den Vorteil, daß auf eine üblicherweise zwischen dem Steuergerät und dem (externen) Programmiergerät vorgesehene Programmierspannungsleitung (Write-Enable-Leitung), über welche dem Steuergerät durch das Programmiergerät ein Programmierwunsch mitgeteilt wird bzw. das Steuergerät in die Programmierbetriebsart versetzt wird, verzichtet werden kann. Dies ermöglicht eine Reduzierung des Hardwareaufwandes, zumal die dem Steuergerät über die Programmierspannungsleitung zuzuführende Programmierspannung nur relativ geringe Toleranzen aufweisen darf, was insbesondere mit zunehmender Entfernung von Steuergerät und Programmiergerät einen nicht unerheblichen Aufwand erfordert.
Bei den vorstehend beschriebenen Ausführungsbeispielen waren die Selbststeuerdaten in Form von Anfangsmarken und/oder Endemarken vorzugsweise am Anfang und/oder am Ende jeweiliger Sektoren eines Flash-EPROMs realisiert. Hierauf besteht jedoch keine Einschränkung. Die Selbststeuerdaten können vielmehr in beliebiger Anzahl und - wie vorstehend bereits angesprochen - grundsätzlich an beliebigen Stellen innerhalb einer Speichereinrichtung oder darin vorgesehenen Sektoren plaziert sein. Die Zeitpunkte, zu denen die Selbststeuerdaten geschrieben bzw. gelöscht werden (zu Beginn und am Ende der jeweiligen Schreib- bzw. Löschvorgänge) können zwar ebenfalls variiert werden, sollten aber vorzugsweise im wesentlichen unverändert oder allenfalls geringfügig verändert beibehalten werden.

Claims (9)

1. Verfahren zum Betreiben eines eine Steuerfunktion auf­ weisenden Steuergerätes (10) mit einer programmierbaren Speichereinrichtung (14) zum Speichern von für die Ausübung der Steuerfunktion erforderlichen Steuerfunktionsprogrammen und Steuerfunktionsdaten, dadurch gekennzeichnet, daß einhergehend mit dem Einschreiben der Steuerfunktionsprogramme und Steuerfunktionsdaten in die Speichereinrichtung an vorbestimmte Stellen innerhalb der Speichereinrichtung bestimmte, nicht zu den Steuerfunktionsprogrammen und Steuerfunktionsdaten gehörende Selbststeuerdaten eingeschrieben werden, und daß das Steuergerät in Abhängigkeit davon betrieben wird, ob an den vorbestimmten Stellen die bestimmten Selbststeuerdaten gespeichert sind.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Speichereinrichtung (14) in separat, aber jeweils nur als zusammenhängende Einheit löschbare Sektoren (100, 200, 300, 400) unterteilt ist, und daß jeder Sektor beim beschreiben mit Selbststeuerdaten versehen wird.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die Selbststeuerdaten zumindest eine Endemarke (102, 301) umfassen, die am Ende des Beschreibens eines jeweiligen Sektors (100, 200, 300, 400) mit darin zu speichernden Steuerfunktionsprogrammen und Steuerfunktionsdaten in den betreffenden Sektor eingeschrieben wird.
4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß die Selbststeuerdaten eine Anfangsmarke (101, 201) umfassen, die zu Beginn des Beschreibens eines jeweiligen Sektors (100, 200, 300, 400) mit darin zu speichernden Steuerfunktionsprogrammen und Steuerfunktionsdaten in den betreffenden Sektor eingeschrieben wird.
5. Verfahren nach einem der Ansprüche 2 bis 4, dadurch ge­ kennzeichnet, daß die vorbestimmten Stellen innerhalb der Speichereinrichtung (14), an welche die Selbststeuerdaten geschrieben werden, zumindest teilweise solche Stellen innerhalb der jeweiligen Sektoren (100, 200, 300, 400) sind, die gleich zu Beginn des Löschens eines Sektors ganz oder teilweise gelöscht werden.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß die vorbestimmten Stellen innerhalb der Speichereinrichtung (14), an welche die Selbststeuerdaten geschrieben werden, wenigstens die Sektoranfänge oder wenigstens die Sektorenden sind.
7. Verfahren nach einem der Ansprüche 2 bis 6, dadurch ge­ kennzeichnet, daß vor der Verwendung jeweiliger Steuerfunk­ tionsprogramme und zugeordneter Steuerfunktionsdaten über­ prüft wird, ob die Selbststeuerdaten in den Sektoren (100, 200, 300, 400), in welchen das betreffende Steuerfunktions­ programm und die zugeordneten Steuerfunktionsdaten gespei­ chert sind, unversehrt auffindbar sind.
8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß die Ausführung oder die Verwendung von Steuerfunktionspro­ grammen und Steuerfunktionsdaten, die ganz oder teilweise in einem als nicht ordnungsgemäß eingestuften Sektor (100, 200, 300, 400) gespeichert sind oder gespeichert sein sollen, un­ terbunden wird.
9. Verfahren nach Anspruch 7 oder 8, dadurch gekennzeichnet, daß das Steuergerät (10) auf das Erfassen eines als nicht ordnungsgemäß einzustufenden Sektors (100, 200, 300, 400) hin automatisch in eine Programmierungsbetriebsart versetzt wird, in welcher eine Programmierung oder Umprogrammierung der Speichereinrichtung (14) möglich ist.
DE19619354A 1996-05-14 1996-05-14 Verfahren zum Betreiben eines eine Steuerfunktion aufweisenden Steuergerätes mit einer programmierbaren Speichereinrichtung Ceased DE19619354A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE19619354A DE19619354A1 (de) 1996-05-14 1996-05-14 Verfahren zum Betreiben eines eine Steuerfunktion aufweisenden Steuergerätes mit einer programmierbaren Speichereinrichtung
IT97MI001074A IT1291326B1 (it) 1996-05-14 1997-05-08 Procedimento per il funzionamento di un apparecchio di comando rappresentante una funzione di comando con un dispositivo di memoria
FR9705777A FR2748830B1 (fr) 1996-05-14 1997-05-12 Procede de mise en oeuvre d'un appareil de commande presentant une fonction de commande avec une memoire programmable
JP9123613A JPH1049205A (ja) 1996-05-14 1997-05-14 プログラミング可能な記憶装置を備えた制御機能を有する制御装置の作動方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19619354A DE19619354A1 (de) 1996-05-14 1996-05-14 Verfahren zum Betreiben eines eine Steuerfunktion aufweisenden Steuergerätes mit einer programmierbaren Speichereinrichtung

Publications (1)

Publication Number Publication Date
DE19619354A1 true DE19619354A1 (de) 1997-11-20

Family

ID=7794245

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19619354A Ceased DE19619354A1 (de) 1996-05-14 1996-05-14 Verfahren zum Betreiben eines eine Steuerfunktion aufweisenden Steuergerätes mit einer programmierbaren Speichereinrichtung

Country Status (4)

Country Link
JP (1) JPH1049205A (de)
DE (1) DE19619354A1 (de)
FR (1) FR2748830B1 (de)
IT (1) IT1291326B1 (de)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2785655A1 (fr) * 1998-11-09 2000-05-12 Luk Getriebe Systeme Gmbh Procede pour faire fonctionner un vehicule automobile ou pour accroitre sa capacite de fonctionnement.
EP1037140A2 (de) 1999-03-17 2000-09-20 Robert Bosch Gmbh Verfahren und Vorrichtung zur Absicherung bei Veränderung des Speicherinhalts von Steuergeräten
DE10008516A1 (de) * 2000-02-24 2001-08-30 Zahnradfabrik Friedrichshafen Abstimmung des Betriebsverhaltens einer Betätigungseinrichtung
DE10253765A1 (de) * 2002-11-19 2004-06-09 Daimlerchrysler Ag Steuergerät zur Bestimmung der Regel- oder Steuercharakteristik eines Fahrzeugsystems
EP1576433A2 (de) * 2002-12-23 2005-09-21 Siemens Energy & Automation, Inc. Verfahren zur benutzung eines speicherbausteins für ein plc
US6973530B2 (en) 2000-06-30 2005-12-06 Robert Bosch Gmbh Method for writing and erasing a non-volatile memory area
EP1860552A1 (de) * 2006-05-23 2007-11-28 Siemens Aktiengesellschaft Modifizieren eines Softwarestands einer Steuergerätesoftware für ein Steuergerät und Erkennen einer solchen Modifikation
US7406717B2 (en) 2001-05-12 2008-07-29 Robert Bosch Gmbh Method for operating a control device

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5523915A (en) * 1993-08-03 1996-06-04 Casio Computer Co., Ltd. Data storage system
JPH0744451A (ja) * 1993-08-03 1995-02-14 Casio Comput Co Ltd データ記憶装置
DE4332499A1 (de) * 1993-09-24 1995-03-30 Bosch Gmbh Robert Verfahren zur vollständigen Neuprogrammierung eines löschbaren, nichtflüchtigen Speichers
US5970251A (en) * 1994-06-16 1999-10-19 Robert Bosch Gmbh Process for optimizing program parts for motor vehicle controllers
DE4425388B4 (de) * 1994-07-19 2005-07-21 Robert Bosch Gmbh Steuergerät

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6950734B2 (en) 1998-11-09 2005-09-27 Luk Lamellen Und Kupplungsbau Beteiligungs Kg Motor vehicle
WO2000028391A3 (de) * 1998-11-09 2000-11-16 Luk Lamellen & Kupplungsbau Kraftfahrzeug
FR2785655A1 (fr) * 1998-11-09 2000-05-12 Luk Getriebe Systeme Gmbh Procede pour faire fonctionner un vehicule automobile ou pour accroitre sa capacite de fonctionnement.
EP1037140A2 (de) 1999-03-17 2000-09-20 Robert Bosch Gmbh Verfahren und Vorrichtung zur Absicherung bei Veränderung des Speicherinhalts von Steuergeräten
DE19911794A1 (de) * 1999-03-17 2000-09-28 Bosch Gmbh Robert Verfahren und Vorrichtung zur Absicherung bei Veränderung des Speicherinhalts von Steuergeräten
US7035964B1 (en) 1999-03-17 2006-04-25 Robert Bosch Gmbh Method and device for securing data when altering the storage contents of control units
DE19911794B4 (de) * 1999-03-17 2005-10-06 Robert Bosch Gmbh Verfahren und Vorrichtung zur Absicherung bei Veränderung des Speicherinhalts von Steuergeräten
EP1037140A3 (de) * 1999-03-17 2005-07-06 Robert Bosch Gmbh Verfahren und Vorrichtung zur Absicherung bei Veränderung des Speicherinhalts von Steuergeräten
DE10008516A1 (de) * 2000-02-24 2001-08-30 Zahnradfabrik Friedrichshafen Abstimmung des Betriebsverhaltens einer Betätigungseinrichtung
US6532410B2 (en) 2000-02-24 2003-03-11 Zf Friedrichshafen Ag Method coordinating operating behavior of motor vehicle device
US6973530B2 (en) 2000-06-30 2005-12-06 Robert Bosch Gmbh Method for writing and erasing a non-volatile memory area
DE10030990B4 (de) * 2000-06-30 2010-11-25 Robert Bosch Gmbh Verfahren zum Beschreiben und Löschen eines nichtflüchtigen Speicherbereichs
US7406717B2 (en) 2001-05-12 2008-07-29 Robert Bosch Gmbh Method for operating a control device
DE10253765A1 (de) * 2002-11-19 2004-06-09 Daimlerchrysler Ag Steuergerät zur Bestimmung der Regel- oder Steuercharakteristik eines Fahrzeugsystems
EP1576433A2 (de) * 2002-12-23 2005-09-21 Siemens Energy & Automation, Inc. Verfahren zur benutzung eines speicherbausteins für ein plc
EP1860552A1 (de) * 2006-05-23 2007-11-28 Siemens Aktiengesellschaft Modifizieren eines Softwarestands einer Steuergerätesoftware für ein Steuergerät und Erkennen einer solchen Modifikation

Also Published As

Publication number Publication date
FR2748830B1 (fr) 2001-02-02
ITMI971074A1 (it) 1998-11-08
FR2748830A1 (fr) 1997-11-21
IT1291326B1 (it) 1999-01-07
JPH1049205A (ja) 1998-02-20
ITMI971074A0 (de) 1997-05-08

Similar Documents

Publication Publication Date Title
EP0894295B1 (de) Verfahren zur automatischen dokumentation des programmiervorgangs des speichers eines programmierbaren steuergerätes
DE3624441C2 (de)
DE4441101B4 (de) Verfahren und Vorrichtung zur Bestimmung von Diagnoseschwellwerten für einen bestimmten Kraftfahrzeugtyp im Feld
DE4425388B4 (de) Steuergerät
DE3802241C2 (de)
DE102005013285B4 (de) Verfahren zum Konfigurieren eines Steuergeräts und Steuergerät
EP2008179B1 (de) Erweiterung der funktionalität einer serien-software in einem steuergerät
DE4128922A1 (de) Elektronische steuerung fuer ein fahrzeug
DE19963208B4 (de) Verfahren zum Manipulationsnachweis einer programmierbaren Speichereinrichtung eines digitalen Steuergeräts
DE19964012A1 (de) Verfahren und Einrichtung zum Refresh des Speicherinhalts einer Speicherzelle eines Festwertspeichers
DE19619354A1 (de) Verfahren zum Betreiben eines eine Steuerfunktion aufweisenden Steuergerätes mit einer programmierbaren Speichereinrichtung
DE19934191B4 (de) Elektronische Steuerungseinheit und Steuerungsverfahren zum Speichern eines Neuschreibungszählwerts eines nichtflüchtigen Speichers
DE19623145A1 (de) Verfahren zum Betreiben eines Steuergerätes mit einer über eine Programmiervorrichtung programmierbaren Speichereinrichtung
EP1563358B1 (de) Verfahren zur sicheren überprüfung eines speicherbereiches eines mikrocontrollers in einem steuergerät und steuergerät mit einem geschützten mikrocontroller
DE4436371B4 (de) Vorrichtung und Verfahren zur Steuerung einer Brennkraftmaschine
DE10030990A1 (de) Verfahren zum Beschreiben und Löschen eines nichtflüchtigen Speicherbereichs
EP1397736B1 (de) Verfahren zum betreiben eines steuergeräts
WO1998036333A1 (de) Steuergerät, insbesondere für den einsatz in einem kraftfahrzeug
DE19616053A1 (de) Verfahren zum Betreiben eines Steuergerätes mit einer programmierbaren Speichereinrichtung
DE10237173A1 (de) Verfahren zum Erfassen vom temporären Messgrößen in einem programmierten Steuergerät
DE19903302B4 (de) Verfahren und Vorrichtung zur Überprüfung der Funktion eines Rechners
DE19722015B4 (de) Verfahren und Vorrichtung zur Steuerung einer Brennkraftmaschine
DE102016225308A1 (de) Verfahren und Vorrichtung zum Kalibrieren eines Steuergerätes
EP0694840B1 (de) Kraftfahrzeug-Steuergerät mit elektrisch lösch- und programmierbarem Speicher
DE19753730A1 (de) Verfahren und Vorrichtung zum Steuern einer Brennkraftmaschine

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8131 Rejection