(57)【特許請求の範囲】
【請求項１】
通常時には、電気的にデータの書き換えが可能な不揮発性メモリに格納されたデータにより構成される制御プログラム及び制御データに従って所定の制御対象を制御し、外部からの書き換え指令を受けた場合には、前記不揮発性メモリ内のデータを外部装置から送信されて来る新たなデータに書き換えるための書換処理を行う電子制御装置において、
当該電子制御装置は、前記外部装置から送信されて来る書換制御プログラムを、揮発性のメモリ領域に転送して該メモリ領域上で実行することにより、前記書換処理を行うように構成されていると共に、
当該電子制御装置の識別情報を予め記憶する識別情報記憶手段と、
前記書き換え指令を受けると、前記外部装置から前記書換制御プログラムが送信されて来る前に、前記外部装置との間で通信を行うことにより、前記外部装置側にて前記新たなデータと対応して予め記憶された情報であって当該新たなデータに適合する装置を示す識別情報と、前記識別情報記憶手段に記憶された識別情報とが一致しているか否かを判定する判定手段と、
該判定手段により前記両識別情報が一致していると判定された場合にのみ、前記書換制御プログラムの前記メモリ領域への転送を許可する転送許可手段とを備え、
更に、前記識別情報は、当該電子制御装置が制御するエンジンの型式や仕様、或いは、当該電子制御装置が搭載される車種名や車のグレード名毎に設定されていること、
を特徴とする電子制御装置。
【請求項２】
請求項１に記載の電子制御装置において、
前記判定手段は、
前記外部装置から送信されて来る前記外部装置側の識別情報を受信し、該受信した識別情報と前記識別情報記憶手段に記憶された識別情報とを比較することにより、前記外部装置側の識別情報と前記識別情報記憶手段に記憶された識別情報とが一致しているか否かを判定すること、
を特徴とする電子制御装置。
【請求項３】
請求項２に記載の電子制御装置に前記外部装置として接続され、前記電子制御装置へ、前記書換制御プログラムと前記新たなデータとを送信するメモリ書換装置であって、
前記新たなデータを、当該新たなデータに適合する装置を示す識別情報と対応させて予め記憶するデータ記憶手段を備えると共に、前記書換制御プログラムを送信する前に、前記新たなデータに対応する前記識別情報を前記電子制御装置へ送信するように構成されていること、
を特徴とするメモリ書換装置。
【請求項４】
請求項２に記載の電子制御装置と、請求項３に記載のメモリ書換装置と、を備えたことを特徴とする電子制御装置のメモリ書換システム。
【請求項５】
請求項１に記載の電子制御装置において、
前記判定手段は、
前記識別情報記憶手段に記憶されている識別情報を前記外部装置へ送信し、その後、前記外部装置側の識別情報と前記送信した識別情報とが一致しているか否かを表す応答信号を前記外部装置から受信することにより、前記外部装置側の識別情報と前記識別情報記憶手段に記憶された識別情報とが一致しているか否かを判定するように構成されていること、
を特徴とする電子制御装置。
【請求項６】
請求項５に記載の電子制御装置に前記外部装置として接続され、前記電子制御装置へ、前記書換制御プログラムと前記新たなデータとを送信するメモリ書換装置であって、
前記新たなデータを、当該新たなデータに適合する装置を示す識別情報と対応させて予め記憶するデータ記憶手段を備えると共に、前記電子制御装置からの識別情報が、前記新たなデータに対応する識別情報と一致しているか否かを判定して、前記両識別情報が一致している場合に、前記電子制御装置へ、当該メモリ書換装置側の識別情報と前記電子制御装置の識別情報記憶手段に記憶された識別情報とが一致していることを表す前記応答信号を送信し、その後、前記書換制御プログラムを送信するように構成されていること、
を特徴とするメモリ書換装置。
【請求項７】
請求項５に記載の電子制御装置と、請求項６に記載のメモリ書換装置と、を備えたことを特徴とする電子制御装置のメモリ書換システム。
【請求項８】
通常時には、電気的にデータの書き換えが可能な不揮発性メモリに格納されたデータにより構成される制御プログラム及び制御データに従って所定の制御対象を制御し、外部からの書き換え指令を受けた場合には、前記不揮発性メモリ内のデータを外部装置から送信されて来る新たなデータに書き換えるための書換処理を行う電子制御装置において、
当該電子制御装置は、前記外部装置から送信されて来る書換制御プログラムを、揮発性のメモリ領域に転送して該メモリ領域上で実行することにより、前記書換処理を行うように構成されていると共に、
当該電子制御装置の識別情報を予め記憶する識別情報記憶手段と、
前記書き換え指令を受けると、前記外部装置から前記書換制御プログラムが送信されて来る前に、前記外部装置から送信されて来る識別情報を受信し、該受信した識別情報と前記識別情報記憶手段に記憶された識別情報とが一致しているか否かを判定する判定手段と、
該判定手段により前記両識別情報が一致していると判定された場合にのみ、前記書換制御プログラムの前記メモリ領域への転送を許可する転送許可手段とを備え、
更に、前記識別情報は、当該電子制御装置が制御するエンジンの型式や仕様、或いは、当該電子制御装置が搭載される車種名や車のグレード名毎に設定されていること、
を特徴とする電子制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電気的にデータの書き換えが可能な不揮発性メモリに格納された制御プログラムや制御データを、該不揮発性メモリを電子制御装置に搭載した状態で書き換える技術に関する。
【０００２】
【従来の技術】
従来より、例えば自動車のエンジンを制御する電子制御装置として、電気的にデータの書き換え（詳しくはデータの消去及び書き込み）が可能な不揮発性メモリにエンジン制御用の制御プログラム及び制御データを格納しておき、このような制御プログラムや制御データを、市場への供給後でも書き換え可能に構成されたものが提案されている。
【０００３】
即ち、この種の電子制御装置は、通常時には、不揮発性メモリに格納されたデータにより構成される制御プログラム及び制御データに従ってエンジン等の制御対象を制御するのであるが、別途用意されたメモリ書換装置が接続されて、そのメモリ書換装置から書き換え指令を受けると、不揮発性メモリに格納されている現在のデータを消去し、その消去した領域に上記メモリ書換装置から送信されて来る新たなデータ（新たな制御プログラム及び制御データ）を書き込む、といった書換処理を行うように構成されている。
【０００４】
一方、このような電子制御装置に接続される上記メモリ書換装置は、書き換えるべき新たなデータを記憶する記憶媒体を備えており、作業者によって所定の操作が行われると、上記記憶媒体に記憶されている新たなデータを電子制御装置へ送信するように構成されている。
【０００５】
そして、こうした電子制御装置とメモリ書換装置とからなる、電子制御装置のメモリ書換システムでは、電子制御装置の不揮発性メモリに格納される制御プログラムや制御データを、メモリ書換装置から電子制御装置へ送信する新たな制御プログラムや制御データに書き換えることができ、これによって、電子制御装置の動作内容（制御内容）を任意に変更することができる。
【０００６】
【発明が解決しようとする課題】
ところが、例えば自動車においては、異なる車種間ではもちろんであるが、同一車種であっても、グレード（搭載装備）やエンジンの型式、或いは仕向地（輸出国）等の違いによって、電子制御装置が行うべき制御の内容は異なっている。換言するならば、電子制御装置の不揮発性メモリに格納すべき制御プログラムや制御データは、その電子制御装置が制御する制御対象毎に異なっている。
【０００７】
よって、この種の電子制御装置のメモリ書換システムでは、作業者が、電子制御装置（詳しくは、その制御対象）に不適合な制御プログラム等を構成するデータがメモリ書換装置側の記憶媒体に記憶されていることを知らずに、メモリ書換装置から電子制御装置へ、その不適合なデータを送信させてしまう可能性がある。そして、このような作業ミスが発生すると、電子制御装置が制御対象を適切に制御することができなくなるという問題があった。
【０００８】
しかも、従来の電子制御装置では、不揮発性メモリの内容を書き換える書換処理を行うために実行される書換制御プログラムが、書き換え対象でない不揮発性メモリ（マスクＲＯＭ等）に予め内蔵されているため、通常時においてＣＰＵが暴走し、上記書換制御プログラムが誤って起動されると、不揮発性メモリに格納されていた正規の制御プログラムや制御データが失われたり変化したりしてしまうという可能性があった。
【０００９】
本発明は、このような問題に鑑みなされたものであり、不揮発性メモリに格納される制御プログラムや制御データが不適合なものに書き換えられてしまうことを確実に防止できる電子制御装置と、この電子制御装置の不揮発性メモリに格納される制御プログラムや制御データを書き換えるのに好適なメモリ書換装置及び電子制御装置のメモリ書換システムを提供することを目的としている。
【００１０】
【課題を解決するための手段、及び発明の効果】
上記目的を達成するためになされた請求項１に記載の電子制御装置は、電気的にデータの書き換えが可能な不揮発性メモリを備えており、通常時には、その不揮発性メモリに格納されたデータにより構成される制御プログラム及び制御データに従って所定の制御対象を制御するのであるが、外部からの書き換え指令を受けた場合には、外部装置から送信されて来る書換制御プログラムを揮発性のメモリ領域に転送して該メモリ領域上で実行することにより、前記不揮発性メモリ内のデータを前記外部装置から送信されて来る新たなデータに書き換えるための書換処理を行う。尚、以下の説明において、書換制御プログラムを揮発性のメモリ領域に転送して該メモリ領域上で実行することを、書換制御プログラムを揮発性のメモリ領域に転送して起動する、という。
【００１１】
そして、請求項１に記載の電子制御装置は、当該電子制御装置の識別情報を予め記憶する識別情報記憶手段と、判定手段と、転送許可手段とを備えており、判定手段は、外部からの前記書き換え指令を受けると、外部装置から前記書換制御プログラムが送信されて来る前に、前記外部装置との間で通信を行うことにより、前記外部装置側にて前記新たなデータ（即ち、不揮発性メモリに書き込むべき新たなデータ）と対応して予め記憶された情報であって当該新たなデータに適合する装置を示す識別情報と、識別情報記憶手段に記憶された識別情報とが一致しているか否かを判定し、転送許可手段が、上記判定手段により前記両識別情報が一致していると判定された場合にのみ、前記書換制御プログラムの前記メモリ領域への転送を許可する。また、前記識別情報は、当該電子制御装置が制御するエンジンの型式や仕様、或いは、当該電子制御装置が搭載される車種名や車のグレード名毎に設定されている。
【００１２】
つまり、請求項１に記載の電子制御装置では、外部からの書き換え指令を受けると、まず、外部装置との間で通信を行うことにより、外部装置側にて新たなデータと対応して予め記憶された識別情報と、識別情報記憶手段に記憶された自己の識別情報とが一致しているか否かを判定し、その両識別情報が一致している場合にのみ、外部装置から送信されて来る書換制御プログラムを揮発性のメモリ領域に転送して起動するようにしている。そして、この書換制御プログラムを起動して実行することにより、不揮発性メモリ内のデータを外部装置から送信されて来る新たなデータに書き換える書換処理を行うようにしている。
【００１３】
このような請求項１に記載の電子制御装置によれば、外部装置側にて、当該電子制御装置に適合しない制御プログラム及び制御データを構成する新たなデータが記憶されており、その不適合なデータが電子制御装置へ送信されそうな場合には、外部装置側の識別情報（即ち、外部装置側にて新たなデータと対応して予め記憶された情報であって当該新たなデータに適合する装置を示す識別情報）と、識別情報記憶手段に記憶された自己の識別情報とが一致しないため、当該電子制御装置は、書換制御プログラムを揮発性のメモリ領域へ転送しなくなる。
【００１４】
従って、請求項１に記載の電子制御装置によれば、不揮発性メモリ内の制御プログラムや制御データが、その電子制御装置に適合しない制御プログラムや制御データに、誤って書き換えられてしまうことを確実に防止することができる。
しかも、請求項１に記載の電子制御装置では、外部装置から送信されて来る書換制御プログラムを揮発性のメモリ領域に転送して起動することにより、不揮発性メモリ内のデータを書き換える書換処理を行うように構成されているため、不揮発性メモリの内容を書き換える作業を終了した後に、当該電子制御装置の電源を一旦遮断すれば、揮発性のメモリ領域に転送された書換制御プログラムは消失する。
【００１５】
よって、請求項１に記載の電子制御装置によれば、所定の制御対象を制御する通常時において、当該電子制御装置への電源供給を開始した後、万が一、プログラムを実行するＣＰＵが暴走したとしても、書換処理を行うための書換制御プログラムは内蔵されていないため、不揮発性メモリに格納されている正規の制御プログラムや制御データが失われたり変化したりしてしまうことを確実に防止できる。
【００１６】
尚、電気的にデータの書き換えが可能な不揮発性メモリとしては、フラッシュＥＥＰＲＯＭ（以下、フラッシュＲＯＭという）或いはＥＥＰＲＯＭが一般的であるが、電気的に書き換え可能な他のＲＯＭでも良い。また、書換制御プログラムが転送される揮発性のメモリ領域としては、データの読み出し及び書き込みが可能なＲＡＭを用いることができる。
【００１７】
ところで、請求項１に記載の電子制御装置において、判定手段としては、請求項２に記載のように、外部装置から送信されて来る前記外部装置側の識別情報を受信し、その受信した識別情報と識別情報記憶手段に記憶された識別情報とを比較することにより、前記外部装置側の識別情報と識別情報記憶手段に記憶された識別情報とが一致しているか否かを判定するように構成することができる。
【００１８】
そして、請求項２に記載のように構成した電子制御装置に接続される外部装置は、請求項３に記載のメモリ書換装置の如く構成すれば良い。
即ち、請求項３に記載のメモリ書換装置は、請求項２に記載の電子制御装置へ、前記書換制御プログラムと前記新たなデータとを送信するのであるが、前記新たなデータを、当該新たなデータに適合する装置を示す識別情報と対応させて予め記憶するデータ記憶手段を備えており、前記書換制御プログラムを送信する前に、前記新たなデータに対応する前記識別情報を前記電子制御装置へ送信する。
【００１９】
そして更に、請求項４に記載された本発明のように、このような請求項３に記載のメモリ書換装置と、請求項２に記載の電子制御装置とから、電子制御装置に搭載された不揮発性メモリの内容を書き換えるための電子制御装置のメモリ書換システムを構成すれば、メモリ書換装置から電子制御装置へ、書換制御プログラムが送信される前に、新たなデータに適合する装置を示す識別情報が送信され、電子制御装置側では、メモリ書換装置からの識別情報と、識別情報記憶手段に記憶された自己の識別情報とが一致している場合にのみ、書換制御プログラムの揮発性のメモリ領域への転送が許可されることとなり、前述した請求項１に記載の電子制御装置による効果を確実に得ることができる。
【００２０】
一方、請求項１に記載の電子制御装置において、判定手段としては、請求項５に記載のように、識別情報記憶手段に記憶されている識別情報を外部装置へ送信し、その後、外部装置側の識別情報と前記送信した識別情報とが一致しているか否かを表す応答信号を前記外部装置から受信することにより、前記外部装置側の識別情報と識別情報記憶手段に記憶された識別情報とが一致しているか否かを判定するように構成することができる。
【００２１】
そして、請求項５に記載のように構成した電子制御装置に接続される外部装置は、請求項６に記載のメモリ書換装置の如く構成すれば良い。
即ち、請求項６に記載のメモリ書換装置は、請求項５に記載の電子制御装置へ、前記書換制御プログラムと前記新たなデータとを送信するのであるが、前記新たなデータを、当該新たなデータに適合する装置を示す識別情報と対応させて予め記憶するデータ記憶手段を備えており、前記電子制御装置からの識別情報が、前記新たなデータに対応する識別情報と一致しているか否かを判定して、前記両識別情報が一致している場合に、前記電子制御装置へ、当該メモリ書換装置側の識別情報と前記電子制御装置の識別情報記憶手段に記憶された識別情報とが一致していることを表す前記応答信号を送信し、その後、前記書換制御プログラムを送信する。
【００２２】
そして更に、請求項７に記載された本発明のように、このような請求項６に記載のメモリ書換装置と、請求項５に記載の電子制御装置とから、電子制御装置に搭載された不揮発性メモリの内容を書き換えるための電子制御装置のメモリ書換システムを構成すれば、まず、電子制御装置からメモリ書換装置へ、識別情報記憶手段に記憶された識別情報が送信され、メモリ書換装置側にて、その電子制御装置からの識別情報と、新たなデータに対応する識別情報とが一致しているか否かが判定される。そして、両識別情報が一致している場合に、メモリ書換装置から電子制御装置へ、メモリ書換装置側の識別情報と電子制御装置の識別情報記憶手段に記憶された識別情報とが一致していることを表す応答信号が送信され、その後、書換制御プログラムが送信される。
【００２３】
すると、電子制御装置側では、メモリ書換装置からの応答信号に応じて、メモリ書換装置側の識別情報と識別情報記憶手段に記憶された識別情報とが一致している場合にのみ（即ち、メモリ書換装置からの応答信号が、メモリ書換装置側の識別情報と電子制御装置の識別情報記憶手段に記憶された識別情報とが一致していることを表している場合にのみ）、書換制御プログラムの揮発性のメモリ領域への転送が許可されることとなり、前述した請求項１に記載の電子制御装置による効果を確実に得ることができる。
【００２４】
但し、請求項２に記載の如く構成した電子制御装置、或いは請求項４に記載の電子制御装置のメモリ書換システムによれば、識別情報記憶手段に記憶された識別情報が、電子制御装置の外部に送信されることが無いため、電子制御装置側に記憶された識別情報を解読して不揮発性メモリに格納されたデータを故意に他のデータに書き換える、といった行為をより確実に防止することができ、このような点では、請求項５に記載の電子制御装置、或いは請求項７に記載の電子制御装置のメモリ書換システムよりも優れている。
【００２５】
一方、請求項８に記載の電子制御装置は、請求項１に記載の電子制御装置と同様に、通常時には、電気的にデータの書き換えが可能な不揮発性メモリに格納されたデータにより構成される制御プログラム及び制御データに従って所定の制御対象を制御し、外部からの書き換え指令を受けた場合には、外部装置から送信されて来る書換制御プログラムを揮発性のメモリ領域に転送して起動することにより、前記不揮発性メモリ内のデータを前記外部装置から送信されて来る新たなデータに書き換えるための書換処理を行う。
【００２６】
そして、請求項８に記載の電子制御装置は、当該電子制御装置の識別情報を予め記憶する識別情報記憶手段と、判定手段と、転送許可手段とを備えており、判定手段は、外部からの前記書き換え指令を受けると、外部装置から前記書換制御プログラムが送信されて来る前に、前記外部装置から送信されて来る識別情報を受信して、その受信した識別情報と、識別情報記憶手段に記憶された識別情報とが一致しているか否かを判定し、転送許可手段が、上記判定手段により前記両識別情報が一致していると判定された場合にのみ、前記書換制御プログラムの前記メモリ領域への転送を許可する。また、前記識別情報は、当該電子制御装置が制御するエンジンの型式や仕様、或いは、当該電子制御装置が搭載される車種名や車のグレード名毎に設定されている。
【００２７】
このような請求項８に記載の電子制御装置によれば、外部装置から書換制御プログラムを送信する前に、当該電子制御装置の識別情報記憶手段に記憶された識別情報と同一の識別情報を外部装置から送信してやらなければ、書換制御プログラムの揮発性のメモリ領域への転送が許可されない。よって、不揮発性メモリ内のデータ（制御プログラム及び制御データ）を、不用意に書き換えてしまうことや、故意に他のデータに書き換えることを確実に防止することができる。
【００２８】
また、請求項８に記載の電子制御装置によれば、請求項１に記載の電子制御装置と同様に、外部装置から送信されて来る書換制御プログラムを揮発性のメモリ領域に転送して起動することにより、不揮発性メモリ内のデータを書き換える書換処理を行うように構成されているため、通常時において、プログラムを実行するＣＰＵが暴走したとしても、不揮発性メモリに格納されている正規の制御プログラムや制御データが失われたり変化したりしてしまうことを確実に防止できる。
【００２９】
【発明の実施の形態】
以下、本発明が適用された実施例について図面を用いて説明する。尚、本発明の実施の形態は、下記の実施例に何ら限定されることなく、本発明の技術的範囲に属する限り、種々の形態を採り得ることは言うまでもない。
【００３０】
［第１実施例］
まず、図１は、自動車に搭載されて内燃機関型エンジンの制御を行うエンジン制御装置（以下、ＥＣＵという）２と、ＥＣＵ２に内蔵されたエンジン制御用のプログラムやデータを書き換える際、或いは新規に書き込む際にＥＣＵ２に接続されるメモリ書換装置４とからなる、実施例の電子制御装置のメモリ書換システム５の全体構成を表すブロック図である。
【００３１】
図１に示すように、ＥＣＵ２は、エンジンの運転状態を検出する様々なセンサからの信号を入力して波形処理する入力回路６と、入力回路６からのセンサ信号に基づき、エンジンを制御するための様々な処理を実行するシングルチップマイクロコンピュータ（以下、マイコンという）８と、マイコン８からの制御信号に基づき、エンジンに取り付けられたインジェクタ（燃料噴射弁）やイグナイタ等のアクチュエータへ駆動信号を出力する出力回路１０とを備えている。
【００３２】
そして、マイコン８には、プログラムに従い動作する周知のＣＰＵ１８と、ＣＰＵ１８を動作させるのに必要なプログラム及びデータを格納する不揮発性のＲＯＭ２０と、ＣＰＵ１８の演算結果等を一時格納するＲＡＭ２２と、前記入力回路６等からの信号を受けると共に、出力回路１０に制御信号を出力するためのＩ／Ｏ２４と、メモリ書換装置４との間でデータ通信を行うための通信回路２５とが備えられている。
【００３３】
ここで、ＲＯＭ２０としては、電気的にデータの消去及び書き込みが可能なフラッシュＲＯＭ（フラッシュＥＥＰＲＯＭ）２０ａと、データの書き換えが不能なマスクＲＯＭ２０ｂとを備えている。
そして、フラッシュＲＯＭ２０ａには、ＥＣＵ２の製造工程において当該マイコン８がＥＣＵ２へ実装された後に、エンジン制御用の制御プログラム及び制御データが新規に書き込まれ、また、マスクＲＯＭ２０ｂには、リセット直後に実行されるブートプログラムと、当該マイコン８が搭載されるＥＣＵ２の識別コード（以下、ＩＤという）とが、当該マイコン８のＥＣＵ２への実装前に予め格納されている。
【００３４】
尚、上記ＩＤは、ＥＣＵ２が制御するエンジンの型式や仕様、或いは、ＥＣＵ２が搭載される車種名や車のグレード名など毎に設定されている。また、マスクＲＯＭ２０ｂに代えて、フラッシュＲＯＭ２０ａと同様に電気的にデータの消去及び書き込みが可能な不揮発性メモリを用いても、データの書き換えが禁止されていれば良い。
【００３５】
このようなＥＣＵ２において、マイコン８（ＣＰＵ１８）は、リセット直後に、マスクＲＯＭ２０ｂ内のブートプログラムを起動し、メモリ書換装置４が接続されていない通常時には、そのブートプログラムにてフラッシュＲＯＭ２０ａ内のエンジン制御プログラム（エンジン制御用の制御プログラム）をコールして、エンジンの制御を行う。
【００３６】
また、マイコン８は、ブートプログラムを起動した際に、後述するように書換モードであると判定すると、フラッシュＲＯＭ２０ａ内の制御プログラムをコールすることなく、そのままブートプログラムを実行する。そして、後述する所定条件が成立すると、メモリ書換装置４から送信されて来る書込制御プログラムを受信してＲＡＭ２２に格納し、その書込制御プログラムをコールしてＲＡＭ２２上で実行することにより、フラッシュＲＯＭ２０ａに格納されている現在の制御プログラム及び制御データを、その後メモリ書換装置４から送信されて来る新たな制御プログラム及び制御データに書き換える書換処理を行う。
【００３７】
尚、フラッシュＲＯＭ２０ａにエンジン制御用の制御プログラム及び制御データが未だ書き込まれていないＥＣＵ２の製造時においても、フラッシュＲＯＭ２０ａにエンジン制御用の制御プログラム及び制御データが新規に書き込まれるだけで全く同様である。
【００３８】
一方、メモリ書換装置４は、ＥＣＵ２側のマイコン８にフラッシュＲＯＭ２０ａの書き換えを行わせるための処理を実行するＣＰＵ，ＲＯＭ，ＲＡＭ等を内蔵したマイコン３０と、このマイコン３０からの指令に応じて、ＥＣＵ２側のマイコン８へ、フラッシュＲＯＭ２０ａのデータ書換時に必要な書換電圧（本実施例では１２Ｖ）Ｖｐｐを供給する電源回路３２と、ＥＣＵ２の動作モードを、エンジンの制御を行う通常モードからフラッシュＲＯＭ２０ａのデータを書き換える（或いは新規に書き込む）書換モードに変更させるための書換スイッチＳＷとを備えている。
【００３９】
そして更に、メモリ書換装置４は、ＥＣＵ２へ送信する書換制御プログラム（詳しくは、書換制御プログラムを構成するプログラムコード）が格納された第１のＲＯＭ３４と、ＥＣＵ２のフラッシュＲＯＭ２０ａに書き込むために用意される新たな制御プログラム及び制御データが格納された第２のＲＯＭ３６とを備えている。尚、第１のＲＯＭ３４と第２のＲＯＭ３６は、夫々、周知のＩＣソケット３８，４０によって、当該メモリ書換装置４に着脱可能に設けられている。
【００４０】
また、上記第２のＲＡＭ３６には、それに格納されたエンジン制御用の制御プログラム及び制御データに適合するＥＣＵのＩＤ、即ち、データ書き換え対象であるＥＣＵのＩＤが格納されている。
このようなメモリ書換装置４とＥＣＵ２との接続は、図１に示す如く、メモリ書換装置４側の雌コネクタ４２ＦとＥＣＵ２に設けられた雄コネクタ４２Ｍとを嵌合することにより行われる。
【００４１】
即ち、上記両コネクタ４２Ｆ，４２Ｍが嵌合されると、通信線４４を介して、メモリ書換装置４側のマイコン３０とＥＣＵ２側のマイコン８との間におけるシリアルデータ通信が可能となり、また、電源供給線４６を介して、メモリ書換装置４側の電源回路３２からＥＣＵ２側のマイコン８へフラッシュＲＯＭ２０ａのデータ書換時に必要な書換電圧Ｖｐｐが供給される。そして更に、メモリ書換装置４側で書換スイッチＳＷを介して接地電位（０Ｖ）に接続される信号線４８が、ＥＣＵ２側で抵抗器Ｒにより５Ｖにプルアップされたモード判定用信号ラインＬに接続され、これにより、メモリ書換装置４側で書換スイッチＳＷがＯＮされると、ＥＣＵ２側においては上記モード判定用信号ラインＬがハイレベル（５Ｖ）からロウレベル（０Ｖ）に変化することとなる。そして、ＥＣＵ２のマイコン８は、前述の如くブートプログラムを起動した際に、モード判定用信号ラインＬがロウレベルであれば、書換モードと判定する。
【００４２】
次に、ＥＣＵ２のマイコン８で実行される処理と、メモリ書換装置４のマイコン３０で実行される処理について、図２及び図３を用いて説明する。
尚、図２は、ＥＣＵ２のマイコン８で実行される処理を表すフローチャートであり、そのステップ（以下、単に「Ｓ」と記す）１００〜Ｓ１７０の処理が、マスクＲＯＭ２０ｂ内のブートプログラムによって実行され、Ｓ２００の処理が、フラッシュＲＯＭ２０ａ内のエンジン制御プログラムによって実行される。そして、Ｓ３００の処理が、メモリ書換装置４から送信されてＲＡＭ２２に転送される書換制御プログラムによって実行される。また、図３は、メモリ書換装置４のマイコン３０で実行される処理を表すフローチャートである。
【００４３】
まず、ＥＣＵ２では、車両のイグニッションスイッチがＯＮされるなどして電源が投入され、マイコン８がリセット状態から動作を開始すると、マスクＲＯＭ２０ｂに格納されたブートプログラムが起動する。
そして、図２に示すように、まずＳ１００にて、書換モードであるか否かを、モード判定用信号ラインＬがロウレベルであるか否かによって判定し、モード判定用信号ラインＬがロウレベルでなければ、書換モードではない通常モードであると判断して、Ｓ１１０に進み、エンジン制御プログラムへジャンプする。
【００４４】
すると、フラッシュＲＯＭ２０ａに格納されている制御プログラムが起動され、その後は、Ｓ２００に示すように、エンジン制御用の制御データを参照して行われるエンジン制御処理が実行される。
尚、Ｓ２００のエンジン制御処理は、入力回路６からの各種センサ信号とフラッシュＲＯＭ２０ａに格納された制御データとに基づき、エンジンに対する最適な燃料噴射量や点火時期等を演算し、その演算結果に応じて、インジェクタやイグナイタ等のアクチュエータを駆動するための制御信号を出力回路１０に出力する、といった手順で繰り返し実行される。そして、このようなエンジン制御処理が実行されることにより、エンジンの運転が可能となる。
【００４５】
一方、ブートプログラムにおいて、上記Ｓ１００で書換モードであると判断した場合、即ち、当該ＥＣＵ２にメモリ書換装置４が接続されて書換スイッチＳＷがＯＮされることにより、モード判定用信号ラインＬがロウレベルであった場合には、フラッシュＲＯＭ２０ａ内のエンジン制御プログラムへジャンプすることなく、そのままＳ１２０に移行する。
【００４６】
そして、このＳ１２０にて、後述するようにメモリ書換装置４から送信されて来るＩＤを受信するまで待機し、メモリ書換装置４からのＩＤを受信すると、次のＳ１３０に進んで、受信したメモリ書換装置４からのＩＤ（受信ＩＤ）と、マスクＲＯＭ２０ｂに格納されている自己のＩＤ（内蔵ＩＤ）とが一致しているか否かを判定する。そして、両ＩＤが一致していると判定した場合には、Ｓ１４０に進んで、メモリ書換装置４へ、書換制御プログラムの送信を要求するための要求信号を送信する。
【００４７】
すると、後述するようにメモリ書換装置４から当該ＥＣＵ２へ書換制御プログラムが送信されて来るため、続くＳ１５０にて、メモリ書換装置４からの書換制御プログラムを受信して、ＲＡＭ２２の所定領域に転送・格納する。
そして、続くＳ１６０にて、Ｓ１５０でＲＡＭ２２に格納した書換制御プログラムへジャンプする。
【００４８】
これにより、メモリ書換装置４から送信されて来た書換制御プログラムがＲＡＭ２２上で実行されて、フラッシュＲＯＭ２０ａに格納されている現在の制御プログラム及び制御データを、メモリ書換装置４から送信されて来る新たな制御プログラム及び制御データに書き換えるための、Ｓ３００の書換処理が行われる。
【００４９】
尚、Ｓ３００の書換処理は、例えば次のような手順で実行される。
１．まず、メモリ書換装置４からの消去指令に応じて、フラッシュＲＯＭ２０ａに格納されているプログラム及びデータを消去する。
２．次に、メモリ書換装置４から新たな制御プログラム及び制御データが送信されて来るのを待ち、それらを受信すると、その受信した制御プログラム及び制御データを、旧来のプログラム及びデータが格納されていたフラッシュＲＯＭ２０ａの記憶領域に順次書き込んで行く。
【００５０】
３．そして、メモリ書換装置４からの全ての制御プログラム及び制御データを受信して、フラッシュＲＯＭ２０ａの書き換えが完了すれば、その後、全ての処理を終了する。
そして、このようなＳ３００の書換処理が実行されることにより、フラッシュＲＯＭ２０ａに格納された制御プログラム及びデータが、メモリ書換装置４からの新たな制御プログラム及び制御データに書き換えられる。
【００５１】
一方、ブートプログラムのＳ１３０にて、メモリ書換装置４から送信されて来たＩＤ（受信ＩＤ）と、マスクＲＯＭ２０ｂに格納されている自己のＩＤ（内蔵ＩＤ）とが一致していないと判定した場合には、Ｓ１７０に移行する。そして、このＳ１７０にて、メモリ書換装置４からのＩＤと当該ＥＣＵ２側のＩＤとが一致していない旨を示すエラー信号を、メモリ書換装置４へ送信し、その後、当該ＥＣＵ２側の処理を終了する。
【００５２】
次に、メモリ書換装置４では、作業者によりＥＣＵ２に接続されて書換スイッチＳＷがＯＮされると、マイコン３０が、図３に示す処理を実行する。
即ち、まずＳ４００にて、第２のＲＯＭ３６に格納された新たな制御プログラム及び制御データに適合するＥＣＵのＩＤ（データ書き換え対象であるＥＣＵのＩＤ）を、第２のＲＯＭ３６から読み出し、その読み出したＩＤ（内蔵ＩＤ）をＥＣＵ２へ送信する。
【００５３】
すると、前述したように、ＥＣＵ２側では、当該メモリ書換装置４からＥＣＵ２へ送信したＩＤと、自己のマスクＲＯＭ２０ｂに格納されているＩＤとが一致しているか否かを判定し（Ｓ１３０）、両ＩＤが一致していれば、当該メモリ書換装置４へ書換制御プログラムの要求信号を送信し（Ｓ１４０）、両ＩＤが一致していなければ、当該メモリ書換装置４へエラー信号を送信するため（Ｓ１７０）、メモリ書換装置４側では、続くＳ４１０にて、ＥＣＵ２から送信されて来る信号（要求信号或いはエラー信号）を受信し、その信号の種類を判定する。
【００５４】
そして、ＥＣＵ２からの信号が書換制御プログラムの要求信号であれば、Ｓ４２０に進んで、第１のＲＯＭ３４に格納されている書換制御プログラムをＥＣＵ２へ送信する。そして更に、続くＳ４３０にて、ＥＣＵ２へ、前述した消去指令を送信した後、第２のＲＯＭ３６に格納されている新たな制御プログラム及び制御データを送信する。
【００５５】
すると、ＥＣＵ２側では、前述した図２におけるＳ３００の書換処理により（即ち、書換制御プログラムの実行により）、フラッシュＲＯＭ２０ａ内の制御プログラム及び制御データが、当該メモリ書換装置４から送信される新たな制御プログラム及び制御データに書き換えられることとなる。
【００５６】
そして、メモリ書換装置４では、上記Ｓ４３０の処理を終えると、全ての処理が終了する。
一方、Ｓ４１０にて、ＥＣＵ２からの信号がエラー信号であると判断した場合には、Ｓ４４０に移行して、所定の表示装置（図示省略）に、データの書き換えが出来ないことを示すエラー表示を行い、その後、当該メモリ書換装置４側の処理を終了する。
【００５７】
尚、本第１実施例では、ＥＣＵ２において、フラッシュＲＯＭ２０ａが、電気的にデータの書き換えが可能な不揮発性メモリに相当し、ＲＡＭ２２が、揮発性のメモリ領域に相当し、マスクＲＯＭ２０ｂが、識別情報記憶手段に相当している。そして、図２におけるＳ１２０及びＳ１３０の処理が、判定手段及び転送許可手段に相当している。また、メモリ書換装置４において、第２のＲＯＭ３６が、データ記憶手段に相当している。
【００５８】
このような第１実施例のメモリ書換システム５において、ＥＣＵ２のフラッシュＲＯＭ２０ａに格納された制御プログラム及び制御データを書き換える場合には、作業者は、まず、メモリ書換装置４のＩＣソケット３８に、ＥＣＵ２側で実行させる書換制御プログラムが格納された第１のＲＯＭ３４を装着すると共に、ＩＣソケット４０に、新たな制御プログラム及び制御データと、それに適合するＥＣＵのＩＤとが格納された第２のＲＯＭ３６を装着する。そして、メモリ書換装置４をＥＣＵ２に接続して、メモリ書換装置４の書換スイッチＳＷをＯＮすると共に、車両のイグニッションスイッチをＯＮしてＥＣＵ２を初期状態から作動させる。
【００５９】
すると、メモリ書換装置４からＥＣＵ２へ、第２のＲＡＭ３６に格納された新たな制御プログラム及び制御データに適合するＥＣＵのＩＤが送信され（Ｓ４００）、ＥＣＵ２では、メモリ書換装置４からのＩＤと、マスクＲＯＭ２０ｂに格納されている自己のＩＤとが一致しているか否かを判定する（Ｓ１３０）。
【００６０】
そして、両ＩＤが一致している場合（Ｓ１３０：ＹＥＳ）には、ＥＣＵ２からメモリ書換装置４へ、書換制御プログラムの要求信号が送信され（Ｓ１４０）、これに応答して、メモリ書換装置４からＥＣＵ２へ、書換制御プログラムが送信される（Ｓ４１０：要求信号，Ｓ４２０）。
【００６１】
その後、ＥＣＵ２においては、メモリ書換装置４からの書換制御プログラムがＲＡＭ２２に転送されて実行され（Ｓ１５０，Ｓ１６０，Ｓ３００）、また、メモリ書換装置４においては、ＥＣＵ２への新たな制御プログラム及び制御データの送信が行われ（Ｓ４３０）、このような両装置の動作により、ＥＣＵ２に搭載されたフラッシュＲＯＭ２０ａのデータ書き換えが行われる。
【００６２】
これに対して、メモリ書換装置４からＥＣＵ２へ送信されたＩＤとＥＣＵ２に内蔵されたＩＤとが一致していない場合には（Ｓ１３０：ＮＯ）、ＥＣＵ２は、メモリ書換装置４へエラー信号を送信して、全ての処理を終了し（Ｓ１７０）、メモリ書換装置４は、ＥＣＵ２からのエラー信号を受けると（Ｓ４１０：エラー信号）、ＥＣＵ２へ書換制御プログラムを送信することなく、エラー表示を行う（Ｓ４４０）。
【００６３】
以上詳述したように、第１実施例のメモリ書換システム５では、まず、メモリ書換装置４が、新たな制御プログラム及び制御データに適合するＥＣＵのＩＤを送信し、ＥＣＵ２は、メモリ書換装置４から送信されて来たＩＤと、マスクＲＯＭ２０ｂに格納されている自己のＩＤとが一致しているか否かを判定する。そして、ＥＣＵ２は、メモリ書換装置４からのＩＤと自己のＩＤとが一致している場合にのみ、メモリ書換装置４へ書換制御プログラムの送信要求を送信すると共に、それに応答してメモリ書換装置４から送信されて来る書換制御プログラムをＲＡＭ２２に転送して実行し、これにより、フラッシュＲＯＭ２０ａ内の制御プログラム及び制御データを、その後、メモリ書換装置４から送信されて来る新たな制御プログラム及び制御データに書き換えるようにしている。
【００６４】
従って、このような第１実施例のＥＣＵ２及びメモリ書換システム５によれば、作業者が、メモリ書換装置４のＩＣソケット４０に、ＥＣＵ２に適合しない制御プログラム及び制御データが格納されたＲＯＭ（第２のＲＯＭ）３６を装着してしまい、その不適合な制御プログラム及び制御データがＥＣＵ２へ送信されそうな場合には、メモリ書換装置４側のＩＤ（即ち、第２のＲＯＭ３６にて新たな制御プログラム等と対応して予め記憶されたＩＤ）と、マスクＲＯＭ２０ｂに記憶されたＥＣＵ２のＩＤとが一致しないため、ＥＣＵ２では、書換制御プログラムのＲＡＭ２２への転送動作へ移行しなくなる。よって、フラッシュＲＯＭ２０ａ内の制御プログラムや制御データが、そのＥＣＵ２に適合しない制御プログラムや制御データに、誤って書き換えられてしまうことを確実に防止することができる。
【００６５】
尚、このように制御プログラム及び制御データの書き換えが行われない場合には、作業者は、メモリ書換装置４側の第２のＲＯＭ３６を、ＥＣＵ２に適合した制御プログラム及び制御データを記憶したものに変更してから、再度、書き換えのための作業を行えばよい。
そして更に、第１実施例のＥＣＵ２では、メモリ書換装置４から送信されて来る書換制御プログラムを揮発性のＲＡＭ２２に転送して起動することにより、フラッシュＲＯＭ２０ａ内のデータを書き換える書換処理を行うように構成されているため、フラッシュＲＯＭ２０ａの内容を書き換える作業を終了した後に、当該ＥＣＵ２の電源を一旦遮断すれば、ＲＡＭ２２に転送された書換制御プログラムは消失する。よって、第１実施例のＥＣＵ２によれば、エンジンを制御する通常時において、当該ＥＣＵ２への電源供給を開始した後、万が一、プログラムを実行するＣＰＵ１８が暴走したとしても、書換処理を行うための書換制御プログラムは内蔵されていないため、フラッシュＲＯＭ２０ａに格納されている正規の制御プログラムや制御データが失われたり変化したりしてしまうことを確実に防止できる。
【００６６】
また、第１実施例のＥＣＵ２及びメモリ書換システム５では、ＥＣＵ２が、メモリ書換装置４からのＩＤを受信して、そのＩＤと自己のＩＤ（即ち、マスクＲＯＭ２０ｂに格納されたＩＤ）とが一致しているか否かを判定するようにしており、マスクＲＯＭ２０ｂに格納されたＩＤはＥＣＵ２の外部に送信されることが無いため、当該ＥＣＵ２側のＩＤを解読して、フラッシュＲＯＭ２０ａ内の制御プログラム等を故意に他のものに書き換える、といった行為を確実に防止することができる。
【００６７】
そして、同様の理由により、例えば、フラッシュＲＯＭ２０ａ内のデータを読み出して外部へ送信するといった読出処理を行うためのプログラムを、ＥＣＵ２のＲＡＭ２２に転送させて実行させ、フラッシュＲＯＭ２０ａの記憶内容を不正に読み取る、といった行為も防止でき、機密性を高めることができる。
【００６８】
一方、上記第１実施例のメモリ書換システム５では、ＥＣＵ２は、メモリ書換装置４からのＩＤと自分側のＩＤとが一致していないと判定すると、メモリ書換装置４へエラー信号を送信し、メモリ書換装置４は、ＥＣＵ２からのエラー信号を受けると、表示装置にエラー表示を行うようにしている。
【００６９】
従って、作業者は、書き換えようとして用意した新たな制御プログラム及び制御データがＥＣＵ２に適合していないことを、メモリ書換装置４側のエラー表示によって、確実に知ることができる。
［第２実施例］
次に、第２実施例の電子制御装置のメモリ書換システムについて説明する。第２実施例のメモリ書換システムは、上述した第１実施例のメモリ書換システム５に対して、ＥＣＵ２側とメモリ書換装置４側とで夫々実行される処理が異なるだけであり、ハードウェア上の構成については全く同じである。
【００７０】
そこで以下、第２実施例のメモリ書換システムにおいて、ＥＣＵ２側のマイコン８で実行される処理と、メモリ書換装置４側のマイコン３０で実行される処理について、図４及び図５を用いて説明する。
尚、図４は、ＥＣＵ２のマイコン８で実行される処理を表すフローチャートであり、第１実施例の図２と同じ処理については、同じステップ番号を付しているため、詳細な説明は省略する。また、図５は、メモリ書換装置４のマイコン３０で実行される処理を表すフローチャートであり、第１実施例の図３と同じ処理については、同じステップ番号を付しているため、詳細な説明は省略する。
【００７１】
まず、図４に示すように、ＥＣＵ２のマイコン８は、リセットスタート直後のＳ１００にて書換モードであると判定した場合には、フラッシュＲＯＭ２０ａ内の制御プログラムへジャンプすることなく、Ｓ１２５に移行する。
そして、このＳ１２５にて、マスクＲＯＭ２０ｂに格納されている自己のＩＤをメモリ書換装置４へ送信し、続くＳ１３５にて、後述するようにメモリ書換装置４から送信されて来る信号（応答信号）が、正常信号であるかエラー信号であるかを判定する。
【００７２】
そして、Ｓ１３５にて、メモリ書換装置４からの信号が正常信号であると判定した場合には、Ｓ１５０，Ｓ１６０，Ｓ３００の処理、即ち、メモリ書換装置４からの書換制御プログラムを受信してＲＡＭ２２に転送・格納し、その書換制御プログラムをＲＡＭ２２上で実行することにより、フラッシュＲＯＭ２０ａに格納されている制御プログラム及び制御データを、メモリ書換装置４から送信されて来る新たな制御プログラム及び制御データに書き換える処理を行う。
【００７３】
これに対し、Ｓ１３５にて、メモリ書換装置４からの信号がエラー信号であると判定した場合には、そのまま当該ＥＣＵ２側の処理を終了する。
尚、本第２実施例では、Ｓ１２５及びＳ１３５の処理が、判定手段及び転送許可手段に相当している。
【００７４】
次に、図５に示すように、メモリ書換装置４のマイコン３０は、まずＳ４０５にて、ＥＣＵ２から送信されて来るＩＤを受信するまで待機し、ＥＣＵ２からのＩＤを受信すると、Ｓ４１５に進んで、受信したＥＣＵ２からのＩＤ（受信ＩＤ）と、第２のＲＡＭ３６に格納されているＥＣＵのＩＤ（内蔵ＩＤ）とが一致しているか否かを判定する。
【００７５】
そして、両ＩＤが一致していると判定した場合には、Ｓ４１７に進んで、ＥＣＵ２へ、当該メモリ書換装置４側のＩＤとＥＣＵ２側のＩＤとが一致していることを表す正常信号を送信する。
すると、前述したように、ＥＣＵ２側のマイコン８は図４のＳ１５０以降の処理実行を開始するため、当該メモリ書換装置４側では、上記Ｓ４１７で正常信号を送信した後、第１実施例の場合と同様に、Ｓ４２０及びＳ４３０の処理を実行して、第１のＲＯＭ３４に格納されている書換制御プログラムと、第２のＲＯＭ３６に格納されている新たな制御プログラム及び制御データとを、ＥＣＵ２に順次送信する。
【００７６】
一方、Ｓ４１５にて、ＥＣＵ２からのＩＤ（受信ＩＤ）と、第２のＲＡＭ３６に格納されているＥＣＵのＩＤ（内蔵ＩＤ）とが一致していないと判定した場合には、Ｓ４４５に移行して、ＥＣＵ２へ、当該メモリ書換装置４側のＩＤとＥＣＵ２側のＩＤとが一致していないことを表すエラー信号を送信した後、そのまま当該メモリ書換装置４側の処理を終了する。すると、ＥＣＵ２では、前述したように、図４のＳ１５０以降の処理が実行されることなく、全ての処理が終了される。
【００７７】
つまり、第２実施例のメモリ書換システムでは、第１実施例のメモリ書換システム５とは逆に、ＥＣＵ２が、メモリ書換装置４へ自己のＩＤを送信し（Ｓ１２５）、メモリ書換装置４が、ＥＣＵ２からのＩＤと、新たな制御プログラム及び制御データに適合するＥＣＵのＩＤとが一致しているか否かを判定するようにしている（Ｓ４１５）。そして、メモリ書換装置４は、両ＩＤが一致している場合に（Ｓ４１５：ＹＥＳ）、ＥＣＵ２へ、正常信号を送信し（Ｓ４１７）、その後、書換制御プログラムと新たな制御プログラム及び制御データを送信するようにしており（Ｓ４２０，Ｓ４３０）、ＥＣＵ２は、メモリ書換装置４からの正常信号を受信した場合にのみ（Ｓ１３５：正常信号）、メモリ書換装置４側のＩＤと自己のＩＤとが一致していると判断して、メモリ書換装置４からの書換制御プログラムをＲＡＭ２２に転送して実行する処理（Ｓ１５０，Ｓ１６０）を行うようにしている。
【００７８】
そして、このような第２実施例のＥＣＵ２及びメモリ書換システムによっても、第１実施例のものと同様に、作業者が、メモリ書換装置４のＩＣソケット４０に、ＥＣＵ２に適合しない制御プログラム及び制御データが格納されたＲＯＭ３６を装着してしまい、その不適合な制御プログラム及び制御データがＥＣＵ２へ送信されそうな場合には、メモリ書換装置４側のＩＤ（即ち、第２のＲＯＭ３６にて新たな制御プログラム等と対応して予め記憶されたＩＤ）と、マスクＲＯＭ２０ｂに記憶されたＥＣＵ２のＩＤとが一致しないため、ＥＣＵ２では、書換制御プログラムのＲＡＭ２２への転送動作へ移行しなくなる。よって、フラッシュＲＯＭ２０ａ内の制御プログラムや制御データが、そのＥＣＵ２に適合しない制御プログラムや制御データに、誤って書き換えられてしまうことを確実に防止することができる。
【００７９】
また、第２実施例のＥＣＵ２も、第１実施例のＥＣＵ２と同様に、メモリ書換装置４から送信されて来る書換制御プログラムを揮発性のＲＡＭ２２に転送して起動することにより、フラッシュＲＯＭ２０ａの書換処理を行うように構成されているため、エンジンを制御する通常時において、プログラムを実行するＣＰＵ１８が暴走したとしても、フラッシュＲＯＭ２０ａに格納されている正規の制御プログラムや制御データが失われたり変化したりしてしまうことを確実に防止できる。
【００８０】
［その他］
前述した第１実施例において、メモリ書換装置４側のＩＤは、第２のＲＯＭ３６に予め格納しておくのではなく、作業者が所定の入力装置を操作して入力するようにしても良い。
【００８１】
そして、このようなメモリ書換システムによっても、メモリ書換装置４からＥＣＵ２へ、ＥＣＵ２のマスクＲＯＭ２０ｂに格納されたＩＤと同一のＩＤを送信してやらなければ、ＥＣＵ２にて、書換制御プログラムのＲＡＭ２２への転送が許可されないため、フラッシュＲＯＭ２０ａ内のデータ（制御プログラム及び制御データ）を、不用意に書き換えてしまうことや、故意に他のデータに書き換えようとする行為を確実に防止することができる。
【００８２】
一方、前述した各実施例のＥＣＵ２は、電気的にデータの書き込みが可能な不揮発性メモリとして、フラッシュＲＯＭ２０ａを備えたものであったが、ＥＥＰＲＯＭを用いても良い。
また、上記実施例では、ＥＣＵ２内にマスクＲＯＭ２０ｂとフラッシュＲＯＭ２０ａとをそれぞれ持つ例を示したが、フラッシュＲＯＭ２０ａのみとして、フラッシュＲＯＭ２０ａ内に、前述したマスクＲＯＭ２０ｂの内容（プログラムやＩＤ等）を、エンジン制御プログラムと領域を分けて記憶させても良い。
【００８３】
また、上記各実施例では、エンジンを制御するＥＣＵ２について説明したが、本発明の適用範囲は、これに限られない。即ち、例えばブレーキ、トランスミッション、サスペンション等の制御対象を制御する電子制御装置に対しても、全く同様に適用することができる。
【図面の簡単な説明】
【図１】第１実施例の電子制御装置のメモリ書換システムの全体構成を表すブロック図である。
【図２】第１実施例のエンジン制御装置（ＥＣＵ）側で実行される処理を表すフローチャートである。
【図３】第１実施例のメモリ書換装置側で実行される処理を表すフローチャートである。
【図４】第２実施例のエンジン制御装置（ＥＣＵ）側で実行される処理を表すフローチャートである。
【図５】第２実施例のメモリ書換装置側で実行される処理を表すフローチャートである。
【符号の説明】
２…エンジン制御装置（ＥＣＵ）    ４…メモリ書換装置
５…メモリ書換システム    ６…入力回路
８，３０…シングルチップマイクロコンピュータ（マイコン）
１０…出力回路    １８…ＣＰＵ    ２０…ＲＯＭ
２０ａ…フラッシュＲＯＭ    ２０ｂ…マスクＲＯＭ
２２…ＲＡＭ    ２４…Ｉ／Ｏ    ２５…通信回路    ３２…電源回路
３４…第１のＲＯＭ    ３６…第２のＲＯＭ    ３８，４０…ＩＣソケット
４２Ｆ…雌コネクタ    ４２Ｍ…雄コネクタ    ４４…通信線
４６…電源供給線    ４８…信号線    ＳＷ…書換スイッチ
Ｌ…モード判定用信号ライン    Ｒ…抵抗器
【図１】
0003568704.tif 000002
【図２】
0003568704.tif 000003
【図３】
0003568704.tif 000004
【図４】
0003568704.tif 000005
【図５】
0003568704.tif 000006