DE19536490C2 - Verfahren zum Einschreiben von Daten in einen Speicher eines Steuergerätes - Google Patents

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

Info

Publication number
DE19536490C2
DE19536490C2 DE1995136490 DE19536490A DE19536490C2 DE 19536490 C2 DE19536490 C2 DE 19536490C2 DE 1995136490 DE1995136490 DE 1995136490 DE 19536490 A DE19536490 A DE 19536490A DE 19536490 C2 DE19536490 C2 DE 19536490C2
Authority
DE
Germany
Prior art keywords
memory
signal
control unit
data
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.)
Expired - Fee Related
Application number
DE1995136490
Other languages
English (en)
Other versions
DE19536490A1 (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
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, 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)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Storage Device Security (AREA)

Description

Verfahren zum Einschreiben von Daten in einen Speicher eines Steuergerätes.
Die Erfindung betrifft ein Verfahren zum Einschreiben von Da­ ten in den Speicher eines Steuergerätes. Entsprechende Steu­ ergeräte mit Speicher werden z. B. in einem Kraftfahrzeug zur Steuerung von verschiedenen Funktionen wie z. B. Antiblockier­ system (ABS), Airbag, Benzineinspritzung und Zündeinstellung 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.
Aus der DE 40 13 727 A1 ist ein Steuergerät für Brennkraftma­ schinen mit einem Mikroprozessor, einem Festspeicher und ei­ nem extern programmierbaren Speicher bekannt, in der vor dem Beschreiben des programmierbaren Speichers eine Zugangsrouti­ ne abläuft, bei der ein externes Programmiergerät einen Fra­ gebefehl aussendet, auf den das Steuergerät eine Antwort zu­ rücksendet. Das externe Programmiergerät wandelt die Antwort in ein von der Antwort abhängiges Zugangssignal um, das es an das Steuergerät sendet. Anhand des Vergleichs von Antwort und Zugangssignal entscheidet das Steuergerät über die Zugangsbe­ rechtigung des externen Programmiergerätes. Die Zugangsrouti­ ne muß innerhalb einer vorgegebenen Dialogzeit abgeschlossen sein.
Aus der DE 34 08 904 A1 ist eine Schaltungsanordnung zur Ab­ wehr eines unberechtigten Zugangs zu einem durch teilnehme­ rindividuelle Paßworte gesicherten Kommunikationssystems be­ kannt, wobei ein empfangenes Paßwort mit einem in einem Spei­ cher enthaltenen Paßwort verglichen wird. Bei Nichtüberein­ stimmung des empfangenen mit dem gespeicherten Paßwort wird eine Verzögerungsschaltung aktiviert, die für einen vorgege­ benen Blockierzeitraum die Auswertung weiterer Paßworte bloc­ kiert. Nach Ablauf des Blockierzeitraums ist das System be­ reit zum Empfang weiterer Paßworte.
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 Abfrage 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 Progammierung 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 beschreibaren 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 E2PROM 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 Hexadezimalwert 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 Testintervalls, 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 s und die Num­ mern der Bits von 0 bis 7 angegeben.
Dadurch, daß das Steuergerät 1 bei der Erzeugung des Antwort­ signals 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 (6)

1. Verfahren zum Einschreiben von Daten in einen ersten Spei­ cher (2) eines Steuergerätes (1), das eine Schnittstelle (6) aufweist, mit folgenden Programmschritten:
  • 1. es wird ein Testintervall vorgegebener Zeitlänge gestartet,
  • 2. über die Schnittstelle (6) wird dem Steuergerät (1) ein Startsignal (A) zugeführt,
  • 3. vom Steuergerät (1) wird nach Erhalt des Startsignals (A) ein Antwortsignal (B) über die Schnittstelle (6) abgegeben,
  • 4. dem Steuergerät (1) wird über die Schnittstelle (6) ein Be­ stätigungssignal (C) zugeführt,
  • 5. vom Steuergerät (1) wird die Signalein- und die Signalaus­ gabe über die Schnittstelle (6) abgebrochen, wenn das Be­ stätigungssignal (C) nicht innerhalb des Testintervalls, insbesondere innerhalb von 10 ms nach dem Start des Testin­ tervalls, empfangen wird,
  • 6. dem Steuergerät (1) wird ein codiertes Sicherheitssignal über die Schnittstelle (6) zugeführt, wenn die Signalein- und die Signalausgabe nicht abgebrochen wird,
  • 7. vom Steuergerät (1) wird das codierte Sicherheitssignal mit einem abgespeicherten Bezugssignal verglichen und ein Ein­ schreiben von Daten in den ersten Speicher (2) freigegeben, wenn das codierte Sicherheitssignal gleich dem Bezugssignal ist,
  • 8. vom Steuergerät (1) wird nach dem Vergleich des Sicher­ heitssignals mit dem Bezugssignal eine Sperrzeit festge­ legt, wenn das codierte Sicherheitssignal nicht gleich dem Bezugssignal ist, wobei während der Sperrzeit ein Ein­ schreiben von Daten in den ersten Speicher (2) gesperrt ist, wobei
  • 9. das Bezugssignal in einem zweiten Speicher (3) abgelegt ist, und
  • 10. vor dem Einschreiben von Daten in den ersten Speicher (2) der gesamte Inhalt des ersten Speichers (2) gelöscht wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
  • 1. daß das Steuergerät (1) in einen Steuerbetrieb übergeht, in dem Steuerprogramme vom Steuergerät (1) ausgeführt werden, wenn nicht innerhalb des Testintervalls das Bestätigungs­ signal (C) empfangen wird, und
  • 2. daß während des Steuerbetriebes ein Einschreiben von Daten in den ersten Speicher (2) gesperrt ist.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
  • 1. daß im zweiten Speicher (3) ein Programmierprogramm abge­ legt ist,
  • 2. daß von dem Programmierprogramm nach dem Erkennen eines Steuersignals das Einschreiben der Daten in den ersten Speicher (2) durchgeführt wird, und
  • 3. daß die Daten über die Schnittstelle (6) eingelesen werden.
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
  • 1. daß vor dem Einschreiben der Daten in den ersten Speicher (2) eine erste Kontrollsumme über die in den ersten Spei­ cher (2) neu einzuschreibenden Daten gebildet wird,
  • 2. daß die erste Kontrollsumme in den ersten oder in den zweiten Speicher (2, 3) abgelegt wird,
  • 3. daß nach dem Einschreiben der Daten in den zweiten Speicher (2) eine zweite Kontrollsumme über die in den zweiten Spei­ cher (2) eingeschriebenen Daten gebildet wird,
  • 4. daß die erste und die zweite Kontrollsumme miteinander ver­ glichen werden, und
  • 5. daß das Steuergerät (1) nicht in einen Steuerbetrieb über­ geht, wenn die erste und die zweite Kontrollsumme ver­ schieden sind.
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet,
  • 1. daß eine Fehlerkennung über die Schnittstelle (6) abgegeben wird, wenn die erste und die zweite Kontrollsumme verschie­ den sind.
6. Verfahren nach Anspruch 4, dadurch gekennzeichnet,
  • 1. 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 DE19536490A1 (de) 1997-04-03
DE19536490C2 true 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 (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 重庆凯瑞电动汽车系统有限公司 一种电动汽车整车控制器测试装置、系统及使用方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
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
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

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 (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 重庆凯瑞电动汽车系统有限公司 一种电动汽车整车控制器测试装置、系统及使用方法

Also Published As

Publication number Publication date
DE19536490A1 (de) 1997-04-03

Similar Documents

Publication Publication Date Title
DE60119412T2 (de) Speicherüberschreibungssystem für eine Fahrzeugsteuereinrichtung
EP0905626B1 (de) Verfahren zur Initialisierung eines an einen Diagnose-Bus angeschlossenen Steuergeräts
EP0360826B1 (de) Vorrichtung zur steuerung von technischen anlagen und maschinen
DE10131395B4 (de) Verfahren zum Übertragen von Software- Modulen
EP0725743B1 (de) Fahrzeugsicherungsanordnung
EP0225971A2 (de) Diagnosesystem für ein Kraftfahrzeug
WO1995008824A1 (de) Verfahren zur vollständigen neuprogrammierung eines löschbaren, nichtflüchtigen speichers
DE2732471A1 (de) Elektronisches motorsteuersystem
DE19546775A1 (de) Datenverarbeitungsgerät für Fahrzeug
EP1000824B1 (de) Fahrzeugsicherungsanordnung
DE4440127A1 (de) Steuergerät
DE4100151C2 (de)
DE102006028695A1 (de) Elektronisches Steuersystem mit Fehlfunktionsüberwachung
DE102004042002A1 (de) Verbesserte Reparaturverifikation für elektronische Fahrzeugsysteme
DE4013727A1 (de) Steuervorrichtung fuer technische anlagen und maschinen (i)
DE19536490C2 (de) Verfahren zum Einschreiben von Daten in einen Speicher eines Steuergerätes
DE19963208B4 (de) Verfahren zum Manipulationsnachweis einer programmierbaren Speichereinrichtung eines digitalen Steuergeräts
DE102008047433A1 (de) Verfahren zum Freischalten von Funktionen eines Tachographen
DE10002203B4 (de) Verfahren zum Schutz eines Mikrorechner-Systems gegen Manipulation von in einer Speicheranordnung des Mikrorechner-Systems gespeicherten Daten
DE4107558A1 (de) Verfahren und vorrichtung zum schutz der daten eines rom
EP0693726A1 (de) Datenübertragungsverfahren in einem Echtzeitdatenverarbeitungssystem
EP0662884B1 (de) Sicherheitseinrichtung
EP0553472B1 (de) Verfahren und Vorrichtung zum Prüfen einer Einrichtung, die wenigstens einen Mikrorechner enthält
EP0830273B1 (de) Wegfahrsperre
DE10238094B4 (de) Verfahren zum Schutz gegen Manipulationen in einem Steuergerät für mindestens eine Kfz-Komponente und Steuergerät

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