JPH1083294A - プログラミング装置を介してプログラミング可能な記憶装置を備えた制御装置の作動方法 - Google Patents

プログラミング装置を介してプログラミング可能な記憶装置を備えた制御装置の作動方法

Info

Publication number
JPH1083294A
JPH1083294A JP15184097A JP15184097A JPH1083294A JP H1083294 A JPH1083294 A JP H1083294A JP 15184097 A JP15184097 A JP 15184097A JP 15184097 A JP15184097 A JP 15184097A JP H1083294 A JPH1083294 A JP H1083294A
Authority
JP
Japan
Prior art keywords
control device
storage device
programming
processing program
data processing
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.)
Pending
Application number
JP15184097A
Other languages
English (en)
Inventor
Andreas Werner
ヴェルナー アンドレアス
Carsten Franz
フランツ カールステン
Udo Schulz
シュルツ ウード
Walter Nagl
ナクル ヴァルター
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of JPH1083294A publication Critical patent/JPH1083294A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting 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/79Protecting 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric 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/02Electric 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/03Electric 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/0315Electric 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2105Dual mode as a secondary aspect
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2143Clearing 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)
  • Read Only Memory (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 プログラミング可能な記憶装置内に記憶され
たデータの不正な消去及び/又は書き換えが簡単な形式
で確実に阻止される方法を提供すること。 【解決手段】 データ処理プログラムステップへのエン
トリが正規に行われているか、正規に行われるか又は正
規に行われる可能性があることが検出された場合にのみ
変更が実施され、その適用性の前に消去又は書き換えの
誘因のために変更を必要とするように、データ処理プロ
グラムステップ又はデータを準備する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プログラミング装
置を介してプログラミング可能な記憶装置を備えた制御
装置の作動方法であって、記記憶装置の内容の消去と書
き換えがデータ処理プログラムステップの実施と適用デ
ータのもとでそのつど実施される形式の、プログラミン
グ装置を介してプログラミング可能な記憶装置を備えた
制御装置の作動方法に関する。
【0002】
【従来の技術】この種の方法は例えばドイツ連邦共和国
特許出願公開第4332499号公報から公知である。
この公報に記載されている制御装置は自動車制御装置
で、そのシステム全体における可能な構造と配置構成は
以下で図6に基づいて詳細に説明する。
【0003】自動車制御装置は、図6中符号10で示さ
れている。この制御装置10にはマイクロコンピュータ
11と、入出力回路12が含まれている。
【0004】マイクロコンピュータ11は、中央処理装
置13と、電気的消去可能なフラッシュEPROM形状
のプログラマブルメモリ14と、ランダムアクセスメモ
リ15と、読出し専用メモリ16と、シリアルインター
フェース21を含んでいる。
【0005】自動車制御装置10は、一方では入出力回
路12を介して、複数のセンサ、例えばスロットル弁ポ
テンショメータ17、回転数センサ23やさらなる別の
センサ等からの入力信号を受け取る。このさらなる別の
センサはここでは詳細にはふれないが、自動車制御装置
に応じて、エンジン温度センサ、吸気温度センサ、空気
質量計、アイドリングスイッチ等である。
【0006】自動車制御装置10は、もう一方では入出
力回路12を介して複数のアクチュエータ19、例えば
燃料噴射弁、点火コイル等の制御のためのアクチュエー
タへの出力信号を送出する。
【0007】この自動車制御装置10の正確な構造は、
例えば1983年にロバート・ボッシュ社から発行され
た公知文献“Technische Unterrichtung,kombiniertes
Zuend-und Benzineinspritzsystem Motronic”に詳細に
説明されているのでここでの詳細な説明は省く。
【0008】前述したメモリ装置14,15,16は、中
央処理装置13に対応付けされており、この中央処理装
置13に対するプログラムやデータの記憶に用いられて
いる。
【0009】メモリ装置14のような電気的消去とプロ
グラミングの可能な不揮発性メモリ装置の、自動車制御
装置での適用は有利であることがわかっている。なぜな
らこのメモリ装置はいつでもプログラムの書き換えが可
能で、これは特に後から見つけ出されたエラーや個々の
顧客ニーズに答えることのできるものである。
【0010】電気的消去とプログラミングの可能な不揮
発性メモリとしてのフラッシュEPROMの適用は、こ
の場合益々意味をなす。なぜならこのフラッシュEPR
OMは、“ノーマル”のEPROM(高いメモリセル密
度)とEEPROM(メモリ内容の簡単な電気的一括消
去)の利点を兼ね備えているからである。
【0011】フラッシュEPROMの最初のプログラミ
ング(例えば自動車製造過程における自動車のタイプに
依存したプログラミング)のために、又はフラッシュE
PROMの後からのプログラム変更(エラー除去のため
の顧客サービスの際又は個々の顧客要望に応じるための
顧客サービスの際のプログラム変更)のために、外部の
プログラミング装置20(例えばパーソナルコンピュー
タ等)が制御装置10に接続される。
【0012】この接続は、例えばシリアルインターフェ
ースケーブル22と既存のシリアルインターフェース2
1を介して行われる。
【0013】外部プログラミング装置20によって制御
装置10は、必要に応じてフラッシュEPROM内のデ
ータの消去ないしは書き換えのために、データ処理プロ
グラムステップを実施させる。その際場合によっては
(新たに)記憶させるべきデータが準備される。
【0014】制御装置10自体は、通常の場合は外部か
らのきっかけなしでは前記データ処理プログラムステッ
プの実施を誘起しない。すなわち走行動作中に制御装置
内で実施されるないしは実施されるべき適用プログラム
において前記データ処理プログラムステップへのエント
リは行われない。このような措置の講じられている理由
は、とりわけフラッシュEPROMの不本意なもしくは
不意の消去及び/又は書き換えを阻止するためである。
【0015】記憶内容の不本意な変更や不正な操作から
データを保護するための別の手段は、フラッシュEPR
OMの内容の本来の消去及び/又は書き換えに対して不
正チェック機能(入力されたパスワードの検査等による
チェック機能)を先取りさせることである。
【0016】前述した保護予防措置によれば、フラッシ
ュEPROMの不本意なもしくは不意の消去及び/又は
書き換えが十分に回避可能である。いずれにせよ不運な
状況が運悪く重なったようなケースでは、これらの予防
措置が個別に項を成すとはいいがたい。
【0017】これに対する原因は、とりわけ制御装置内
の電磁整合性や不法な第3者によるアドレスキャラク
タ、アドレスバス等の作為的操作にある。
【0018】これに対する結論は、これらが予知されて
いなくても、不利な条件下で少なくとも理論的に、制御
装置のフラッシュEPROMに記憶されたデータを消去
及び/又は書き換え可能なデータ処理プログラムステッ
プへのエントリがプログラミング装置による所定の誘起
なしでも行われるようにすることである。
【0019】この種のルーチンの入口でのエントリが行
われる限りは、パスワード等の問合せか又は場合によっ
てはルーチンの誘起によって差し迫った被害はくい止め
ることができる。しかしながらこのエントリがプログラ
ムのもっと後方で行われた場合には、前記保護メカニズ
ムは無効となる。そのためプログラミング可能な記憶装
置内に記憶されているデータの不正な消去及び/又は書
き換えを確実に取り除くことはできない。
【0020】このことに対抗するための補助的手段とし
て、複数のフラッシュEPROMの一部にプログラミン
グ電圧入力側が設けられる。この入力側には、記憶装置
の消去又は書込を行う場合に、所定のプログラミング電
圧が印加される。しかしながらこの種の保護メカニズム
には付加的なハードウエアコストが必要とされる。この
ことは、所定のプログラミング電圧が比較的正確に維持
されなければならないという事実に基づくものである。
これは相応の範囲で受け入れられなければならないが、
しかしながら一方では保護メカニズムの信頼性やエラー
発生頻度にも悪影響を与えかねない。
【0021】
【発明が解決しようとする課題】本発明の課題は、冒頭
に述べたような形式の方法において、プログラミング可
能な記憶装置内に記憶されたデータの不正な消去及び/
又は書き換えが簡単な形式で確実に阻止されるように改
善を行うことである。
【0022】
【課題を解決するための手段】上記課題は本発明によ
り、データ処理プログラムステップへのエントリが正規
に行われているか、正規に行われるか又は正規に行われ
る可能性があることが検出された場合にのみ変更が実施
され、その適用性の前に消去又は書き換えの誘因のため
に変更を必要とするように、データ処理プログラムステ
ップ又はデータを準備するようにして解決される。
【0023】従って、プログラミング可能な記憶装置の
内容の消去及び/又は書き換えのためのデータ処理プロ
グラミングステップへのエントリは次のような場合にの
み消去及び/又は書き換えを誘起し得る。すなわち少な
くとも消去及び/又は書き換えルーチンが不本意か作為
的に呼び出された可能性が高い付随状況に基づいている
場合にのみ誘起し得る。
【0024】この種の検査の実施と、これに依存して求
められるコード及び/又はデータの変更は、比較的簡単
に実施可能である。状況の適切な選択のもとでは(この
状況に基づいて、データ処理プログラミングステップへ
のエントリが所定のように行われるか否かが検出され
る)、例えば外部プログラミング装置等が接続されてい
るか及び/又は作用化しているかどうかに依存した決定
のもとでは、本発明による保護メカニズムは非常に信頼
性が高く、迂回の可能性は皆無に等しい。
【0025】さらに本発明によれば、プログラミング可
能な記憶装置に記憶されたデータの不正な消去及び/又
は書き換えが簡単な形式で確実に避けられる。
【0026】不正な消去の回避は、記憶されたデータの
不所望な又は不正な変更からの保護だけではなく、制御
装置の作動安全性を著しく高めることにも寄与する。と
いうのも、走行中に実施される適用プログラムからフラ
ッシュEPROMの消去及び/又は書き換えのためのデ
ータ処理プログラムステップへのエントリが、特に、こ
の時点で走行している自動車に対して著しい安全性のリ
スクを伴うからである。
【0027】本発明の別の有利な実施例は従属請求項に
記載される。
【0028】
【発明の実施の形態】次に本発明を図面に基づき詳細に
説明する。
【0029】以下の説明は例えば自動車のエンジン、変
速機、ブレーキ等の制御のための制御装置、つまり自動
車制御装置の作動方法に関する。
【0030】この種の自動車制御装置は、プログラマブ
ルメモリ装置、詳細には電気的消去可能なプログラマブ
ル(不揮発性)メモリ装置をフラッシュEPROMの形
式で含んでいる。このフラッシュEPROMのプログラ
ミングは、外部のプログラミング装置を介して行われ
る。この装置は例えばシリアルインターフェースを介し
て自動車制御装置と接続可能である。
【0031】この種の自動車制御装置を含んだ実施形態
の1つは図3に示されており、この装置については既に
冒頭で述べてある。
【0032】しかしながら本発明は、外部のプログラミ
ング装置を用いた自動車制御装置のフラッシュEPRO
Mのプログラミングに限定されるものではない。それど
ころか本発明は、一般的なプログラミング装置によって
制御装置のメモリがプログラミングされるもの全てに適
用可能である。
【0033】プログラミング、すなわちフラッシュEP
ROMの内容の消去と書き換えは、それぞれ制御装置内
のデータ処理プログラムステップの実施と、正規のデー
タ処理プログラムステップの実施に必要なデータの適用
のもとで実施される。
【0034】しかしながら本発明の第1の観点によれば
そのつどのデータ処理プログラムステップは、単に該ス
テップへの呼出しないしエントリによって実施されるの
ではなく、有利にはまずフラッシュEPROM内のデー
タの消去及び/又は書き換えがまだ実行できない形式に
おかれる。
【0035】この実行停止機能は、種々の方式で達成可
能である。
【0036】これに対する1つの手段によれば、そのつ
どのデータ処理プログラムステップを表すコードが少な
くとも部分的に次のように符号化もしくは特別な形で操
作される。すなわちそれが相応の修正なしで少なくとも
不完全に及び/又は非合法的に実施されるプログラムを
表すように符号化される。
【0037】さらに別の手段によれば、コードにおいて
戦略上有利な位置に次のような命令が組み込まれる。す
なわち、フラッシュEPROM内のデータの消去及び/
又は書き換えに最終的に作用する命令の実施を阻止する
ような命令が組み込まれる。このことは例えば次のよう
な飛び越し文であってもよい。すなわち該当するデータ
処理プログラムステップの放棄もしくは臨界的なステー
トメントのスキップに作用するような飛び越し文であっ
てもよく、また正しい順序のプログラム実施の前に相応
のプログラムコードの修正によって取り除くか又は少な
くとも無効にするような飛び越し文であってもよい。
【0038】それに対して本発明の第2の観点によれ
ば、その内容に依存してフラッシュEPROMの内容の
消去及び/又は書き換えの実施が可能なデータが、フラ
ッシュEPROMの消去及び/又は書き換えを阻止する
値に選択的に又は付加的にセットされる。
【0039】前述したデータとは例えば次のようなデー
タやアドレス値である。すなわち少なくともいくつかの
フラッシュEPROMのもとで本来の消去及び/又は書
き換えの前にいわゆるロック解除(アンロック)サイク
ルの形態でバスを介してフラッシュEPROMへ与えら
れるべきデータやアドレス値である。前記アンロックサ
イクルの間は、フラッシュEPROMをデータ消去及び
/又は書き換えの目的でロック解除するために、所定の
データが所定の順序で所定のフラッシュEPROMのア
ドレスに書き込まれなければならない。フラッシュEP
ROMをロック解除する試みが失敗した場合には、消去
及び/又は書き換えに対してロックされ続ける。
【0040】アンロック周期中に送出されたアドレスと
データによって、自動的ではなく特定的な状況のもとで
のみ、つまり所定の方式で引き起こされたフラッシュE
PROMの消去及び/又は書き換えのもとでしか、フラ
ッシュEPROMのロック解除が作動しないように配慮
するならば、フラッシュEPROMの不正な消去及び/
又は書き換えが阻止されるさらなる別の保護機構が得ら
れる。
【0041】フラッシュEPROMの自動的なロック解
除を避けるためには、データ処理プログラムステップに
よって、アンロックサイクル中にフラッシュEPROM
に送出されたデータ及び/又はアドレスが、これまでの
ような通常のプログラムコードに統合されるのではな
く、有利には揮発性メモリ(RAM)から取り出されな
ければならない。この場合、そのつどのデータ処理プロ
グラムステップによってデータ及び/又はアドレスがア
ンロックサイクルの出力のために取り出される記憶領域
(変化テーブル)には、フラッシュEPROMのロック
解除に用いられる値が自動的に書き込まれない。
【0042】保護機構の具体的な実現においては、正規
の(例えばプログラミング装置によって引き起こされ
た)フラッシュEPROMの消去又は書き換え要求が存
在するか又はそのような要求が生じそうか生じそうな可
能性がある場合にのみ、フラッシュEPROMのロック
解除を可能にするデータが前記変数テーブル内に書き込
まれる。そして前記変数テーブル内のデータは、フラッ
シュEPROMの消去ないし書き換え過程の直後で再消
去されるか又はフラッシュEPROMのロック解除を除
外するデータに置き換えられる。変数テーブル内のデー
タの消去ないしは変数テーブル内のデータの、フラッシ
ュEPROMのロック解除を除外するデータへの書き換
えは、不意のフラッシュEPROMのロック解除を確実
に回避するために特に制御装置のスイッチオン又はリセ
ットの後でも表示される。
【0043】前述した本発明の第1及び第2の観点によ
る保護機構の存在のもとでは、つまりフラッシュEPR
OMの消去及び/又は書き換えのためのそのつどのデー
タ処理プログラムステップの正規の実現性に影響力を持
つ保護機構の存在のもとでは、相応のデータ処理プログ
ラムステップへのエントリが自動的にフラッシュEPR
OMのデータの消去及び/又は書き換えには結びつかな
い。それどころかこのようにしてフラッシュEPROM
のデータの消去及び/又は書き換えが基本的にまず一度
は回避される。
【0044】フラッシュEPROM内のデータの正規の
消去及び/又は書き換えが実施されるべき場合には、既
に前述したように、そのつどのデータ処理プログラムス
テップの変更及び/又はアンロックサイクルのデータを
含んだ制御装置内の変数テーブルの変更が必要となる。
【0045】この過程は図1に示されている。
【0046】図1に示されているフローチャートによれ
ば、第1のステップS1でまずフラッシュEPROMの
データの消去及び/又は書き換えのためのデータ処理プ
ログラムステップへの正規のエントリの有無が検査され
る。すなわち少なくとも誤った又は間違った結果が明ら
かに生じているか又はそのような結果が生じそうか又は
生じそうな可能性が検査される。この場合の検査は、有
利には1つの基準に絞られる。すなわちこの基準のみの
存在か又はその他の条件との組合せがフラッシュEPR
OMのプログラミングの導入を出現させるだけではなく
(非回避)、その基準から所期の信頼性も伴ってフラッ
シュEPROMのプログラミングの導入ないし誘起が追
従する。
【0047】前述した実施例のようにフラッシュEPR
OMのプログラミングのために外部のプログラミングも
しくは検査装置が制御装置に接続されなければならない
ような場合には、検出ステップS1において例えば以下
のようなことが検査される。
【0048】−相応の外部プログラミング装置が接続さ
れているか否か、−プログラミング装置が作動している
か否か、−プログラミング装置がプログラミング作動形
式におかれているか否か、−制御装置とプログラミング
装置との間で所定の通信が行われているか否か前述した
又はそれに類似の1つ又は複数の検査の実施は、フラッ
シュEPROMのプログラミングのためのプログラミン
グルーチンへの正規のエントリが誘起されたか又は誘起
されそうかどうかに関する非常に確実な情報提供を可能
にする。
【0049】このような関係で個別に実施される検査は
そのつどの個々の条件に依存している。この関係で特に
考えられることは(但し回避ではない)制御装置と場合
によってはそれに接続される外部装置の相応の状態情報
の問合せ及び/又は所期の事象の出現のもとでセットさ
れる識別子の問合せである。
【0050】ステップS1における検査の際に、フラッ
シュEPROMの消去及び/又は書き換えのためのデー
タ処理プログラムステップへの正規のエントリが目下の
ところ及び/又は予測される期間の後で存在しないか又
は存在しない可能性が検出された場合には、図1に示さ
れているプログラムステップは以下で詳細に説明するス
テップS2を省略して飛び越す。このステップS2の省
略は、次のように作用する。すなわち場合によって生じ
るか生じ得る、フラッシュEPROMの消去及び/又は
書き換えのためのデータ処理プログラムステップへのエ
ントリがフラッシュEPROMの消去及び/又は書き換
えを引き起こさないように作用する。
【0051】それに対してステップS1で、正規のエン
トリが目下のところ及び/又は予測される期間の後で存
在するか又は存在する可能性が検出された場合には、ス
テップS2において前述したようなその都度のデータ処
理プログラムステップか及び/又はこれに必要なデータ
の変更が実施される。これにより所定のプログラムシー
ケンス、つまりフラッシュEPROMのデータの正規の
消去及び書き換えを可能にする状態に移行される。
【0052】前述した個々に行われる手段での変更は、
そのつどのデータ処理プログラムステップ及び/又はデ
ータがどのような形式で操作され、それ故にその都度の
時点で存在する形式にはどのように不要であるかに依存
する。
【0053】ステップS2において行われる変更の種類
と規模に係わらずに、この変更の実施はさらに付加的な
パスワード等の入力に依存して行われる。
【0054】ステップS2の実施と共に図1に示されて
いるプログラムステップは終了される。ステップS2の
実施は、場合によって生じるか後から生じ得る、フラッ
シュEPROMの消去及び/又は書き換えのためのデー
タ処理プログラムステップへのエントリがフラッシュE
PROMの消去及び/又は書き換えを実際に引き起こす
ように作用する。
【0055】フラッシュEPROMの消去及び/又は書
き換えが相応のデータ処理プログラムステップへの正規
のエントリのもとで本当に実施されることを補償するた
めには、図1に示されたプログラムステップのステップ
S2に応じた場合によって必要となる変更が、該当する
データ処理プログラムステップ実施の開始前か、又は所
要のデータへのアクセスの前に適時に実施されることが
補償されなければならない。
【0056】選択的に又は付加的に、図1に示されてい
る方法ステップは、例えば多かれ少なかれ定期的に短期
間だけ自動的に繰り返されてもよいし、所期の事象の発
生に絞って実施されてもよい。
【0057】図1に示されている方法ステップの複数の
もしくは繰返しの実施は次のような利点を有する。すな
わち場合によっては既に行われた変更(ステップS2)
が介在期間中に変化した条件のもとでも再び解除ないし
無効となる利点を有する。
【0058】保護機構の確実性をさらに高めるために、
ステップS2の変更の実施が付加的に次のことに依存し
て行われるようにしてもよい。すなわちこれが外部から
のプログラミング装置によって誘起されるか又は少なく
とも許容されたことに依存して行われるようにしてもよ
い。
【0059】それとは関係なく、フラッシュEPROM
の消去及び/又は書き換え実施の完全に終了した直後に
有利には前記ステップS2で行われた変更が再び解除な
いし無効にされなければならない。そしてさらに必要に
応じて制御装置のスイッチオンやリセット等の後でもそ
こで不正に実施されるデータ処理プログラムステップな
いしは不正な実施を許可するデータが変数テーブル内に
存在していないかが配慮される。
【0060】引き続き図2〜図5に基づいて所定のフラ
ッシュEPROMの消去のもとでの過程を詳細に説明す
る。これらは図6に示されている構成に基づいたもので
ある。
【0061】図2には制御装置10へ接続されたプログ
ラミング装置20のアクティビティが示されている。
【0062】もちろんプログラミング装置は制御装置と
設定された方式で通信するために、スイッチオン後に活
動するか又は外部からの誘因に対してプロトコルを活動
化(ステップS10)させる。
【0063】制御装置のフラッシュEPROMの正規の
消去及び/又は書き換えには、変数テーブルに準備され
るか準備されたアンロックサイクルのためのデータとア
ドレスの変更を必要とする。
【0064】それに応じてプログラミング装置は制御装
置への消去命令の送出前に、フラッシュEPROMのロ
ック解除を可能にする妥当なアドレス値及びデータ値
の、制御装置RAM変数テーブル内への書き込み、すな
わち制御装置RAM内に収容されている変数テーブル内
への書き込みを引き起こす(S11)。
【0065】場合によってはプログラミング装置によっ
て準備されるこれらの値のRAM変数テーブル内への書
き込みは、以下で図3に基づいて詳細に述べるように制
御装置自体によって実施される。そのためステップS1
1は、図1の変更ステップS2のきっかけだけのもので
ある。
【0066】その後では、つまり図2によるステップS
12においてはプログラミング装置によって制御装置の
フラッシュEPROMの消去が引き起こされる。
【0067】消去も以下で図4に基づいて詳細に説明す
るように、制御装置自体によって実施される。これに対
してもステップS12は所定のきっかけだけのものであ
る。
【0068】プログラミング装置のプログラムは、ステ
ップS12によってはまだ終了されない。それに続いて
実施される操作は目下のところはさほど重要ではない。
【0069】次に図3に基づいてステップS11によっ
て引き起こされる、制御装置によるRAM変数テーブル
内のアンロック周期毎のアドレス及びデータ値の変更を
説明する。
【0070】フラッシュEPROMの消去及び/又は書
き換えに対する制御装置のスタンバイ状態の準備ないし
形成のためのプログラミング装置による外部からの誘因
に対して(ステップS11)制御装置内でステップS2
0においてまず、プログラミング装置が完全に接続され
ているかどうかと、通信プロトコルが活動化されている
かどうかが検査される。これによって、外部からの誘因
(これはこのために設けられた装置、つまりプログラミ
ング装置かそれに類似のものによってしか行うことが許
されない)が本当にそのような装置に基づいているのか
あるいは少なくともそのような装置に基づいている可能
性があるのかどうかが検出され、あるいは推定される外
部誘因とそれに伴う場合によっては既に起こされている
か又は続けて引き起こされるフラッシュEPROMの消
去の誘因がほぼなんらかの障害か又は不正なアクセスに
帰するものなのかどうかが検出される。
【0071】ステップS20において、プログラミング
装置の接続がなく及び/又は通信プロトコルの活動化も
ないことが検出された場合には、図3に示されている方
法ステップは、RAM−変数テーブルの書き換えの実施
なしで終了する。
【0072】その他のケース、つまりプログラミング装
置が接続され、通信プロトコルが活動化されている、つ
まり正規に引き起こされたフラッシュEPROMの消去
及び/又は書き換えが見込まれる場合には、シーケンス
がステップS21に進められ、そこでRAM−変数テー
ブルの書き換え直前に安全のために、RAM−変数テー
ブル毎に定められたアドレス/データ値の書き込まれる
べきアドレスがRAM−変数テーブル内部に存在するの
かどうかが検査される。
【0073】ステップS21において、書込アドレスが
RAM−変数テーブル外にあることが検出された場合に
は、図3に示されている方法ステップは、RAM−変数
テーブルの書き換えの実施なしで終了される。
【0074】別のケース、すなわち書込アドレスがRA
M−変数テーブル内に存在する場合には、シーケンスが
ステップS22に進められ、そこでRAM−変数テーブ
ル内へのアドレス/データ値の書込が行われる。図3に
示された方法ステップは、それと共に正規に終了する。
制御装置は、フラッシュEPROMの消去及び/又は書
き換えに対して準備される。
【0075】次に図4に基づいてステップS12によっ
て引き起こされた制御装置によるフラッシュEPROM
の消去を説明する。
【0076】制御装置によるフラッシュEPROMの消
去及び/又は書き換えのためのプログラミング装置によ
る外部からの誘因に対して(ステップS12)、制御装
置ではステップS30においてまずプログラミング装置
が本当に接続されているかどうかと通信プロトコルが活
動化されているかどうかが検査される。このようにして
(図3のステップS20の場合と類似のように)、外部
からの誘因(これはこのために設けられた装置、つまり
プログラミング装置かそれに類似のものによってしか行
うことが許されない)が本当にそのような装置に基づい
ているのかあるいは少なくともそのような装置に基づい
ている可能性があるのかどうかが検出され、あるいは推
定される外部誘因とそれに伴う場合によっては既に起こ
されているか又は続けて引き起こされるフラッシュEP
ROMの消去の誘因がほぼなんらかの障害か又は不正な
アクセスに帰するものなのかどうかが検出される。
【0077】ステップS30において、プログラミング
装置の接続がなく及び/又は通信プロトコルの活動化も
ないことが検出された場合には、図4に示されている方
法ステップは、フラッシュEPROMの消去の実施なし
で終了する。
【0078】その他のケース、つまりプログラミング装
置が接続され、通信プロトコルが活動化されている場合
には、シーケンスがステップS31に進められ、そこで
フラッシュEPROMの消去が行われる。
【0079】消去過程の終了の後では、つまり図4のス
テップS32においてはRAM−変数テーブルが阻止、
すなわちアンロックサイクルによるフラッシュEPRO
Mのロック解除を排除する値が設定される。
【0080】図4に示されている方法ステップ、すなわ
ちフラッシュEPROMの消去は、不正な消去及び/又
は書き換えに対する制御装置の新たな保護によって正規
に終了する。
【0081】ステップS32にて行われるRAM−変数
テーブルの阻止は、既に前述したように、制御装置のス
イッチオン、リセット等の後でも実施されなければなら
ない。これはこの時点でRAM−変数テーブル内に生じ
た値によって偶然的にフラッシュEPROMのロック解
除が行われるようなことを回避するためである。この種
の過程は図5に示されている。
【0082】図2から図5に基づいて説明してきた例は
フラッシュEPROMの消去に関するものである。相応
する過程は相応の方式にてあらゆる処理のもとでも行わ
れるものである。これはフラッシュEPROMの記憶内
容の変更を目的とする(つまり書き換え、プログラム変
更等)。
【0083】前述したように本発明によれば、正規の誘
因のある場合にしかフラッシュEPROの消去及び/又
は書き換えが実施されないことが確実に保障される。
【図面の簡単な説明】
【図1】本発明による方法ステップの基本的なフローチ
ャートである。
【図2】フラッシュEPROMの所定の消去を示したフ
ローチャートである。
【図3】フラッシュEPROMの所定の消去を示したフ
ローチャートである。
【図4】フラッシュEPROMの所定の消去を示したフ
ローチャートである。
【図5】フラッシュEPROMの所定の消去を示したフ
ローチャートである。
【図6】不正な消去及び/又は書き換えから保護すべき
フラッシュEPROMを含んだ装置を示した図である。
【符号の説明】
10 自動車制御装置 11 マイクロコンピュータ 12 入出力回路 13 中央処理装置 14 プログラマブルメモリ 15 RAM 16 ROM 20 外部プログラミング装置 21 シリアルインターフェース
───────────────────────────────────────────────────── フロントページの続き (72)発明者 カールステン フランツ ドイツ連邦共和国 マルクグレーニンゲン パッペルヴェーク 36 (72)発明者 ウード シュルツ ドイツ連邦共和国 ファイヒンゲン アウ シュトラーセ18 (72)発明者 ヴァルター ナクル オーストリア国 ヴィルファースドルフ カペレンシュトラーセ 40

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 プログラミング装置を介してプログラミ
    ング可能な記憶装置を備えた制御装置の作動方法であっ
    て、 前記記憶装置の内容の消去と書き換えはデータ処理プロ
    グラムステップの実施と適用データのもとでそのつど実
    施される形式のものにおいて、 データ処理プログラムステップへのエントリが正規に行
    われているか、正規に行われるか又は正規に行われる可
    能性があることが検出された場合にのみ変更が実施さ
    れ、その適用性の前に消去又は書き換えの誘因のために
    変更を必要とするように、データ処理プログラムステッ
    プ又はデータを準備することを特徴とする、プログラミ
    ング装置を介してプログラミング可能な記憶装置を備え
    た制御装置の作動方法。
  2. 【請求項2】 そのつど準備されるデータ処理プログラ
    ムステップをその変更前に、少なくとも一部実施できな
    いようにもしくは一部だけ正規に実施できないように符
    号化する、請求項1記載のプログラミング装置を介して
    プログラミング可能な記憶装置を備えた制御装置の作動
    方法。
  3. 【請求項3】 メモリ装置(14)のロックの解除のた
    めに記憶装置の内容の消去又は書き換えに対して使用さ
    れるアンロックサイクルを形成し、それに対して所定の
    データを記憶装置の所定のアドレスに送出する、請求項
    1又は2記載のプログラミング装置を介してプログラミ
    ング可能な記憶装置を備えた制御装置の作動方法。
  4. 【請求項4】 前記準備されたデータはその変更前に、
    データ処理プログラムステップがメモリ装置(14)の
    アンロックに適したアンロックサイクルを形成する状態
    にならないような値を有している、請求項3記載のプロ
    グラミング装置を介してプログラミング可能な記憶装置
    を備えた制御装置の作動方法。
  5. 【請求項5】 記憶装置(14)の内容の消去又は書き
    換えが意識的に望まれている状況の存在が検出された場
    合にデータ処理プログラムステップへの正規のエントリ
    にが結びつけられる、請求項1〜4いずれか1項記載の
    プログラミング装置を介してプログラミング可能な記憶
    装置を備えた制御装置の作動方法。
  6. 【請求項6】 外部のプログラミング装置(20)が制
    御装置(10)に接続されていることが検出された場合
    に、データ処理プログラムステップへの正規のエントリ
    が結びつけられる、請求項5記載のプログラミング装置
    を介してプログラミング可能な記憶装置を備えた制御装
    置の作動方法。
  7. 【請求項7】 制御装置(10)に接続された外部プロ
    グラミング装置(20)の作動状態が検出された場合
    に、データ処理プログラムステップへの正規のエントリ
    が結びつけられる、請求項5又は6記載のプログラミン
    グ装置を介してプログラミング可能な記憶装置を備えた
    制御装置の作動方法。
  8. 【請求項8】 データ処理プログラムのステップか、又
    は記憶装置(14)の内容の消去又は書き換え実施後の
    データと、場合によっては制御装置(10)のスイッチ
    オン又はリセットの後のデータに対して、データ処理プ
    ログラムステップへの次のエントリの際に新たな変更な
    しで再び、記憶装置の消去又は書き換えを起こしにくく
    するように処置を施す、請求項1〜7いずれか1項記載
    のプログラミング装置を介してプログラミング可能な記
    憶装置を備えた制御装置の作動方法。
JP15184097A 1996-06-10 1997-06-10 プログラミング装置を介してプログラミング可能な記憶装置を備えた制御装置の作動方法 Pending JPH1083294A (ja)

Applications Claiming Priority (2)

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
DE19623145.0 1996-06-10

Publications (1)

Publication Number Publication Date
JPH1083294A true JPH1083294A (ja) 1998-03-31

Family

ID=7796551

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15184097A Pending JPH1083294A (ja) 1996-06-10 1997-06-10 プログラミング装置を介してプログラミング可能な記憶装置を備えた制御装置の作動方法

Country Status (4)

Country Link
JP (1) JPH1083294A (ja)
DE (1) DE19623145B4 (ja)
FR (1) FR2749697B1 (ja)
GB (1) GB2314180B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006252560A (ja) * 2005-03-10 2006-09-21 Zarlink Semiconductor Ab 遠隔プログラマブル装置の無線リンクを安全にする方法
CN105117652A (zh) * 2015-10-09 2015-12-02 天津国芯科技有限公司 一种基于NAND Flash的SOC启动方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
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
DE19911794B4 (de) 1999-03-17 2005-10-06 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
DE10123170A1 (de) 2001-05-12 2002-11-14 Bosch Gmbh Robert Verfahren zum Betreiben eines Steuergeräts
JP4547846B2 (ja) * 2001-09-28 2010-09-22 株式会社デンソー 車両用発電制御装置
US7003621B2 (en) * 2003-03-25 2006-02-21 M-System Flash Disk Pioneers Ltd. Methods of sanitizing a flash-based data storage device
JP6618480B2 (ja) * 2014-11-12 2019-12-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 更新管理方法、更新管理システム及び制御プログラム
WO2020253952A1 (en) * 2019-06-19 2020-12-24 Huawei Technologies Co., Ltd. Apparatus and method for kernel runtime randomization

Family Cites Families (6)

* Cited by examiner, † Cited by third party
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

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006252560A (ja) * 2005-03-10 2006-09-21 Zarlink Semiconductor Ab 遠隔プログラマブル装置の無線リンクを安全にする方法
CN105117652A (zh) * 2015-10-09 2015-12-02 天津国芯科技有限公司 一种基于NAND Flash的SOC启动方法

Also Published As

Publication number Publication date
FR2749697B1 (fr) 2006-06-02
FR2749697A1 (fr) 1997-12-12
DE19623145A1 (de) 1997-12-11
GB9711251D0 (en) 1997-07-23
GB2314180A (en) 1997-12-17
GB2314180B (en) 1998-04-22
DE19623145B4 (de) 2004-05-13

Similar Documents

Publication Publication Date Title
JP3822658B2 (ja) 制御装置
JP4708514B2 (ja) マイクロプロセッサカードにセキュアプログラムをロードする方法及びセキュアプログラムを含むマイクロプロセッサカード
US7039779B2 (en) Access monitor and access monitoring method for monitoring access between programs
RU2220443C2 (ru) Способ контроля выполнения компьютерных программ в соответствии с их назначением
JP4925422B2 (ja) データ処理装置内コンテンツへのアクセス管理
JPH08211915A (ja) 制御装置
JP4135220B2 (ja) 車両用電子制御装置
JPH1083294A (ja) プログラミング装置を介してプログラミング可能な記憶装置を備えた制御装置の作動方法
JP4865126B2 (ja) メモリ装置の操作確認方法,外部プログラミング装置及び車両用デジタル制御装置。
CN111026683A (zh) 访问存储器的方法
KR100473439B1 (ko) 프로그램 기억식 제어부를 오버라이트로부터 보호하기 위한 방법
JP4880105B2 (ja) 制御装置のメモリ機能保護方法及び制御装置
US7207066B2 (en) Method for protecting a microcomputer system against manipulation of data stored in a storage arrangement of the microcomputer system
CN114091008A (zh) 用于对控制设备进行安全更新的方法
JP3995717B2 (ja) プログラミング可能メモリ装置を有する制御装置の作動方法
US7293148B2 (en) Method for reliably verifying a memory area of a microcontroller in a control unit and control unit having a protected microcontroller
CN113935011A (zh) 用于执行控制设备的安全启动序列的方法
JP7375201B2 (ja) インタフェースを備える装置およびインタフェースを備える装置の動作方法
CN113935012A (zh) 用于执行控制设备的安全启动序列的方法
JP2002538532A (ja) Icカードのアプリケーションに対するアクセス保護装置
US7406717B2 (en) Method for operating a control device
US20260072850A1 (en) Control Device And Method For Initializing A Control Device
JP3831429B2 (ja) 車両制御装置
EP4675477A1 (en) Method for configuring a microcontroller and corresponding microcontroller
JPH11203115A (ja) 制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060719

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20061017

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20061020

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070405

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070702

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070705

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20071011