JP2005502972A - マイクロコントローラおよびeepromを含む回路装置の駆動方法 - Google Patents
マイクロコントローラおよびeepromを含む回路装置の駆動方法 Download PDFInfo
- Publication number
- JP2005502972A JP2005502972A JP2003529310A JP2003529310A JP2005502972A JP 2005502972 A JP2005502972 A JP 2005502972A JP 2003529310 A JP2003529310 A JP 2003529310A JP 2003529310 A JP2003529310 A JP 2003529310A JP 2005502972 A JP2005502972 A JP 2005502972A
- Authority
- JP
- Japan
- Prior art keywords
- data set
- memory
- memory area
- eeprom
- microcontroller
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- 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
- G11C16/105—Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
マイクロコントローラ(10)およびEEPROM(11)を含む回路装置の駆動方法を提供する。EEPROM(11)内に少なくとも1つのデータセットメモリ(DA1〜DA3)を含む第1のメモリ領域(29)と少なくとも1つのデータセットメモリ(DB1〜DB3)を含む少なくとも1つの第2のメモリ領域(30)とが設けられる。また妥当なメモリ領域(29、30)を示す少なくとも1つのポインタ(P1〜P3)を含む第3のメモリ領域(31)が設けられる。マイクロコントローラ(10)は第1のステップ(53)で、妥当でないとされたメモリ領域(29または30)のデータセットメモリ(DA1〜DA3またはDB1〜DB3)内にデータセットを記憶し、続いて第2のステップ(54)でポインタ(P1〜P3)を変更して妥当でないとされたメモリ領域を妥当なメモリ領域とする。この2つのステップ(53,54)が循環的に繰り返される。本発明によれば、メモリ過程でエラーが発生したときにも、妥当なメモリ領域に記憶された正確なデータセットをつねに使用できる。
Description
【技術分野】
【0001】
従来の技術
本発明は、独立請求項の上位概念記載のマイクロコントローラおよびEEPROMを含む回路装置の駆動方法に関する。
【0002】
独国特許出願公開第19716520号公報からはエレクトロモータの駆動パラメータを検出する冒頭に言及した形式の方法が公知である。ここで特に記憶されているのは駆動時間である。長期の記憶を行うメモリとしてPROM、EPROMまたはEEPROMが設けられている。
【0003】
PROMでは格納すべきデータセットはPROMメモリセルへの不可逆のプログラミングにより記憶される。EPROMは利用サイクルの終了時にメモリ内容を消去することにより再び使用することができる。この2つのタイプのメモリは1回の利用サイクル中同じメモリセルには1度しかデータセットを記憶できないので、駆動時間を数えるには多くのメモリセルをリザーブしておかなければならない。
【0004】
最も柔軟性の高い手段はメモリセルを電気的に書き込んだり消去したりできるEEPROMである。ただしEEPROMを使用することの利点は欠点にもなりうる。EEPROMはメモリ過程中に駆動電圧が中断すると一時的に定義されていない駆動状態に陥ってしまうことがある。この場合、格納されたデータセットにエラーが生じてしまう。
【0005】
したがって本発明の課題は、マイクロコントローラおよびEEPROMを含む回路装置の駆動方法において、EEPROMのデータセットを確実に使用できるようにすることである。
【0006】
この課題は独立請求項に記載された特徴によって解決される。
【0007】
本発明の利点
本発明の方法ではまずEEPROM内に少なくとも1つのデータセットメモリを記憶するための第1のメモリ領域と少なくとも1つの第2のメモリ領域とが設けられる。さらに妥当なメモリ領域を示す少なくとも1つのポインタを含む第3のメモリ領域が設けられる。マイクロコントローラは第1のステップで、妥当でないとされたメモリ領域のデータセットメモリ内にデータセットを記憶し、続いて第2のステップでポインタを変更して妥当でなかったほうのメモリ領域を妥当なメモリ領域とする。この2つのステップが循環的に繰り返される。
【0008】
本発明の方法の主たる利点は、どのような駆動状態であっても少なくとも2つのメモリ領域の少なくとも1つに必ず正しいデータセットが格納されるということである。駆動シーケンス中に障害が発生した場合、例えば書き込み過程中に給電電圧が遮断されると、所定のメモリ領域へのメモリ過程にあったデータセットはエラーを発生する可能性があるが、他のメモリ領域に正しく格納されたデータセットは影響を受けない。したがってどんなときでも他方のメモリ領域に最後に格納されたデータセットにアクセスしてこれを取り出すことができる。
【0009】
特に有利な実施形態ではリセット装置が本発明の方法にしたがって用いられる。プログラムシーケンスで障害が識別されたとき、または回路装置の使用開始のときには、リセットがトリガされる。本発明によれば、リセット後、マイクロコントローラにより第1の開始ステップでポインタが読み出され、第2の開始ステップでポインタの指示する妥当なメモリ領域からデータセットが読み出される。
【0010】
本発明の方法は特にユーザが駆動電圧を任意にオンオフする回路装置に適している。ポインタがリセット後にもつねに正常な駆動状態で記憶されたデータセットを指示するので、その後の方法ステップにおいてもつねに正しいデータセットを基礎として作業することができる。
【0011】
有利な実施形態では、ポインタはビットポインタとして実現されている。ビットポインタは場合によっては長くなることもあるデータセット(例えば1Byte)の最下位ビットに基づいて妥当なメモリ領域を指示する。この処置は、メモリ内容の変更中にエラー(例えば電圧の遮断)が発生したとき、ポインタが一方のメモリ領域の正しいデータセットのみでなく同様に正しい他方のメモリ領域のデータセットも指示することになるので有利である。
【0012】
マイクロコントローラのシーケンシャルな動作方式に基づいて、1つ以上のメモリ過程がエラーを有する状態で実行されることが排除される。したがっていずれの場合にもリセット後には少なくとも先行するサイクルで格納されたデータセットを使用することができる。
【0013】
他の有利な実施形態として、第1のステップおよび第2のステップの循環的な反復を制御するタイマを設けることが挙げられる。このタイマはマイクロコントローラ内に配置することができる。有利には水晶発振器によって定められるクロック周期に依存してタイマは第1のステップをトリガし、データセットがその時点では妥当でないとされるメモリ領域へ記憶される。第2のステップではポインタが変更され、新たに妥当なメモリ領域が指示される。この手段はマイクロコントローラでのプログラムシーケンスから独立に、所定の時間の経過によって本発明の方法の2つのステップが行われることになるので有利である。
【0014】
別の有利な実施形態では、記憶すべきデータセットがサイクルごとにインクリメントまたはデクリメントされる。この手段によれば簡単に駆動時間カウンタを実現することができる。駆動時間の尺度はタイマに関連したクロック周波数によって設定される。本発明の方法によれば、エラーを生じたメモリ過程においても駆動時間の欠落がないことが保証される。なぜならリセットの際にあらかじめ他方のメモリ領域に記憶された正しいデータセットにアクセス可能となるからである。
【0015】
本発明の方法は特に車両内の装置での使用に適している。車両の停止状態中は使用可能な電気エネルギが制限されているため、回路装置を完全に遮断できることが望ましい。データセットを記憶しているときに遮断過程が起こるとエラーが発生する場合があるが、ここではエラーが生じても後の過程には作用しない。なぜなら再使用の際には最後に記憶された正しいデータセットへアクセスが行われるからである。車両では特に外気の品質を検出してエアコンディショナーへ制御信号を送出する空気品質センサにおいて使用すると有利である。駆動時間カウンタに基づいてセンサ信号の短期および長期の補正の双方を行うことができる。
【0016】
本発明の方法の有利な実施例は従属請求項および以下の説明から得られる。図1には本発明の回路装置のブロック図が示されており、図2には本発明の方法のフローチャートが示されている。
【0017】
回路装置はマイクロコントローラ10,EEPROM11およびリセット装置12を有している。リセット装置12およびEEPROM11は給電線路13に接続されており、この給電線路13はスイッチ14を介してエネルギ源15に接続されている。
【0018】
リセット装置12はリセット信号16をプロセッサコア17へ送出する。プロセッサコア17にはさらにクロックジェネレータ19で形成されたクロック信号18およびタイマ21で形成されたタイマ信号20も供給される。
【0019】
マイクロコントローラ10はリセットメモリ22,データセットメモリ23,ポインタメモリ24,データオフセットメモリ25およびポインタオフセットメモリ26を有している。
【0020】
マイクロコントローラ10は双方向データバス27およびアドレスバス28を介してEEPROM11と通信する。
【0021】
EEPROM11は第1のメモリ領域29,第2のメモリ領域30,第3のメモリ領域31および第4のメモリ領域32を有する。第1のメモリ領域29は第1のデータセットメモリDA1,第2のデータセットメモリDA2および第3のデータセットメモリDA3を含む。第2のメモリ領域30も同様に第1のデータセットメモリDB1,第2のデータセットメモリDB2および第3のデータセットメモリDB3を含む。第3のメモリ領域31は第1のポインタP1,第2のポインタP2および第3のポインタP3を含む。第4のメモリ領域32は第1のデータオフセットメモリOA、第2のデータオフセットメモリOBおよびポインタオフセットメモリOPを有する。
【0022】
図2には本発明の方法が示されている。開始Sの後、第1の開始ステップ50でリセット過程が行われる。第2の開始ステップ51ではポインタP1〜P3が読み出される。第3の開始ステップ52では、ポインタP1〜P3の指示に応じて妥当なメモリ領域29または30からデータセットが読み出される。
【0023】
第1のステップ53では妥当でないとされた第1のメモリ領域29または第2のメモリ領域30に存在するデータセットメモリDA1〜DA3またはDB1〜DB3へデータセットが記憶される。第2のステップ54ではポインタP1〜P3が新たに妥当となったメモリ領域29または30を指示するように変更される。
【0024】
本発明の回路装置の駆動方法は次のように動作する。
【0025】
まず給電線路13がスイッチ14を介してエネルギ源15、例えばバッテリに接続される。マイクロコントローラ10に含まれるリセット装置12はリセット信号16を調製する。リセット信号16によりマイクロコントローラ10のプログラムシーケンスの新たな開始がトリガされる。リセットに必要な情報すなわちスタートアドレスなどは、リセットメモリ23に記憶されている。リセットメモリ23は有利にはROMに含まれており、その内容はメーカーで定められている。ROMはマイクロコントローラ10内に配置することもできる。
【0026】
スイッチ14の操作によってトリガされる開始Sの後、第1の開始ステップ50が行われる。このステップはリセット過程に相応する。
【0027】
マイクロコントローラ10はデータバス27およびアドレスバス28を介してEEPROM11に接続されている。EEPROM(Electrical Erasable and Programmable Memory)とはここでは駆動電圧の遮断後にもその内容が失われず、メモリセルに複数回の書き込みが可能なタイプのメモリのことである。EEPROMはマイクロコントローラ10内に配置してもよく、その場合にはこれらをマイクロプロセッサと称する。
【0028】
EEPROM11の第3のメモリ領域31にはポインタP1〜P3が収容されている。ポインタP1〜P3はEEPROM11の第1のメモリ領域29または第2のメモリ領域30のいずれがその時点での記憶にとって妥当であるかを指示するものである。有利にはポインタP1〜P3はビットポインタとして実現され、ステータス0または1を有する1ビットが必要なのみである。例えば1Byteのビットポインタを実現する場合、この情報は最下位ビットとして符号化される。
【0029】
図示の実施例では1つのポインタのみではなく、第1〜第3のポインタP1〜P3が示されている。3つのポインタP1〜P3のうち最新の情報を有するものはEEPROM11の第4のメモリ領域32に収容されたポインタオフセットメモリOPに記憶されたデータセットからわかる。マイクロコントローラ10はポインタオフセットメモリOPに格納されたオフセットアドレスを読み出すことにより該当するポインタP1〜P3を見つけだす。オフセットアドレスは有利にはマイクロコントローラ10に既知のベースアドレスが加えられる。3つのポインタP1〜P3に代えて、EEPROM11内のアドレスのみ異なるさらに別のポインタを設けることもできる。
【0030】
複数のポインタP1〜P3が設けられる技術的な理由は、EEPROM11の同じメモリ位置へのデータの書き込み可能回数が制限されているからである。したがってポインタオフセットメモリOPでのオフセットが所定数のメモリ過程の後に次のポインタP1〜P3のいずれかの示す別の値へ変更される。ポインタP1〜P3はEEPROM11内をいわば“漂遊”する。EEPROM11の使用開始からどれだけのメモリ過程が発生したかについての情報は詳細には図示されていないEEPROM11のメモリセルに格納することができる。
【0031】
有利にはすでに行われたメモリ過程の回数についての情報はデータセットメモリDA1〜DA3、DB1〜DB3に記憶されたデータセットから求められる。この構成は例えば駆動時間カウンタの範囲において次のように実現される。
【0032】
クロックはマイクロコントローラ10が有利には水晶発振器であるクロックジェネレータ19およびタイマ21を介して定める。例えば10sのクロックにより3Byteのバイナリのメモリセルを有するカウンタを用いて最大で約46603時間の時間設定を行うことができる。駆動時間カウンタは有利にはEEPROM11のデータセットメモリDA1〜DA3、DB1〜DB3に収容される。エラーを生じたメモリ過程で発生しうるデータ損失はこうした手段により回避される。本発明によれば第1のメモリ領域29と少なくとも1つの別のメモリ領域とへの分割が行われる。第1のメモリ領域は第1〜第3のデータセットメモリDA1〜DA3を含み、第2のメモリ領域は第1〜第3のデータセットメモリDB1〜DB3を含む。
【0033】
1つだけではなく複数のデータセットメモリDA1〜DA3およびDB1〜DB3を使用する理由は、EEPROM11の同じメモリセルへの書き込み過程の最大数が制限されている点にある。したがって所定数のメモリ過程の後にはこの手段を他のデータセットメモリと交換しなければならない。ポインタP1〜P3と同様に、有利にはベースアドレスに基づいてデータオフセットメモリOA,OBに格納されていたオフセットが加えられる。第1のデータオフセットメモリOAは第1のメモリ領域29のデータセットメモリDA1〜DA3に対するオフセットを含み、第2のデータオフセットメモリOBは第2のメモリ領域30のデータセットメモリDB1〜DB3に対するオフセットを含む。データセットメモリDA1〜DA3およびDB1〜DB3はいわばEEPROM11を“漂遊”する。
【0034】
以下の説明を解りやすくするために、第1のメモリ領域29の第1のデータセットメモリDA1と第2のメモリ領域30の第1のデータセットメモリDB1のみを取り上げる。タイマ21で定められた時間が経過した後、プロセッサコア17は時間を反映したデータセットに1単位(例えば1)を加え、このようにして定められた新たなデータセットを第1のデータセットメモリDA1,DB1のいずれか、ポインタP1が妥当でないと指示しているほうのメモリに記憶する。ポインタP1〜P3についても以下ではポインタP1のみについて説明する。駆動時間を反映したデータセットをプロセッサコア17は例えばポインタP1が妥当であると指示しているほうのメモリ領域のデータセットメモリDA1またはDB1から読み出す。有利にはこのデータセットはマイクロコントローラ10のRAMメモリ23に格納される。同様に有利にはポインタメモリ24、データオフセットメモリ25およびポインタオフセットメモリ26もRAMメモリとして設けられている。
【0035】
本発明によれば、第1のステップ53においてデータセットが妥当とされなかったほうのメモリ領域の第1のデータセットメモリに記憶され、続いて第2のステップ54においてポインタP1が最後にデータセットが書き込まれた他方のメモリ領域を妥当なメモリ領域とするために変更される。
【0036】
この実施例で示したような2つのメモリ領域29,30に代えてさらに別のメモリ領域を設けることもできる。ただしこの実施例でのように2つのメモリ領域を設けるのみとしてポインタP1〜P3をビットポインタとして実現すると有利である。ポインタは最も簡単には論理0または1を表す1bitを有していればよい。
【0037】
そののち第1のステップ53および第2のステップ54が循環的に処理される。いずれかの時点、例えばスイッチ14の開放の時点で、エラーを有する値がデータセットメモリDA1に格納された場合、1つ前のサイクルで他方のデータセットメモリDB1に格納されたデータセットが使用される。なぜならビットポインタP1が妥当な旧のデータセットメモリを指示するからである。
【0038】
ポインタにエラーを生じたメモリ過程であっても、データセットメモリDA1、DB1のデータには影響はない。駆動時間カウンタであればエラーの50%はサイクルの時間エラーである。前述の実施例ではエラーは10s程度のみである。
【0039】
スイッチ14または他のイベントによって給電線路13での駆動電圧が遮断された後にはリセット回路12がアクティブとなり、リセット信号16が形成される。マイクロコントローラ10が初期化されると、前述の第1の開始ステップでポインタP1が読み出され、第2の開始ステップ51で妥当なメモリ領域の第1のデータセットメモリからデータセットが読み出される。これ以降のプログラムシーケンスはこれを基礎として行われる。EEPROM11では書き込みサイクル数が制限されていることに基づいて複数のポインタP1〜P3が設けられており、場合によっては付加的にポインタオフセットメモリOPが読み出される。また場合によってはEEPROM11では書き込みサイクル数が制限されていることに基づいてデータセットメモリDA1およびDB1のほかにさらなるデータセットメモリDA2,DA3,DB2,DB3が設けられており、このときには付加的にデータセットメモリのオフセットが第1のデータオフセットメモリOAまたは第2のデータオフセットメモリOBから読み出される。ここでも第1のデータセットメモリDA2,DA3は第1のメモリ領域29に設けられており、第2のデータセットメモリDB2,DB3は第2のメモリ領域30に設けられている。妥当なデータオフセットメモリOAまたはOBはマイクロコントローラ10によりポインタP1〜P3の内容に基づいて求められる。
【0040】
本発明の方法は特に車両内に組み込まれる装置に適している。こうした適用では少なくとも車両の停止状態で回路装置を駆動するエネルギ量が制限されている場合、スイッチ14を介した回路装置の完全な遮断を行うと有利である。本発明の方法は完全な遮断が生じてもEEPROM11におけるメモリ過程でデータエラーが発生せず、回路装置の確実な駆動が可能となる。本発明は車両では有利には空気品質センサにおいて適用され、駆動時間カウンタを短期および長期の信号補正のために使用することができる。
【図面の簡単な説明】
【0041】
【図1】本発明の回路装置のブロック図である。
【0042】
【図2】本発明の方法のフローチャートである。
【0001】
従来の技術
本発明は、独立請求項の上位概念記載のマイクロコントローラおよびEEPROMを含む回路装置の駆動方法に関する。
【0002】
独国特許出願公開第19716520号公報からはエレクトロモータの駆動パラメータを検出する冒頭に言及した形式の方法が公知である。ここで特に記憶されているのは駆動時間である。長期の記憶を行うメモリとしてPROM、EPROMまたはEEPROMが設けられている。
【0003】
PROMでは格納すべきデータセットはPROMメモリセルへの不可逆のプログラミングにより記憶される。EPROMは利用サイクルの終了時にメモリ内容を消去することにより再び使用することができる。この2つのタイプのメモリは1回の利用サイクル中同じメモリセルには1度しかデータセットを記憶できないので、駆動時間を数えるには多くのメモリセルをリザーブしておかなければならない。
【0004】
最も柔軟性の高い手段はメモリセルを電気的に書き込んだり消去したりできるEEPROMである。ただしEEPROMを使用することの利点は欠点にもなりうる。EEPROMはメモリ過程中に駆動電圧が中断すると一時的に定義されていない駆動状態に陥ってしまうことがある。この場合、格納されたデータセットにエラーが生じてしまう。
【0005】
したがって本発明の課題は、マイクロコントローラおよびEEPROMを含む回路装置の駆動方法において、EEPROMのデータセットを確実に使用できるようにすることである。
【0006】
この課題は独立請求項に記載された特徴によって解決される。
【0007】
本発明の利点
本発明の方法ではまずEEPROM内に少なくとも1つのデータセットメモリを記憶するための第1のメモリ領域と少なくとも1つの第2のメモリ領域とが設けられる。さらに妥当なメモリ領域を示す少なくとも1つのポインタを含む第3のメモリ領域が設けられる。マイクロコントローラは第1のステップで、妥当でないとされたメモリ領域のデータセットメモリ内にデータセットを記憶し、続いて第2のステップでポインタを変更して妥当でなかったほうのメモリ領域を妥当なメモリ領域とする。この2つのステップが循環的に繰り返される。
【0008】
本発明の方法の主たる利点は、どのような駆動状態であっても少なくとも2つのメモリ領域の少なくとも1つに必ず正しいデータセットが格納されるということである。駆動シーケンス中に障害が発生した場合、例えば書き込み過程中に給電電圧が遮断されると、所定のメモリ領域へのメモリ過程にあったデータセットはエラーを発生する可能性があるが、他のメモリ領域に正しく格納されたデータセットは影響を受けない。したがってどんなときでも他方のメモリ領域に最後に格納されたデータセットにアクセスしてこれを取り出すことができる。
【0009】
特に有利な実施形態ではリセット装置が本発明の方法にしたがって用いられる。プログラムシーケンスで障害が識別されたとき、または回路装置の使用開始のときには、リセットがトリガされる。本発明によれば、リセット後、マイクロコントローラにより第1の開始ステップでポインタが読み出され、第2の開始ステップでポインタの指示する妥当なメモリ領域からデータセットが読み出される。
【0010】
本発明の方法は特にユーザが駆動電圧を任意にオンオフする回路装置に適している。ポインタがリセット後にもつねに正常な駆動状態で記憶されたデータセットを指示するので、その後の方法ステップにおいてもつねに正しいデータセットを基礎として作業することができる。
【0011】
有利な実施形態では、ポインタはビットポインタとして実現されている。ビットポインタは場合によっては長くなることもあるデータセット(例えば1Byte)の最下位ビットに基づいて妥当なメモリ領域を指示する。この処置は、メモリ内容の変更中にエラー(例えば電圧の遮断)が発生したとき、ポインタが一方のメモリ領域の正しいデータセットのみでなく同様に正しい他方のメモリ領域のデータセットも指示することになるので有利である。
【0012】
マイクロコントローラのシーケンシャルな動作方式に基づいて、1つ以上のメモリ過程がエラーを有する状態で実行されることが排除される。したがっていずれの場合にもリセット後には少なくとも先行するサイクルで格納されたデータセットを使用することができる。
【0013】
他の有利な実施形態として、第1のステップおよび第2のステップの循環的な反復を制御するタイマを設けることが挙げられる。このタイマはマイクロコントローラ内に配置することができる。有利には水晶発振器によって定められるクロック周期に依存してタイマは第1のステップをトリガし、データセットがその時点では妥当でないとされるメモリ領域へ記憶される。第2のステップではポインタが変更され、新たに妥当なメモリ領域が指示される。この手段はマイクロコントローラでのプログラムシーケンスから独立に、所定の時間の経過によって本発明の方法の2つのステップが行われることになるので有利である。
【0014】
別の有利な実施形態では、記憶すべきデータセットがサイクルごとにインクリメントまたはデクリメントされる。この手段によれば簡単に駆動時間カウンタを実現することができる。駆動時間の尺度はタイマに関連したクロック周波数によって設定される。本発明の方法によれば、エラーを生じたメモリ過程においても駆動時間の欠落がないことが保証される。なぜならリセットの際にあらかじめ他方のメモリ領域に記憶された正しいデータセットにアクセス可能となるからである。
【0015】
本発明の方法は特に車両内の装置での使用に適している。車両の停止状態中は使用可能な電気エネルギが制限されているため、回路装置を完全に遮断できることが望ましい。データセットを記憶しているときに遮断過程が起こるとエラーが発生する場合があるが、ここではエラーが生じても後の過程には作用しない。なぜなら再使用の際には最後に記憶された正しいデータセットへアクセスが行われるからである。車両では特に外気の品質を検出してエアコンディショナーへ制御信号を送出する空気品質センサにおいて使用すると有利である。駆動時間カウンタに基づいてセンサ信号の短期および長期の補正の双方を行うことができる。
【0016】
本発明の方法の有利な実施例は従属請求項および以下の説明から得られる。図1には本発明の回路装置のブロック図が示されており、図2には本発明の方法のフローチャートが示されている。
【0017】
回路装置はマイクロコントローラ10,EEPROM11およびリセット装置12を有している。リセット装置12およびEEPROM11は給電線路13に接続されており、この給電線路13はスイッチ14を介してエネルギ源15に接続されている。
【0018】
リセット装置12はリセット信号16をプロセッサコア17へ送出する。プロセッサコア17にはさらにクロックジェネレータ19で形成されたクロック信号18およびタイマ21で形成されたタイマ信号20も供給される。
【0019】
マイクロコントローラ10はリセットメモリ22,データセットメモリ23,ポインタメモリ24,データオフセットメモリ25およびポインタオフセットメモリ26を有している。
【0020】
マイクロコントローラ10は双方向データバス27およびアドレスバス28を介してEEPROM11と通信する。
【0021】
EEPROM11は第1のメモリ領域29,第2のメモリ領域30,第3のメモリ領域31および第4のメモリ領域32を有する。第1のメモリ領域29は第1のデータセットメモリDA1,第2のデータセットメモリDA2および第3のデータセットメモリDA3を含む。第2のメモリ領域30も同様に第1のデータセットメモリDB1,第2のデータセットメモリDB2および第3のデータセットメモリDB3を含む。第3のメモリ領域31は第1のポインタP1,第2のポインタP2および第3のポインタP3を含む。第4のメモリ領域32は第1のデータオフセットメモリOA、第2のデータオフセットメモリOBおよびポインタオフセットメモリOPを有する。
【0022】
図2には本発明の方法が示されている。開始Sの後、第1の開始ステップ50でリセット過程が行われる。第2の開始ステップ51ではポインタP1〜P3が読み出される。第3の開始ステップ52では、ポインタP1〜P3の指示に応じて妥当なメモリ領域29または30からデータセットが読み出される。
【0023】
第1のステップ53では妥当でないとされた第1のメモリ領域29または第2のメモリ領域30に存在するデータセットメモリDA1〜DA3またはDB1〜DB3へデータセットが記憶される。第2のステップ54ではポインタP1〜P3が新たに妥当となったメモリ領域29または30を指示するように変更される。
【0024】
本発明の回路装置の駆動方法は次のように動作する。
【0025】
まず給電線路13がスイッチ14を介してエネルギ源15、例えばバッテリに接続される。マイクロコントローラ10に含まれるリセット装置12はリセット信号16を調製する。リセット信号16によりマイクロコントローラ10のプログラムシーケンスの新たな開始がトリガされる。リセットに必要な情報すなわちスタートアドレスなどは、リセットメモリ23に記憶されている。リセットメモリ23は有利にはROMに含まれており、その内容はメーカーで定められている。ROMはマイクロコントローラ10内に配置することもできる。
【0026】
スイッチ14の操作によってトリガされる開始Sの後、第1の開始ステップ50が行われる。このステップはリセット過程に相応する。
【0027】
マイクロコントローラ10はデータバス27およびアドレスバス28を介してEEPROM11に接続されている。EEPROM(Electrical Erasable and Programmable Memory)とはここでは駆動電圧の遮断後にもその内容が失われず、メモリセルに複数回の書き込みが可能なタイプのメモリのことである。EEPROMはマイクロコントローラ10内に配置してもよく、その場合にはこれらをマイクロプロセッサと称する。
【0028】
EEPROM11の第3のメモリ領域31にはポインタP1〜P3が収容されている。ポインタP1〜P3はEEPROM11の第1のメモリ領域29または第2のメモリ領域30のいずれがその時点での記憶にとって妥当であるかを指示するものである。有利にはポインタP1〜P3はビットポインタとして実現され、ステータス0または1を有する1ビットが必要なのみである。例えば1Byteのビットポインタを実現する場合、この情報は最下位ビットとして符号化される。
【0029】
図示の実施例では1つのポインタのみではなく、第1〜第3のポインタP1〜P3が示されている。3つのポインタP1〜P3のうち最新の情報を有するものはEEPROM11の第4のメモリ領域32に収容されたポインタオフセットメモリOPに記憶されたデータセットからわかる。マイクロコントローラ10はポインタオフセットメモリOPに格納されたオフセットアドレスを読み出すことにより該当するポインタP1〜P3を見つけだす。オフセットアドレスは有利にはマイクロコントローラ10に既知のベースアドレスが加えられる。3つのポインタP1〜P3に代えて、EEPROM11内のアドレスのみ異なるさらに別のポインタを設けることもできる。
【0030】
複数のポインタP1〜P3が設けられる技術的な理由は、EEPROM11の同じメモリ位置へのデータの書き込み可能回数が制限されているからである。したがってポインタオフセットメモリOPでのオフセットが所定数のメモリ過程の後に次のポインタP1〜P3のいずれかの示す別の値へ変更される。ポインタP1〜P3はEEPROM11内をいわば“漂遊”する。EEPROM11の使用開始からどれだけのメモリ過程が発生したかについての情報は詳細には図示されていないEEPROM11のメモリセルに格納することができる。
【0031】
有利にはすでに行われたメモリ過程の回数についての情報はデータセットメモリDA1〜DA3、DB1〜DB3に記憶されたデータセットから求められる。この構成は例えば駆動時間カウンタの範囲において次のように実現される。
【0032】
クロックはマイクロコントローラ10が有利には水晶発振器であるクロックジェネレータ19およびタイマ21を介して定める。例えば10sのクロックにより3Byteのバイナリのメモリセルを有するカウンタを用いて最大で約46603時間の時間設定を行うことができる。駆動時間カウンタは有利にはEEPROM11のデータセットメモリDA1〜DA3、DB1〜DB3に収容される。エラーを生じたメモリ過程で発生しうるデータ損失はこうした手段により回避される。本発明によれば第1のメモリ領域29と少なくとも1つの別のメモリ領域とへの分割が行われる。第1のメモリ領域は第1〜第3のデータセットメモリDA1〜DA3を含み、第2のメモリ領域は第1〜第3のデータセットメモリDB1〜DB3を含む。
【0033】
1つだけではなく複数のデータセットメモリDA1〜DA3およびDB1〜DB3を使用する理由は、EEPROM11の同じメモリセルへの書き込み過程の最大数が制限されている点にある。したがって所定数のメモリ過程の後にはこの手段を他のデータセットメモリと交換しなければならない。ポインタP1〜P3と同様に、有利にはベースアドレスに基づいてデータオフセットメモリOA,OBに格納されていたオフセットが加えられる。第1のデータオフセットメモリOAは第1のメモリ領域29のデータセットメモリDA1〜DA3に対するオフセットを含み、第2のデータオフセットメモリOBは第2のメモリ領域30のデータセットメモリDB1〜DB3に対するオフセットを含む。データセットメモリDA1〜DA3およびDB1〜DB3はいわばEEPROM11を“漂遊”する。
【0034】
以下の説明を解りやすくするために、第1のメモリ領域29の第1のデータセットメモリDA1と第2のメモリ領域30の第1のデータセットメモリDB1のみを取り上げる。タイマ21で定められた時間が経過した後、プロセッサコア17は時間を反映したデータセットに1単位(例えば1)を加え、このようにして定められた新たなデータセットを第1のデータセットメモリDA1,DB1のいずれか、ポインタP1が妥当でないと指示しているほうのメモリに記憶する。ポインタP1〜P3についても以下ではポインタP1のみについて説明する。駆動時間を反映したデータセットをプロセッサコア17は例えばポインタP1が妥当であると指示しているほうのメモリ領域のデータセットメモリDA1またはDB1から読み出す。有利にはこのデータセットはマイクロコントローラ10のRAMメモリ23に格納される。同様に有利にはポインタメモリ24、データオフセットメモリ25およびポインタオフセットメモリ26もRAMメモリとして設けられている。
【0035】
本発明によれば、第1のステップ53においてデータセットが妥当とされなかったほうのメモリ領域の第1のデータセットメモリに記憶され、続いて第2のステップ54においてポインタP1が最後にデータセットが書き込まれた他方のメモリ領域を妥当なメモリ領域とするために変更される。
【0036】
この実施例で示したような2つのメモリ領域29,30に代えてさらに別のメモリ領域を設けることもできる。ただしこの実施例でのように2つのメモリ領域を設けるのみとしてポインタP1〜P3をビットポインタとして実現すると有利である。ポインタは最も簡単には論理0または1を表す1bitを有していればよい。
【0037】
そののち第1のステップ53および第2のステップ54が循環的に処理される。いずれかの時点、例えばスイッチ14の開放の時点で、エラーを有する値がデータセットメモリDA1に格納された場合、1つ前のサイクルで他方のデータセットメモリDB1に格納されたデータセットが使用される。なぜならビットポインタP1が妥当な旧のデータセットメモリを指示するからである。
【0038】
ポインタにエラーを生じたメモリ過程であっても、データセットメモリDA1、DB1のデータには影響はない。駆動時間カウンタであればエラーの50%はサイクルの時間エラーである。前述の実施例ではエラーは10s程度のみである。
【0039】
スイッチ14または他のイベントによって給電線路13での駆動電圧が遮断された後にはリセット回路12がアクティブとなり、リセット信号16が形成される。マイクロコントローラ10が初期化されると、前述の第1の開始ステップでポインタP1が読み出され、第2の開始ステップ51で妥当なメモリ領域の第1のデータセットメモリからデータセットが読み出される。これ以降のプログラムシーケンスはこれを基礎として行われる。EEPROM11では書き込みサイクル数が制限されていることに基づいて複数のポインタP1〜P3が設けられており、場合によっては付加的にポインタオフセットメモリOPが読み出される。また場合によってはEEPROM11では書き込みサイクル数が制限されていることに基づいてデータセットメモリDA1およびDB1のほかにさらなるデータセットメモリDA2,DA3,DB2,DB3が設けられており、このときには付加的にデータセットメモリのオフセットが第1のデータオフセットメモリOAまたは第2のデータオフセットメモリOBから読み出される。ここでも第1のデータセットメモリDA2,DA3は第1のメモリ領域29に設けられており、第2のデータセットメモリDB2,DB3は第2のメモリ領域30に設けられている。妥当なデータオフセットメモリOAまたはOBはマイクロコントローラ10によりポインタP1〜P3の内容に基づいて求められる。
【0040】
本発明の方法は特に車両内に組み込まれる装置に適している。こうした適用では少なくとも車両の停止状態で回路装置を駆動するエネルギ量が制限されている場合、スイッチ14を介した回路装置の完全な遮断を行うと有利である。本発明の方法は完全な遮断が生じてもEEPROM11におけるメモリ過程でデータエラーが発生せず、回路装置の確実な駆動が可能となる。本発明は車両では有利には空気品質センサにおいて適用され、駆動時間カウンタを短期および長期の信号補正のために使用することができる。
【図面の簡単な説明】
【0041】
【図1】本発明の回路装置のブロック図である。
【0042】
【図2】本発明の方法のフローチャートである。
Claims (10)
- マイクロコントローラ(10)およびEEPROM(11)を含む回路装置の駆動方法において、
EEPROM(11)内にデータセットメモリ(DA1〜DA3)を含む第1のメモリ領域(29)とデータセットメモリ(DB1〜DB3)を含む少なくとも1つの第2のメモリ領域(30)とを設け、
妥当なメモリ領域(29または30)を示す少なくとも1つのポインタ(P1〜P3)を含む第3のメモリ領域(31)を設け、
マイクロコントローラ(10)により第1のステップ(53)で妥当でないとされたメモリ領域(29または30)のデータセットメモリ(DA1〜DA3またはDB1〜DB3)内にデータセットを記憶し、
続いて第2のステップ(54)でポインタ(P1〜P3)を変更して妥当でないとされたメモリ領域(29または30)を妥当なメモリ領域とし、
前記第1のステップ(53)および前記第2のステップ(54)を循環的に繰り返す
ことを特徴とする回路装置の駆動方法。 - リセット装置(12)によってトリガされたリセット(16)後、前記第1のステップ(53)および前記第2のステップ(54)の前に第1の開始ステップ(50)でマイクロコントローラ(10)によりポインタ(P1〜P3)を読み出し、第2の開始ステップ(51)で妥当なメモリ領域(29、30)からデータセットを読み出す、請求項1記載の方法。
- ポインタ(P1〜P3)をビットポインタとして実現する、請求項1または2記載の方法。
- 前記第2のステップ(54)でビットポインタ(P1〜P3)をインクリメントする、請求項1または3記載の方法。
- タイマ(21)を設け、前記第1のステップ(53)および前記第2のステップ(54)を時間的に定める、請求項1から4までのいずれか1項記載の方法。
- データセットを前記第1のステップ(53)および前記第2のステップ(54)のあいだにインクリメントする、請求項1から5までのいずれか1項記載の方法。
- 第1のメモリ領域(29)のデータセットメモリ(DA1〜DA3)および第2のメモリ領域(30)のデータセットメモリ(DB1〜DB3)にそれぞれ3Byteのメモリスペースを1つずつ設ける、請求項1から6までのいずれか1項記載の方法。
- データセットは駆動時間カウンタに相応する、請求項1から7までのいずれか1項記載の方法。
- 車両内の装置に用いられることを特徴とする請求項1から8までのいずれか1項記載の回路装置の駆動方法の使用。
- 空気品質センサで使用される、請求項9記載の使用。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10143142A DE10143142A1 (de) | 2001-09-04 | 2001-09-04 | Verfahren zum Betreiben einer Schaltungsanordnung, die einen Mikrocontroller und ein EEPROM enthält |
PCT/DE2002/003051 WO2003025748A2 (de) | 2001-09-04 | 2002-08-21 | Verfahren zum betreiben einer schaltungsanordnung, die einen mikrocontroller und ein eeprom enthält |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005502972A true JP2005502972A (ja) | 2005-01-27 |
Family
ID=7697555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003529310A Pending JP2005502972A (ja) | 2001-09-04 | 2002-08-21 | マイクロコントローラおよびeepromを含む回路装置の駆動方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20040237628A1 (ja) |
EP (1) | EP1423788A2 (ja) |
JP (1) | JP2005502972A (ja) |
KR (1) | KR20040051585A (ja) |
DE (1) | DE10143142A1 (ja) |
WO (1) | WO2003025748A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010146150A (ja) * | 2008-12-17 | 2010-07-01 | Panasonic Corp | 半導体記憶装置 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10144617A1 (de) * | 2001-09-11 | 2003-01-30 | Bosch Gmbh Robert | Verfahren zum Betreiben einer Schaltungsanordnung, die einen Mikrocontroller und ein EEPROM enthält |
JP2005338926A (ja) * | 2004-05-24 | 2005-12-08 | Toshiba Corp | 携帯可能電子装置 |
DE102005059319A1 (de) | 2005-12-09 | 2007-06-14 | Robert Bosch Gmbh | Verfahren zum Betreiben einer Einrichtung |
MX370456B (es) | 2013-12-23 | 2019-12-13 | Colgate Palmolive Co | Composiciones que contienen película para uso oral. |
CN110021327B (zh) * | 2018-01-10 | 2021-01-12 | 力旺电子股份有限公司 | 由差动存储器胞组成的非易失性存储器 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2666425A1 (fr) * | 1990-08-31 | 1992-03-06 | Gemplus Card Int | Procede et dispositif de mise a jour d'informations dans une memoire et leur utilisation dans les cartes a memoire. |
US5870520A (en) * | 1992-12-23 | 1999-02-09 | Packard Bell Nec | Flash disaster recovery ROM and utility to reprogram multiple ROMS |
GB9307623D0 (en) * | 1993-04-13 | 1993-06-02 | Jonhig Ltd | Data writing to eeprom |
GB2290890B (en) * | 1994-06-29 | 1999-03-24 | Mitsubishi Electric Corp | Information processing system |
KR100265375B1 (ko) * | 1996-04-18 | 2000-09-15 | 윤종용 | 영상 처리기기의 사용시간 표시방법 |
DE19716520B4 (de) * | 1997-04-19 | 2007-04-19 | Robert Bosch Gmbh | Als Schaltung ausgebildete Vorrichtung zur Erfassung von Betriebsgrößen von Elektromotoren sowie Elektromotor |
US6021508A (en) * | 1997-07-11 | 2000-02-01 | International Business Machines Corporation | Parallel file system and method for independent metadata loggin |
US5999712A (en) * | 1997-10-21 | 1999-12-07 | Sun Microsystems, Inc. | Determining cluster membership in a distributed computer system |
US6449734B1 (en) * | 1998-04-17 | 2002-09-10 | Microsoft Corporation | Method and system for discarding locally committed transactions to ensure consistency in a server cluster |
DE19839680B4 (de) * | 1998-09-01 | 2005-04-14 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Veränderung des Speicherinhalts von Steuergeräten |
US6105099A (en) * | 1998-11-30 | 2000-08-15 | International Business Machines Corporation | Method for synchronizing use of dual and solo locking for two competing processors responsive to membership changes |
US7774469B2 (en) * | 1999-03-26 | 2010-08-10 | Massa Michael T | Consistent cluster operational data in a server cluster using a quorum of replicas |
US6453426B1 (en) * | 1999-03-26 | 2002-09-17 | Microsoft Corporation | Separately storing core boot data and cluster configuration data in a server cluster |
US6785678B2 (en) * | 2000-12-21 | 2004-08-31 | Emc Corporation | Method of improving the availability of a computer clustering system through the use of a network medium link state function |
US7016946B2 (en) * | 2001-07-05 | 2006-03-21 | Sun Microsystems, Inc. | Method and system for establishing a quorum for a geographically distributed cluster of computers |
US7320085B2 (en) * | 2004-03-09 | 2008-01-15 | Scaleout Software, Inc | Scalable, software-based quorum architecture |
US20050283641A1 (en) * | 2004-05-21 | 2005-12-22 | International Business Machines Corporation | Apparatus, system, and method for verified fencing of a rogue node within a cluster |
US20060100981A1 (en) * | 2004-11-04 | 2006-05-11 | International Business Machines Corporation | Apparatus and method for quorum-based power-down of unresponsive servers in a computer cluster |
GB0501697D0 (en) * | 2005-01-27 | 2005-03-02 | Ibm | Controlling service failover in clustered storage apparatus networks |
US7631016B2 (en) * | 2005-05-04 | 2009-12-08 | Oracle International Corporation | Providing the latest version of a data item from an N-replica set |
-
2001
- 2001-09-04 DE DE10143142A patent/DE10143142A1/de not_active Ceased
-
2002
- 2002-08-21 US US10/488,719 patent/US20040237628A1/en not_active Abandoned
- 2002-08-21 EP EP02760126A patent/EP1423788A2/de not_active Withdrawn
- 2002-08-21 JP JP2003529310A patent/JP2005502972A/ja active Pending
- 2002-08-21 KR KR10-2004-7003214A patent/KR20040051585A/ko not_active Application Discontinuation
- 2002-08-21 WO PCT/DE2002/003051 patent/WO2003025748A2/de not_active Application Discontinuation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010146150A (ja) * | 2008-12-17 | 2010-07-01 | Panasonic Corp | 半導体記憶装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2003025748A3 (de) | 2004-01-29 |
EP1423788A2 (de) | 2004-06-02 |
KR20040051585A (ko) | 2004-06-18 |
WO2003025748A2 (de) | 2003-03-27 |
DE10143142A1 (de) | 2003-01-30 |
US20040237628A1 (en) | 2004-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20010070149A (ko) | 전기적으로 재기입 가능한 불휘발성 메모리를 구비하는마이크로컨트롤러 | |
JPH0423449B2 (ja) | ||
CA1238492A (en) | Hour meter apparatus and method | |
JP2005502972A (ja) | マイクロコントローラおよびeepromを含む回路装置の駆動方法 | |
JP3057340B2 (ja) | 電子時計 | |
KR19990007309A (ko) | 시스템 리셋 방법 | |
US4768210A (en) | Method and apparatus for failsafe storage and reading of a digital counter in case of power interruption | |
JP2005502973A (ja) | マイクロコントローラおよびeepromを含む回路装置の駆動方法 | |
US20050246513A1 (en) | Electronic control device and data adjustment method | |
JPS62213000A (ja) | 測定方式 | |
JP2014206905A (ja) | 書き込み装置 | |
JPH087742B2 (ja) | ワンチップマイクロコンピュータ | |
JP4599707B2 (ja) | ダウンロード・データの版数管理方式 | |
JPH06236695A (ja) | 交換表示機能付不揮発性メモリ装置 | |
JPH01290040A (ja) | ディジタル信号切換回路 | |
JPH1186575A (ja) | 不揮発性半導体記憶装置 | |
JP5486193B2 (ja) | フラッシュメモリの動作保護装置及びフラッシュメモリの動作保護方法 | |
JPH10224147A (ja) | 発振回路の周波数調整装置 | |
JPS5856102A (ja) | シ−ケンスコントロ−ラ | |
JPH0478946A (ja) | メモリーの監視方式 | |
JPH07254290A (ja) | Eeprom回路 | |
JPH08102195A (ja) | 記憶内容更新方法及びその装置 | |
JP3824295B2 (ja) | 不揮発性半導体記憶装置 | |
JPH01158314A (ja) | 電子式計器 | |
JP3510780B2 (ja) | マイクロコンピュータ |