DE19536490A1 - Verfahren zum Einschreiben von Daten in einen Speicher eines Steuergeräts - Google Patents

Verfahren zum Einschreiben von Daten in einen Speicher eines Steuergeräts

Info

Publication number
DE19536490A1
DE19536490A1 DE1995136490 DE19536490A DE19536490A1 DE 19536490 A1 DE19536490 A1 DE 19536490A1 DE 1995136490 DE1995136490 DE 1995136490 DE 19536490 A DE19536490 A DE 19536490A DE 19536490 A1 DE19536490 A1 DE 19536490A1
Authority
DE
Germany
Prior art keywords
memory
signal
data
control unit
interface
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.)
Granted
Application number
DE1995136490
Other languages
English (en)
Other versions
DE19536490C2 (de
Inventor
Reinhold Dirnberger
Roman Grutza
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.)
Continental Automotive GmbH
Original Assignee
Daimler Benz AG
Mercedes Benz AG
Siemens AG
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 Daimler Benz AG, Mercedes Benz AG, Siemens AG filed Critical Daimler Benz AG
Priority to DE1995136490 priority Critical patent/DE19536490C2/de
Publication of DE19536490A1 publication Critical patent/DE19536490A1/de
Application granted granted Critical
Publication of DE19536490C2 publication Critical patent/DE19536490C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring
    • 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/24Pc safety
    • G05B2219/24143Inhibit control if device does not answer a start signal within time interval
    • 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/24Pc safety
    • G05B2219/24155Load, enter program if device acknowledges received password, security signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Description

Die Erfindung betrifft ein Verfahren zum Einschreiben von Daten in den Speicher eines Steuergerätes. Entsprechende Steuergeräte mit Speicher werden z. B. in einem Kraftfahrzeug zur Steuerung von verschiedenen Funktionen wie z. B. Anti­ blockiersystem (ABS), Airbag, Benzineinspritzung und Zünd­ einstellung verwendet.
Aus der DE 40 03 507 A1 ist bereits ein Verfahren zum Ein­ schreiben von Daten und Programmen in den Speicher eines Steuergerätes bekannt, bei dem auf einen Ladebefehl hin ein Basisprogramm das Einschreiben von Daten und Programmen in einen Hauptspeicher steuert, wobei die einzuprogrammierenden Daten und Programme über eine Schnittstelle aus einem exter­ nen Datenträger ausgelesen werden. Das Basisprogramm ist in einem Hilfsspeicher abgelegt. Hierdurch können nachträglich Änderungen im Programm des Steuergerätes durchgeführt werden. Das beschriebene Verfahren weist keinen ausreichenden Schutz gegen einen unberechtigten Zugriff auf die Daten und Program­ me des Steuergerätes auf.
Die Aufgabe der Erfindung liegt darin, ein Verfahren zum Ein­ schreiben von Daten und Programmen in den Speicher eines Steuergerätes anzugeben, das die Daten und Programme des Steuergerätes sicher vor einem unberechtigten Zugriff schützt, ein fehlerhaftes Einschreiben vermeidet und ein Be­ treiben des Steuergerätes mit fehlerhaften Daten oder mit ei­ nem fehlerhaften Programm sicher verhindert.
Die Aufgabe der Erfindung wird durch die Merkmale des An­ spruchs 1 gelöst.
Ein wesentlicher Vorteil der Erfindung liegt darin, daß ein Testintervall vorgesehen ist, innerhalb dessen nach dem Ein­ schalten des Steuergerätes vorgegebene Signale nach einem vorgegebenen Verfahren ausgetauscht werden müssen, bevor ein Zugriff auf die Programme des Steuergerätes möglich ist.
Vorteilhafte Weiterbildungen und Verbesserungen der Erfindung sind in den Unteransprüchen beschrieben.
Ein weiterer Vorteil der Erfindung beruht darin, daß ein Be­ rechtigungsnachweis vor dem Einschreiben in den Speicher durch eine Abfrage eines codierten Sicherheitssignals gefor­ dert wird und dadurch der Speicher zusätzlich gegen einen un­ befugten Zugriff geschützt ist.
Die Erfindung wird anhand der Figuren näher erläutert; es zeigen:
Fig. 1 ein Steuergerät,
Fig. 2 einen ersten Programmablauf,
Fig. 3 einen zweiten Programmablauf und
Fig. 4 Datenbytes.
Gemäß Fig. 1 ist das Steuergerät 1, das unter anderem eine Recheneinheit umfaßt, über Datenleitungen mit einer Schnitt­ stelle 6, mit einem ersten Speicher 2, mit einem zweiten Speicher 3 und über eine Steuerleitung mit einem Stellglied 9 verbunden. Das Steuergerät 1 ist über eine Signalleitung mit einem Sensor 11 verbunden. Zudem ist das Steuergerät 1 über einen ersten Schalter 5 mit einer Versorgungsspannung 4, bei­ spielsweise einer Batterie eines Kraftfahrzeuges, verbunden. Zudem weist das Steuergerät 1 einen Masseanschluß 10 auf.
Die Schnittstelle 6, die z. B. als serielle Schnittstelle aus­ gebildet ist, ist über eine Eindrahtleitung 12 über einen zweiten Schalter 8 mit einer Ein- und Ausgabeeinheit 7 ver­ bunden. Die Ein- und Ausgabeeinheit 7 ist beispielsweise als tragbarer Computer (PC) ausgebildet.
In dem ersten Speicher 2 sind Daten abgelegt, die das Steuer­ gerät 1 zur Steuerung von Funktionen eines Kraftfahrzeuges wie z. B. ABS, Zündung und Einstellung des Einspritzwinkels verwendet. Unter dem Oberbegriff Daten werden im Rahmen der Erfindung Werte, Konstanten, Variablen, Kennfelder, Kennli­ nien, Programmteile, Programme usw. verstanden, die beim Be­ treiben eines Steuergerätes 1 Verwendung finden, das insbe­ sondere zum Steuern von Funktionen eines Kraftfahrzeuges ein­ gesetzt wird.
Das Steuergerät 1 nimmt Sensorsignale des Sensors 11 auf, wandelt die Sensorsignale mit Hilfe der Daten wie z. B. Varia­ blen, Konstanten, Kennfelder und Steuerprogramme usw. in Steuersignale um und gibt diese über die Steuerleitung an das Stellglied 9 weiter. Da der Inhalt des ersten Speichers auch zur Steuerung sicherheitsrelevanter Vorrichtungen wie z. B. dem ABS verwendet werden, ist ein unbefugter Zugriff auf den Inhalt des ersten Speichers sicher zu verhindern. Trotzdem ist es erforderlich, daß z. B. bei einer nachträglichen Ände­ rung der Steuerprogramme eine Änderung des Inhalts des Spei­ chers vorgenommen werden muß.
In vorteilhafter Weise ist ein Programm zum Einschreiben von Daten in den ersten Speichers 2 in einem schreib- und lösch­ geschützten Bereich des ersten Speichers 2 oder in einem schreib- und löschgeschützten zweiten Speicher 3 abgelegt.
Das Verfahren zum Einschreiben von Daten in den ersten Spei­ cher 2 wird anhand der Fig. 2, 3 und 4 erläutert. Fig. 2 zeigt einen ersten schematischen Programmablauf zur Program­ mierung des Steuergerätes 1. Bei Programmpunkt 20 wird ein Testintervall vorgegebener zeitlicher Länge gestartet. Dies erfolgt z. B. durch Eingabe eines Steuerbefehls an die Steuer­ einheit 1, durch einen Start eines Steuerprogrammes oder durch die Betätigung einer Resettaste. Im folgenden Ausfüh­ rungsbeispiel wird das Testintervall durch das Anlegen einer Versorgungsspannung an das Steuergerät 1 gestartet, indem der erste Schalter 5 geschlossen wird.
Daraufhin wird bei Programmpunkt 21 von dem Steuergerät 1 überprüft, ob an der Schnittstelle 6 ein Startsignal A an­ liegt. Ist dies nicht der Fall, so wird nach Programmpunkt 31 verzweigt und das Steuergerät 1 geht in einen normalen Be­ triebszustand, d. h. in einen Steuerbetrieb über, in dem die Steuerprogramme vom Steuergerät 1 abgearbeitet werden und eine Änderung der Daten im ersten Speicher 2, insbesondere eine Änderung der Steuerprogramme, gesperrt ist. Im Steuerbe­ trieb führt das Steuergerät 1 beispielsweise Motorfunktionen oder ABS-Funktionen durch.
Ergibt die Abfrage bei Programmpunkt 21, daß das Startsignal A über die Schnittstelle 6 empfangen wurde, so wird bei Pro­ grammpunkt 22 von dem Steuergerät 1 ein Antwortsignal B über die Schnittstelle 6 an die Ein-/Ausgabegeeinheit 7 abgegeben. Die Ein-/Ausgabegeeinheit 7 sendet nach Empfang des Antwort­ signals B ein Bestätigungssignal C an das Steuergerät 1.
Bei Programmpunkt 23 überprüft das Steuergerät 1, ob von der Ein-/Ausgabegeeinheit 7 das Bestätigungssignal C innerhalb des Testintervalls empfangen wird. Wird das Bestätigungs­ signal C nicht innerhalb des Testintervalls erhalten, so wird bei Programmpunkt 24 vom Steuergerät 1 über die Schnittstelle 6 eine Fehlerkennung abgegeben. Diese Fehlerkennung wird von der Ein-/Ausgabegeeinheit 7 in Form eines Textes: "Programmierversuch fehlerhaft!" ausgegeben. Anschließend geht das Steuergerät 1 entsprechend dem Programmpunkt 31 in einen Steuerbetrieb über.
Ergibt die Abfrage bei Programmpunkt 23, daß das Bestäti­ gungssignal C innerhalb des Testintervalls vom Steuergerät 1 empfangen wird, so wird in einer ersten vorteilhaften Ausführung der Erfindung direkt zu Programm­ punkt 29 verzweigt, bei dem Daten in den ersten Speichers 2 eingeschrieben werden.
Vorzugsweise werden vor Programmpunkt 29 wahlweise weitere Programmpunkte 25, 26 und 27 durchgeführt.
Die Länge des Testintervalls, innerhalb dessen das Bestäti­ gungssignal C von dem Steuergerät 1 empfangen werden muß, um eine Programmierung des ersten Speichers 2 durchführen zu können, ist entsprechend den technischen Gegebenheiten anzu­ passen und liegt beispielsweise zwischen 5 ms und 1 s, vor­ zugsweise bei 10 ms.
Bei Programmpunkt 25 wird überprüft, ob der Motor des Fahr­ zeuges in Betrieb ist, d. h. ob die Drehzahl gleich null ist. Ist die Drehzahl des Motors ungleich null, so ist ein Ein­ schreiben von Daten, d. h. eine Programmierung des ersten Speichers 2, gesperrt und es wird zu Programmpunkt 31 ver­ zweigt, bei dem das Steuergerät 1 in einen Steuerbetrieb übergeht.
Ergibt die Abfrage bei Programmpunkt 25, daß die Drehzahl des Motors gleich null ist, so wird entweder nach Programmpunkt 29 oder wahlweise nach Programmpunkt 26 verzweigt. Bei Pro­ grammpunkt 26 führt das Steuergerät 1 eine Überprüfung der Schnittstelle 6 durch. Anschließend erfolgt bei Programmpunkt 27 eine Abfrage, ob die Schnittstelle 6 ordnungsgemäß funk­ tioniert. Ist dies nicht der Fall, so wird nach Programmpunkt 28 verzweigt, bei dem über die Ein-/Ausgabeeinheit 7 eine Fehlermeldung ausgegeben wird. Daraufhin wird nach Programm­ punkt 31 verzweigt.
Ergibt die Abf. rage bei Programmpunkt 27, daß die Schnitt­ stelle 6 ordnungsgemäß funktioniert, so wird nach Programm­ punkt 29 verzweigt. Bei Programmpunkt 29 wird die Programmie­ rung, d. h. das Einschreiben von Daten in den Speicher 2, das im einzelnen in Fig. 3 dargestellt ist, durchgeführt.
Nach dem Abschluß der Progammlerung bei Programmpunkt 29 wird nach Programmpunkt 30 verzweigt. Bei Programmpunkt 30 wird eine zweite Kontrollsumme über die im ersten Speicher 2 neu einprogrammierten Daten berechnet. Die zweite Kontrollsumme wird mit einer ersten Kontrollsumme, die bei Programmpunkt 29 in den ersten Speicher 2 eingelesen wurde, verglichen. Die erste Kontrollsumme ist vor dem Einschreiben der Daten in den ersten Speicher 2 über die bei Programmpunkt 29 neu in den ersten Speicher 2 einzuschreibenden Daten gebildet worden. Ergibt der Vergleich, daß die erste und die zweite Kontroll­ summe nicht übereinstimmen, wodurch ein Fehler beim Ein­ schreiben der Daten in den ersten Speicher 2 angezeigt wird, so wird nach Programmpunkt 20 zurückverzweigt.
Bei einer bevorzugten Ausführung des Verfahrens wird der ge­ samte Inhalt des ersten Speichers 2 vor dem Sprung nach Pro­ grammpunkt 20 gelöscht, wenn die erste und die zweite Kon­ trollsumme nicht übereinstimmen.
Das Steuergerät 1 geht bei einer fehlerhaften Programmierung des ersten Speichers 2 nicht einen Steuerbetrieb 31 über.
Ergibt die Abfrage bei Programmpunkt 30, daß die erste und die zweite Kontrollsumme übereinstimmen, so wird anschließend nach Programmpunkt 31 verzweigt, bei dem das Steuergerät 1 in einen Steuerbetrieb übergeht und die neu eingeschriebenen Da­ ten für Steuerungsverfahren verwendet werden.
Anhand der Fig. 3 wird im folgenden das Einschreiben der Da­ ten in den ersten Speicher 2 des Steuergerätes 1, d. h. der Programmpunkt 29 der Fig. 2, beschrieben. Bei Programmpunkt 261 werden vom Steuergerät 1 Daten wie z. B. Werte, Konstan­ ten, Variablen, Kennfelder, Kennlinien, Programmteile, Pro­ gramme usw. über die Schnittstelle von der Ein-/Ausgabe­ einheit 7 empfangen. Anschließend wird bei Programmpunkt 262 überprüft, ob die Daten entsprechend einem vorgegebenen Zeit­ takt und entsprechend einem vorgegebenen Format empfangen werden. Ist dies nicht der Fall, so wird nach Programmpunkt 272 verzweigt. Bei Programmpunkt 272 wird vom Steuergerät 1 eine Kennung über die Ein-/Ausgabegeeinheit 7 ausgegeben, die anzeigt, daß die Datenübertragung fehlerhaft ist. An­ schließend wird nach Programmpunkt 31 verzweigt.
Ergibt die Abfrage bei Programmpunkt 262, daß die Datenüber­ tragung zwischen dem Steuergerät 1 und der Ein-/Ausgabe­ einheit 7 ordnungsgemäß verläuft, so wird nach Programmpunkt 263 verzweigt. Bei Programmpunkt 263 wird überprüft, ob eine Sperrzeit abgelegt ist. Eine Sperrzeit wird dann im zweiten Speicher 2 abgelegt, wenn mit einem falschen Sicherheits­ signal versucht wird, Zugriff auf den ersten Speicher 2 zu bekommen. Die Sperrzeit ist entsprechend den Gegebenheiten zu wählen und beträgt vorzugsweise 30 Minuten, in denen ein Zu­ griff auf den ersten Speicher 2 gesperrt ist.
Ergibt die Abfrage bei Programmpunkt 263, daß eine Sperrzeit vorliegt, so wird nach Programmpunkt 31 verzweigt. Ist keine Sperrzeit im zweiten Speicher 3 vermerkt, so wird anschlie­ ßend bei Programmpunkt 264 von der Ein-/Ausgabeeinheit 7 eine erste Kontrollsumme übertragen, die über die Daten gebildet wurde, die in den ersten Speicher 2 des Steuergerätes 1 neu einprogrammiert werden sollen. Die erste Kontrollsumme wird von der Ein-/Ausgabeeinheit 7 ermittelt. Die erste Kontroll­ summe wird im zweiten Speicher 3 abgelegt.
Als nächstes wird bei Programmpunkt 265 das Sicherheitssignal von der Ein-/Ausgabeeinheit 7 an das Steuergerät 1 übertra­ gen. Daraufhin überprüft das Steuergerät 1, das Sicherheits­ signal mit einem im zweiten Speicher 3 abgelegten Bezugs­ signal übereinstimmt. Das Bezugssignal besteht aus einer vor­ gegebenen Anzahl von Datenbits und weist vorzugsweise minde­ stens 32 Bits auf.
Weist der erste Speicher 2 einen Bereich auf, der nicht lösch-, nicht beschreib- und nicht lesbar ist, so kann das Bezugssignal auch in diesem Bereich des ersten Speichers 2 abgelegt sein.
Ergibt der Vergleich bei Programmpunkt 266, daß das Sicher­ heitssignal und das Bezugssignal nicht übereinstimmen, so wird bei Programmpunkt 268 von dem Steuergerät 1 an die Ein-/Ausgabegeeinheit 7 die Information übertragen, erneut ein Sicherheitssignal einzugeben. Bei Programmpunkt 269 werden das erneut eingegebene Sicherheitssignal und das Bezugssignal miteinander verglichen. Ergibt der Vergleich, daß das Sicher­ heitssignal und das Bezugssignal wieder nicht übereinstimmen, so wird beim folgenden Programmpunkt 271 eine Sperrzeit, vor­ zugsweise 30 Minuten, im zweiten Speicher 3 oder in einem nicht lösch- und nicht beschreibbaren Bereich des ersten Spei­ chers 2 abgelegt. Daraufhin wird nach Programmpunkt 31 ver­ zweigt.
Ergibt der Vergleich der Sicherheitscodes bei Programmpunkt 269, daß das erneut eingegebene Sicherheitssignal und das Be­ zugssignal übereinstimmen, so wird nach Programmpunkt 267 verzweigt.
Ergibt der Vergleich bei Programmpunkt 266, daß das Sicher­ heitssignal und das Bezugssignal übereinstimmen, so wird nach Programmpunkt 267 verzweigt.
Bei Programmpunkt 267 wird der Ein-/Ausgabeeinheit 7 ein Zu­ griff auf den ersten Speicher 2 erlaubt. Die Ein-/Ausgabe­ einheit 7 führt eine Programmierung des ersten Speichers 2 oder eine Programmierung von Teilen des ersten Speichers 2 durch. Bei der Programmierung des ersten Speichers 2 werden Daten, insbesondere Parameter, Variablen, Konstanten, Kenn­ feldern oder Teilen von Steuerprogrammen oder gesamten Steuerprogrammen usw. in den ersten Speicher 2 eingeschrie­ ben.
In einer bevorzugten Ausführung der Erfindung ist ein Pro­ gramm zur Programmierung des ersten Speichers 2 in einem nicht lösch- und nicht beschreibbaren Bereich des ersten Speichers 2 oder in einem nicht lösch- und nicht beschreibba­ ren zweiten Speicher 3 abgelegt. Die Ein-/Ausgabeeinheit 7 gibt dem Programm zur Programmierung des ersten Speichers 2 nur einen Steuerbefehl und das Programm zur Programmierung des ersten Speichers 2 führt die Programmierung des ersten Speichers 2 selbständig durch, wobei die neu einzuprogrammie­ renden Daten von der Ein-/Ausgabeeinheit 7 zur Verfügung ge­ stellt werden.
In einem besonderen Ausführungsbeispiel, bei dem auch das Programm zur Programmierung im zweiten Speicher 3 abgelegt ist, wird immer zuerst der gesamte Inhalt des ersten Spei­ chers 2 gelöscht und anschließend die neuen Daten in den er­ sten Speicher 2 eingeschrieben.
Nach dem Abschluß der Programmierung des ersten Speichers 2 wird nach Programmpunkt 30 (Fig. 2) zurückverzweigt.
Der erste Speicher 2 ist vorzugsweise als Flash-Speicher, insbesondere als Flash-EPROM oder E²PROM ausgebildet.
Im zweiten Speicher 3 oder in einem nicht löschbaren Bereich des ersten Speichers 2 ist ein Programm abgelegt, das die Sperrzeit abbaut. Die Sperrzeit wird z. B. in Form einer Zahl festgelegt, die nach der Eintragung der Sperrzeit entspre­ chend einem vorgegebenen Zeittakt dekrementiert wird und bei dem Wert 0 eine Eingabe des Sicherheitssignals wieder möglich ist.
Die Schnittstelle 6 ist vorzugsweise als serielle Schnitt­ stelle ausgebildet. Der Datenaustausch zwischen dem Steuerge­ rät 1 und der Ein-/Ausgabeeinheit 7 erfolgt in Form von Da­ tenblöcken, wobei abwechselnd ein Datenblock von der Ein- /Ausgabeeinheit 7 und ein Datenblock von dem Steuergerät 1 gesendet wird. Ein Datenblock besteht maximal aus 256 Bytes. Der Austausch der Daten wird abgebrochen, wenn innerhalb ei­ ner vorgegebenen Zeitdauer, insbesondere innerhalb von 3 Se­ kunden keine Daten ausgetauscht werden. Nach Abbruch des Da­ tenaustausches wird nach Programmpunkt 20 zurückverzweigt.
Fig. 4 zeigt in Abhängigkeit von der Zeit den Aufbau des Da­ tenaustausches zwischen der Ein-/Ausgabeeinheit 7 und dem Steuergerät 1. Die Ein-/Ausgabegeeinheit 7 sendet vorzugs­ weise schon vor dem Einschalten des Steuergerätes 1 das Startsignal A, das vorzugsweise ein Byte A mit einem Startbit darstellt, das dem Hexadezimaiwert FAH entspricht: Start­ bit,0,1,0,1,1,1,1,1, Schlußbit. Die Bits werden in zeitlicher Reihenfolge von links nach rechts ausgesendet. Die Zeitachse t verläuft deshalb von links nach rechts. Die Ein-/Ausgabe­ einheit 7 sendet das Startsignal A solange, bis von dem Steuergerät 1 das Antwortsignal B zurückgesendet wird. Das Antwortsignal B besteht in dem folgenden Beispiel aus einem Byte B, das dem Hexadezimalcode AAH, d. h. der Bitfolge: Startbit,0,1,0,1,0,1,0,1, Schlußbit entspricht. Das Byte B wird von dem Steuergerät 1 dadurch gebildet, daß die von der Ein-/Ausgabeeinheit 7 gesendeten rezessiven Bits(High-Pegel) vier und sechs des Startsignals A, die in Fig. 4 zwischen den Zahlen 3 und 4 bzw. 5 und 6 angeordnet sind, mit jeweils einem dominanten Bit (Low-Pegel) überschrieben werden.
Nach dem Erhalt des Antwortsignals B sendet die Ein-/Aus­ gabeeinheit 7 das Bestätigungssignal C, das aus einem Byte C besteht, das dem Hexadezimalwert 55 H entspricht, d. h. dessen Bits im Vergleich zum Antwortsignal B invertiert sind: Startbit,1,0,1,0,1,0,1,0, Schlußbit.
Die Übertragung des Startsignals A und des Bestätigungs­ signals C wird von der Ein-/Ausgabeeinheit 7 mit einer Bi­ trate von 9600 Bits pro Sekunde durchgeführt. Das Steuergerät 1 muß innerhalb des vorgegebenen Testintervalis, vorzugsweise innerhalb von 10 ms, das Startsignal A und das Bestätigungs­ signal C empfangen. Ist dies nicht der Fall, so wird vom Steuergerät 1 der Datenaustausch mit der Ein-/Ausgabeeinheit 7 abgebrochen.
In Fig. 4 sind über den Bits der einzelnen Bytes die Kennun­ gen für das Startbit 5 und für das Schlußbit 5 und die Num­ mern der Bits von 0 bis 7 angegeben.
Dadurch, daß das Steuergerät 1 bei der Erzeugung des Antwort­ signais B aus dem Startsignal A rezessive Bits in dominante Bits umwandelt, wird sichergestellt, daß die Ein-/Ausgabe­ einheit 7 das Antwortsignal B sicher erkennt, da sich die dominanten Bits gegenüber den rezessiven Bits durchsetzen. Durch dieses Verfahren wird erreicht, daß die Ein-/Ausgabe­ einheit 7 die Startsignale A hintereinander ohne Pause senden kann, da das Antwortsignal B des Steuergerätes 1 durch ein Gegenlesen des Startsignals A erhalten wird. Dadurch wird die Zeitdauer, innerhalb der die Steuereinheit 1 das Bestäti­ gungssignal C empfangen kann, vorteilhaft minimiert.
Bei einem anderen Verfahren, bei dem kein Gegenlesen und Überschreiben der rezessiven Bits erfolgt, müßte nach jedem Startsignal A eine Wartezeit für den Empfang des Antwortsi­ gnals B abgewartet werden, da eine Eindrahtleitung 12 verwen­ det wird.
Die Erfindung beschreibt ein Verfahren, das ein Steuergerät 1 mit einer Recheneinheit, insbesondere einen Speicher des Steuergerätes 1 vor einer unberechtigten Programmierung schützt. Die Berechtigung zur Programmierung des Steuergerä­ tes wird dadurch überprüft, daß innerhalb eines vorgegebenen Testintervalls ein Startsignal A von dem Steuergerät 1 emp­ fangen wird, daraufhin ein Antwortsignal B von dem Steuerge­ rät 1 abgegeben wird und anschließend ein Bestätigungssignal C empfangen wird. Ist dies nicht der Fall, so wird der Daten­ austausch zwischen dem Steuergerät 1 und der Ein-/Ausgabe­ einheit 7 abgebrochen. Zudem wird durch die Überprüfung eines Sicherheitssignals die Berechtigung zum Zugriff auf das Steuergerät, insbesondere auf den ersten Speicher überprüft, bevor Daten neu in das Steuergerät, insbesondere in den ersten Speicher 2 des Steuergerätes 1 eingeschrieben werden.

Claims (9)

1. Verfahren zum Einschreiben von Daten in einen ersten Speicher (2) eines Steuergerätes (1), das eine Schnittstelle (6) aufweist, mit folgenden Programmschritten:
  • - es wird ein Testintervall vorgegebener Zeitlänge gestartet,
  • - über die Schnittstelle (6) wird dem Steuergerät (1) ein Startsignal (A) zugeführt,
  • - vom Steuergerät (1) wird nach Erhalt des Startsignals (A) ein Antwortsignal (B) über die Schnittstelle (6) abgegeben,
  • - dem Steuergerät (2) wird über die Schnittstelle (6) ein Bestätigungssignal (C) zugeführt,
  • - vom Steuergerät (1) wird die Signalein- und die Signalausgabe über die Schnittstelle (6) abgebrochen, wenn das Bestätigungssignal (C) nicht innerhalb des Testintervalis, insbesondere innerhalb von 10 ms nach dem Start des Testintervalis, empfangen wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
  • - daß dem Steuergerät (1) ein codiertes Sicherheitssignal über die Schnittstelle (6) zugeführt wird, wenn die Signalein- und die Signalausgabe nicht abgebrochen wird,
  • - daß vom Steuergerät (1) das codierte Sicherheitssignal mit einem abgespeicherten Bezugssignal verglichen wird und vom Steuergerät (1) ein Einschreiben von Daten in den ersten Speicher (2) freigegeben wird, wenn das codierte Sicherheitssignal gleich dem Bezugssignal ist.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet,
  • - daß nach dem Vergleich des Sicherheitssignals mit dem Bezugssignal vom Steuergerät (1) eine Sperrzeit festgelegt wird, während der ein Einschreiben von Daten in den ersten Speichers (2) gesperrt ist, wenn das codierte Sicherheitssignal nicht gleich dem Bezugssignal ist.
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
  • - daß das Steuergerät (1) in einen Steuerbetrieb übergeht, in dem Steuerprogramme vom Steuergerät (1) ausgeführt werden, wenn nicht innerhalb des Testintervalis das Bestätigungssignal (C) empfangen wird, und
  • - daß während des Steuerbetriebes ein Einschreiben von Daten in den ersten Speicher (2) gesperrt ist.
5. Verfahren nach Anspruch 2, dadurch gekennzeichnet,
  • - daß das Bezugssignal in einem zweiten Speicher (3) abgelegt ist, und
  • - daß vor dem Einlesen von Daten in den ersten Speicher (2) der gesamte Inhalt des ersten Speichers (2) gelöscht wird.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet,
  • - daß im zweiten Speicher (3) ein Programmierprogramm abgelegt ist,
  • - daß von dem Programmierprogramm nach dem Erkennen eines Steuersignais das Einschreiben der Daten in den ersten Speicher (2) durchgeführt wird, und
  • - daß die Daten über die Schnittstelle (6) eingelesen werden.
7. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
  • - daß vor dem Einschreiben der Daten in den ersten Speicher (2) eine erste Kontrollsumme über die in den ersten Speicher (2) neu einzuschreibenden Daten gebildet wird,
  • - daß die erste Kontrollsumme in den ersten oder in den zweiten Speicher (2, 3) abgelegt wird,
  • - daß nach dem Einschreiben der Daten in den zweiten Speicher (2) eine zweite Kontrollsumme über die in den zweiten Speicher (2) eingeschriebenen Daten gebildet wird,
  • - daß die erste und die zweite Kontrollsumme miteinander verglichen werden, und
  • - daß das Steuergerät (1) nicht in einen Steuerbetrieb übergeht, wenn die erste und die zweite Kontrollsumme verschieden sind.
8. Verfahren nach Anspruch 7, dadurch gekennzeichnet,
  • - daß eine Fehlerkennung über die Schnittstelle (6) abgegeben wird, wenn die erste und die zweite Kontrollsumme verschieden sind.
9. Verfahren nach Anspruch 7, dadurch gekennzeichnet,
  • - daß der Inhalt des ersten Speichers (2) gelöscht wird, wenn die erste und die zweite Kontrollsumme verschieden sind.
DE1995136490 1995-09-29 1995-09-29 Verfahren zum Einschreiben von Daten in einen Speicher eines Steuergerätes Expired - Fee Related DE19536490C2 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE1995136490 DE19536490C2 (de) 1995-09-29 1995-09-29 Verfahren zum Einschreiben von Daten in einen Speicher eines Steuergerätes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1995136490 DE19536490C2 (de) 1995-09-29 1995-09-29 Verfahren zum Einschreiben von Daten in einen Speicher eines Steuergerätes

Publications (2)

Publication Number Publication Date
DE19536490A1 true DE19536490A1 (de) 1997-04-03
DE19536490C2 DE19536490C2 (de) 1999-01-21

Family

ID=7773688

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1995136490 Expired - Fee Related DE19536490C2 (de) 1995-09-29 1995-09-29 Verfahren zum Einschreiben von Daten in einen Speicher eines Steuergerätes

Country Status (1)

Country Link
DE (1) DE19536490C2 (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10130493A1 (de) * 2001-06-25 2003-01-30 Brueninghaus Hydromatik Gmbh Verfahren zur Freigabe eines Zugriffs auf ein elektronisches Steuergerät
US8074118B2 (en) 2009-01-28 2011-12-06 Dspace Digital Signal Processing And Control Engineering Gmbh Method for influencing a control unit and manipulation unit
US8166344B2 (en) 2009-01-28 2012-04-24 Dspace Digital Signal Processing And Control Engineering Gmbh Method for controlling an operating mechanism and a manipulation unit
US8171341B2 (en) 2009-01-28 2012-05-01 Dspace Digital Signal Processing And Control Engineering Gmbh Method for controlling an operating mechanism and a manipulation unit

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19955545A1 (de) * 1999-11-18 2001-05-23 Volkswagen Ag Steuersystem für ein Kraftfahrzeug
CN105159287A (zh) * 2015-10-12 2015-12-16 重庆凯瑞电动汽车系统有限公司 一种电动汽车整车控制器测试装置、系统及使用方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3408904A1 (de) * 1984-03-10 1985-09-12 Philips Kommunikations Industrie AG, 8500 Nürnberg Schaltungsanordnung zur abwehr des unberechtigten zugangs zu einem durch teilnehmerindividuelle passworte gesicherten kommunikationssystem
DE4013727A1 (de) * 1990-04-28 1991-10-31 Bayerische Motoren Werke Ag Steuervorrichtung fuer technische anlagen und maschinen (i)

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3408904A1 (de) * 1984-03-10 1985-09-12 Philips Kommunikations Industrie AG, 8500 Nürnberg Schaltungsanordnung zur abwehr des unberechtigten zugangs zu einem durch teilnehmerindividuelle passworte gesicherten kommunikationssystem
DE4013727A1 (de) * 1990-04-28 1991-10-31 Bayerische Motoren Werke Ag Steuervorrichtung fuer technische anlagen und maschinen (i)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10130493A1 (de) * 2001-06-25 2003-01-30 Brueninghaus Hydromatik Gmbh Verfahren zur Freigabe eines Zugriffs auf ein elektronisches Steuergerät
DE10130493B4 (de) * 2001-06-25 2006-11-09 Brueninghaus Hydromatik Gmbh Verfahren zur Freigabe eines Zugriffs auf ein elektronisches Steuergerät
US8074118B2 (en) 2009-01-28 2011-12-06 Dspace Digital Signal Processing And Control Engineering Gmbh Method for influencing a control unit and manipulation unit
US8166344B2 (en) 2009-01-28 2012-04-24 Dspace Digital Signal Processing And Control Engineering Gmbh Method for controlling an operating mechanism and a manipulation unit
US8171341B2 (en) 2009-01-28 2012-05-01 Dspace Digital Signal Processing And Control Engineering Gmbh Method for controlling an operating mechanism and a manipulation unit

Also Published As

Publication number Publication date
DE19536490C2 (de) 1999-01-21

Similar Documents

Publication Publication Date Title
DE60119412T2 (de) Speicherüberschreibungssystem für eine Fahrzeugsteuereinrichtung
EP0721644B1 (de) Verfahren zur vollständigen neuprogrammierung eines löschbaren, nichtflüchtigen speichers
DE4440127B4 (de) Steuergerät
EP0725743B1 (de) Fahrzeugsicherungsanordnung
DE10131395B4 (de) Verfahren zum Übertragen von Software- Modulen
EP0225971A2 (de) Diagnosesystem für ein Kraftfahrzeug
DE69926937T2 (de) Elektronische Steuerungsvorrichtung und Verfahren mit Rückschreibprogrammierfunktion
DE19546775A1 (de) Datenverarbeitungsgerät für Fahrzeug
EP1000824B1 (de) Fahrzeugsicherungsanordnung
DE19921845A1 (de) Diagnosetestvorrichtung für Kraftfahrzeuge mit programmierbaren Steuergeräten
DE4100151C2 (de)
EP1012003B1 (de) Verfahren und vorrichtung zur steuerung der datenübertragung zwischen zwei in einem kraftfahrzeug vorhandenen modulen
DE19839680B4 (de) Verfahren und Vorrichtung zur Veränderung des Speicherinhalts von Steuergeräten
EP0455174A2 (de) Steuervorrichtung für technische Anlagen und Maschinen insbesondere für Brennkraftmaschinen von Kraftfahrzeugen
EP0997347A2 (de) Verfahren und Einrichtung zur Programmierung eines Steuergerätes, insbesondere eines Kraftfahrzeuges
DE19536490C2 (de) Verfahren zum Einschreiben von Daten in einen Speicher eines Steuergerätes
DE19963208A1 (de) Verfahren zum Manipulationsnachweis einer programmierbaren Speichereinrichtung eines digitalen Steuergeräts
DE10142646B4 (de) Technik zur Datenauffrischung für ein Fahrzeug
DE102008047433A1 (de) Verfahren zum Freischalten von Funktionen eines Tachographen
EP0693726A1 (de) Datenübertragungsverfahren in einem Echtzeitdatenverarbeitungssystem
EP0662884B1 (de) Sicherheitseinrichtung
EP1003106A2 (de) Anordnung zur Anpassung von Betriebsdaten und/oder Betriebsprogrammen
EP0830273B1 (de) Wegfahrsperre
EP0664387A1 (de) Verfahren zum Ändern der Arbeitsweise eines Steuergeräts von Kraftfahrzeugen
DE102021201444A1 (de) Verfahren und Vorrichtung zum Überprüfen einer eingehenden, abgesicherten, verschlüsselten Botschaft

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: SIEMENS AG, 80333 MUENCHEN, DE DAIMLER-BENZ AKTIEN

D2 Grant after examination
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: SIEMENS AG, 80333 MUENCHEN, DE DAIMLERCHRYSLER AG,

8327 Change in the person/name/address of the patent owner

Owner name: SIEMENS AG, 80333 MUENCHEN, DE

8327 Change in the person/name/address of the patent owner

Owner name: CONTINENTAL AUTOMOTIVE GMBH, 30165 HANNOVER, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20140401