JP2000293440A - 制御装置のメモリ機能保護方法及び制御装置 - Google Patents

制御装置のメモリ機能保護方法及び制御装置

Info

Publication number
JP2000293440A
JP2000293440A JP2000081808A JP2000081808A JP2000293440A JP 2000293440 A JP2000293440 A JP 2000293440A JP 2000081808 A JP2000081808 A JP 2000081808A JP 2000081808 A JP2000081808 A JP 2000081808A JP 2000293440 A JP2000293440 A JP 2000293440A
Authority
JP
Japan
Prior art keywords
memory
programming
program
identifier
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000081808A
Other languages
English (en)
Other versions
JP4880105B2 (ja
Inventor
Rolf Kohler
コーラー ロルフ
Guenter Braun
ブラウン ギュンター
Matthias Kottmann
コットマン マティアス
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 JP2000293440A publication Critical patent/JP2000293440A/ja
Application granted granted Critical
Publication of JP4880105B2 publication Critical patent/JP4880105B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operations
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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/22Safety or protection circuits preventing unauthorised or accidental access to memory cells

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【課題】 消去あるいはプログラミング中に中断又は障
害が発生しても,制御装置のメモリ機能を保護する。 【解決手段】 メモリの正しい消去及び/又はプログラ
ミングを明示する識別子(K)を,前記メモリの消去及
び/又はプログラミングされる領域に書き込むプログラ
ミング手段を有し,前記メモリ内のデータ及び/又はプ
ログラムを消去及び/又はプログラミングする制御装置
のメモリ機能保護方法であって,前記メモリに書き込ま
れた前記識別子(K)は,前記メモリ内のデータ及び/
又はプログラムを消去及び/又はプログラミングする前
に,あるいは消去及び/又はプログラミングする際に変
更される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】 本発明は,特に車両内の制
御装置のメモリ機能保護方法及び制御装置に関し,さら
に詳細には,メモリに正しい消去及び/又はプログラミ
ングを明示する識別子が書き込まれる制御装置のメモリ
機能保護方法及び制御装置に関する。
【0002】
【従来の技術】 ドイツ公開公報第DE1961934
5A1号には,制御機能を実行するのに必要な制御機能
プログラムと制御機能データとを格納するプログラミン
グ制御機能を有するメモリ装置を具備する制御装置の制
御方法が記載されている。上記方法は,制御機能プログ
ラム及び制御機能データをメモリ装置に書き込むと同時
に,制御機能プログラムあるいは制御機能データ以外の
自己制御データがメモリ装置内部の予め設定された箇所
に書き込まれることを特徴としている。このとき,制御
装置は,所定の自己制御データが予め設定された箇所に
格納されているか否かに応じて制御する。
【0003】また,ドイツ公開公報第DE196231
45A1号は,プログラミング装置を介してプログラミ
ング可能なメモリ装置を有する制御装置の制御方法が開
示される。このとき,メモリ装置の内容の消去あるいは
上書きは,各データ処理プログラム部分を実行中あるい
はデータを使用中に実行される。上記公報に記載の方法
は,少なくともデータ処理用のデータの一部あるいは全
部が,消去又は上書きされて使用される前に,修正され
ることを特徴としている。
【0004】この修正は,データ処理プログラム部分内
で規定通りにエントリーが実行されていること,実行さ
れること,あるいは実行できることが確認された場合に
のみおこなわれる。このとき,書き込むべきデータのみ
が修正され,既に書き込まれているデータは修正されな
い。このため,プログラミングの際の中断や障害に起因
する誤機能あるいは機能不良を回避することができな
い。メモリ内で中断又は障害が一時記憶されない場合に
は,このような状況が多く発生する。このため,上記修
正は,プログラミング可能なメモリ装置内に格納されて
いるデータが規定に従わずに消去あるいは上書きされる
ことを,簡易な方法で確実に排除するために,設けられ
る。
【0005】
【発明が解決しようとする課題】 しかしながら,ドイ
ツ公開公報第DE19619345A1号に記載されて
いる自己制御データは,本来格納すべき制御機能プログ
ラム及び制御機能データ(即ち,有用データ)の構成部
分ではなく,別のビットパターンとして予定されるの
で,余分なメモリスペースが必要である。また,このと
き,自己制御データの照合は,規則通りにアクセスでき
ない有用データあるいはメモリ装置内に格納されない有
用データの実行を妨害するため,アクセスできない有用
データあるいは格納されない有用データの発生原因や発
生時点は記録されない。さらに,この方法では,プログ
ラミング前に完全に消去できるメモリ装置あるいはその
構成要素でしか使用することができないので,単なるオ
ーバープログラミング(即ち,データの上書き)は,実
行されない。また,上記公報は,一部にエラーのあるプ
ログラミングを無視して一種の非常制御プログラムを実
行することを目的とし,機能するデータのみが使用され
る。
【0006】また,ドイツ公開公報第DE196231
45A1号は,修正が既に実行されている場合には,プ
ログラムを保護することができない。かかる障害あるい
は中断により,データの損失,不完全なプログラミング
が発生し,制御装置の機能不全や誤機能が発生する。
【0007】従って,本発明の課題は,制御装置のメモ
リ機能保護方法及びその装置に関し,さらに詳細には,
消去及び/又はプログラミングの中に中断又は障害が発
生した場合に,制御装置のメモリ機能を保護することが
可能な新規かつ改良された制御装置のメモリ機能保護方
法及びその装置を提供することにある。
【0008】
【課題を解決するための手段】 上記課題を解決するた
め,請求項1に記載の発明では,メモリの正しい消去及
び/又はプログラミングを明示する識別子(K)を,前
記メモリの消去及び/又はプログラミングされる領域に
書き込むプログラミング手段を有し,前記メモリ内のデ
ータ及び/又はプログラムを消去及び/又はプログラミ
ングする制御装置のメモリ機能保護方法であって,前記
メモリに書き込まれた前記識別子(K)は,前記メモリ
内のデータ及び/又はプログラムを消去及び/又はプロ
グラミングする前に,あるいは消去及び/又はプログラ
ミングする際に変更されることを特徴とする制御装置の
メモリ機能保護方法が提供される。
【0009】本項記載の発明では,識別子が,メモリ内
のデータ及び/又はプログラムを消去及び/又はプログ
ラミングする前に,あるいは消去及び/又はプログラミ
ングする際にプログラミングの完全性あるいは正しいと
予測される識別子に変更されるので,プログラミングが
完全でない場合にはプログラムが実施されず,あるいは
書き込みが完全でない場合にはデータが使用されること
はない。従って,プログラミングあるいは消去中に発生
したエラーは,実行データの修正後に捕捉できる。
【0010】また,請求項2に記載の発明のように,前
記識別子(K)は,後に消去及び/又はプログラミング
されるメモリ領域,あるいは,最後に消去及び/又はプ
ログラミングされるメモリ領域に書き込まれる如く構成
すれば,識別子(K)は,できるだけ後の領域(好まし
くは最後にプログラミングされる領域)に書き込まれる
ので,プログラミング処理が完全に正しく終了した場合
にのみ,正確な識別子(K)が提供される。
【0011】また,請求項3に記載の発明のように,前
記識別子(K)は,前記データ及び/又は前記プログラ
ム構成部分として形成される如く構成すれば,識別子
が,プログラム(特にプログラムアイデンティファイヤ
自体)の構成部分として使用されるので,新たにメモリ
スペースを設ける必要がない。
【0012】上記課題を解決するため,請求項4に記載
の発明では,メモリ内のデータ及び/又はプログラムを
オーバープログラムする手段を有する制御装置のメモリ
機能保護方法であって,前記識別子(K)は,前記メモ
リ内の前記データ及び/又は前記プログラムをオーバー
プログラミングする際に,消去及び/又はプログラミン
グされるメモリ領域に書き込まれたデータ及び/又はプ
ログラムから選択されることを特徴とする制御装置のメ
モリ機能保護方法が提供される。
【0013】本項記載の発明では,プログラミング処理
に従う消去及び/又はプログラミングの前にデータ及び
/又はプログラムを明確に消去することを省略すること
ができる。即ち,メモリ内容の処理を阻止するには,識
別子を単に識別できなくするだけで十分でありメモリ内
容を消去する必要はないため,前以て完全に消去せず
に,単純かつ迅速なオーバープログラミングにより書き
込めるメモリも使用できる。
【0014】また,請求項5に記載の発明では,前記識
別子(K)は,後に消去及び/又はプログラミングされ
るメモリ領域,あるいは,最後に消去及び/又はプログ
ラミングされるメモリ領域に書き込まれたデータ及び/
又はプログラムから選択される如く構成すれば,識別子
(K)は,プログラム領域のメモリ領域のように,でき
るだけ後の領域に(好ましくは最後にプログラミングさ
れる領域に)書き込まれ,プログラミング処理が完全に
正しく終了した場合のみ正確な識別子(K)が提供され
る。
【0015】また,請求項6に記載の発明のように,前
記選択された識別子(K)は,前記データ及び/又は前
記プログラムを消去及び/又はプログラミングする前
に,あるいは,消去及び/又はプログラミングの際に変
更される如く構成すれば,識別子が,プログラミングが
完全であり正しいことが予測される識別子に変更される
ので,プログラミングが完全でない場合にはプログラム
が実施されず,あるいは書き込みが完全でない場合には
データが使用されることはない。
【0016】また,請求項7に記載の発明のように,前
記識別子(K)は,前記メモリに書き込まれた前記デー
タ及び/又は前記プログラムの予め設定された長さの少
なくとも一部分として選択され,あるいは予め設定され
る如く構成すれば,識別子(K)の基本位置であるデー
タ及び/又はプログラム部分を容易に再び認識すること
ができる。
【0017】また,請求項8に記載の発明のように,前
記識別子(K)は,前記データ及び/又は前記プログラ
ムの消去及び/又はプログラミングの際に識別されない
ように変更される如く構成すれば,識別子が,変更によ
り,例えば消去又はオーバープログラミングにより無効
にされ,比較照会あるいは探索照会の際に認識されない
ので,プログラミングが実行されずメモリを保護するこ
とができる。
【0018】また,請求項9に記載の発明のように,前
記識別子(K)は,各前記データ及び/又は前記プログ
ラムを識別するプログラム識別子の一部分として形成さ
れる如く構成すれば,プログラミングの完全性あるいは
正しいと予測される識別子が,プログラム(特にプログ
ラムアイデンティファイヤ自体)の構成部分として使用
されるので,新たにメモリスペースを設ける必要がな
い。
【0019】また,請求項10に記載の発明のように,
前記識別子(K)は,前記メモリの消去及び/又はプロ
グラミングの中断後,及び/又は消去及び/又はプログ
ラミング後に,照合される如く構成すれば,プログラム
を実行すべきか否かを判断することができる。
【0020】また,請求項11に記載の発明のように,
前記メモリの消去及び/又はプログラミングの中断は,
前記メモリ内の一時記憶として格納される如く構成すれ
ば,例えば,消去又はプログラミング中に中断やリセッ
トされ,あるいは他の理由で装置電圧が低下した場合に
は,メモリ装置内(特にプログラム用のメモリ装置自
体)中で,障害の時点と原因をメモリ内に格納でき,中
断されたブートプログラムへの新たなエントリーが行う
ことができる。
【0021】また,請求項12に記載の発明のように,
前記メモリの消去及び/又はプログラミング前に,前記
識別子及び/又は前記一時記憶が照合されて評価される
如く構成すれば,識別子あるいは一時記憶を照合するこ
とにより,正しく書き込まれたメモリあるいはそのデー
タ及び/又はプログラムのみが制御のために読み出さ
れ,使用することができる。
【0022】上記課題を解決するため,請求項13に記
載のように,メモリの正しい消去及び/又はプログラミ
ングを明示する識別子(K)を,消去及び/又はプログ
ラミングされるメモリ領域に書き込むプログラミング手
段を有し,前記メモリ内のデータ及び/又はプログラム
を消去及び/又はプログラミングする制御装置であっ
て,前記プログラミング手段は,前記データ及び/又は
前記プログラムの消去及び/又はプログラミングの前
に,あるいは,消去及び/又はプログラミングの際に,
前記メモリ内に書き込まれた識別子(K)を変更するこ
とを特徴とする制御装置が提供される。
【0023】本項記載の発明では,識別子が,プログラ
ミングが完全であり正しいと予測される識別子に変更さ
れるので,プログラミングが完全でない場合にはプログ
ラムが実施されず,あるいは書き込みが完全でない場合
にはデータが使用されることはない。
【0024】上記課題を解決するため,請求項14に記
載の発明のように,メモリ内のデータ及び/又はプログ
ラムをオーバープログラミングする手段を有する制御装
置であって,前記オーバープログラミング手段は,前記
メモリの正しい消去及び/又はプログラミングを明示す
る識別子(K)を,消去及び/又はプログラミングされ
るメモリ領域に書き込まれたデータ及び/又はプログラ
ムから選択することを特徴とする制御装置が提供され
る。
【0025】本項記載の発明では,プログラミング処理
に従う消去及び/又はプログラミングの前にデータ及び
/又はプログラムを明確に消去することを省略すること
ができる。即ち,メモリ内容の処理を阻止するには,識
別子を単に識別できなくするだけで十分でありメモリ内
容を消去する必要はないため,前以て完全に消去せず
に,単純かつ迅速なオーバープログラミングにより書き
込めるメモリも使用できる。
【0026】
【発明の実施の形態】 以下,本発明の好適な実施の形
態について,添付図面を参照しながら詳細に説明する。
尚,以下の説明及び添付図面において,同一の機能及び
構成を有する構成要素については,同一符号を付するこ
とにより,重複説明を省略する。
【0027】(第1の実施の形態)以下,図1を参照し
ながら,第1の実施の形態について説明する。図1は,
本実施形態にかかるメモリ機能保護方法を実施するため
の制御装置である。
【0028】図1に示すように,符号100は,コンピ
ュータシステム(特に制御装置)を示す。本実施形態に
おける制御装置100の内部構造は,単に一例を示すも
のであり,各種変更することができる。本実施形態にお
いては,マイクロプロセッサユニット(計算ユニット)
106を有する構造を採用している。
【0029】マイクロプロセッサユニット106は,伝
送系システム109(特にバスシステム)を介して他の
構成要素と接続される。このマイクロプロセッサユニッ
ト106には,メモリ,コプロセッサなどが設けられて
いる。また,マイクロプロセッサユニット106は,各
構成部品範囲あるいは機能範囲(即ち,使用される構成
要素など)に応じて,マイクロプロセッサチップ(セン
トラル プロセッシング ユニット),マイクロプロセ
ッサ,マイクロコントローラ,マイクロコンピュータ,
制御ユニット(エレクトロニック コントロール ユニ
ット),計算ユニットなどの名称を任意に使用し,変更
することができる。
【0030】符号104,105及び108は,制御装
置内に設けられる種々のメモリ装置である。符号105
は,特にデータ及び/又はプログラムの一時記憶に使用
される,例えばRAM形式の揮発メモリである。同様
に,RAM105からプログラムルーチンを開始するこ
とができる。
【0031】符号104は,例えばフラッシュEPRO
Mメモリなどの消去可能な不揮発メモリである。このフ
ラッシュEPROMメモリは,消去及び/又はプログラ
ミングに関して全く異なる複数のフラッシュEPROM
を使用することができる。
【0032】例えば,第1のフラッシュEPROMは,
例えば新しくプログラミングする前に,全部消去するフ
ラッシュEPROMである。第2のフラッシュEPRO
Mは,例えばブロック単位で消去及び/又はプログラミ
ングするフラッシュEPROMである。第3のフラッシ
ュEPROMは,明確な消去は必要なく,例えばページ
単位でプログラミングできるフラッシュEPROMであ
る。
【0033】また,不揮発性メモリ104以外に,新た
な不揮発性メモリ108を別途設けることもできる。こ
の不揮発性メモリ108は,例えばROMなどの消去不
可能な固定メモリ,あるいは,例えばフラッシュEPR
OMの形式のEPROMなどの消去可能な不揮発性メモ
リを使用することができる。ここで注意すべきことは,
メモリ装置の配置やメモリ装置の使用は任意であって,
その数は増減できる点である。なお,本実施形態におい
ては,プログラミング可能あるいは消去可能な不揮発性
あるいはリフレッシュ可能なメモリ装置104を採用し
ている。
【0034】符号107は,可能な周辺アッセンブリ
(即ち,外部の周辺装置)を接続するためのインターフ
ェイス装置である。必要に応じて,例えば他の周辺アッ
センブリ,メモリ装置,マイクロプロセッサ又はマイク
ロコントローラなど装置110で示すような他の装置と
アッセンブリをバスシステム109に接続することがで
きる。
【0035】プログラミング自体は,まず,データ担体
を挿入することにより制御装置100内で実行される。
また,例えば消去不可能な不揮発性メモリ108などの
内部メモリからのデータにより実行することもできる。
また,外部のプログラミング装置101(例えば第2の
制御装置あるいはコンピュータ)を,インターフェイス
102を介してシリアルに,あるいは可能なバスシステ
ム103を介してパラレルに設置して,プログラム及び
データを書込むことができる。
【0036】内部プログラミングの場合には,一組の使
用プログラム及び/又はデータを例えばROMなどの不
揮発メモリ108に既に書き込まれているデータメモリ
から揮発性メモリ105及び/又は消去可能な不揮発性
メモリ104にロードして,必要に応じて実行される。
同様に,プログラム及び/又はデータは,周辺アッセン
ブリ107に接続されている周辺装置(例えばディスク
ドライブ又はCD−ROMなどのデータ担体の読取り装
置)を介して,データ担体により提供することもでき
る。当然ながら,外部プログラミング装置101におい
ても,同様である。
【0037】以下,図2に基づいて,本実施形態にかか
る不揮発性メモリ104を,詳細に説明する。図2は,
本実施形態にかかる不揮発性メモリ104を,詳細に説
明するためのブロック図である。なお,本実施形態にお
いては,メモリ領域内が複数のメモリ領域200−20
5に分割されているものとして説明する。
【0038】ここで,符号206は,プログラムメモリ
領域205内のセルあるいはメモリ領域を示す。本実施
形態で示すメモリ領域の割り当ては,単に説明のために
使用するものであり,異なる複数のメモリ領域を割り当
てることもできる。
【0039】例えばメモリ領域200−203は,ベク
トルテーブル及びベクトルデータを有する。また,メモ
リ領域204は,プログラムルーチンを有し,プログラ
ムメモリ領域205は少なくとも1つの使用プログラム
を有する。
【0040】内部プログラミングの場合には,例えばメ
モリ領域200内には,このメモリ又は他のメモリのメ
モリ領域へのエントリーを有するブートベクトルが設け
られている。
【0041】メモリ領域201には,例えばマイクロプ
ロセッサ106を介してメモリの入出力調整を実行する
所定の切換え機能が埋め込まれている。メモリ領域20
2には,利用かあるいはプログラミングかに応じて例え
ば他のコースを決定する例えば始動ルーチンが設けられ
ている。メモリ領域203は,他のデータ及び/又はル
ーチンが必要に応じて設けられる。
【0042】メモリ領域204には,メモリ領域202
内の始動プログラムを介して例えば揮発メモリ(例えば
ROM)105にロードされ,他のプログラミング処理
を制御する例えばプログラムルーチンが格納されてい
る。
【0043】また,図2に示すメモリ領域の分割は,選
択的に行われる。例えば外部プログラミング装置101
を使用する場合にはメモリ領域200−205の一部は
省略することができる。このとき,不揮発メモリ104
のプログラミングは,通常,最下位のメモリ領域から最
上位のメモリ領域に向かって実行され,最後にメモリ領
域206がプログラミングされる。
【0044】次いで,図3に基づいて,本実施形態にか
かる不揮発メモリ104内のプログラミング識別子のデ
ータ及び/又はプログラム部分を説明する。図3は,特
に不揮発メモリ104内のプログラミング識別子300
のデータ及び/又はプログラム部分を示すブロック図で
ある。
【0045】図3に示すように,プログラム識別子30
0は,プログラミング処理の後の順番で,好ましくは最
後にプログラミングされるように,例えばプログラムメ
モリ領域205のメモリ領域206に設けられる。
【0046】プログラム識別子300は,複数の下位部
分301−304に分割される。かかる下位部分301
−304は,例えば予め設定可能な数のビット位置,文
字,数あるいは任意の記号からなる予め設定可能な長さ
のコラムを有する。
【0047】プログラミング処理前あるいはプログラミ
ングの際に,少なくとも1つの下位部分(例えば下位部
分301)が識別子(K)として選択され,後の照合の
ために格納される。なお,例えば上記データ及び/又は
プログラムの場合,あるいは反復されるプログラミング
処理の場合には,所定の識別子を下位部分に固定するこ
ともできる。
【0048】また,識別子(K)は,複数のデータ及び
/又はプログラム部分あるいはその下位部分から構成す
ることもできる。このとき識別子(K)に含まれる下位
部分は,データ及び/又はプログラム内のあらゆる位置
で選択することができる。識別子(K)の基本位置は,
例えばプログラム識別子300のように,容易に再び認
識できるデータ及び/又はプログラム部分が選択される
のが好ましい。このことにより,識別子として機能する
1又は複数の下位部分も同様に容易に見出すことができ
る。この識別子(K)の正確な位置は,識別子(K)の
照合を実行するために,変更後も明確でなければならな
い。
【0049】例えば識別子(K)として選択された下位
部分301は,例えば6個の任意の記号を有する。例え
ばG47F03である識別子(K)(即ち,プログラム
識別子300の下位部分301)は,変更不可能である
こと(即ち一義的であること)から選択できる。このと
き,データ及び/又はプログラム内の下位部分の正確な
位置は,明確でなくても良い。
【0050】一方,プログラム識別子300の最初の下
位部分301である識別子(K)の位置,記号,ビット
数は予め設定できるので,正確な位置が分かっている場
合には,プログラミングされるあるいはプログラミング
されたデータ及び/又はプログラム内で高い頻度で生じ
る識別子(K)を使用することもできる。この識別子
(K)は自由に選択できるが,最後にプログラミングさ
れる下位部分を識別子(K)として設定するのが効果的
である。
【0051】次いで,図4に基づいて,本実施形態にか
かるメモリ機能を保護するプログラムの実行方法を説明
する。図4は,本実施形態にかかるメモリ機能を保護す
るプログラムの実行方法を示すフローチャートである。
なお,本実施形態においては,例えば制御装置を制御す
る実際のプログラム(特に車両の駆動シーケンスを制御
する制御装置における走行プログラム)に基づいて,例
えば不揮発性メモリ104などのメモリを保護するプロ
グラミング実行方法である。
【0052】本実施形態においては,制御装置がスイッ
チオンする際には,例えばソフトウェアプロトコルを介
してプログラムセッションが開始され,自動的に駆動シ
ステムが変更され,次いでプログラミングされる。
【0053】かかる保護は,メモリ全体,1ブロックあ
るいは1ページを消去あるいはプログラミングする前
に,使用されるフラッシュEPROMの種類に応じてメ
モリ全体の最終ブロック,最終ページあるいは最終セル
の最後に書き込まれている以前の識別子が変更されるこ
とにより,あるいは例えば消去又はオーバープログラミ
ングが無効にされることにより,比較照会又は探索照会
の際に認識されないことで実行される。
【0054】かかる識別子(K)は,例えば文字あるい
は数字からなる複数場所のコードであり,消去あるいは
ゼロにより上書きされる。このため,データ及び/又は
プログラム,例えばプログラム識別子(いわゆるプログ
ラムアイデンティファイヤ)の以前の部分が使用される
のが好ましい。このことにより,識別子(K)を新たに
プログラミングする必要がない。
【0055】プログラミング処理あるいは消去プログラ
ミング処理が全て終了し,識別子(K)が再び書き込ま
れた場合にのみ,プログラムが再び有効とされる。消去
あるいはプログラミング中に何らかの中断やリセットが
発生した場合,あるいは他の理由で装置電圧が遮断した
場合には,変更された識別子(K)はまだ再び書き込ま
れず,プログラムは有効とならないので,プログラムが
実行されることはない。このとき,使用されたフラッシ
ュEPROM内でこの中断が一時記憶される。即ち,識
別子(K)が無効であることから,新たな始動の際に,
最初に存在しているプログラムが実行可能であるか否か
を判断することができる。
【0056】識別子(K)が無効であることからプログ
ラムが実行されない場合には,自動的に例えばROM形
式の消去不可能な不揮発性メモリ108,あるいはフラ
ッシュEPROMなどの不揮発メモリ104の消去不可
能な部分(特にブートステップ)のプログラミン駆動シ
ステムが呼び出され,新たなプログラミングが待機され
る。したがって,プログラミングされなかった,あるい
は不完全にプログラミングされた,又は誤ってプログラ
ミングされたフラッシュEPROMなどの不揮発メモリ
104は,新たなプログラミングを阻止する原因とはな
らない。
【0057】まず,ステップ400において,処理を開
始する。次いで,ステップ401では,複数の異なる処
理プログラム及びプログラムルーチンから選択して,処
理プログラムが決定される。例えば車両の制御装置の場
合には,例えば種々の走行プログラム,少なくとも1つ
のブートプログラムなどが該当する。
【0058】このとき,処理プログラムの決定は,プロ
グラム識別子300(いわゆるプログラムアイデンティ
ファイヤ)の設定により,あるいは1又は複数のビット
位置を有するフラグを選択することにより実行される。
この設定は,ステップ402,403あるいは404で
照合される。
【0059】ステップ404は,選択的に他のプログラ
ムに移行する判断ステップである。このステップ404
のように他に判断ステップを付加することで,他の複数
のプログラム(特に走行プログラムとブートプログラム
又はプログラミングルーチン)に移行することができ
る。
【0060】このとき,同様にステップ401におい
て,識別子(K)あるいは1又は複数の該当する下位部
分を決定するのが好ましい。このことにより,例えば反
復するプログラミング処理では,プログラミング処理の
全体の識別子(K)を決定することができるほか,プロ
グラミング処理毎にも設定きるので,全体として可変に
することができる。
【0061】ステップ402では,プログラム識別子あ
るいはフラグ選択により,走行プログラム1が選択され
たか否かが判断される。走行プログラム1が選択された
場合には,ステップ405に移行する。ステップ405
では,続いて走行プログラム1に必要な初期化を実行す
るリセットが作動され,通信が構築される。
【0062】ステップ402で,走行プログラム1が選
択されないと判断される場合には,例えばステップ40
3に移行し,プログラミング意図が存在するか否かが判
断される。即ち,ステップ403では,ブートステップ
あるいはブートプログラムが,後続のプログラミングの
証しとして選択されているか否かが判断される。
【0063】選択されていない(存在しない)と判断さ
れる場合には,例えばステップ404などの他のステッ
プで,他のいずれかのプログラムが選択されたか判断さ
れ,例えばステップ404に基づいて他のプログラムへ
飛躍することができる。一方,使用プログラムのいずれ
もが選択されていない場合には,ステップ414に移行
し,処理が終了する。
【0064】 一方,ステップ403で,ブートプログ
ラム(例えばブートプログラム1)が選択されていると
判断される場合には,ステップ410に移行する。ここ
でも同様に,復帰(リセット)と,ブートプログラム1
に従属する初期化と通信の構築が実行される。その後,
ステップ411に移行し,プログラミング装置のプログ
ラミングモードのセッションが開始される。
【0065】その後,ステップ412に移行し,識別子
(K)がプログラムの一部(特に好ましくはプログラム
識別子300,即ち,プログラムアイデンティファイヤ
の一部)として変更され,認識できないようにされる。
このとき,識別子(K)の変更前に,この識別子並びに
プログラミング処理の中断で実行された一時記憶が評価
される。同様に,ここで識別子(K)の変更直前に初め
て,制御装置100あるいは外部プログラミング装置1
01により,識別子(K)を選択あるいは設定すること
ができる。
【0066】また,ステップ412では,迅速に消去あ
るいはプログラミングするために,ボーレート切換えを
実行することができる。このとき,より少ない通常通信
レートからより高い消去及び/又はプログラミングレー
トに切り換えられる。
【0067】その後,ステップ413に移行し,本来の
消去あるいはプログラミング処理が実行され,上記した
例えばページ単位,ブロック単位,メモリ全体又はセル
単位で,各使用されるメモリに消去及び/又はプログラ
ミングされる。
【0068】次いで,ステップ415に移行し,このプ
ログラミング処理の最後に,あるいは例えば障害,リセ
ット又は制御装置100あるいはマイクロプロセッサ1
06の無電流状態によりプログラミング処理が中断した
後に,識別子(K)が正しいか否かが照合される。
【0069】識別子(K)が正しくないと判断された場
合には,ステップ416に移行し,中断されたブートプ
ログラムへの新たなエントリーが行われる。このとき,
例えば中断の原因と時点に関する一時記憶がメモリ(特
にプログラミングされるメモリ)に書き込まれる。
【0070】一方,識別子(K)が正しいと判断された
場合には,ステップ414に移行し,処理が終了する。
このとき,中断のないの完全なプログラミング後にも,
識別子(K)または場合により存在する一時記憶の照合
を実行することもできる。
【0071】識別子(K)は,図2のプログラムメモリ
領域205のメモリ領域206のように,できるだけ後
に(好ましくは最後に)プログラミングされる領域に書
き込まれるので,プログラミング処理が完全にかつ正し
く終了した場合にのみ,正確な識別子(K)が提供され
る。
【0072】安全上の理由から,原則的に使用プログラ
ム(特に車両の走行プログラム)の開始時に(必要に応
じてプログラミングあるいはブートプログラムの開始時
に),ステップ402,403,404…において,識
別子(K)と場合によって中断時の一時記憶も照合され
て評価することができる。このとき,正しいプログラム
が選択された後,同様に識別子(K)及び/又は中断時
の一時記憶が照合されて,正しいと判断された場合にの
み,使用プログラムにエントリーされるのが好ましい。
【0073】ブートプログラム(例えばプログラミング
ルーチン)にエントリーしようとする場合(プログラミ
ングが実行される場合)には,少なくとも識別子(K)
が正しくない場合,あるいは一時記憶が存在する場合に
は,その事実が表示される。また,メモリプログラミン
グをセル単位,ページ単位又はブロック単位で保護する
場合には,さらに,データあるいはプログラムのプログ
ラムされない全ての部分で,識別子が正しいか否か,あ
るいは一時記憶が存在するか否か,を照合することがで
きる。
【0074】消去あるいはプログラミング処理の開始前
に(即ち,ステップ412において),識別子(K)が
認識できないよう変更される。このとき,変更される識
別子(K)は,プログラムの構成部分であるのが好まし
い。
【0075】ステップ401で,ブートプログラムでは
なく例えば走行プログラム(即ち,使用プログラム)が
選択される場合には,ステップ402,403,404
あるいは場合によって以降のステップで認識される。か
かる走行プログラム1の場合には,ステップ402を介
してステップ405に移行し,上記処理が実行される。
【0076】ステップ406では,例えば使用プログラ
ムの処理中に,プログラミングセッションを開始すべき
か否かが判断される。開始すべきでないと判断される場
合には,ステップ408に移行し,既にメモリ(特に不
揮発メモリ)104内で選択されたプログラムが処理さ
れ,最終ステップ414に移行する。
【0077】一方,ステップ406で使用プログラム
(特に走行プログラム)1の内部にプログラミング意図
が認識された場合には,ステップ407に移行する。ス
テップ407では,所定の条件に従ってプログラミング
モードのセッションが開始される。この条件は,例え
ば,特にデフォルトモードと関係するエンジンの未始
動,特にボーレート変換が要求されている場合の承認
(即ちシンタックスが正しいこと),などが挙げられ
る。かかる条件は,同様にステップ411で照会され,
各条件を遵守して様々なエラー報告が詳細に出力され
る。
【0078】当然ながら,プログラミングモードのため
のこれらの条件が満たされている場合には,特にソース
アドレスと目標アドレスが他のメモリあるいはメモリ領
域へ退避されて,ソフトウェアリセットが導入される。
このとき,代わりに,不揮発性メモリ(例えばフラッシ
ュEPROM)104のプログラミングを実施すべきこ
とを表示するコードをセットすることもできる。ソフト
ウェアリセットが付加される場合には,リセット後に初
期化が実施され,フラッシュプログラミングのための入
力されたコードが照会される。
【0079】コードが正しいと判断される場合には,こ
のコードは,例えば,この行為に基づいて後に新しく同
定できるようにするために,所望に変更される。この変
更は,例えばコードを1ビット右へシフトすることによ
り実行できるほか,他の方法でも変更できる。
【0080】その後,ステップ409では,通信を確立
する機能が呼び出され,ブートプログラムに関する通信
が確立される。このため,以前のコードは既に存在せ
ず,所望に変更されたコードが認識される。
【0081】また,ステップ409では,上記ステップ
410のブートプログラムあるいはブートステップ内の
通信開始の場合と同様に,初期化が実行される。このと
き,同様に,通常の通信伝送率,通信実行の送信調節な
どの初期化が行われる。このとき,通信を確立する場合
と同様に,例えばボーレート切換えのフラグがセットさ
れ,通信経過における正の応答の送信直後に,ステップ
412で,伝送率あるいはボーレートが再び切り換える
ことができる。ここでも同様に,プログラミングモード
のセッションがアクティブにセットされる。通信確立の
途中の正の応答後に,それがバッファに書き込まれて,
送信処理が開始される。
【0082】その後,ステップ412に移行し,ボーレ
ート切換えによりブートプログラム内の他のシーケンス
が再び開始される。
【0083】以上,本発明に係る好適な実施の形態につ
いて説明したが,本発明はかかる構成に限定されない。
当業者であれば,特許請求の範囲に記載された技術思想
の範囲内において,各種の修正例及び変更例を想定し得
るものであり,それらの修正例及び変更例についても本
発明の技術範囲に包含されるものと了解される。
【0084】
【発明の効果】識別子が,メモリ内のデータ及び/又は
プログラムを消去及び/又はプログラミングする前に,
あるいは消去及び/又はプログラミングする際にプログ
ラミングの完全性あるいは正しいと予測される識別子に
変更される。この変更した識別子によりプログラミング
が完全でない場合にはプログラムが実施されず,あるい
は書き込みが完全でない場合にはデータが使用されるこ
とはない。
【図面の簡単な説明】
【図1】本実施形態にかかるメモリ機能保護装置を有す
る制御装置を示すブロック図である。
【図2】本実施形態にかかる不揮発メモリのメモリ領域
を示すブロック図である。
【図3】本実施形態にかかるプログラム部分内の識別子
(K)を示すブロック図である。
【図4】本実施形態にかかるメモリ機能保護方法を実施
するためのフローチャートである。
【符号の説明】
100 コンピュータシステム 101 外部プログラミング装置 102 インターフェイス 103 バスシステム 104,108 不揮発メモリ, 105 揮発メモリ 106 マイクロプロセッサ(計算ユニット) 107 周辺アッセンブリ 109 伝送系システム 200−205 メモリ領域 206 メモリ領域 300 プログラム識別子 301−304 下位部分
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ロルフ コーラー ドイツ連邦共和国 71701 シュヴィーバ ーディンゲン, シュティーゲルシュトラ ッセ 30 (72)発明者 ギュンター ブラウン ドイツ連邦共和国 74321 ビーティヒハ イム, エゲールシュトラッセ 23 (72)発明者 マティアス コットマン ドイツ連邦共和国 73240 ヴェントリン ゲン, アイヒェルベルクヴェーク 3

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 メモリの正しい消去及び/又はプログラ
    ミングを明示する識別子(K)を,前記メモリの消去及
    び/又はプログラミングされる領域に書き込むプログラ
    ミング手段を有し,前記メモリ内のデータ及び/又はプ
    ログラムを消去及び/又はプログラミングする制御装置
    のメモリ機能保護方法であって,前記メモリに書き込ま
    れた前記識別子(K)は,前記メモリ内のデータ及び/
    又はプログラムを消去及び/又はプログラミングする前
    に,あるいは消去及び/又はプログラミングする際に変
    更されることを特徴とする制御装置のメモリ機能保護方
    法。
  2. 【請求項2】 前記識別子(K)は,後に消去及び/又
    はプログラミングされるメモリ領域,あるいは,最後に
    消去及び/又はプログラミングされるメモリ領域に書き
    込まれることを特徴とする請求項1に記載のメモリ機能
    の保護方法。
  3. 【請求項3】 前記識別子(K)は,前記データ及び/
    又は前記プログラム構成部分として形成されることを特
    徴とする請求項1に記載の制御装置のメモリ機能保護方
    法。
  4. 【請求項4】 メモリ内のデータ及び/又はプログラム
    をオーバープログラムする手段を有する制御装置のメモ
    リ機能保護方法であって,前記識別子(K)は,前記メ
    モリ内の前記データ及び/又は前記プログラムをオーバ
    ープログラミングする際に,消去及び/又はプログラミ
    ングされるメモリ領域に書き込まれたデータ及び/又は
    プログラムから選択されることを特徴とする制御装置の
    メモリ機能保護方法。
  5. 【請求項5】 前記識別子(K)は,後に消去及び/又
    はプログラミングされるメモリ領域,あるいは,最後に
    消去及び/又はプログラミングされるメモリ領域に書き
    込まれたデータ及び/又はプログラムから選択されるこ
    とを特徴とする請求項4に記載の制御装置のメモリ機能
    保護方法。
  6. 【請求項6】 前記選択された識別子(K)は,前記デ
    ータ及び/又は前記プログラムを消去及び/又はプログ
    ラミングする前に,あるいは,消去及び/又はプログラ
    ミングする際に変更されることを特徴とする請求項4に
    記載の制御装置のメモリ機能保護方法。
  7. 【請求項7】 前記識別子(K)は,前記メモリに書き
    込まれたデータ及び/又はプログラムの予め設定された
    長さの少なくとも一部分として選択され,あるいは予め
    設定されることを特徴とする請求項4,5又は6に記載
    の制御装置のメモリ機能保護方法。
  8. 【請求項8】 前記識別子(K)は,前記データ及び/
    又は前記プログラムの消去及び/又はプログラミングの
    際に識別されないように変更されることを特徴とする請
    求項1又は4に記載の制御装置のメモリ機能保護方法。
  9. 【請求項9】 前記識別子(K)は,各前記データ及び
    /又は前記プログラムを識別するためのプログラム識別
    子の一部分として形成されることを特徴とする請求項1
    又は4に記載の制御装置のメモリ機能保護方法。
  10. 【請求項10】 前記識別子(K)は,前記メモリの消
    去及び/又はプログラミングの中断後,及び/又は消去
    及び/又はプログラミング後に,照合されることを特徴
    とする請求項1又は4に記載の制御装置のメモリ機能保
    護方法。
  11. 【請求項11】 前記メモリの消去及び/又はプログラ
    ミングの中断は,前記メモリ内の一時記憶として格納さ
    れることを特徴とする請求項9に記載の制御装置のメモ
    リ機能保護方法。
  12. 【請求項12】 前記メモリの消去及び/又はプログラ
    ミング前に,前記識別子及び/又は前記一時記憶が照合
    されて評価されることを特徴とする請求項1から11の
    いずれか1項に記載の制御装置のメモリ機能保護方法。
  13. 【請求項13】 メモリの正しい消去及び/又はプログ
    ラミングを明示する識別子(K)を,消去及び/又はプ
    ログラミングされるメモリ領域に書き込むプログラミン
    グ手段を有し,前記メモリ内のデータ及び/又はプログ
    ラムを消去及び/又はプログラミングする制御装置であ
    って,前記プログラミング手段は,前記データ及び/又
    は前記プログラムの消去及び/又はプログラミングの前
    に,あるいは,消去及び/又はプログラミングの際に,
    前記メモリ内に書き込まれた識別子(K)を変更するこ
    とを特徴とする制御装置。
  14. 【請求項14】 メモリ内のデータ及び/又はプログラ
    ムをオーバープログラミングする手段を有する制御装置
    であって,前記オーバープログラミング手段は,前記メ
    モリの正しい消去及び/又はプログラミングを明示する
    識別子(K)を,消去及び/又はプログラミングされる
    メモリ領域に書き込まれたデータ及び/又はプログラム
    から選択することを特徴とする制御装置。
JP2000081808A 1999-03-17 2000-03-17 制御装置のメモリ機能保護方法及び制御装置 Expired - Fee Related JP4880105B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19911794A DE19911794B4 (de) 1999-03-17 1999-03-17 Verfahren und Vorrichtung zur Absicherung bei Veränderung des Speicherinhalts von Steuergeräten
DE19911794.2 1999-03-17

Publications (2)

Publication Number Publication Date
JP2000293440A true JP2000293440A (ja) 2000-10-20
JP4880105B2 JP4880105B2 (ja) 2012-02-22

Family

ID=7901230

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000081808A Expired - Fee Related JP4880105B2 (ja) 1999-03-17 2000-03-17 制御装置のメモリ機能保護方法及び制御装置

Country Status (4)

Country Link
US (1) US7035964B1 (ja)
EP (1) EP1037140B1 (ja)
JP (1) JP4880105B2 (ja)
DE (1) DE19911794B4 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005322248A (ja) * 2004-05-06 2005-11-17 Samsung Electronics Co Ltd 半導体メモリ装置の制御情報をプログラムするための方法と装置
US7421624B2 (en) 2004-01-19 2008-09-02 Samsung Electronics Co., Ltd. Data recovery apparatus and method used for flash memory
US8607215B2 (en) 2005-04-20 2013-12-10 Denso Corporation Electronic control system for rewriting control software in an automobile

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100632940B1 (ko) 2004-05-06 2006-10-12 삼성전자주식회사 프로그램 사이클 시간을 가변시킬 수 있는 불 휘발성반도체 메모리 장치
EP1860552A1 (de) * 2006-05-23 2007-11-28 Siemens Aktiengesellschaft Modifizieren eines Softwarestands einer Steuergerätesoftware für ein Steuergerät und Erkennen einer solchen Modifikation
US7624129B2 (en) * 2006-06-30 2009-11-24 Microsoft Corporation Dual logging of changes to a user preference in a computer device
WO2008026466A1 (en) * 2006-08-31 2008-03-06 Sharp Kabushiki Kaisha File system
DE102011107435A1 (de) * 2011-07-15 2013-01-17 Giesecke & Devrient Gmbh Verfahren zum Erkennen von gelöschten Speicherbereichen
US9928169B2 (en) 2014-05-07 2018-03-27 Sandisk Technologies Llc Method and system for improving swap performance
US20150324132A1 (en) * 2014-05-07 2015-11-12 Sandisk Technologies Inc. Method and Computing Device for Fast Erase of Swap Memory
US11164642B1 (en) 2018-02-09 2021-11-02 Board Of Trustees Of The University Of Alabama, For And On Behalf Of The University Of Alabama In Huntsville Systems and methods for hardening flash memory to radiation
US11620108B1 (en) 2018-05-17 2023-04-04 Board Of Trustees Of The University Of Alabama For And On Behalf Of The University Of Alabama In Huntsville Random number generation systems and methods
US11101009B1 (en) * 2019-03-04 2021-08-24 Board Of Trustees Of The University Of Alabama, For And On Behalf Of The University Of Alabama In Huntsville Systems and methods to convert memory to one-time programmable memory

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH086865A (ja) * 1994-06-22 1996-01-12 Casio Comput Co Ltd データ処理装置
JPH0817191A (ja) * 1994-06-29 1996-01-19 Kokusai Electric Co Ltd メモリ管理エリア制御方法
JPH09161493A (ja) * 1995-12-13 1997-06-20 Fujitsu Ten Ltd 書換え可能な不揮発性メモリの管理方法
JP2000035923A (ja) * 1998-07-17 2000-02-02 Fujitsu Ten Ltd 異常検出方法および異常検出装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4271402A (en) * 1979-08-29 1981-06-02 General Motors Corporation Motor vehicle diagnostic and monitoring device having keep alive memory
US5592641A (en) * 1993-06-30 1997-01-07 Intel Corporation Method and device for selectively locking write access to blocks in a memory array using write protect inputs and block enabled status
US5523915A (en) * 1993-08-03 1996-06-04 Casio Computer Co., Ltd. Data storage system
DE4401891A1 (de) * 1994-01-24 1995-07-27 Bayerische Motoren Werke Ag Verfahren zum Ändern der Arbeitsweise eines Steuergeräts von Kraftfahrzeugen
US5778167A (en) * 1994-06-14 1998-07-07 Emc Corporation System and method for reassigning a storage location for reconstructed data on a persistent medium storage system
DE19619354A1 (de) * 1996-05-14 1997-11-20 Bosch Gmbh Robert Verfahren zum Betreiben eines eine Steuerfunktion aufweisenden Steuergerätes mit einer programmierbaren Speichereinrichtung
DE19623145B4 (de) 1996-06-10 2004-05-13 Robert Bosch Gmbh Verfahren zum Betreiben eines Steuergerätes mit einer über eine Programmiervorrichtung programmierbaren Speichereinrichtung
US5778070A (en) * 1996-06-28 1998-07-07 Intel Corporation Method and apparatus for protecting flash memory
US5920884A (en) * 1996-09-24 1999-07-06 Hyundai Electronics America, Inc. Nonvolatile memory interface protocol which selects a memory device, transmits an address, deselects the device, subsequently reselects the device and accesses data
US5818771A (en) * 1996-09-30 1998-10-06 Hitachi, Ltd. Semiconductor memory device
JP3489708B2 (ja) * 1996-10-23 2004-01-26 シャープ株式会社 不揮発性半導体記憶装置
US6031757A (en) * 1996-11-22 2000-02-29 Macronix International Co., Ltd. Write protected, non-volatile memory device with user programmable sector lock capability
US20010011318A1 (en) * 1997-02-27 2001-08-02 Vishram P. Dalvi Status indicators for flash memory
US5930826A (en) * 1997-04-07 1999-07-27 Aplus Integrated Circuits, Inc. Flash memory protection attribute status bits held in a flash memory array
JP3592887B2 (ja) * 1997-04-30 2004-11-24 株式会社東芝 不揮発性半導体記憶装置
JP3884839B2 (ja) * 1997-10-17 2007-02-21 株式会社ルネサステクノロジ 半導体記憶装置
US6311322B1 (en) * 1998-03-09 2001-10-30 Nikon Corporation Program rewriting apparatus
JP3729638B2 (ja) * 1998-04-22 2005-12-21 富士通株式会社 メモリデバイス
US6026016A (en) * 1998-05-11 2000-02-15 Intel Corporation Methods and apparatus for hardware block locking in a nonvolatile memory

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH086865A (ja) * 1994-06-22 1996-01-12 Casio Comput Co Ltd データ処理装置
JPH0817191A (ja) * 1994-06-29 1996-01-19 Kokusai Electric Co Ltd メモリ管理エリア制御方法
JPH09161493A (ja) * 1995-12-13 1997-06-20 Fujitsu Ten Ltd 書換え可能な不揮発性メモリの管理方法
JP2000035923A (ja) * 1998-07-17 2000-02-02 Fujitsu Ten Ltd 異常検出方法および異常検出装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7421624B2 (en) 2004-01-19 2008-09-02 Samsung Electronics Co., Ltd. Data recovery apparatus and method used for flash memory
JP2005322248A (ja) * 2004-05-06 2005-11-17 Samsung Electronics Co Ltd 半導体メモリ装置の制御情報をプログラムするための方法と装置
US8607215B2 (en) 2005-04-20 2013-12-10 Denso Corporation Electronic control system for rewriting control software in an automobile

Also Published As

Publication number Publication date
US7035964B1 (en) 2006-04-25
EP1037140B1 (de) 2012-08-08
JP4880105B2 (ja) 2012-02-22
EP1037140A3 (de) 2005-07-06
DE19911794A1 (de) 2000-09-28
DE19911794B4 (de) 2005-10-06
EP1037140A2 (de) 2000-09-20

Similar Documents

Publication Publication Date Title
KR100316981B1 (ko) 플래시 메모리를 구비한 마이크로컴퓨터 및 플래시 메모리에 프로그램을 저장하는 방법
KR100531192B1 (ko) 비휘발성 메모리의 제어방법
US7313682B2 (en) Method and system for updating boot memory that stores a fail-safe reset code and is configured to store boot code and boot updater code
US8140216B2 (en) Method of detecting manipulation of a programmable memory device of a digital controller
JP4880105B2 (ja) 制御装置のメモリ機能保護方法及び制御装置
JP3875153B2 (ja) 不揮発性半導体記憶装置およびその書き換え禁止制御方法
US7096351B2 (en) Single-chip microcomputer and boot region switching method thereof
JP4227149B2 (ja) 電子制御装置の情報記憶方法
US6704865B1 (en) Microprocessor conditional deterministic reset vector method
US20100083073A1 (en) Data processing apparatus, memory controlling circuit, and memory controlling method
JP3805195B2 (ja) プログラム書き換え装置及びプログラム書き換え方法
JPH1083294A (ja) プログラミング装置を介してプログラミング可能な記憶装置を備えた制御装置の作動方法
KR102703632B1 (ko) 차량용 mcu에서의 플래시 부트 로더의 펌웨어 업데이트 방법
CN101253485A (zh) 存储装置及其运行方法
US20200218549A1 (en) Electronic Control Unit and Method for Verifying Control Program
JP4734582B2 (ja) 不揮発性メモリのデータ更新方法、制御装置、及びデータ更新プログラム
JP4031693B2 (ja) 不揮発性メモリおよびこれを有したデータ記憶装置
AU2002342788B2 (en) Method for operating a control device
US8019931B2 (en) Method and control unit for operating a non-volatile memory, in particular for use in motor vehicles
JP7602541B2 (ja) 電子制御装置
JP4812278B2 (ja) 電子制御装置のデータ再書き込み方法
JP2005063311A (ja) プロセッサシステムのパッチ方法およびパッチ適用プログラム
US20250173138A1 (en) Micro-controller-unit, method and computer program for downgrade prevention
JP2008203988A (ja) セキュリティ保護機能付きマイクロコンピュータ
CN120178834A (zh) 控制器固件双分区刷写诊断方法、系统及车辆

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070312

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100518

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110208

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110509

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110608

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110614

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110708

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111101

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111201

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141209

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees