DE19623145A1 - Verfahren zum Betreiben eines Steuergerätes mit einer über eine Programmiervorrichtung programmierbaren Speichereinrichtung - Google Patents
Verfahren zum Betreiben eines Steuergerätes mit einer über eine Programmiervorrichtung programmierbaren SpeichereinrichtungInfo
- Publication number
- DE19623145A1 DE19623145A1 DE1996123145 DE19623145A DE19623145A1 DE 19623145 A1 DE19623145 A1 DE 19623145A1 DE 1996123145 DE1996123145 DE 1996123145 DE 19623145 A DE19623145 A DE 19623145A DE 19623145 A1 DE19623145 A1 DE 19623145A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- data processing
- processing program
- program section
- overwriting
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/572—Secure firmware programming, e.g. of basic input output system [BIOS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/79—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
- B60R16/02—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
- B60R16/03—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for supply of electrical power to vehicle subsystems or for
- B60R16/0315—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for supply of electrical power to vehicle subsystems or for using multiplexing techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2105—Dual mode as a secondary aspect
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2143—Clearing memory, e.g. to prevent the data from being stolen
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
- Read Only Memory (AREA)
- Stored Programmes (AREA)
Description
Die vorliegende Erfindung betrifft ein Verfahren gemäß dem
Oberbegriff des Patentanspruchs 1, d. h. ein Verfahren zum
Betreiben eines Steuergerätes mit einer über eine Program
miervorrichtung programmierbaren Speichereinrichtung, wobei
das Löschen und das Überschreiben des Inhalts der Speicher
einrichtung jeweils unter Ausführung eines Datenverarbei
tungsprogrammabschnittes und unter Verwendung von Daten
durchgeführt wird.
Ein derartiges Verfahren ist beispielsweise in der DE 43 32 499 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. 3 näher beschrieben wird.
Das Kraftfahrzeugsteuergerät ist in der Fig. 3 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 Speicher 14 in Form
eines Flash-EPROM, einen Schreib-/Lesespeicher 15, einen
Nur-Lese-Speicher 16 und eine serielle Schnittstelle 21.
Das Kraftfahrzeugsteuergerät 10 erhält über die Ein-/Ausgabe
schaltkreise 12 Eingangssignale von Sensoren wie einem Dros
selklappenpotentiometer 17, einem Drehzahlfühler 23 und wei
teren Sensoren 18. Die weiteren Sensoren, auf welche hier
nicht näher eingegangen werden soll, sind je nach Kraftfahr
zeugsteuergerä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.
Der genaue Aufbau des Kraftfahrzeugsteuergerätes 10 kann der
Druckschrift Bosch - Technische Unterrichtung, kombiniertes
Zünd- und Benzineinspritzsystem Motronic, Robert Bosch GmbH,
1983 entnommen werden und bedarf hier deshalb keiner näheren
Erläuterung.
Die genannten Speichereinrichtungen 14, 15 und 16 sind der
Zentraleinheit 13 zugeordnet und dienen zur Speicherung von
Programmen und Daten für die Zentraleinheit 13.
Die Verwendung von elektrisch lösch- und programmierbaren
nichtflüchtigen Speichereinrichtungen wie der Speicherein
richtung 14 erweist sich bei einem Kraftfahrzeugsteuergerät
als vorteilhaft, weil diese sich jederzeit umprogrammieren
lassen, was insbesondere bei später entdeckten Fehlern oder
individuellen Kundenwünschen von nicht unerheblicher Bedeu
tung 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-Her
stellungsbetrieb) oder zur späteren Umprogrammierung der
selben (beim Kundendienst zur Fehlerbeseitigung oder entspre
chend individuellen Kundenwünschen) wird ein externes Pro
grammiergerät 20, beispielsweise in Form eines Personal Com
puter an das Steuergerät 10 angeschlossen.
Der Anschluß erfolgt beispielsweise über eine serielle
Schnittstellenleitung 22 und die bereits erwähnte serielle
Schnittstelle 21.
Durch das externe Programmiergerät 20 ist das Steuergerät 10
bei Bedarf zur Ausführung von Datenverarbeitungsprogrammab
schnitten zum Löschen bzw. Überschreiben von Daten im
Flash-EPROM veranlaßbar, wobei gegebenenfalls auch die (neu) einzu
speichernden Daten zur Verfügung gestellt werden.
Das Steuergerät 10 selbst kann die Ausführung der genannten
Datenverarbeitungsprogrammabschnitte im Normalfall nicht von
sich aus, also nicht ohne externen Anstoß veranlassen. D.h.,
in den während des Fahrbetriebes im Steuergerät ausgeführten
oder auszuführenden Anwenderprogrammen ist kein Einsprung in
die genannten Datenverarbeitungsprogrammabschnitte vorgese
hen. Der Grund für diese Maßnahme liegt unter anderem darin,
daß ein unbeabsichtigtes oder ein unbefugtes Löschen und/oder
Überschreiben des Flash-EPROM verhindert werden soll.
Eine weitere Maßnahme zum Schutz vor unbeabsichtigten Spei
cherinhaltsveränderungen und vor Manipulationen durch hierzu
nicht Berechtigte besteht darin, daß dem eigentlichen Löschen
und/oder Überschreiben von Inhalten des Flash-EPROM eine Be
rechtigungskontrolle (durch Überprüfen eines eingegebenen
Paßwortes oder dergleichen) vorausgeht.
Durch die genannten Schutzvorkehrungen sind ein unbeabsich
tigtes oder unbefugtes Löschen und/oder Überschreiben des
Flash-EPROM weitestgehend verhinderbar. Allerdings ist es bei
einer unglücklichen Verkettung gewisser Umstände nicht voll
ständig ausschließbar, daß diese Schutzmaßnahmen vereinzelt
nicht wirksam sind.
Verantwortlich hierfür sind vor allem EMV-Einstrahlungen ins
Steuergerät, aber auch gezielte Manipulationen des Adreßzei
gers oder des Adreßbusses durch unbefugte Dritte.
Die Folge hiervon ist, daß - obgleich dies nicht vorgesehen
ist - unter ungünstigen Bedingungen zumindest theoretisch
auch ohne bestimmungsgemäße Veranlassung durch das Program
miergerät ein Einsprung in einen Datenverarbeitungsprogramm
abschnitt erfolgen kann, durch dessen Ausführung im
Flash-EPROM des Steuergerätes gespeicherte Daten gelöscht und/oder
überschrieben werden können.
Sofern ein Einsprung an den Anfang einer derartigen Routine
erfolgt, kann ein drohender Schaden durch Abfrage eines Paß
wortes oder dergleichen und gegebenenfalls Verlassen der Rou
tine abgewendet werden. Falls der Einsprung jedoch an eine
Stelle weiter hinten im Programm erfolgt, ist dieser Schutz
mechanismus unwirksam, so daß ein nicht bestimmungsgemäßes
Löschen und/oder Überschreiben von in einer programmierbaren
Speichereinrichtung gespeicherten Daten hierdurch nicht zu
verlässig ausgeschlossen werden kann.
Zur Abhilfe hiergegen sind an den Flash-EPROMs zum Teil Pro
grammierspannungseingänge vorgesehen, an welche eine vorbe
stimmte Programmierspannung anzulegen ist, wenn ein Löschen
oder Beschreiben der Speichereinrichtung durchgeführt werden
soll. Ein derartiger Schutzmechanismus erfordert jedoch einen
zusätzlichen Hardwareaufwand, der aufgrund der Tatsache, daß
die vorbestimmte Programmierspannung relativ genau eingehal
ten werden muß, nicht unerhebliche Ausmaße annehmen kann, was
seinerseits wiederum auch negative Auswirkungen auf die Zu
verlässigkeit bzw. Fehleranfälligkeit des Schutzmechanismus
selbst haben kann.
Der vorliegenden Erfindung liegt daher die Aufgabe zugrunde,
das Verfahren gemäß dem Oberbegriff des Patentanspruchs 1
derart weiterzubilden, daß ein nicht bestimmungsgemäßes Lö
schen und/oder Überschreiben von in einer programmierbaren
Speichereinrichtung gespeicherten Daten auf einfache Weise
zuverlässig ausschließbar ist.
Diese Aufgabe wird erfindungsgemäß durch die im kennzeichnen
den Teil des Patentanspruchs 1 beanspruchten Merkmale gelöst.
Demnach ist vorgesehen, daß wenigstens entweder der Datenver
arbeitungsprogrammabschnitt oder die (vom Datenverarbeitungs
programmabschnitt verwendeten) Daten derart bereitgestellt
werden, daß sie vor deren Verwendbarkeit zur Herbeiführung
eines Löschens oder eines Überschreibens einer Modifikation
bedürfen, und daß diese Modifikation erst durchgeführt wird,
wenn festgestellt wird, daß ein Einsprung in den Datenverar
beitungsprogrammabschnitt bestimmungsgemäß erfolgt ist oder
erfolgen wird oder erfolgen kann.
Ein Einsprung in einen Datenverarbeitungsprogrammabschnitt
zum Löschen und/oder Überschreiben des Inhalts der program
mierbaren Speichervorrichtung kann mithin nur dann zu einem
Löschen und/oder Überschreiben führen, wenn aufgrund der Be
gleitumstände zumindest mit hoher Wahrscheinlichkeit davon
ausgegangen werden kann oder konnte, daß die Lösch- und/oder
Überschreibroutine nicht versehentlich oder mißbräuchlich
aufgerufen wurde, wird oder werden wird.
Die Durchführung einer derartigen Überprüfung und der in Ab
hängigkeit hiervon erforderlichen Code- und/oder Datenmodifi
kation ist relativ einfach durchführbar. Bei geeigneter Aus
wahl der Umstände, anhand derer festgestellt wird, ob ein
Einsprung in den Datenverarbeitungsprogrammabschnitt bestim
mungsgemäß erfolgt ist oder erfolgen wird oder erfolgen kann
(beispielsweise bei einer Entscheidung in Abhängigkeit davon,
ob ein externes Programmiergerät oder dergleichen angeschlos
sen und/oder aktiviert ist), ist der erfindungsgemäße Schutz
mechanismus auch äußerst zuverlässig, also kaum zu umgehen.
Es wurde mithin ein Verfahren geschaffen, durch welches ein
nicht bestimmungsgemäßes Löschen und/oder Überschreiben von
in einer programmierbaren Speichereinrichtung gespeicherten
Daten auf einfache Weise zuverlässig ausschließbar ist.
Der Ausschluß des nicht bestimmungsgemäßen Löschens sichert
nicht nur die gespeicherten Daten vor einer ungewollten oder
unbefugten Veränderung, sondern trägt auch erheblich zur Be
triebssicherheit des Steuergerätes bei, denn ein Sprung aus
einem während des Fahrbetriebs ausgeführten Anwenderprogramm
in einen Datenverarbeitungsprogrammabschnitt zum Löschen
und/oder Überschreiben des Flash-EPROM könnte insbesondere
bei einem zu diesem Zeitpunkt fahrenden Kraftfahrzeug erheb
liche Sicherheitsrisiken mit sich bringen.
Vorteilhafte Weiterbildungen der Erfindung sind Gegenstand
der Unteransprüche.
Die Erfindung wird nachfolgend anhand eines Ausführungsbei
spiels näher erläutert. Es zeigen
Fig. 1 einen prinzipiellen Ablaufplan des erfindungsgemäßen
Verfahrensabschnittes,
Fig. 2A bis 2D Ablaufpläne, die ein bestimmungsgemäßes
Löschen eines Flash-EPROM veranschaulichen, und
Fig. 3 eine Anordnung, die ein vor einem nicht bestimmungs
gemäßen Löschen und/oder Überschreiben zu schützendes
Flash-EPROM enthält.
Die nachstehenden Erläuterungen beziehen sich auf ein Verfah
ren zum Betreiben eines Steuergerätes zur Steuerung bei
spielsweise des Motors, des Getriebes der Bremsen etc. eines
Kraftfahrzeuges, also eines Kraftfahrzeugsteuergerätes.
Das betrachtete Kraftfahrzeugsteuergerät enthält programmier
bare Speichereinrichtungen, genauer gesagt elektrisch lösch- und
programmierbare (nichtflüchtige) Speichereinrichtungen in
Form von Flash-EPROMs. Die Programmierung dieser Flash-EPROMs
erfolgt über ein externes Programmiergerät, das beispielswei
se über eine serielle Schnittstelle mit dem Kraft fahrzeug
steuergerät verbindbar ist.
Eine mögliche Ausführungsform einer ein derartiges Kraftfahr
zeugsteuergerät enthaltenden Anordnung ist die in der Fig. 3
gezeigte Anordnung, auf deren eingangs bereits erfolgte aus
führliche Beschreibung hiermit ausdrücklich Bezug genommen
wird.
Die vorliegende Erfindung ist jedoch nicht auf die Program
mierung von Flash-EPROMs in Kraftfahrzeugsteuergeräten unter
Verwendung eines externen Programmiergerätes beschränkt. Sie
ist vielmehr überall dort anwendbar, wo es ganz allgemein
darum geht, eine Speichereinrichtung eines Steuergerätes
durch eine Programmiervorrichtung zu programmieren.
Das Programmieren, genauer gesagt das Löschen und das Überschreiben
des Inhalts des Flash-EPROMs wird jeweils unter
Ausführung eines Datenverarbeitungsprogrammabschnittes im
Steuergerät und unter Verwendung von (für die ordnungsgemäße
Ausführung des Datenverarbeitungsprogrammabschnittes benötig
ten) Daten durchgeführt.
Die jeweiligen Datenverarbeitungsprogrammabschnitte sind ge
mäß einem ersten Aspekt der Erfindung jedoch nicht einfach
durch einen Aufruf oder einen Einsprung in dieselben aus führ
bar, sondern liegen vorteilhafter Weise zunächst in einer
Form vor, in der ein Löschen und/oder ein Überschreiben von
Daten im Flash-EPROM noch nicht bewerkstelligbar ist.
Diese Nicht-Ausführbarkeit kann auf verschiedenste Art und
Weise erreicht werden.
Eine der Möglichkeiten hierfür besteht darin, daß der die je
weiligen Datenverarbeitungsprogrammabschnitte repräsentieren
de Code zumindest teilweise derart verschlüsselt oder in son
stiger Weise manipuliert ist, daß er ohne eine entsprechende
Modifikation ein zumindest nicht vollständig und/oder nicht
ordnungsgemäß ausführbares Programm darstellt.
Eine weitere Möglichkeit besteht darin, daß in den Code an
strategisch günstigen Stellen Befehle eingebaut sind, durch
die die Ausführung von Befehlen, welche letztlich das Löschen
und/oder Überschreiben von Daten im Flash-EPROM bewirken sol
len, unterbunden wird. Dies können beispielsweise Sprung
anweisungen sein, die ein Verlassen des betreffenden Daten
verarbeitungsprogrammabschnittes oder ein Überspringen der
kritischen Anweisungen bewirken, und die vor einer ordnungs
gemäßen Programmausführung durch eine entsprechende Modifika
tion des Programmcodes zu entfernen oder wenigstens unwirksam
zu machen sind.
Gemäß einem zweiten Aspekt der Erfindung können alternativ
oder zusätzlich hierzu Daten, von deren Inhalt das Löschen
und/oder Überschreiben des Inhalts des Flash-EPROMs abhängig
machbar ist, auf (nicht plausible) Werte gesetzt sein, die
das Löschen und/oder Überschreiben des Flash-EPROM verhin
dern.
Bei den genannten Daten kann es sich beispielsweise um die
jenigen Daten und Adressenwerte handeln, die zumindest bei
einigen Flash-EPROMs vor dem eigentlichen Löschen und/oder
Überschreiben in Form sogenannter Entriegelungszyklen (unlock
cycles) über den Bus zum Flash-EPROM gegeben werden müssen.
Während der besagten unlock cycles müssen bestimmte Daten in
einer bestimmten Reihenfolge an bestimmte Adressen des
Flash-EPROM geschrieben werden, um das Flash-EPROM zum Zwecke des
Datenlöschens und/oder -überschreibens aufzusperren bzw. zu
entriegeln. Scheitert der Versuch, das Flash-EPROM zu entrie
geln, so bleibt es für ein Löschen und/oder Überschreiben ge
sperrt.
Sorgt man nun dafür, daß durch die in den unlock cycles aus
gegebenen Adressen und Daten nicht automatisch, sondern nur
unter ganz bestimmten Umständen, nämlich nur bei bestimmungs
gemäß veranlaßtem Löschen und/oder Überschreiben des
Flash-EPROM eine Entriegelung des Flash-EPROM bewirkbar ist, so
steht ein weiterer Schutzmechanismus zur Verfügung, durch
welchen ein nicht bestimmungsgemäßes Löschen und/oder Über
schreiben des Flash-EPROM verhinderbar ist.
Zur Vermeidung der automatischen Entriegelbarkeit des
Flash-EPROM kann vorgesehen werden, daß der Datenverarbeitungspro
grammabschnitt die während der unlock cycles zum Flash-EPROM
auszugebenden Daten und/oder Adressen nicht wie bisher üblich
im Programmcode integriert hat, sondern aus einem vorzugs
weise flüchtigen Speicher (RAM) holen muß, wobei der
Speicherbereich (die Variablentabelle), aus dem sich die je
weiligen Datenverarbeitungsprogrammabschnitte die Daten
und/oder Adressen zur Ausgabe der unlock cycles holen, nicht
automatisch mit Werten beschrieben ist, deren Verwendung das
Flash-EPROM entriegelt.
In einer praktischen Realisierung dieses Schutzmechanismus
kann vorgesehen werden, die eine Entriegelung des Flash-EPROM
ermöglichenden Daten erst dann in die genannte Variablen
tabelle einzuschreiben, wenn feststeht, daß eine bestimmungs
gemäß zustande gekommene (beispielsweise durch das Program
miergerät veranlaßte) Anforderung zum Löschen oder über
schreiben des Flash-EPROM vorliegt oder folgen wird oder fol
gen kann, und daß die genannten Daten in der Variablentabelle
unmittelbar nach dem Lösch- bzw. Überschreibvorgang im
Flash-EPROM wieder gelöscht oder durch eine Entriegelung des
Flash-EPROM ausschließende Daten ersetzt werden. Ein Löschen der
Daten in der Variablentabelle bzw. ein überschreiben dersel
ben durch eine Entriegelung des Flash-EPROM ausschließende
Daten ist unter anderem auch nach dem Einschalten oder nach
einem Rücksetzen des Steuergerätes angezeigt, um eine zufäl
lige Entriegelbarkeit des Flash-EPROM zuverlässig verhindern
zu können.
Bei Vorsehen von Schutzmechanismen gemäß dem ersten und/oder
zweiten Aspekt der vorliegenden Erfindung, d. h. bei Vorsehen
von die ordnungsgemäße Ausführbarkeit der jeweiligen Daten
verarbeitungsprogrammabschnitte zum Löschen und/oder Über
schreiben des Flash-EPROM Einfluß nehmenden Schutzmechanismen
hat ein Einsprung in die entsprechenden Datenverarbeitungs
programmabschnitte nicht automatisch ein Löschen und/oder
Überschreiben von Daten im Flash-EPROM zur Folge. Vielmehr
ist auf diese Weise ein Löschen und/oder Überschreiben von
Daten im Flash-EPROM grundsätzlich zunächst einmal ausge
schlossen.
Falls ein bestimmungsgemäßes Löschen und/oder Überschreiben
von Daten im Flash-EPROM durchgeführt werden soll, bedarf es,
wie bereits angedeutet wurde, einer Modifikation des jeweili
gen Datenverarbeitungsprogrammabschnittes und/oder der die
Daten für die unlock cycles enthaltenden Variablentabelle im
Steuergerät.
Dieser Vorgang ist in der Fig. 1 veranschaulicht.
Gemäß der Darstellung in der Fig. 1 wird in einem ersten
Schritt S1 zunächst überprüft, ob ein Einsprung in einen
Datenverarbeitungsprogrammabschnitt zum Löschen und/oder Über
schreiben von Daten eines Flash-EPROM bestimmungsgemäß, d. h.
zumindest nicht offensichtlich versehentlich oder mißbräuch
lich erfolgt ist, erfolgen wird oder erfolgen kann. Die Über
prüfung konzentriert sich dabei vorzugsweise auf solche Kri
terien, deren Vorliegen allein oder in Kombination mit ande
ren Bedingungen das Einleiten einer Programmierung des
Flash-EPROM nicht nur möglich erscheinen lassen (nicht ausschlie
ßen), sondern aus denen sich auch mit einer gewissen Zuver
lässigkeit folgern läßt, daß die Programmierung des
Flash-EPROM tatsächlich eingeleitet bzw. veranlaßt wurde oder wer
den wird.
Für den Fall, daß zur Programmierung des Flash-EPROM wie im
vorliegenden Ausführungsbeispiel ein externes Programmier-
oder Testgerät an das Steuergerät angeschlossen werden muß,
kann im Feststellungsschritt S1 unter anderem beispielsweise
überprüft werden,
- - ob ein entsprechendes externes Programmiergerät angeschlos sen ist, und/oder
- - ob das Programmiergerät aktiviert (eingeschaltet) ist, und/oder
- - ob sich das Programmiergerät in einer Programmierbetriebs art befindet, und/oder
- - ob eine bestimmungsgemäße Kommunikation zwischen Steuer gerät und Programmiergerät stattfindet oder stattgefunden hat.
Die Durchführung einer oder mehrerer der genannten oder ähn
licher Überprüfungen ermöglicht eine sehr sichere Aussage
darüber, ob ein Einsprung in die Programmierroutine zum Pro
grammieren des Flash-EPROM bestimmungsgemäß veranlaßt wurde
oder veranlaßt werden wird.
Die in diesem Zusammenhang im einzelnen durchzuführenden
Überprüfungen hängen von den jeweiligen individuellen Gege
benheiten ab. Denkbar wären in diesem Zusammenhang insbeson
dere (aber nicht ausschließlich) Abfragen von entsprechenden
Statusinformationen des Steuergerätes und gegebenenfalls von
daran angeschlossenen externen Geräten und/oder die Abfrage
von Kennungen, die bei Eintreten gewisser Ereignisse gesetzt
werden.
Wird bei der Überprüfung in Schritt S1 festgestellt, daß ein
bestimmungsgemäßer Einsprung in den Datenverarbeitungs
abschnitt zum Löschen und/oder Überschreiben des Flash-EPROM
momentan und/oder in absehbarer Zeit danach nicht vorliegt
oder nicht vorliegen kann, wird der in der Fig. 1 gezeigte
Programmabschnitt unter Auslassung des nachfolgend noch näher
beschriebenen Schrittes S2 verlassen. Das Auslassen des
Schrittes S2 bewirkt, daß ein gegebenenfalls erfolgter oder
erfolgender Einsprung in einen Datenverarbeitungsprogramm
abschnitt zum Löschen und/oder Überschreiben eines
Flash-EPROM kein Löschen und/oder Überschreiben desselben zur Folge
haben kann.
Falls in Schritt S1 dagegen festgestellt wird, daß ein be
stimmungsgemäßer Einsprung momentan und/oder in absehbarer
Zeit danach vorliegt oder vorliegen kann, wird in Schritt S2
die vorstehend bereits erwähnte Modifikation des jeweiligen
Datenverarbeitungsprogrammabschnittes und/oder der von diesem
benötigten Daten durchgeführt, wodurch diese in einen Zustand
übergeführt werden, der einen bestimmungsgemäßen Programm
ablauf, d. h. ein ordnungsgemäßes Löschen und Überschreiben
von Daten des Flash-EPROM ermöglicht.
Die zur genannten Modifikation im einzelnen vorzunehmenden
Maßnahmen hängen davon ab, auf welche Weise der jeweilige
Datenverarbeitungsprogrammabschnitt und/oder die Daten mani
puliert wurden oder weswegen sie in der zum jeweiligen Zeit
punkt vorliegenden Form nicht brauchbar sind.
Unabhängig von der Art und dem Umfang der im Schritt S2 vor
zunehmenden Modifikation kann vorgesehen werden, die Ausfüh
rung der Modifikation zusätzlich von der Eingabe eines Paß
wortes oder dergleichen abhängig zu machen.
Mit der Durchführung des Schrittes S2 ist der betrachtete, in
der Fig. 1 veranschaulichte Programmausschnitt abgearbeitet
und wird verlassen. Das Ausführen des Schrittes S2 bewirkt,
daß ein gegebenenfalls erfolgter oder später noch erfolgender
Einsprung in einen Datenverarbeitungsprogrammabschnitt zum
Löschen und/oder Überschreiben eines Flash-EPROM tatsächlich
ein Löschen und/oder Überschreiben desselben zur Folge haben
kann.
Um sicherzustellen, daß das Löschen und/oder Überschreiben
von Daten in einem Flash-EPROM bei bestimmungsgemäßem Ein
sprung in den entsprechenden Datenverarbeitungsprogramm
abschnitt tatsächlich auch ausgeführt wird, muß gewährleistet
werden, daß eine gegebenenfalls erforderliche Modifikation
entsprechend Schritt S2 des in der Fig. 1 gezeigten Pro
grammausschnittes rechtzeitig vor Beginn der Ausführung des
betreffenden Datenverarbeitungsprogrammabschnittes oder vor
dem Zugriff auf die dann benötigten Daten ausgeführt wird.
Alternativ oder zusätzlich kann der in der Fig. 1 gezeigte
Verfahrensabschnitt beispielsweise auch automatisch wieder
holt in mehr oder weniger regelmäßigen kurzen Zeitabständen
oder gezielt auf das Auftreten gewisser Ereignisse hin ausge
führt werden.
Eine mehrfache oder wiederholte Ausführung des in der Fig. 1
gezeigten Verfahrensabschnittes hat den Vorteil, daß eine ge
gebenenfalls bereits vorgenommene Modifikation (Schritt S2)
bei zwischenzeitlich veränderten Bedingungen wieder rückgän
gig bzw. unwirksam gemacht werden kann.
Zur Erhöhung der Sicherheit des Schutzmechanismus kann vorge
sehen werden, daß die Durchführung der Modifikation (Schritt
S2) zusätzlich davon abhängig gemacht wird, daß diese zuvor
vom externen Programmiergerät veranlaßt oder wenigstens er
laubt wurde.
Unabhängig davon muß vorzugsweise unmittelbar nach vollende
ter Ausführung des Löschens und/oder Überschreibens des
Flash-EPROM die in Schritt S2 vorgenommene Modifikation eben
falls wieder rückgängig bzw. unwirksam gemacht werden. Dar
über hinaus ist bei Bedarf auch nach dem Einschalten, Rück
setzen und dergleichen des Steuergerätes dafür zu sorgen, daß
dort kein ordnungsgemäß ausführbarer Datenverarbeitungspro
grammabschnitt bzw. eine ordnungsgemäße Ausführbarkeit ge
stattende Daten in der Variablentabelle vorhanden sind.
Abschließend werden nun unter Bezugnahme auf die Fig. 2A
bis 2D die Vorgänge bei einem bestimmungsgemäß veranlaßten
Löschen eines Flash-EPROM eingehend beschrieben. Es wird
dabei nach wie vor von einem wie in der Fig. 3 gezeigten
Aufbau ausgegangen.
Fig. 2A veranschaulicht die Aktivitäten des an das Steuer
gerät 10 angeschlossenen Programmiergerätes 20.
Das Programmiergerät aktiviert irgendwann nach dem Einschal
ten selbständig oder auf externe Veranlassung hin ein Proto
koll (Schritt S10), um mit dem Steuergerät auf eine festge
legte Art und Weise kommunizieren zu können.
Es sei angenommen, daß ein ordnungsgemäßes Löschen und/oder
Überschreiben des Flash-EPROM des Steuergerätes einer vorher
gehenden Modifizierung der in der Variablentabelle bereit
gestellten bzw. bereitzustellenden Daten und Adressen für die
unlock cycles bedarf.
Dementsprechend veranlaßt das Programmiergerät vor der Aus
gabe des Löschbefehls an das Steuergerät das Einschreiben
plausibler, d. h. eine Entriegelung des Flash-EPROM ermögli
chender Adreß- und Datenwerte in die RAM-Variablentabelle des
Steuergerätes, d. h. in die im RAM des Steuergerätes unterge
brachte Variablentabelle (Schritt S11).
Das Einschreiben dieser - gegebenenfalls vom Programmiergerät
bereitgestellten - Werte in die RAM-Variablentabelle wird,
wie später unter Bezugnahme auf Fig. 2B noch genauer be
schrieben werden wird, vom Steuergerät selbst durchgeführt;
der Schritt S11 ist deshalb "nur" der Anstoß des Modifika
tionsschrittes S2 in Fig. 1.
Danach, d. h. in Schritt S12 gemäß Fig. 2A wird durch das
Programmiergerät das Löschen des Flash-EPROM des Steuergerä
tes veranlaßt.
Auch das Löschen wird, wie später unter Bezugnahme auf Fig.
2C noch genauer beschrieben werden wird, vom Steuergerät
selbst durchgeführt; der Schritt S12 ist lediglich der be
stimmungsgemäße Anstoß hierzu.
Das Programm des Programmiergerätes ist mit Schritt S12 noch
nicht beendet. Die im Anschluß daran durchgeführten Operatio
nen sind vorliegend jedoch nicht von Interesse.
Es wird nun unter Bezugnahme auf die Fig. 2B die durch
Schritt S11 angestoßene Modifikation der Adreß- und Daten
werte für die unlock cycles in der RAM-Variablentabelle durch
das Steuergerät beschrieben.
Auf die externe Veranlassung durch das Programmiergerät zur
Vorbereitung bzw. Herstellung der Bereitschaft des Steuer
gerätes zum Löschen und/oder Überschreiben des Flash-EPROM
(Schritt S11) wird im Steuergerät in Schritt S20 zunächst
überprüft, ob überhaupt ein Programmiergerät angeschlossen
ist und ob ein Kommunikationsprotokoll aktiviert wurde. Auf
diese Weise wird festgestellt, ob die externe Veranlassung,
die nur durch eine hierfür vorgesehene Vorrichtung, also ein
Programmiergerät oder dergleichen erfolgen darf, tatsächlich
auch von einer solchen Vorrichtung ausgeht oder wenigstens
ausgehen kann, oder ob die vermeintliche externe Veranlassung
und damit auch eine gegebenenfalls bereits erfolgte oder noch
folgende Veranlassung des Löschens des Flash-EPROM etwa auf
eine Störung oder einem unbefugten Eingriff zurückgehen.
Wird in Schritt S20 festgestellt, daß kein Programmiergerät
angeschlossen ist und/oder kein Kommunikationsprotokoll akti
viert ist, wird der in Fig. 2B gezeigte Verfahrensabschnitt
verlassen, ohne ein Überschreiben der RAM-Variablentabelle
durchzuführen.
Andernfalls, d. h. wenn ein Programmiergerät angeschlossen und
ein Kommunikationsprotokoll aktiviert ist, also ein bestim
mungsgemäß veranlaßtes Löschen und/oder Überschreiben des
Flash-EPROM zu erwarten ist, schreitet der Ablauf zu Schritt
S21, wo unmittelbar vor dem Überschreiben der RAM-Variablen
tabelle sicherheitshalber überprüft wird, ob die Adresse an
welche die für die RAM-Variablentabelle bestimmten Adressen- und
Datenwerte geschrieben werden sollen, innerhalb der
RAM-Variablentabelle liegt.
Wird in Schritt S21 festgestellt, daß die Schreibadresse
außerhalb der RAM-Variablentabelle liegt, wird der in Fig.
2B gezeigte Verfahrensabschnitt verlassen, ohne ein Über
schreiben der RAM-Variablentabelle durchzuführen.
Andernfalls, d. h. wenn die Schreibadresse innerhalb der
RAM-Variablentabelle liegt, schreitet der Ablauf zu Schritt S22,
wo das Einschreiben der Adreß- und Datenwerte in die
RAM-Variablentabelle erfolgt. Der in der Fig. 2B gezeigte Ver
fahrensabschnitt ist damit ordnungsgemäß beendet, und das
Steuergerät ist auf ein Löschen und/oder Überschreiben des
Flash-EPROM vorbereitet.
Es wird nun unter Bezugnahme auf die Fig. 2C das durch
Schritt S12 angestoßene Löschen des Flash-EPROM durch das
Steuergerät beschrieben.
Auf die externe Veranlassung durch das Programmiergerät zum
Löschen und/oder überschreiben des Flash-EPROM durch das
Steuergerät (Schritt S12) wird im Steuergerät in Schritt S30
zunächst überprüft, ob überhaupt ein Programmiergerät ange
schlossen ist und ob ein Kommunikationsprotokoll aktiviert
wurde. Auf diese Weise wird - ähnlich wie bei Schritt S20 in
Fig. 2B festgestellt, ob die externe Veranlassung, die nur
durch eine hierfür vorgesehene Vorrichtung, also ein Program
miergerät oder dergleichen erfolgen darf, tatsächlich auch
von einer solchen Vorrichtung ausgeht oder wenigstens ausge
hen kann, oder ob die vermeintliche externe Veranlassung etwa
auf eine Störung oder einem unbefugten Eingriff zurückgeht.
Wird in Schritt S20 festgestellt, daß kein Programmiergerät
angeschlossen ist und/oder kein Kommunikationsprotokoll akti
viert ist, wird der in Fig. 2C gezeigte Verfahrensabschnitt
verlassen, ohne ein Löschen des Flash-EPROM durchzuführen.
Andernfalls, d. h. wenn ein Programmiergerät angeschlossen und
ein Kommunikationsprotokoll aktiviert ist, schreitet der Ab
lauf zu Schritt S31, wo das Löschen des Flash-EPROM erfolgt.
Nach Beendigung des Löschvorganges, also in Schritt S32 gemäß
Fig. 2C wird die RAM-Variablentabelle zerstört, d. h. mit
Werten versehen, die eine Entriegelung des Flash-EPROM durch
die unlock cycles ausschließen.
Der in der Fig. 2C gezeigte Verfahrensabschnitt, d. h. das
Löschen des Flash-EPROM ist durch das erneute Sichern des
Steuergerätes gegen ein nicht bestimmungsgemäßes Löschen
und/oder Überschreiben ordnungsgemäß beendet.
Eine wie in Schritt S32 erfolgende Zerstörung der RAM-Varia
blentabelle, muß, wie bereits angesprochen, auch nach dem
Einschalten, dem Rücksetzen und dergleichen des Steuergerätes
durchgeführt werden, um zu verhindern, daß die zu diesem
Zeitpunkt in der RAM-Variablentabelle stehenden Werte zufäl
lig eine Entriegelung des Flash-EPROM ermöglichen. Ein derar
tiger Vorgang ist in der ohne weitere Erläuterungen verständ
lichen Fig. 2D dargestellt.
Das unter Bezugnahme auf die Fig. 2A bis 2D beschriebene
praktische Beispiel bezog sich auf das Löschen des
Flash-EPROM. Entsprechende Vorgänge sollten in entsprechender Weise
bei jeglichen Aktionen stattfinden, die eine Speicherinhalts
veränderung des Flash-EPROM bezwecken, also auch beim über
schreiben, Umprogrammieren etc.
Auf die beschriebene Weise kann zuverlässig sichergestellt
werden, daß ein Löschen und/oder Überschreiben des
Flash-EPROM nur dann durchgeführt wird, wenn es bestimmungsgemäß
veranlaßt wurde.
Claims (8)
1. Verfahren zum Betreiben eines Steuergerätes (10) mit
einer über eine Programmiervorrichtung (20) programmierbaren
Speichereinrichtung (14), wobei das Löschen und das über
schreiben des Inhalts der Speichereinrichtung jeweils unter
Ausführung eines Datenverarbeitungsprogrammabschnittes und
unter Verwendung von Daten durchgeführt wird, dadurch gekenn
zeichnet, daß wenigstens entweder der Datenverarbeitungspro
grammabschnitt oder die Daten derart bereitgestellt werden,
daß sie vor deren Verwendbarkeit zur Herbeiführung eines
Löschens oder eines überschreibens einer Modifikation bedür
fen, und daß diese Modifikation erst durchgeführt wird, wenn
festgestellt wird, daß ein Einsprung in den Datenverarbei
tungsprogrammabschnitt bestimmungsgemäß erfolgt ist oder
erfolgen wird oder erfolgen kann.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
der jeweils bereitgestellte Datenverarbeitungsprogramm
abschnitt vor dessen Modifikation derart codiert ist, daß er
zumindest teilweise nicht oder nicht ordnungsgemäß ausführbar
ist.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeich
net, daß die besagten Daten durch den jeweiligen Datenverar
beitungsprogrammabschnitt verwendet werden, um zum Lösen der
Verriegelung der Speichereinrichtung (14) gegen ein Löschen
oder überschreiben des Inhalts der Speichereinrichtung die
nende Entriegelungszyklen zu generieren, wozu bestimmte Daten
an bestimmte Adressen der Speichereinrichtung ausgegeben wer
den.
4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß
die bereitgestellten Daten vor deren Modifikation derartige
Werte aufweisen, daß der Datenverarbeitungsprogrammabschnitt
nicht in der Lage ist, hieraus zur Entriegelung der Speicher
einrichtung (14) geeignete Entriegelungszyklen zu generieren.
5. Verfahren nach einem der vorhergehenden Ansprüche, da
durch gekennzeichnet, daß auf einen bestimmungsgemäßen Ein
sprung in den Datenverarbeitungsprogrammabschnitt geschlossen
wird, wenn ermittelt wird, daß Umstände vorliegen, die ein
bewußtes und gewolltes Löschen oder überschreiben des Inhalts
der Speichereinrichtung (14) wahrscheinlich erscheinen las
sen.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß
auf einen bestimmungsgemäßen Einsprung in den Datenverarbei
tungsprogrammabschnitt geschlossen wird, wenn ermittelt wird,
daß ein externes Programmiergerät (20) am Steuergerät (10)
angeschlossen ist.
7. Verfahren nach Anspruch 5 oder 6, dadurch gekennzeich
net, daß auf einen bestimmungsgemäßen Einsprung in den Daten
verarbeitungsprogrammabschnitt geschlossen wird, wenn ermit
telt wird, daß ein an das Steuergerät (10) angeschlossenes
externes Programmiergerät (20) aktiviert ist.
8. Verfahren nach einem der vorhergehenden Ansprüche, da
durch gekennzeichnet, daß der Datenverarbeitungsprogrammab
schnitt oder die Daten nach einem erfolgten Löschen oder
Überschreiben des Inhalts der Speichereinrichtung (14) und
gegebenenfalls auch nach einem Einschalten oder Rücksetzen
des Steuergerätes (10) einer derartigen Behandlung unterwor
fen werden, daß sie ohne erneute Modifikation beim nächsten
Einsprung in den Datenverarbeitungsprogrammabschnitt wieder
derart bereitgestellt werden, daß sie nicht zur Herbeiführung
eines Löschens oder eines Überschreibens der Speichereinrich
tung geeignet sind.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE1996123145 DE19623145B4 (de) | 1996-06-10 | 1996-06-10 | Verfahren zum Betreiben eines Steuergerätes mit einer über eine Programmiervorrichtung programmierbaren Speichereinrichtung |
GB9711251A GB2314180B (en) | 1996-06-10 | 1997-05-30 | Method of operating control apparatus with programmable storage means |
FR9706788A FR2749697B1 (fr) | 1996-06-10 | 1997-06-03 | Procede de mise en oeuvre d'un appareil de commande avec une memoire programmee par un dispositif de programmation |
JP15184097A JPH1083294A (ja) | 1996-06-10 | 1997-06-10 | プログラミング装置を介してプログラミング可能な記憶装置を備えた制御装置の作動方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE1996123145 DE19623145B4 (de) | 1996-06-10 | 1996-06-10 | Verfahren zum Betreiben eines Steuergerätes mit einer über eine Programmiervorrichtung programmierbaren Speichereinrichtung |
Publications (2)
Publication Number | Publication Date |
---|---|
DE19623145A1 true DE19623145A1 (de) | 1997-12-11 |
DE19623145B4 DE19623145B4 (de) | 2004-05-13 |
Family
ID=7796551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1996123145 Expired - Fee Related DE19623145B4 (de) | 1996-06-10 | 1996-06-10 | Verfahren zum Betreiben eines Steuergerätes mit einer über eine Programmiervorrichtung programmierbaren Speichereinrichtung |
Country Status (4)
Country | Link |
---|---|
JP (1) | JPH1083294A (de) |
DE (1) | DE19623145B4 (de) |
FR (1) | FR2749697B1 (de) |
GB (1) | GB2314180B (de) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1037140A2 (de) | 1999-03-17 | 2000-09-20 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Absicherung bei Veränderung des Speicherinhalts von Steuergeräten |
DE10035149C1 (de) * | 2000-07-19 | 2001-08-16 | Kostal Leopold Gmbh & Co Kg | Verfahren zur Programmierung einer Speichervorrichtung, insbesondere für ein Kraftfahrzeugsteuergerät |
US7406717B2 (en) | 2001-05-12 | 2008-07-29 | Robert Bosch Gmbh | Method for operating a control device |
EP3219553A4 (de) * | 2014-11-12 | 2017-10-25 | Panasonic Intellectual Property Corporation of America | Aktualisierungsverwaltungsverfahren, aktualisierungsverwaltungsvorrichtung und steuerungsprogramm |
DE10245141B4 (de) * | 2001-09-28 | 2019-07-18 | Denso Corporation | Generatorsteuersystem für ein Fahrzeug mit einer Feldstromeinschränkungseinheit |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6032248A (en) * | 1998-04-29 | 2000-02-29 | Atmel Corporation | Microcontroller including a single memory module having a data memory sector and a code memory sector and supporting simultaneous read/write access to both sectors |
US7003621B2 (en) * | 2003-03-25 | 2006-02-21 | M-System Flash Disk Pioneers Ltd. | Methods of sanitizing a flash-based data storage device |
GB0504844D0 (en) * | 2005-03-10 | 2005-04-13 | Zarlink Semiconductor Ab | Radiolink maintenance lock |
CN105117652B (zh) * | 2015-10-09 | 2018-12-04 | 天津国芯科技有限公司 | 一种基于NAND Flash的SOC启动方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3025502B2 (ja) * | 1987-03-16 | 2000-03-27 | 日立マクセル株式会社 | 半導体メモリ装置 |
US5014191A (en) * | 1988-05-02 | 1991-05-07 | Padgaonkar Ajay J | Security for digital signal processor program memory |
JP2682700B2 (ja) * | 1989-05-09 | 1997-11-26 | 三菱電機株式会社 | Icカード |
DE4013727C2 (de) * | 1990-04-28 | 1999-03-11 | Bayerische Motoren Werke Ag | Steuervorrichtung für technische Anlagen und Maschinen |
JPH06208516A (ja) * | 1992-10-27 | 1994-07-26 | Toshiba Corp | セキュリティ回路 |
DE4332499A1 (de) * | 1993-09-24 | 1995-03-30 | Bosch Gmbh Robert | Verfahren zur vollständigen Neuprogrammierung eines löschbaren, nichtflüchtigen Speichers |
-
1996
- 1996-06-10 DE DE1996123145 patent/DE19623145B4/de not_active Expired - Fee Related
-
1997
- 1997-05-30 GB GB9711251A patent/GB2314180B/en not_active Expired - Fee Related
- 1997-06-03 FR FR9706788A patent/FR2749697B1/fr not_active Expired - Fee Related
- 1997-06-10 JP JP15184097A patent/JPH1083294A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1037140A2 (de) | 1999-03-17 | 2000-09-20 | Robert Bosch Gmbh | 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 |
DE10035149C1 (de) * | 2000-07-19 | 2001-08-16 | Kostal Leopold Gmbh & Co Kg | Verfahren zur Programmierung einer Speichervorrichtung, insbesondere für ein Kraftfahrzeugsteuergerät |
US7406717B2 (en) | 2001-05-12 | 2008-07-29 | Robert Bosch Gmbh | Method for operating a control device |
DE10245141B4 (de) * | 2001-09-28 | 2019-07-18 | Denso Corporation | Generatorsteuersystem für ein Fahrzeug mit einer Feldstromeinschränkungseinheit |
EP3219553A4 (de) * | 2014-11-12 | 2017-10-25 | Panasonic Intellectual Property Corporation of America | Aktualisierungsverwaltungsverfahren, aktualisierungsverwaltungsvorrichtung und steuerungsprogramm |
EP3412514A1 (de) * | 2014-11-12 | 2018-12-12 | Panasonic Intellectual Property Corporation of America | Aktualisierungsverwaltungsverfahren, aktualisierungsverwaltungsvorrichtung und steuerungsprogramm |
Also Published As
Publication number | Publication date |
---|---|
GB2314180A (en) | 1997-12-17 |
DE19623145B4 (de) | 2004-05-13 |
JPH1083294A (ja) | 1998-03-31 |
GB9711251D0 (en) | 1997-07-23 |
FR2749697A1 (fr) | 1997-12-12 |
FR2749697B1 (fr) | 2006-06-02 |
GB2314180B (en) | 1998-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0894295B1 (de) | Verfahren zur automatischen dokumentation des programmiervorgangs des speichers eines programmierbaren steuergerätes | |
EP2008179B1 (de) | Erweiterung der funktionalität einer serien-software in einem steuergerät | |
WO1998016883A1 (de) | Elektronische datenverarbeitungsschaltung | |
DE19963208B4 (de) | Verfahren zum Manipulationsnachweis einer programmierbaren Speichereinrichtung eines digitalen Steuergeräts | |
DE19623145A1 (de) | Verfahren zum Betreiben eines Steuergerätes mit einer über eine Programmiervorrichtung programmierbaren Speichereinrichtung | |
EP1262856B1 (de) | Programmgesteuerte Einheit | |
DE10330057A1 (de) | Neueinschreibsperrverfahren zum Bestimmen von Neueinschreibfreigabe/Sperre basierend auf dem Ergebnis einer Majoritätsentscheidung | |
DE10156394A1 (de) | Kontrollierte Programmausführung durch einen tragbaren Datenträger | |
EP1804144A1 (de) | Überprüfung des Steuerprogramms eines Steuergerätes für eine Maschine | |
DE10002203B4 (de) | Verfahren zum Schutz eines Mikrorechner-Systems gegen Manipulation von in einer Speicheranordnung des Mikrorechner-Systems gespeicherten Daten | |
DE102008047433A1 (de) | Verfahren zum Freischalten von Funktionen eines Tachographen | |
EP0834175B1 (de) | Verfahren zum betreiben eines steuergerätes mit einer 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 | |
DE19619354A1 (de) | Verfahren zum Betreiben eines eine Steuerfunktion aufweisenden Steuergerätes mit einer programmierbaren Speichereinrichtung | |
EP1397736B1 (de) | Verfahren zum betreiben eines steuergeräts | |
DE102018202626A1 (de) | Verfahren zur rechnergestützten Parametrierung eines technischen Systems | |
EP4361800B1 (de) | Verfahren zur verbesserung der betriebssicherheit eines steuergeräts sowie steuergerät | |
DE4340027A1 (de) | Schreibschutz-Verfahren für einen nichtflüchtigen Schreib-/Lesespeicher in einem elektronischen Steuergerät | |
EP1577734A2 (de) | Verfahren zum sicheren Betrieb eines tragbaren Datenträgers | |
DE102018217969A1 (de) | Recheneinrichtung und Betriebsverfahren hierfür | |
EP1055983B1 (de) | Steuergerät mit mindestens zwei Steuereinheiten, davon eine mit externer Schnittstelle | |
DE102007062915A1 (de) | Verfahren zum Betreiben einer speicherprogrammierbaren Steuerung | |
EP1566776B1 (de) | Verfahren zum sicheren Betrieb eines tragbaren Datenträgers | |
DE10035149C1 (de) | Verfahren zur Programmierung einer Speichervorrichtung, insbesondere für ein Kraftfahrzeugsteuergerät | |
DE4427108A1 (de) | Kraftfahrzeug-Steuergerät |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8125 | Change of the main classification |
Ipc: G11C 1610 |
|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |