(57)【特許請求の範囲】
【請求項１】
車両に搭載される電子制御ユニットであって、
複数のブロックに区分された記憶領域を有し、当該記憶領域に記憶されているデータが前記ブロック単位で消去されるデータフラッシュと、
前記データフラッシュに対して読み書きされるデータ群の単位であるパケットのパケットサイズを、固定化された一定サイズであって前記ブロックのサイズに２以上の整数を乗じた値に設定し、１以上の所定数と前記パケットサイズの乗算値を１つのエリアのサイズとして、前記記憶領域を複数の前記エリアに分割し、前記エリアの個々にデータの書込タイミングを対応づけておき、前記２以上の整数個の前記ブロックを１つの仮想ブロックとして、１つのパケットに含まれるデータの全部が単一の仮想ブロックに書き込まれるように、データをその書込タイミングに応じた前記エリアに前記パケット単位で書き込む書込手段とを含む、電子制御ユニット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両に搭載される電子制御ユニットに関する。
【背景技術】
【０００２】
自動車などの車両には、各部を制御するための複数のＥＣＵ（Electronic Control Unit：電子制御ユニット）が搭載されている。各ＥＣＵは、マイコン（マイクロコントローラユニット）を備え、たとえば、ＣＡＮ（Controller Area Network）バスを介して、双方向にデータ通信可能に接続されている。各ＥＣＵのマイコンには、データフラッシュ（フラッシュメモリ）が内蔵されており、他のＥＣＵから受信したデータや各種のセンサから取得したデータなどは、そのデータフラッシュに記憶され、必要な時にデータフラッシュから読み出される。
【０００３】
データフラッシュでは、その構造上、データの消去は、複数のページからなるブロック単位で行われる。ブロックサイズおよびブロック数は、データフラッシュの構造（セルの配列構造およびセル間を接続する配線構造）に依存する。
【０００４】
図５は、データフラッシュの使用手法について説明するための図である。
【０００５】
マイコンの一例では、３２ＫＢ（キロバイト）の記憶領域が１６個のブロックに分割されたブロック構成のデータフラッシュ１０１を内蔵している。
【０００６】
このマイコンを採用したＥＣＵでは、データフラッシュ１０１の記憶領域に、データの種類ごとに、１つ以上のブロックを割り当てたエリアが設定される。そのエリアには、たとえば、ＥＣＵに固有のデータを記憶する「エリア０」、制御対象の学習制御により更新される学習データ（学習値）を記憶する「エリア１」、制御時に生じた異常の内容を表すダイアグデータ（ダイアグノスティック・トラブル・コード）を記憶する「エリア２」、およびダイアグデータがデータフラッシュ１０１に書き込まれた時点（異常が発生した時点）における車両の状態を表すフリーズフレームデータを記憶する「エリア３」が含まれる。
【０００７】
そして、エリアごと、つまりデータの種類ごとに、エリアに対して読み書きされるデータ群（パケット）のサイズが設定される。そのパケットサイズは、データフラッシュ１０１のブロックサイズ（２ＫＢ）以下であり、１パケットに含まれるデータは、単一のブロックに書き込まれる。たとえば、「エリア０」、「エリア１」、「エリア２」および「エリア３」に対して、それぞれ所定のパケットサイズの「パケット０」、「パケット１」、「パケット２」および「パケット３」が設定され、「パケット０」、「パケット１」、「パケット２」および「パケット３」に含まれるデータは、それぞれ「エリア０」、「エリア１」、「エリア２」および「エリア３」の単一のブロックに書き込まれる。また、ＥＣＵ間におけるデータの送受信は、データの種類に応じたパケット単位で行われる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１４−８５７０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ところが、かかる使用手法では、ブロック構成によっては、データフラッシュを使用できない場合がある。
【００１０】
たとえば、データフラッシュ１０２は、３２ＫＢの記憶領域が１０２４個のブロックに分割されたブロック構成を有している。データフラッシュ１０１のブロックサイズが２ＫＢであるのに対し、データフラッシュ１０２のブロックサイズが３２ｂｙｔｅである。そのため、データフラッシュ１０１を前述の手法で使用するＥＣＵでは、いずれかのエリアに対して設定されているパケットサイズがデータフラッシュ１０２のブロックサイズよりも大きい場合がある。この場合、そのパケットサイズのパケットに含まれるデータをデータフラッシュ１０２の単一のブロックに書き込むことができないので、当該ＥＣＵでは、データフラッシュ１０２を使用することができない。
【００１１】
本発明の目的は、データフラッシュをそのブロック構成によらずに使用できる、電子制御ユニットを提供することである。
【課題を解決するための手段】
【００１２】
前記の目的を達成するため、本発明に係る電子制御ユニットは、車両に搭載される電子制御ユニットであって、複数のブロックに区分された記憶領域を有し、当該記憶領域に記憶されているデータがブロック単位で消去されるデータフラッシュと、データフラッシュに対して読み書きされるデータ群の単位であるパケットのパケットサイズを固定化された一定サイズに設定し、１以上の所定数とパケットサイズとの乗算値を１つのエリアのサイズとして、記憶領域を複数のエリアに分割し、エリアの個々にデータの書込タイミングを対応づけておき、データをその書込タイミングに応じたエリアにパケット単位で書き込む書込手段とを含む。
【００１３】
この構成によれば、データフラッシュの記録領域は、複数のブロックに区分されており、記憶領域に記憶されているデータは、ブロック単位で記憶領域から消去される。
【００１４】
データフラッシュの記憶領域は、データの書込タイミングの数に応じて分割され、この分割により設定されたエリアの個々には、それぞれ異なる書込タイミングが対応づけられている。データフラッシュへのデータの書込タイミングは、発生しないか、不定期に発生するか、または、定期的に発生する。そのため、データフラッシュの記憶領域は、たとえば、書込タイミングが発生しないデータ（つまり、書き換えられないデータ）が記憶されるエリアと、書込タイミングが不定期に発生するデータが記憶されるエリアと、書込タイミングが定期的に発生するデータが記憶されるエリアとに分割される。これにより、車両に複数の電子制御ユニットが搭載される場合に、各電子制御ユニットのデータフラッシュに設定されるエリア数を同一にすることができる。
【００１５】
また、データフラッシュに対して読み書きされるデータ群のサイズ（パケットサイズ）は、固定化された一定サイズに設定される。ブロックのサイズ（ブロックサイズ）がパケットサイズよりも小さいデータフラッシュを備える電子制御ユニットでは、ブロックサイズの合計がパケットサイズよりも大きくなる一定数（２以上）のブロックを１つの仮想ブロックとして取り扱うように設定されることにより、１つのパケットに含まれるデータの全部を単一の仮想ブロックに書き込むことができる。一方、ブロックサイズがパケットサイズよりも大きいデータフラッシュを備える電子制御ユニットでは、複数のパケットに含まれるデータを単一のブロックに書き込むことも可能となる。
【００１６】
そして、１以上の所定数とパケットサイズとの乗算値が１つのエリアのサイズ（エリアサイズ）として設定されるので、エリアサイズがブロックサイズに依存せず、データフラッシュのブロック構成に変更が生じても（ブロック構成の異なるデータフラッシュに変更されても）、その変更後のブロック構成と無関係にエリアサイズを設定することができる。
【００１７】
よって、電子制御ユニットにおいて、データフラッシュをそのブロック構成によらずに使用することができる。
【発明の効果】
【００１８】
本発明によれば、データフラッシュをそのブロック構成によらずに使用することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の一実施形態に係る電子制御ユニットが搭載された車両の電気的構成の要部を示すブロック図である。
【図２】ＥＣＵの概略構成を示すブロック図である。
【図３】データフラッシュの使用手法について説明するための図（その１）である。
【図４】データフラッシュの使用手法について説明するための図（その２）である。
【図５】従来の車両（ＥＣＵ）におけるデータフラッシュの使用手法について説明するための図である。
【発明を実施するための形態】
【００２０】
以下では、本発明の実施の形態について、添付図面を参照しつつ詳細に説明する。
【００２１】
図１は、本発明の一実施形態に係るＥＣＵ２が搭載された車両１の電気的構成の要部を示すブロック図である。
【００２２】
車両１には、複数のＥＣＵ（Electronic Control Unit：電子制御ユニット）２が備えられている。各ＥＣＵ２は、たとえば、ＣＰＵおよびメモリを含む構成であり、ＣＡＮ通信プロトコルによる双方向通信可能に接続されている。複数のＥＣＵ２には、エンジン制御のためのエンジンＥＣＵ、アイドリングストップ制御のためのアイドリングストップＥＣＵ、およびブレーキ制御のためのブレーキＥＣＵなどが含まれる。
【００２３】
図２は、ＥＣＵ２の概略構成を示すブロック図である。
【００２４】
ＥＣＵ２は、マイクロコントローラユニット（ＭＣＵ：Micro Controller Unit）を備えている。マイクロコントローラユニットには、ＣＰＵ１１、ＣＰＵ１１によって実行されるプログラムが格納されたＲＯＭ１２、ＣＰＵ１１がプログラムを実行する際のワークエリアとして使用されるＲＡＭ１３、ＣＰＵ１１によりデータの書き込み、読み出しおよび消去が行われるデータフラッシュ１４、および入出力のためのＩ／Ｏポート１５などが含まれる。
【００２５】
図３および図４は、データフラッシュ１４の使用手法について説明するための図である。
【００２６】
図３に示されるデータフラッシュ１４は、フラッシュメモリからなり、３２ＫＢの記憶領域が１０２４個の「ブロック０〜１０２３」に分割されたブロック構成を有している。そのため、「ブロック０〜１０２３」の個々のブロックサイズは、３２ｂｙｔｅであり、データフラッシュ１４に記憶されているデータは、ブロック単位で消去される。
【００２７】
図４に示されるデータフラッシュ１４は、フラッシュメモリからなり、３２ＫＢの記憶領域が１６個の「ブロック０〜１５」に分割されたブロック構成を有している。そのため、「ブロック０〜１５」の個々のブロックサイズは、２ＫＢ（＝２０４８ｂｙｔｅ）であり、データフラッシュ１４に記憶されているデータは、ブロック単位で消去される。
【００２８】
データフラッシュ１４の記憶領域は、データの書込タイミングの数に応じて分割され、この分割により設定されたエリアの個々には、それぞれ異なる書込タイミングが対応づけられている。
【００２９】
具体的には、データフラッシュ１４へのデータの書込タイミングは、発生しないか、不定期に発生するか、または、定期的に発生する。そのため、データフラッシュ１４の記憶領域は、書込タイミングが発生しないデータ（つまり、書き換えられないデータ）が記憶される「エリア０」と、書込タイミングが不定期に発生し、その発生した書込タイミングでデータが書き込まれる「エリア１」と、書込タイミングが定期的に発生（たとえば、車両１のイグニッション／アクセサリスイッチオフされた時に発生）し、その定期的に発生する書込タイミングでデータが書き込まれる「エリア２」との３つに分割されている。これにより、車両１に搭載されている各ＥＣＵ２のデータフラッシュ１４に設定されるエリア数を同一にすることができる。
【００３０】
「エリア０」に書き込まれるデータは、たとえば、ＥＣＵ２のシリアル番号、ＥＣＵ２の特性に応じた補正値などである。
【００３１】
「エリア１」に書き込まれるデータは、たとえば、制御対象の学習制御により更新される学習データ（学習値）、制御時に生じた異常の内容を表すダイアグデータ（ダイアグノスティック・トラブル・コード）、異常が発生した時点における車両１の各部の状態を表すフリーズフレームデータなどである。
【００３２】
「エリア２」に書き込まれるデータは、たとえば、エンジンに付随したスタータの駆動回数などである。
【００３３】
また、データフラッシュ１４に対して読み書きされるデータ群（パケット）のサイズは、固定化された一定サイズ、たとえば、１２８ｂｙｔｅに設定される。そして、データは、その書込タイミングに応じた「エリア０〜２」にパケット単位で書き込まれる。
【００３４】
図３に示されるデータフラッシュ１４では、ブロックサイズがパケットのサイズ（パケットサイズ）よりも小さいので、このデータフラッシュ１４を備えるＥＣＵ２では、４個のブロックを１つの仮想ブロックとして取り扱うように設定される。これにより、１つのパケットに含まれるデータの全部を単一の仮想ブロックに書き込むことができる。
【００３５】
図４に示されるデータフラッシュ１４では、ブロックサイズがパケットサイズよりも大きいので、このデータフラッシュ１４を備えるＥＣＵ２では、１６個のパケットに含まれるデータを単一のブロックに書き込むことも可能である。
【００３６】
そして、「エリア０〜２」の個々のサイズ（エリアサイズ）は、１以上の所定数とパケットサイズとの乗算値に設定されている。そのため、エリアサイズがブロックサイズに依存せず、データフラッシュ１４のブロック構成が図３に示される構成および図４に示される構成のいずれであっても、そのブロック構成と無関係にエリアサイズを設定することができる。
【００３７】
よって、ＥＣＵ２において、データフラッシュ１４をそのブロック構成によらずに使用することができる。
【００３８】
以上、本発明の実施の形態について説明したが、本発明は、他の形態で実施することもできる。
【００３９】
たとえば、図３および図４に示されるデータフラッシュ１４のブロック構成は、それぞれ一例であり、データフラッシュ１４は、２ｎ（ｎ：２以上の整数）個のブロックに分割されたブロック構成を有していればよい。
【００４０】
また、データフラッシュ１４に設定されるエリア数は「３」に限らず、「４」であってもよい。すなわち、「エリア０〜２」に加えて、「エリア３」が設定されてもよい。この「エリア３」が設定されることにより、たとえば、「エリア０〜２」の空き容量に不足が生じた場合に、「エリア３」をその空き容量の不足した「エリア０〜２」に割り当てるなど、データフラッシュ１４に拡張性を持たせることができる。
【００４１】
その他、前述の構成には、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。
【符号の説明】
【００４２】
１    車両
２    ＥＣＵ（電子制御ユニット）
１１  ＣＰＵ（書込手段）
１４  データフラッシュ
【図１】
0006456124.tif 000002
【図２】
0006456124.tif 000003
【図３】
0006456124.tif 000004
【図４】
0006456124.tif 000005
【図５】
0006456124.tif 000006