(57)【要約】【課題】制御動作時にも不揮発性メモリのデータの書換処理を行なうことができる電子制御装置を提供する。【解決手段】ＥＣＵ１０は、ＣＰＵ１００、フラッシュＥＥＰＲＯＭ１０１及び調整用ＲＡＭ１０２を備える。キャリブレーションを行なう場合には、フラッシュＥＥＰＲＯＭ１０１のキャリブレーション領域のデータを調整用ＲＡＭ１０２に記録する。そして、キャリブレーション領域に調整用ＲＡＭ１０２のメモリ領域を重ね、キャリブレーションを行なう。この場合、キャリブレーション領域のデータは調整用ＲＡＭ１０２に書き込まれる。キャリブレーションが完了した場合には、スーパーユーザモードに入る。この場合、調整用ＲＡＭ１０２に記録されたデータは、制御レジスタ１１３を用いてフラッシュＥＥＰＲＯＭ１０１に書き込まれる。【選択図】　　　図１
2004005296.tif 000002
【特許請求の範囲】
【請求項１】
機器を制御するための制御データを格納する不揮発性メモリと揮発性メモリとを有する電子制御装置において、
前記制御データの調整には、前記揮発性メモリに記録されたデータを用いて実行し、
前記調整の完了時には、前記揮発性メモリに格納されたデータの前記不揮発性メモリへの書込処理を実行する制御手段を有することを特徴とする電子制御装置。
【請求項２】
前記制御手段は、
前記調整の開始時に、調整対象となる前記不揮発性メモリ内のデータを前記揮発性メモリに記録し、
前記揮発性メモリに記録されたデータを用いて前記制御データの調整を実行することを特徴とする請求項１に記載の電子制御装置。
【請求項３】
前記制御手段は、さらに、
前記調整の開始時に、調整対象となる前記不揮発性メモリのアドレスを特定し、
前記不揮発性メモリのアドレスと同じアドレスを前記揮発性メモリに割り振り、
前記調整の間は、前記揮発性メモリへのデータ処理を優先して実行することを特徴とする請求項１又は２に記載の電子制御装置。
【請求項４】
前記電子制御装置は、さらに前記不揮発性メモリのデータを制御するための制御レジスタを有し、
前記制御手段は、
前記調整の完了時には、前記揮発性メモリのアドレスと、調整済み制御データとを前記制御レジスタに書き込み、
前記制御レジスタに記録されたアドレスと調整済み制御データとを用いて前記不揮発性メモリへの書込処理を実行することを特徴とする請求項１〜３のいずれか１項に記載の電子制御装置。
【請求項５】
前記電子制御装置は、前記制御レジスタの使用を許容する権限を制御するための権限レジスタを有し、
前記制御手段は、
前記揮発性メモリへの書込処理の実行時に前記権限レジスタをセットし、
前記書込処理の完了後に前記権限レジスタをクリアすることを特徴とする請求項４に記載の電子制御装置。
【請求項６】
前記機器は複数のユニットから構成され、
前記制御データは前記ユニット毎に対応して前記不揮発性メモリに格納され、
前記揮発性メモリは、調整の対象となる前記ユニットに対応した制御データを格納できる記憶容量を有することを特徴とする請求項１〜５のいずれか１項に記載の電子制御装置。
【請求項７】
前記不揮発性メモリは、少なくとも２以上の記憶ブロックから構成され、
前記書込処理は記憶ブロック毎に実行し、
前記記憶ブロックへの書込処理を実行する場合には、他の記憶ブロックを用いて前記機器の制御を行なうことを特徴とする請求項１〜６のいずれか１項に記載の電子制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、機器を制御する電子制御装置に関し、特に制御に用いるデータを書き換えることができる電子制御装置に関するものである。
【０００２】
【従来の技術】
機器等を制御するための制御プログラムや制御パラメータ等の制御データは、バッテリが外されても消去されないように不揮発性メモリ（ＲＯＭ）内に格納され、ユーザに供給される場合がある。例えば、自動車のエンジンやトランスミッション等の制御等においても電子制御装置が使用されており、これらの制御データは電子制御装置内のＲＯＭに格納されている。
【０００３】
また、電子制御装置を自動車に実装した後で、自動車メーカやディーラー等が、実際のエンジンやトランスミッション等の制御対象機器の特性に応じて制御データの調整（キャリブレーション）を希望する場合もある。このため、制御データを書き換えることができるＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ　Ｅｒａｓａｂｌｅ　ａｎｄ　Ｐｒｏｇｒａｍｍａｂｌｅ　ＲＯＭ）やフラッシュメモリ（フラッシュＥＥＰＲＯＭ）等の書き換え可能不揮発性メモリに制御データを格納することも多い。特に、フラッシュＥＥＰＲＯＭは、内部回路が比較的簡単で安価という特徴がある。
【０００４】
【発明が解決しようとする課題】
フラッシュＥＥＰＲＯＭの記憶領域は複数の記憶ブロックに分割して構成されており、書き換え時には記憶ブロック毎にデータの消去や書き込みを行なう。例えば、記憶容量が３２キロバイト（ＫＢ）の２つの記憶ブロックから構成された６４ＫＢのフラッシュＥＥＰＲＯＭの場合、３２ｋＢ毎にデータの書換処理が行なわれる。しかし、フラッシュＥＥＰＲＯＭにおいてはデータの書換処理が行われている間、この記憶ブロックのデータの読み出しを行なうことができない。
【０００５】
また、フラッシュＥＥＰＲＯＭにおいては、データの書換処理に要する時間が、ＲＡＭ（Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）の書き換え所要時間に比べて非常に長い。
このため、エンジン等の制御対象機器の特性に応じてキャリブレーションを行なう場合、通常フラッシュＥＥＰＲＯＭに書き込むためのデータをデバッガ等の外部記憶装置に一旦格納する。そして、エンジンを停止させた上、外部記憶装置に格納されたデータを用いてフラッシュＥＥＰＲＯＭの書換処理を行なう。従って、一つのフラッシュＥＥＰＲＯＭに対して複数回のキャリブレーションを行なう場合、キャリブレーション毎に上記処理を繰り返す必要があり、非常に手間がかかる。
【０００６】
本発明は、上記問題に着目してなされたものであって、その目的とするところは、制御動作時にも不揮発性メモリのデータの書換処理を行なうことができる電子制御装置を提供することである。
【０００７】
【課題を解決するための手段】
上記問題点を解決するために、請求項１に記載の発明は、機器を制御するための制御データを格納する不揮発性メモリと揮発性メモリとを有する電子制御装置において、前記制御データの調整には、前記揮発性メモリに記録されたデータを用いて実行し、前記調整の完了時には、前記揮発性メモリに格納されたデータの前記不揮発性メモリへの書込処理を実行する制御手段を有することを要旨とする。
【０００８】
請求項２に記載の発明は、請求項１に記載の電子制御装置において、前記制御手段は、前記調整の開始時に、調整対象となる前記不揮発性メモリ内のデータを前記揮発性メモリに記録し、前記揮発性メモリに記録されたデータを用いて前記制御データの調整を実行することを要旨とする。
【０００９】
請求項３に記載の発明は、請求項１又は２に記載の電子制御装置において、前記制御手段は、さらに、前記調整の開始時に、調整対象となる前記不揮発性メモリのアドレスを特定し、前記不揮発性メモリのアドレスと同じアドレスを前記揮発性メモリに割り振り、前記調整の間は、前記揮発性メモリへのデータ処理を優先して実行することを要旨とする。
【００１０】
請求項４に記載の発明は、請求項１〜３のいずれか１項に記載の電子制御装置において、前記電子制御装置は、さらに前記不揮発性メモリのデータを制御するための制御レジスタを有し、前記制御手段は、前記調整の完了時には、前記揮発性メモリのアドレスと、調整済み制御データとを前記制御レジスタに書き込み、前記制御レジスタに記録されたアドレスと調整済み制御データとを用いて前記不揮発性メモリへの書込処理を実行することを要旨とする。
【００１１】
請求項５に記載の発明は、請求項４に記載の電子制御装置において、前記電子制御装置は、前記制御レジスタの使用を許容する権限を制御するための権限レジスタを有し、前記制御手段は、前記揮発性メモリへの書込処理の実行時に前記権限レジスタをセットし、前記書込処理の完了後に前記権限レジスタをクリアすることを要旨とする。
【００１２】
請求項６に記載の発明は、請求項１〜５のいずれか１項に記載の電子制御装置において、前記機器は複数のユニットから構成され、前記制御データは前記ユニット毎に対応して前記不揮発性メモリに格納され、前記揮発性メモリは、調整の対象となる前記ユニットに対応した制御データを格納できる記憶容量を有することを要旨とする。
【００１３】
請求項７に記載の発明は、請求項１〜６のいずれか１項に記載の電子制御装置において、前記不揮発性メモリは、少なくとも２以上の記憶ブロックから構成され、前記書込処理は記憶ブロック毎に実行し、前記記憶ブロックへの書込処理を実行する場合には、他の記憶ブロックを用いて前記機器の制御を行なうことを要旨とする。
【００１４】
（作用）
請求項１に記載の発明によれば、制御データの調整には、前記揮発性メモリに記録されたデータを用いて実行する。そして、前記調整の完了時には、揮発性メモリに格納されたデータの不揮発性メモリへの書込処理を実行する。このため、電子制御装置に設けられた揮発性メモリを用いて、機器を制御するための制御データを格納する不揮発性メモリの調整を行なうことができる。この場合、デバッガ等の外部記憶装置を用いる必要がなく、調整を行なうことができる。このような書込処理を行なうことにより、制御対象機器を動作させながら調整を行なうことができる。
【００１５】
請求項２に記載の発明によれば、調整の開始時に、調整対象となる不揮発性メモリ内のデータを揮発性メモリに記録し、揮発性メモリに記録されたデータを用いて制御データの調整を実行する。このため、調整前の制御データを出発点として調整を行なうことができる。不揮発性メモリに標準的な制御データを格納しておくことにより、制御対象機器の特性に応じて微調整を行なえばよく、効率的に調整を行なうことができる。
【００１６】
請求項３に記載の発明によれば、調整の開始時に、調整対象となる不揮発性メモリのアドレスを特定する。そして、不揮発性メモリのアドレスと同じアドレスを揮発性メモリに割り振り、調整の間は、前記揮発性メモリへのデータ処理を優先して実行する。つまり、メモリーマップ上では、調整対象のメモリ領域に重ねて、揮発性メモリのメモリ領域が設定される。このため、電子制御装置は、調整中においても通常どおりのアドレスを用いて機器の制御を行なうことができる。
【００１７】
請求項４に記載の発明によれば、調整の完了時には、揮発性メモリのアドレスと、調整済み制御データとを制御レジスタに書き込む。そして、制御レジスタに記録されたアドレスと調整済み制御データとを用いて不揮発性メモリへの書込処理を実行する。この制御レジスタを介して、揮発性メモリのデータを確実に不揮発性メモリに書き込むことができる。
【００１８】
請求項５に記載の発明によれば、電子制御装置は、制御レジスタの使用を許容する権限を制御するための権限レジスタを有する。そして、揮発性メモリへの書込処理の実行時に権限レジスタがセットされ、書込処理の完了後に権限レジスタをクリアする。これにより、書込処理の実行時のみ、制御レジスタのメモリ管理を行なえばよい。
【００１９】
請求項６に記載の発明によれば、揮発性メモリは、調整の対象となるユニットに対応した制御データを格納できる記憶容量を有する。これにより、揮発性メモリの記憶容量を、調整に要する容量に留めることができ、電子制御装置の小型化や価格を低減することができる。
【００２０】
請求項７に記載の発明によれば、不揮発性メモリは、少なくとも２以上の記憶ブロックから構成され、書込処理は記憶ブロック毎に実行する。そして、記憶ブロックへの書込処理を実行する場合には、他の記憶ブロックを用いて機器の制御を行なう。このため、機器の制御を行ないながら、不揮発性メモリの制御データの書換処理を行なうことができる。従って、制御対象機器や電子制御装置を立ち上げなおす必要がなく、効率的に調整を行なうことができる。
【００２１】
【発明の実施の形態】
以下、本発明を具体化した一実施形態を図１〜図７に従って説明する。本実施形態では、図１に示すように、自動車エンジン等の制御対象部１１を、電子制御装置としてのＥＣＵ（Ｅｌｅｃｔｒｉｃ　Ｃｏｎｔｒｏｌ　Ｕｎｉｔ：電子制御ユニット）１０を用いて制御する場合を想定する。すなわち、ＥＣＵ１０を自動車に実装後、自動車を構成する各ユニットの制御を行なうため、制御データとしての制御パラメータの調整（キャリブレーション）を行なう。
【００２２】
このＥＣＵ１０は、ＣＰＵ１００、不揮発性メモリとしてのフラッシュＥＥＰＲＯＭ１０１及び揮発性メモリとしての調整用ＲＡＭ１０２を備えている。
ＥＣＵ１０は、図示しないクロックモジュール、Ａ／Ｄコンバータ等を備える。そして、ＣＰＵ１００は、フラッシュＥＥＰＲＯＭ１０１や調整用ＲＡＭ１０２等に格納された各種プログラムを実行するよう構成されている。
【００２３】
このフラッシュＥＥＰＲＯＭ１０１には、ＥＣＵ１０が制御を行なう場合に用いる制御命令や制御パラメータに関するデータが記録されている。本実施形態に用いられるフラッシュＥＥＰＲＯＭ１０１は、全体で６４キロバイト（ｋＢ）の記憶容量がある。そして、この記憶領域は３２ｋＢの記憶ブロック（メモリーマップ上において「ブロック０」、「ブロック１」）から構成されている。そして、書き換え時にはこの記憶ブロック単位にデータの消去処理及び書込処理が行なわれる。この「ブロック０」には制御命令に関するデータを記録し、「ブロック１」には制御対象のユニット毎に制御パラメータに関するデータを記録する。本実施形態では、「ブロック０」の制御命令により制御対象部１１の制御中に、「ブロック１」の制御パラメータの書き換えを行なう場合を想定する。
【００２４】
調整用ＲＡＭ１０２は、キャリブレーション時に所定のデータを一時的に記憶するメモリである。調整用ＲＡＭ１０２は制御対象のユニット毎に対応した制御パラメータを格納できる記憶容量のメモリを用いる。本実施形態の調整用ＲＡＭ１０２は２ｋＢの記憶容量を有する。
【００２５】
さらに、ＥＣＵ１０には入出力インターフェース部１２０が設けられている。ＥＣＵ１０の各部は、この入出力インターフェース部１２０を介してユーザインターフェース部１２や制御対象部１１に接続されている。このユーザインターフェース部１２は、ユーザが制御対象部１１を特定したり、パラメータを確定したりするために用いる。
【００２６】
また、制御対象部１１は、エンジンやトランスミッション等の制御対象となる機器である。ＥＣＵ１０は入出力インターフェース部１２０を介して、制御対象部１１に設けられた各種センサからデータを受けたり、アクチュエータ等にデータを出力したりする。
【００２７】
ＣＰＵ１００はアドレスバスを介してアドレスデコーダ１１０に接続されている。このアドレスデコーダ１１０は、ＣＰＵ１００からのアドレス信号に基づいてそれに対応する一つの出力端子に信号を出力する。本実施形態では、ＣＰＵ１００とアドレスデコーダ１１０とが制御手段として機能する。
【００２８】
このアドレスデコーダ１１０には、初期化レジスタ１１１が備えられている。この初期化レジスタ１１１は、キャリブレーションを行なう領域のアドレスに関するデータを記録する領域と、調整用ＲＡＭ１０２の起動に関するデータを記録する領域（起動ビット）とからなる。本実施形態では、調整用ＲＡＭ１０２が起動される場合には起動ビットに「１」が入力される。
【００２９】
さらに、ＥＣＵ１０には、フラッシュＥＥＰＲＯＭ１０１の書換処理に関する権限を付与するモード（以下、「スーパーユーザモード」という）を制御するため、権限レジスタとしてのスーパーユーザモードレジスタ１１２が設けられている。スーパーユーザモードにセットされる場合、スーパーユーザモードレジスタ１１２に含まれる権限ビットに「１」が入力される。
【００３０】
さらに、ＥＣＵ１０には、不揮発性メモリのデータを制御するための制御レジスタとしてのフラッシュ制御レジスタ１１３が設けられている。このフラッシュ制御レジスタ１１３はスーパーユーザモードにおいて用いられる。このフラッシュ制御レジスタ１１３は、フラッシュＥＥＰＲＯＭ１０１に書き込むべきアドレスや、調整された制御パラメータを保持する。
【００３１】
そして、ＣＰＵ１００〜調整用ＲＡＭ１０２、フラッシュ制御レジスタ１１３、入出力インターフェース部１２０は各々データバスに接続され、データバスを介してデータの授受が行なわれる。
【００３２】
次に、ＥＣＵ１０により実行される処理のうち、フラッシュＥＥＰＲＯＭ１０１に記録されたデータを制御対象部１１に適したデータに書き換える際の処理を、図２〜図７を用いて説明する。
【００３３】
まず、ＥＣＵ１０がフラッシュＥＥＰＲＯＭ１０１に記録されたデータに基づいて制御対象部１１を制御している中で、ユーザはユーザインターフェース部１２を用いて制御対象部１１に関してのキャリブレーションの指示を行なう。この指示は、入出力インターフェース部１２０及びデータバスを介してＣＰＵ１００に転送される。
【００３４】
この場合、ＥＣＵ１０はキャリブレーションモードに入り、図２の処理を開始する。
まず、ＣＰＵ１００はフラッシュＥＥＰＲＯＭ１０１上のキャリブレーション領域の決定を行なう（Ｓ１−１）。この場合、ＣＰＵ１００は初期化レジスタ１１１の起動ビットに「１」を入力し、調整用ＲＡＭ１０２を起動する。さらに、初期化レジスタ１１１にはキャリブレーションを行なう領域のアドレスが記録される。
【００３５】
次に、フラッシュＥＥＰＲＯＭ１０１のキャリブレーション領域のデータを調整用ＲＡＭ１０２にコピーする（Ｓ１−２）。この動作を図４に示すメモリーマップ５００を用いて説明する。このメモリーマップ５００には、調整用ＲＡＭ１０２に対応するメモリ領域５０１、フラッシュＥＥＰＲＯＭ１０１の「ブロック０」に対応するメモリ領域５０２や「ブロック１」に対応するメモリ領域５０３が設定されている。本実施形態では、メモリ領域５０３中の６０００番地〜６７ＦＦ番地をキャリブレーション領域５０４と想定する。そこで、ステップ（Ｓ１−２）では、キャリブレーション領域５０４のデータを、調整用ＲＡＭ１０２に対応するメモリ領域５０１に複製する。
【００３６】
次に、キャリブレーション領域に調整用ＲＡＭ１０２を重ねる（Ｓ１−３）。この動作を図５に示すメモリーマップ５１０を用いて説明する。ここでは、メモリーマップ５１０上に設定された調整用ＲＡＭ１０２のメモリ領域５０１をキャリブレーション領域５０４の設定されたアドレスに一致させる。すなわち、メモリ領域５０１とキャリブレーション領域５０４とには同じアドレスが割り振られることになる。
【００３７】
次に、この制御対象部１１の特性に合わせてキャリブレーション処理を実行する（Ｓ１−４）。この処理を図３に示すフロー図を用いて説明する。ユーザはユーザインターフェース部１２を用いて制御対象部１１を制御するパラメータデータ等の変更指示を行なう（Ｓ２−１）。この場合、ＣＰＵ１００はメモリーマップ５１０上のデータの読み出しや書き換えの各種処理を行なう。
【００３８】
調整用ＲＡＭ１０２の重なったメモリ領域の処理の場合（ステップ（Ｓ２−２）の「Ｙｅｓ」の場合）、調整用ＲＡＭ１０２のデータに基づいて処理する（Ｓ２−３）。すなわち、初期化レジスタ１１１の起動ビットに「１」が設定されている場合、フラッシュＥＥＰＲＯＭ１０１と調整用ＲＡＭ１０２とに同じアドレス（本実施形態で６０００番地〜６７ＦＦ番地）が割り振られたメモリ領域に対する各処理は、調整用ＲＡＭ１０２のメモリ領域５０１に対して行なわれる。
【００３９】
一方、調整用ＲＡＭ１０２の重なっていない領域の処理の場合（「Ｎｏ」の場合）、通常通りメモリーマップ５１０上のフラッシュＥＥＰＲＯＭ１０１のデータに対して行なわれる（Ｓ２−４）。
【００４０】
そして、新たなデータ処理の指示の指示があった場合（ステップ（Ｓ２−５）において「Ｎｏ」の場合）、ステップ（Ｓ２−１）〜（Ｓ２−４）の各処理を繰り返すことにより、キャリブレーションを行なう。一方、制御対象部１１に関して適切なパラメータ値を見つけた場合、ユーザはユーザインターフェース部１２を用いてキャリブレーションの終了指示を行なう。キャリブレーションの終了指示があった場合（ステップ（Ｓ２−５）において「Ｙｅｓ」の場合）、図２に示すフローに戻る。
【００４１】
次にスーパーユーザモードがセットされる（Ｓ１−５）。具体的には、スーパーユーザモードレジスタ１１２の権限ビットに「１」が入力される。
この場合、調整用ＲＡＭ１０２に記録された制御パラメータを、フラッシュＥＥＰＲＯＭ１０１に対してプログラムする書込処理が実行される（Ｓ１−６）。すなわち、図６に示すメモリーマップ５２０のように、メモリーマップ５２０上に設定された調整用ＲＡＭ１０２のメモリ領域５０１のデータを、キャリブレーション領域５０４に書き込む。具体的には、スーパーユーザモードの場合、フラッシュ制御レジスタ１１３がメモリーマップ上で利用可能になる。そして、調整用ＲＡＭ１０２に記録されたアドレスとデータとをフラッシュ制御レジスタ１１３に書き込む。さらに、フラッシュ制御レジスタ１１３に記録されたアドレスに基づいて、フラッシュＥＥＰＲＯＭ１０１上のアドレスにフラッシュ制御レジスタ１１３に記録されたデータを書き込む。この間、ＥＣＵ１０はメモリ領域５０２に記録されたデータに基づいて制御対象部１１の制御を継続する。
【００４２】
そして、プログラムが完了した場合、スーパーユーザモードレジスタ１１２の権限ビットがクリアされ、スーパーユーザモードから通常のモードに戻る。さらに、初期化レジスタ１１１の設定変更を行なわれる（Ｓ１−７）。ここでは、初期化レジスタ１１１の起動ビットがクリアされる。この場合、図７に示すメモリーマップ５３０になる。すなわち、調整用ＲＡＭ１０２のメモリ領域５０１が除かれ、調整用ＲＡＭ１０２のデータの書き込まれたキャリブレーション済み領域５３１がメモリーマップ５３０上に生成される。そして、ＥＣＵ１０は書き換えられたフラッシュＥＥＰＲＯＭ１０１のデータを用いて制御対象部１１の制御を行なう。以上により、フラッシュＥＥＰＲＯＭ１０１の書換処理を終わる。
【００４３】
上記実施形態によれば、以下のような特徴を得ることができる。
・　上記実施形態では、ＥＣＵ１０にはフラッシュ制御レジスタ１１３が設けられており、キャリブレーションの終了時にスーパーユーザモードに入る。このモードでは、フラッシュ制御レジスタ１１３がメモリーマップ上で利用可能になる。そして、調整用ＲＡＭ１０２に記録されたデータを、フラッシュ制御レジスタ１１３を用いてフラッシュＥＥＰＲＯＭ１０１にプログラムする。このため、ＥＣＵ１０の動作中においても、フラッシュＥＥＰＲＯＭ１０１の所定領域のデータを消去したり、書き込んだりすることができる。従来は、制御対象部１１を停止させ、ＥＣＵ１０の制御を中断してフラッシュＥＥＰＲＯＭ１０１の書き換えを行なう。そのため、他のキャリブレーションを行なう場合、再度、ＥＣＵ１０や制御対象部１１を立ち上げ直す必要がある。この場合、制御対象部１１等の始動後安定するまでには時間を要する。上記実施形態のように制御対象部１１を動作させながらキャリブレーションを行なうことにより、より短時間にキャリブレーション作業を完了することができる。
【００４４】
・　上記実施形態では、スーパーユーザモードを用いて、ＥＣＵ１０の動作中においてもキャリブレーションを行なうことができる。このため、調整用ＲＡＭ１０２は２ｋＢのように比較的小さい場合にも効率的にキャリブレーションを行なうことができる。このように小さな調整用ＲＡＭ１０２を用いることにより、ＥＣＵ１０の小型化を図ることできる。さらに、ＲＡＭは比較的高価であるため、小さな調整用ＲＡＭ１０２を用いることによりＥＣＵ１０のコストを低く押さえることができる。
【００４５】
・　上記実施形態では、ＥＣＵ１０に設けられた調整用ＲＡＭ１０２を用いて、フラッシュＥＥＰＲＯＭ１０１のデータの書き換えを行なう。すなわち、ＥＣＵ１０自身がフラッシュＥＥＰＲＯＭ１０１のデータを書き換えるための仕組みを有する。このため、キャリブレーションを行なったデータをデバッガ等の外部の記憶装置に記録する必要がない。従って、効率的にフラッシュＥＥＰＲＯＭ１０１に記録されたデータの書き換えを行なうことができる。
【００４６】
・　上記実施形態では、キャリブレーションの開始時には初期化レジスタ１１１にキャリブレーションを行なう領域のアドレスが記録される。このアドレスを用いて、フラッシュＥＥＰＲＯＭ１０１のデータを調整用ＲＡＭ１０２にコピーしたり、調整用ＲＡＭ１０２のメモリ領域５０１をフラッシュＥＥＰＲＯＭ１０１のキャリブレーション領域５０４に設定したりすることができる。すなわち、調整用ＲＡＭ１０２の設定領域をキャリブレーション領域に応じて設定できる。
【００４７】
なお、上記実施形態は以下のように変更してもよい。
・　上記実施形態では、プログラムが完了した場合、スーパーユーザモードレジスタ１１２の権限ビットがクリアされ、スーパーユーザモードから通常のモードに戻る。この際、初期化レジスタ１１１の起動ビットがクリアされる。これに代えて、連続して他の制御対象部１１のキャリブレーションを行なう場合には、初期化レジスタ１１１の起動ビットを「１」に維持しながら、新たにキャリブレーションを行なう領域のアドレスを初期化レジスタ１１１に設定してもよい。これにより、連続してキャリブレーションを行なうことができる。
【００４８】
・　上記実施形態では、２ｋＢの記憶容量を有する調整用ＲＡＭ１０２を用いるが、これに限定されるものではない。１回のキャリブレーションに必要なメモリ領域をカバーできるものであればよい。さらに、記憶容量の大きな調整用ＲＡＭ１０２を用いることにより、１回で多くの制御対象部１１に対するキャリブレーションを行なうことができる。
【００４９】
・　上記実施形態では、フラッシュＥＥＰＲＯＭ１０１の「ブロック０」の制御命令により制御対象部１１の制御動作中に、「ブロック１」の制御パラメータの書き換えを行なうが、これに限定するものではない。書き換えを要するフラッシュＥＥＰＲＯＭ１０１を備える電子制御装置に具体化するものであればよい。
【００５０】
・　上記実施形態では、ステップ（Ｓ１−２）において、フラッシュＥＥＰＲＯＭ１０１のキャリブレーション領域のデータを調整用ＲＡＭ１０２にコピーする。これに代えて、キャリブレーション領域に制御データがない場合には、このステップをスキップしてもよい。
【００５１】
・　上記実施形態では、自動車エンジン等の制御対象部１１を、電子制御装置（ＥＣＵ１０）を用いて制御するが、これに限定するものではない。要は、フラッシュＥＥＰＲＯＭ１０１を備え、そのデータの書き換えを実施する電子制御装置に具体化するものであればよい。
【００５２】
【発明の効果】
以上詳述したように、本発明によれば、制御動作時にも不揮発性メモリのデータの書換処理を行なうことができる。
【図面の簡単な説明】
【図１】本発明の実施形態におけるＥＣＵの概要を示す構成図。
【図２】フラッシュＥＥＰＲＯＭの書換処理を説明するためのフロー図。
【図３】フラッシュＥＥＰＲＯＭの書換処理を説明するためのフロー図。
【図４】メモリーマップの説明図。
【図５】メモリーマップの説明図。
【図６】メモリーマップの説明図。
【図７】メモリーマップの説明図。
【符号の説明】
１０…電子制御装置としてのＥＣＵ、１００…制御手段としてのＣＰＵ、１０１…不揮発性メモリとしてのフラッシュＥＥＰＲＯＭ、１０２…揮発性メモリとしての調整用ＲＡＭ、１１０…制御手段としてのアドレスデコーダ、１１２…権限レジスタとしてのスーパーユーザモードレジスタ、１１３…制御レジスタとしてのフラッシュ制御レジスタ。
【図１】
2004005296.tif 000003
【図２】
2004005296.tif 000004
【図３】
2004005296.tif 000005
【図４】
2004005296.tif 000006
【図５】
2004005296.tif 000007
【図６】
2004005296.tif 000008
【図７】
2004005296.tif 000009