(57)【要約】【課題】プログラム又はデータの書き込みが特定のメモリに集中する事態の発生を未然に回避する。【解決手段】電子制御装置２は、外部装置９〜１１との間や車両ネットワーク内で送受信されるプログラム又はデータを蓄積可能なメモリ２ａ，２ｂと、プログラム又はデータを書き込む書き込み部１４ｂと、プログラム又はデータの書き込み使用状況を示すメモリ管理データを記憶する管理データ記憶部１４ｃと、プログラム又はデータが書き込まれる毎にメモリ管理データを更新する管理データ更新部１４ｄと、メモリ管理装置１からメモリ状態確認要求を受信する状態確認要求受信部１４ｅと、メモリ管理装置からメモリ状態確認要求が受信されると、メモリ管理データをメモリ管理装置に送信する管理データ送信部１４ｇとを備える。【選択図】図１
2019067236.tif 000002
【特許請求の範囲】
【請求項１】
車両ネットワーク（７，８）に接続されている電子制御装置であって、
外部装置（９〜１１）との間や車両ネットワーク内で送受信されるプログラム又はデータを蓄積するメモリ（１ａ，２ａ，２ｂ，３ａ，３ｂ，４ａ，５ａ）と、
プログラム又はデータを前記メモリに書き込む書き込み部（１２ｂ，１４ｂ）と、
前記メモリへのプログラム又はデータの書き込み使用状況を示すメモリ管理データを記憶する管理データ記憶部（１２ｃ，１４ｃ）と、
プログラム又はデータが前記メモリに書き込まれる毎にメモリ管理データを更新する管理データ更新部（１２ｄ，１４ｄ）と、
メモリ管理装置（１）からメモリ状態確認要求を受信する状態確認要求受信部（１４ｅ）と、
前記メモリ管理装置からメモリ状態確認要求が受信されると、メモリ管理データを前記メモリ管理装置に送信する管理データ送信部（１４ｇ）と、を備えた電子制御装置。
【請求項２】
前記管理データ記憶部は、メモリ管理データを２面構成で記憶すると共に、何れの面に記憶されているメモリ管理データが有効であるかを示すフラグ情報を記憶し、
前記管理データ更新部は、メモリ管理データを更新する際には、前記フラグ情報にしたがって更新時期が古い方のメモリ管理データを更新する請求項１に記載した電子制御装置。
【請求項３】
前記メモリ管理装置からメモリ状態確認要求が受信されると、前記車両ネットワークに接続されている前記メモリ間で共用可能なメモリ資産があるか否かを判定するメモリ資産判定部（１４ｆ）を備え、
前記管理データ送信部は、共用可能なメモリ資産があると判定されると、肯定応答と共にメモリ管理データを前記メモリ管理装置に送信し、共用可能なメモリ資産がないと判定されると、否定応答を前記メモリ管理装置に送信する請求項１又は２に記載した電子制御装置。
【請求項４】
前記メモリ管理装置から蓄積先変更要求を受信する蓄積先変更要求受信部（１４ｈ）と、
前記メモリ管理装置から蓄積先変更要求が受信されると、その蓄積先変更要求にしたがってプログラム又はデータの蓄積先のメモリを変更する蓄積先変更部（１４ｉ）と、を備えた請求項１から３の何れか一項に記載した電子制御装置。
【請求項５】
前記蓄積先変更部は、前記外部装置との間や車両ネットワーク内で送受信されるデータと同一又は倍数のデータ長のデータを蓄積可能なメモリを新たな蓄積先のメモリとして選択し、プログラム又はデータの蓄積先のメモリを変更する請求項４に記載した電子制御装置。
【請求項６】
前記管理データ記憶部は、メモリ管理データとして、プログラム又はデータの蓄積用途として使用可能な総容量である蓄積用途総容量と、過去に書き込まれた総容量である書き込み総容量とを含むデータを記憶する請求項１から５の何れか一項に記載した電子制御装置。
【請求項７】
前記書き込み部は、前記メモリ内の各ブロックに対し、プログラム又はデータの書き込みが特定のブロックに集中しないようにプログラム又はデータをメモリに書き込んで蓄積する請求項１から６の何れか一項に記載した電子制御装置。
【請求項８】
メモリ状態確認要求を送信する状態確認要求送信部（１２ｅ）と、
メモリ状態確認要求の送信先からメモリ管理データを受信する管理データ受信部（１２ｆ）と、を備えた請求項１から７の何れか一項に記載した電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子制御装置に関する。
【背景技術】
【０００２】
従来より、車両ネットワークに接続されている電子制御装置において、外部装置との間や車両ネットワーク内で送受信されるプログラム又はデータをメモリに書き込んで蓄積する構成が供されている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１１３７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
この種の構成では、プログラム又はデータの書き込みが特定のメモリに集中することが懸念される。プログラム又はデータの書き込みが特定のメモリに集中すると、その書き込みが集中した特定のメモリでは物理的な劣化が他のメモリよりも早く進行する。その結果、書き込んだ容量によっては車両保証期間内であっても書き込まれたプログラム又はデータに化けや抜けが発生する等し、書き込まれたプログラム又はデータを保証し得なくなる虞がある。又、例えば内部処理の負荷が高い状況で書き込みが特定のメモリに集中すると、内部処理の実行が遅延し、内部処理の処理時間が長くなってしまう虞もある。このような事情から、プログラム又はデータの書き込みが特定のメモリに集中する事態の発生を未然に回避する仕組みが望まれている。
【０００５】
本発明は、上記した事情に鑑みてなされたものであり、その目的は、プログラム又はデータの書き込みが特定のメモリに集中する事態の発生を未然に回避することができる電子制御装置を提供することにある。
【課題を解決するための手段】
【０００６】
請求項１に記載した発明によれば、メモリ（１ａ，２ａ，２ｂ，３ａ，３ｂ，４ａ，５ａ）は、外部装置（９〜１１）との間や車両ネットワーク内で送受信されるプログラム又はデータを蓄積する。書き込み部（１２ｂ，１４ｂ）は、プログラム又はデータをメモリに書き込んで蓄積する。管理データ記憶部（１２ｃ，１４ｃ）は、メモリへのプログラム又はデータの書き込み使用状況を示すメモリ管理データを記憶する。管理データ更新部（１２ｄ，１４ｄ）は、プログラム又はデータがメモリに書き込まれる毎にメモリ管理データを更新する。状態確認要求受信部（１４ｅ）は、メモリ管理装置（１）からメモリ状態確認要求を受信する。管理データ送信部（１４ｇ）は、メモリ管理装置からメモリ状態確認要求が受信されると、メモリ管理データをメモリ管理装置に送信する。
【０００７】
電子制御装置において、メモリへのプログラム又はデータの書き込み使用状況を示すメモリ管理データをプログラム又はデータがメモリに書き込まれる毎に更新し、メモリ管理装置からメモリ状態確認要求を受信すると、メモリ管理データをメモリ管理装置に送信するようにした。メモリ管理装置では、電子制御装置から受信したメモリ管理データを解析することで、車両ネットワークに接続されているメモリのプログラム又はデータの書き込み使用状況を一括管理することができる。
【０００８】
これにより、プログラム又はデータの書き込みが平滑化するように蓄積先を逐次制御することができ、プログラム又はデータの書き込みが特定のメモリに集中する事態の発生を未然に回避することができる。その結果、特定のメモリの物理的な劣化が他のメモリよりも早く進行する事態の発生を未然に回避することができ、書き込まれたプログラム又はデータを適切に保証することができる。又、例えば内部処理の負荷が高い状況でプログラム又はデータの書き込みが集中する事態の発生を未然に回避することができ、内部処理の処理時間が長期化する事態の発生を未然に回避することができる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態を示す電子制御装置及び周辺の構成を示す図
【図２】機能ブロック図
【図３】マスタノードのメモリ構成を示す図
【図４】マスタノードのメモリ管理データを示す図
【図５】スレーブノードのメモリ構成を示す図
【図６】スレーブノードのメモリ管理データを示す図
【図７】書き込み処理を示すフローチャート
【図８】メモリ状態確認要求の送信処理を示すフローチャート
【図９】蓄積先変更要求の送信処理を示すフローチャート
【図１０】メモリ状態確認要求の受信処理を示すフローチャート
【図１１】蓄積先変更要求の受信処理を示すフローチャート
【発明を実施するための形態】
【００１０】
以下、本発明の一実施形態について図面を参照して説明する。図１に示すように、車両内には複数の電子制御装置１〜５と車載通信機６とが搭載されている。電子制御装置１〜５は、それぞれ車両内においてノードとして機能し、プログラム又はデータを蓄積するメモリを有する。電子制御装置１はメモリ１ａを有し、電子制御装置２はメモリ２ａ，２ｂを有し、電子制御装置３はメモリ３ａ，３ｂを有し、電子制御装置４はメモリ４ａを有し、電子制御装置５はメモリ５ａを有する。電子制御装置１〜５に設けられるメモリの個数や容量は任意である。
【００１１】
電子制御装置１は、通信バス７（車両ネットワークに相当する）を介して電子制御装置２，３と接続され、通信バス８（車両ネットワークに相当する）を介して電子制御装置４，５と接続されている。電子制御装置１は、例えばゲートウェイＥＣＵであり、電子制御装置２〜５との間でプログラム又はデータを中継する中継機能を有する。電子制御装置１は、通信バス７，８に接続されているメモリへのプログラム又はデータの書き込み使用状況を一括管理するマスタノード（メモリ管理装置に相当する）として機能する。
【００１２】
電子制御装置２〜５は、それぞれマスタノードとして機能する電子制御装置１によりメモリへのプログラム又はデータの書き込み使用状況が管理されるスレーブノードとして機能する。電子制御装置２〜５は、例えばエンジンの制御を行うエンジンＥＣＵ、ブレーキの制御を行うブレーキＥＣＵ、ステアリングの制御を行うステアリングＥＣＵ、自動変速機の制御を行うトランスミッションＥＣＵ、ナビゲーションの制御を行うナビゲーションＥＣＵ、電子式料金収受システムとの通信制御を行うＥＴＣＥＣＵ、ドアのロック／アンロックの制御を行うドアＥＣＵ、メータの表示制御を行うメータＥＣＵ、エアコンの制御を行うエアコンＥＣＵ、ウィンドウの開閉制御を行うウィンドウＥＣＵ等である。
【００１３】
通信バス７，８は、例えばマルチメディア系の通信バス、パワトレ系の通信バス、ボディ系の通信バス等であり、ＣＡＮ（Controller Area Network、登録商標）、ＬＩＮ（Local Interconnect Network）、ＣＸＰＩ（Clock Extension Peripheral Interface、登録商標）、ＦｌｅｘＲａｙ（登録商標）、ＭＯＳＴ（Media Oriented Systems Transport、登録商標）等から構成されている。通信バス７，８は、通信プロトコルや通信速度や信号フォーマットが共通であっても良いし互いに異なっていても良い。又、電子制御装置の個数や通信バスの本数は例示した構成に限らない。
【００１４】
電子制御装置１は、車両ボディのコネクタに対して配線ケーブルが装着されたことで車両診断ツール９（外部装置に相当する）と有線接続されると、車両診断ツール９との間でプログラム又はデータを送受信する。車両診断ツール９は、作業者が車両診断を行うために操作するツールである。
【００１５】
又、電子制御装置１は、車載通信機６との間でプログラム又はデータを送受信する。車載通信機６は、クラウド１０（外部装置に相当する）との間で広域通信ネットワークを介して無線接続されると、クラウド１０との間でプログラム又はデータを送受信する。クラウド１０は、例えばセンタ端末やサーバ等である。車載通信機６は、車両接続端末１１（外部装置に相当する）との間で近距離通信ネットワークを介して無線接続されると、車両接続端末１１との間でプログラム又はデータを送受信する。車両接続端末１１は、例えばユーザが携帯可能なスマートフォンやタブレット端末等である。以下、車両診断ツール９、クラウド１０、車両接続端末１１を外部装置９〜１１と総称する。
【００１６】
次に、電子制御装置１〜５の構成について説明する。尚、スレーブノードである電子制御装置２〜５は基本的に同じ構成であるので、電子制御装置２を代表して説明する。即ち、マスタノードとスレーブノードの関係として電子制御装置１と電子制御装置２について説明するが、電子制御装置１と電子制御装置３〜５についても同様である。又、電子制御装置２のメモリ２ａについて説明するが、メモリ２ｂについても同様である。
【００１７】
図２に示すように、マスタノードである電子制御装置１は、マイクロコンピュータ（以下、マイコンと称する）１２を有する。マイコン１２は、ＣＰＵ、ＲＡＭ、ＲＯＭ、Ｉ／Ｏポート等を有し、ソフトウェア等により実現される内部の機能として、送受信部１２ａと、書き込み部１２ｂと、管理データ記憶部１２ｃと、管理データ更新部１２ｄと、状態確認要求送信部１２ｅと、管理データ受信部１２ｆと、蓄積先変更部１２ｇと、蓄積先変更要求送信部１２ｈとを有する。
【００１８】
図３に示すように、電子制御装置１のメモリ１ａは、制御プログラム、制御データ、書き換えプログラムを記憶する制御用記憶領域１３ａと、プログラム又はデータを蓄積する蓄積専用領域１３ｂと、第１メモリ管理データを記憶する記憶領域１３ｃと、第２メモリ管理データを記憶する記憶領域１３ｄと、フラグ情報を記憶する記憶領域１３ｅとを有する。
【００１９】
図４に示すように、記憶領域１３ｃに記憶される第１メモリ管理データ及び記憶領域１３ｄに記憶される第２メモリ管理データは、それぞれ通信バス７，８に接続されている全てのノードである電子制御装置１〜５の全てのメモリを対象としたプログラム又はデータの書き込み使用状況を示すデータである。第１メモリ管理データ及び第２メモリ管理データは、それぞれプログラム又はデータの蓄積用途として使用可能な総容量である蓄積用途総容量と、プログラム又はデータの過去に書き込まれた総容量である書き込み総容量とを含むデータである。蓄積用途総容量は、蓄積専用領域１３ｂの容量に生涯書き換え可能回数を乗じた値で示される容量である。即ち、蓄積用途総容量に対して書き込み総容量が比較的少なく、メモリの使用頻度が比較的少なければ、書き込まれたプログラム又はデータを保証し得るが、蓄積用途総容量に対して書き込み総容量が比較的多く、メモリの使用頻度が比較的多ければ、書き込まれたプログラム又はデータを保証し得ない虞がある。尚、図４に示す蓄積用途総容量及び書き込み総容量の数値は一例である。
【００２０】
送受信部１２ａは、プログラム又はデータを通信バス７，８との間で送受信することで、車両側から外部装置９〜１１に送信される車両状態や制御履歴に関するデータを送信し、外部装置９〜１１から車両側に受信された車両制御に関するプログラム又はデータを受信する。
【００２１】
書き込み部１２ｂは、送受信部１２ａにより送受信されるプログラム又はデータをメモリ１ａの蓄積専用領域１３ｂに書き込んで蓄積する。この場合、書き込み部１２ｂは、メモリ１ａ内の各ブロックに対し、プログラム又はデータの書き込みが特定のブロックに集中しないようにプログラム又はデータをメモリ１ａに書き込んで蓄積する。
【００２２】
管理データ記憶部１２ｃは、メモリ１ａの記憶領域１３ｃ〜１３ｅにより構成され、上記した第１メモリ管理データ、第２メモリ管理データ、フラグ情報を記憶する。即ち、管理データ記憶部１２ｃは、メモリ管理データを２面構成で記憶する。
【００２３】
管理データ更新部１２ｄは、プログラム又はデータがメモリ１ａの蓄積専用領域１３ｂに書き込まれる毎に、記憶領域１３ｃ，１３ｄに記憶されているメモリ管理データのうちメモリ１ａの記憶内容を、記憶領域１３ｅに記憶されているフラグ情報にしたがって更新する。管理データ更新部１２ｄは、メモリ管理データの更新時期の新旧をフラグ情報により判定し、更新時期が古い方のメモリ管理データを、メモリ１ａの蓄積専用領域１３ｂに書き込まれたプログラム又はデータの書き込み容量にしたがって更新する。
【００２４】
状態確認要求送信部１２ｅは、メモリ状態確認要求を、通信バス７，８を介してスレーブノードである電子制御装置２〜５に送信する。状態確認要求送信部１２ｅは、メモリ状態確認要求の送信先を、通信バス７，８に接続されている全ての電子制御装置２〜５としても良いし、通信バス７，８に接続されている全ての電子制御装置２〜５のうち予め定められた何れかとしても良い。
【００２５】
管理データ受信部１２ｆは、電子制御装置２〜５から送信されたメモリ管理データを受信する。管理データ更新部１２ｄは、電子制御装置２〜５から送信されたメモリ管理データが受信されると、記憶領域１３ｃ，１３ｄに記憶されているメモリ管理データのうち送信元のメモリの記憶内容を、記憶領域１３ｅに記憶されているフラグ情報にしたがって更新する。即ち、管理データ更新部１２ｄは、例えば電子制御装置２から送信されたメモリ２ａに関するメモリ管理データが受信されると、記憶領域１３ｃ，１３ｄに記憶されているメモリ管理データのうちメモリ２ａの記憶内容を、記憶領域１３ｅに記憶されているフラグ情報にしたがって更新する。この場合も、管理データ更新部１２ｄは、メモリ管理データの更新時期の新旧をフラグ情報により判定し、更新時期が古い方のメモリ管理データを、メモリ１ａの蓄積専用領域１３ｂに書き込まれたプログラム又はデータの書き込み容量にしたがって更新する。
【００２６】
蓄積先変更部１２ｇは、メモリ管理データが更新されると、その更新後のメモリ管理データにしたがってプログラム又はデータの蓄積先のメモリを変更する必要があるか否かを判定する。即ち、蓄積先変更部１２ｇは、例えば蓄積用途総容量と最新の書き込み総容量との差分を、これ以降に書き込み可能な容量である書き込み可能容量として計算する。そして、蓄積先変更部１２ｇは、例えば蓄積用途総容量に対して書き込み可能容量の占める割合を計算し、通信バス７，８に接続されている全てのメモリを対象とした割合のばらつきを判定し、プログラム又はデータの蓄積先のメモリを変更する必要があるか否かを判定する。
【００２７】
蓄積先変更部１２ｇは、ばらつきが所定範囲内であれば、プログラム又はデータの蓄積先のメモリを変更する必要がないと判定する。一方、蓄積先変更部１２ｇは、ばらつきが所定範囲内でなければ、プログラム又はデータの蓄積先のメモリを変更する必要があると判定する。蓄積先変更部１２ｇは、プログラム又はデータの蓄積先のメモリを変更する必要があると判定すると、ばらつきが所定範囲内に収束するようにプログラム又はデータの蓄積先のメモリを変更する。即ち、蓄積先変更部１２ｇは、ばらつきが所定範囲内に収まるようにプログラム又はデータの蓄積先のメモリを変更することで、プログラム又はデータの書き込みが特定のメモリに集中する事態の発生を未然に回避可能となる。この場合、蓄積先変更部１２ｇは、外部装置９〜１１との間で送受信されるデータと同一又は倍数のデータ長のデータを蓄積可能なメモリを、蓄積先のメモリとして変更するのが好ましい。尚、蓄積先変更部１２ｇは、上記した蓄積用途総容量に対して書き込み可能容量の占める割合を計算する以外の方法で、プログラム又はデータの蓄積先のメモリを変更する必要があるか否かを判定しても良い。
【００２８】
蓄積先変更要求送信部１２ｈは、プログラム又はデータの蓄積先のメモリが変更されると、蓄積先変更要求を、通信バス７，８を介して当該蓄積先のメモリを変更する必要があると判定したスレーブノードである電子制御装置２〜５に送信する。
【００２９】
スレーブノードである電子制御装置２は、マイコン１４を有する。マイコン１４は、ＣＰＵ、ＲＡＭ、ＲＯＭ、Ｉ／Ｏポート等を有し、ソフトウェア等により実現される内部の機能として、送受信部１４ａと、書き込み部１４ｂと、管理データ記憶部１４ｃと、管理データ更新部１４ｄと、状態確認要求受信部１４ｅと、メモリ資産判定部１４ｆと、管理データ送信部１４ｇと、蓄積先変更要求受信部１４ｈと、蓄積先変更部１４ｉとを有する。
【００３０】
図５に示すように、電子制御装置２のメモリ２ａは、電子制御装置１のメモリ１ａと同様に、制御プログラム、制御データ、書き換えプログラムを記憶する制御用記憶領域１５ａと、プログラム又はデータを蓄積する蓄積専用領域１５ｂと、第１メモリ管理データを記憶する記憶領域１５ｃと、第２メモリ管理データを記憶する記憶領域１５ｄと、フラグ情報を記憶する記憶領域１５ｅとを有する。
【００３１】
図６に示すように、記憶領域１５ｃに記憶される第１メモリ管理データ及び記憶領域１５ｄに記憶される第２メモリ管理データは、電子制御装置２の全てのメモリを対象としたプログラム又はデータの書き込み使用状況を示すデータである。この場合も、第１メモリ管理データ及び第２メモリ管理データは、それぞれプログラム又はデータの蓄積用途として使用可能な総容量である蓄積用途総容量と、プログラム又はデータの過去に書き込まれた総容量である書き込み総容量とを含むデータである。蓄積用途総容量は、蓄積専用領域１５ｂの容量に生涯書き換え可能回数を乗じた値で示される容量である。即ち、蓄積用途総容量に対して書き込み総容量が比較的少なく、メモリの使用頻度が比較的少なければ、書き込まれたプログラム又はデータを保証し得るが、蓄積用途総容量に対して書き込み総容量が比較的多く、メモリの使用頻度が比較的多ければ、書き込まれたプログラム又はデータを保証し得ない虞がある。尚、図６に示す蓄積用途総容量及び書き込み総容量の数値も一例である。
【００３２】
送受信部１４ａは、プログラム又はデータを通信バス７との間で送受信することで、車両側から外部装置９〜１１に送信される車両状態や制御履歴に関するプログラム又はデータを受信し、外部装置９〜１１から車両側に受信された車両制御に関するプログラム又はデータを受信する。
【００３３】
書き込み部１４ｂは、送受信部１４ａにより送受信されるプログラム又はデータをメモリ２ａの蓄積専用領域１５ｂに書き込んで蓄積する。この場合も、書き込み部１４ｂは、メモリ２ａ内の各ブロックに対し、プログラム又はデータの書き込みが特定のブロックに集中しないようにプログラム又はデータをメモリ２ａに書き込んで蓄積する。
【００３４】
管理データ記憶部１４ｃは、メモリ２ａの記憶領域１５ｃ〜１５ｅにより構成され、上記した第１メモリ管理データ、第２メモリ管理データ、フラグ情報を記憶する。即ち、管理データ記憶部１４ｃも、メモリ管理データを２面構成で記憶する。
【００３５】
管理データ更新部１４ｄは、プログラム又はデータがメモリ２ａの蓄積専用領域１５ｂに書き込まれる毎に、記憶領域１５ｃ，１５ｄに記憶されているメモリ管理データのうちメモリ２ａの記憶内容を、記憶領域１５ｅに記憶されているフラグ情報にしたがって更新する。管理データ更新部１４ｄは、メモリ管理データの更新時期の新旧をフラグ情報により判定し、更新時期が古い方のメモリ管理データを、メモリ２ａの蓄積専用領域１５ｂに書き込まれたプログラム又はデータの書き込み容量にしたがって更新する。
【００３６】
状態確認要求受信部１４ｅは、マスタノードである電子制御装置１から通信バス７を介してメモリ状態確認要求を受信する。メモリ資産判定部１４ｆは、電子制御装置１からメモリ状態確認要求が受信されると、通信バス７，８に接続されているメモリ間で共用可能なメモリ資産があるか否かを判定する。即ち、メモリ資産判定部１４ｆは、例えば電子制御装置２の主制御に費やすメモリ容量に対して空きのメモリ容量に余裕度があれば共用可能なメモリ資産があると判定し、一方、余裕度がなければ共用可能なメモリ資産がないと判定する。
【００３７】
管理データ送信部１４ｇは、共用可能なメモリ資産があると判定されると、肯定応答と共にメモリ管理データを電子制御装置１に送信し、共用可能なメモリ資産がないと判定されると、否定応答を電子制御装置１に送信する。
【００３８】
蓄積先変更要求受信部１４ｈは、マスタノードである電子制御装置１から通信バス７を介して蓄積先変更要求を受信する。蓄積先変更部１４ｉは、電子制御装置１から蓄積先変更要求が受信されると、その蓄積先変更要求にしたがってプログラム又はデータの蓄積先のメモリを変更する。
【００３９】
次に、上記した構成の作用について図７から図１１を参照して説明する。ここでは、電子制御装置１がメモリ状態確認要求を電子制御装置２に送信し、電子制御装置２がメモリ管理データを電子制御装置１に送信する場合について説明する。具体的には、電子制御装置１のマイコン１２及び電子制御装置２のマイコン１４の両方が実行する書き込み処理、マイコン１２が実行するメモリ状態確認要求の送信処理及び蓄積先変更要求の送信処理、マイコン１４が実行するメモリ状態確認要求の受信処理及び蓄積先変更要求の受信処理について順次説明する。
【００４０】
（１）書き込み処理
図７に示すように、マスタノードである電子制御装置１及びスレーブノードである電子制御装置２において、マイコン１２，１４は、それぞれ書き込み処理を開始すると、書き込み対象のプログラム又はデータの受信を開始したか否かを判定する（Ｓ１）。マイコン１２，１４は、書き込み対象のプログラム又はデータの受信を開始したと判定すると（Ｓ１：ＹＥＳ）、該当するメモリへの書き込み対象のプログラム又はデータの書き込みを開始し（Ｓ２）、書き込み対象のプログラム又はデータの受信の終了を監視する（Ｓ３）。マイコン１２，１４は、書き込み対象のプログラム又はデータの受信を終了したと判定すると（Ｓ３：ＹＥＳ）、該当するメモリへの書き込み対象のプログラム又はデータの書き込みを終了する（Ｓ４）。
【００４１】
マイコン１２，１４は、プログラム又はデータの書き込みを終了すると、書き込んだ容量を書き込み容量として算出し（Ｓ５）、その時点のフラグ情報を判定し（Ｓ６）、その判定したフラグ情報にしたがって第１メモリ管理データ及び第２メモリ管理データのうち更新時期が古い方のメモリ管理データを、書き込んだプログラム又はデータの書き込み容量にしたがって更新する（Ｓ７）。即ち、マイコン１２，１４は、その時点の書き込み総容量に対して今回の書き込み処理による書き込み容量を加算し、メモリ管理データを更新する。そして、マイコン１２，１４は、フラグ情報を更新し（Ｓ８）、書き込み処理を終了する。
【００４２】
（２）メモリ状態確認要求の送信処理
図８に示すように、マスタノードである電子制御装置１において、マイコン１２は、メモリ状態確認要求の送信処理を開始すると、メモリ状態確認要求をスレーブノードである電子制御装置２に送信し（Ｓ１１）、電子制御装置２からの肯定応答又は否定応答の受信を監視する（Ｓ１２，Ｓ１３）。マイコン１２は、電子制御装置２から肯定応答と共にメモリ管理データを受信したと判定すると（Ｓ１２：ＹＥＳ）、その受信したメモリ管理データにしたがって自身が記憶するメモリ管理データを更新し（Ｓ１４）、メモリ状態確認要求の送信処理を終了する。一方、マイコン１２は、電子制御装置２から否定応答を受信したと判定すると（Ｓ１３：ＹＥＳ）、メモリ管理データを更新せずにメモリ状態確認要求の送信処理を終了する。
【００４３】
（３）蓄積先変更要求の送信処理
図９に示すように、マスタノードである電子制御装置１において、マイコン１２は、蓄積先変更要求の送信処理を開始すると、メモリ管理データを更新したことで蓄積先を変更する必要が発生したか否かを判定する（Ｓ２１）。マイコン１２は、蓄積先を変更する必要が発生したと判定すると（Ｓ２１：ＹＥＳ）、蓄積先変更要求を該当するスレーブノードである電子制御装置２〜５に送信し（Ｓ２２）、蓄積先変更要求の送信処理を終了する。一方、マイコン１２は、蓄積先を変更する必要が発生していないと判定すると（Ｓ２１：ＮＯ）、蓄積先変更要求を送信せずに蓄積先変更要求の送信処理を終了する。
【００４４】
（４）メモリ状態確認要求の受信処理
図１０に示すように、スレーブノードである電子制御装置２において、マイコン１４は、メモリ状態確認要求の受信処理を開始すると、マスタノードである電子制御装置１からメモリ状態確認要求を受信したか否かを判定する（Ｓ３１）。マイコン１４は、電子制御装置１からメモリ状態確認要求を受信したと判定すると（Ｓ３１：ＹＥＳ）、通信バス７，８に接続されているメモリ間で共用可能なメモリ資産があるか否かを判定する（Ｓ３２）。マイコン１４は、共用可能なメモリ資産があると判定すると（Ｓ３２：ＹＥＳ）、肯定応答と共にメモリ管理データを電子制御装置１に送信し（Ｓ３３）、メモリ状態確認要求の受信処理を終了する。一方、マイコン１４は、共用可能なメモリ資産がないと判定すると（Ｓ３２：ＮＯ）、否定応答を電子制御装置１に送信するが（Ｓ３４）、メモリ管理データを送信せずにメモリ状態確認要求の受信処理を終了する。
【００４５】
（５）蓄積先変更要求の受信処理
図１１に示すように、スレーブノードである電子制御装置２において、マイコン１４は、蓄積先変更要求の受信処理を開始すると、マスタノードである電子制御装置１から蓄積先変更要求を受信したか否かを判定する（Ｓ４１）。マイコン１４は、電子制御装置１から蓄積先変更要求を受信したと判定すると（Ｓ４１：ＹＥＳ）、その受信した蓄積先変更要求にしたがってプログラム又はデータの蓄積先のメモリを変更し（Ｓ４２）、蓄積先変更要求の受信処理を終了する。
【００４６】
尚、以上は、スレーブノードである電子制御装置２について例示したが、スレーブノードである電子制御装置３〜５についても同様である。即ち、マスタノードである電子制御装置１は、上記したようにメモリ状態確認要求を電子制御装置２に送信して当該電子制御装置２からメモリ管理データを受信するのと同様に、メモリ状態確認要求を電子制御装置３〜５に送信して当該電子制御装置３〜５からメモリ管理データを受信することで、通信バス７，８に接続されている全てのメモリの書き込み使用状況を一括管理する。電子制御装置１は、メモリ状態確認要求を電子制御装置２〜５にどのようなタイミングで送信しても良い。電子制御装置１は、例えば通信バス７，８のバス負荷が比較的低い状況であればメモリ状態確認要求を電子制御装置２〜５に一斉に送信しても良いし、例えば通信バス７，８のバス負荷が比較的高い状況であればメモリ状態確認要求を電子制御装置２〜５に順次送信しても良い。
【００４７】
以上に説明したように本実施形態によれば、次に示す効果を得ることができる。
スレーブノードである電子制御装置２〜５において、メモリへのプログラム又はデータの書き込み使用状況を示すメモリ管理データをプログラム又はデータがメモリに書き込まれる毎に更新し、マスタノードである電子制御装置１からメモリ状態確認要求を受信すると、メモリ管理データを電子制御装置１に送信するようにした。電子制御装置１では、電子制御装置２から受信したメモリ管理データを解析することで、通信バス７，８に接続されているメモリのプログラム又はデータの書き込み使用状況を一括管理することができる。
【００４８】
これにより、プログラム又はデータの書き込みが平滑化するように蓄積先を逐次制御することができ、プログラム又はデータの書き込みが特定のメモリに集中する事態の発生を未然に回避することができる。その結果、特定のメモリの物理的な劣化が他のメモリよりも早く進行する事態の発生を未然に回避することができ、書き込まれたプログラム又はデータを適切に保証することができる。又、例えば内部処理の負荷が高い状況でプログラム又はデータの書き込みが集中する事態の発生を未然に回避することができ、内部処理の処理時間が長期化する事態の発生を未然に回避することができる。
【００４９】
又、電子制御装置１〜５において、メモリ管理データを２面構成で記憶し、メモリ管理データを更新する際には、フラグ情報にしたがって更新時期が古い方のメモリ管理データを更新するようにした。プログラム又はデータの書き込み中に電源が遮断されてもメモリ管理データを救済することができる。
【００５０】
又、電子制御装置１〜５において、車両側から外部装置９〜１１に送信される車両状態や制御履歴に関するデータをメモリに書き込んで蓄積するようにした。車両側から外部装置９〜１１に送信される車両状態や制御履歴に関するデータを対象とし、通信バス７，８に接続されているメモリのデータの書き込み使用状況を一括管理することができる。
【００５１】
又、電子制御装置１〜５において、外部装置９〜１１から車両側に受信された車両制御に関するプログラム又はデータをメモリに書き込んで蓄積するようにした。外部装置９〜１１から車両側に受信された車両制御に関するプログラム又はデータを対象とし、通信バス７，８に接続されているメモリのプログラム又はデータの書き込み使用状況を一括管理することができる。
【００５２】
又、電子制御装置２〜５において、電子制御装置１からメモリ状態確認要求を受信すると、通信バス７，８に接続されているメモリ間で共用可能なメモリ資産があるか否かを判定し、共用可能なメモリ資産があると判定すると、肯定応答と共にメモリ管理データを送信し、共用可能なメモリ資産がないと判定すると、否定応答を送信するようにした。共用可能なメモリ資産を提供し合うことで、通信バス７，８に接続されているメモリ間でメモリ資産を有効に活用することができる。
【００５３】
又、電子制御装置２〜５において、電子制御装置１から蓄積先変更要求を受信すると、その受信した蓄積先変更要求にしたがってプログラム又はデータの蓄積先のメモリを変更するようにした。プログラム又はデータの蓄積先のメモリを変更することで、柔軟に対応することができる。
【００５４】
又、電子制御装置２〜５において、外部装置９〜１１との間で送受信されるデータと同一又は倍数のデータ長のデータを蓄積可能なメモリを新たな蓄積先のメモリとして選択し、プログラム又はデータの蓄積先のメモリを変更するようにした。メモリが扱えるデータ単位を考慮することで、メモリの容量を効率的に利用することができる。
【００５５】
又、電子制御装置１〜５において、メモリ管理データとして、プログラム又はデータの蓄積用途として使用可能な総容量である蓄積用途総容量と、過去に書き込まれた総容量である書き込み総容量とを含むデータを記憶するようにした。蓄積用途総容量は、蓄積専用領域の容量に生涯書き換え可能回数を乗じた値で示される容量である。蓄積用途総容量と書き込み総容量とを比較することで、メモリの使用頻度の進捗を容易に確認すると共に管理することができる。
【００５６】
又、電子制御装置１〜５において、メモリ内の各ブロックに対し、プログラム又はデータの書き込みが特定のブロックに集中しないようにプログラム又はデータをメモリに書き込んで蓄積するようにした。プログラム又はデータをメモリ内の異なるアドレスに順次書き込むことで、書き込み回数を平滑化することができ、メモリ寿命を向上することができる。
【００５７】
又、電子制御装置１において、メモリ状態確認要求を電子制御装置２〜４に送信し、電子制御装置２〜４からメモリ管理データを受信すると、メモリ管理データの送信先に対応するメモリ管理データを更新するようにした。プログラム又はデータの書き込みが平滑化するように蓄積先を逐次制御することができる。
【００５８】
又、電子制御装置１において、メモリ管理データを更新すると、その更新後のメモリ管理データにしたがってプログラム又はデータの蓄積先のメモリを変更するようにした。プログラム又はデータの蓄積先のメモリを変更することで、柔軟に対応することができる。
【００５９】
又、電子制御装置１においても、外部装置９〜１１との間で送受信されるデータと同一又は倍数のデータ長のデータを蓄積可能なメモリを新たな蓄積先のメモリとして選択し、プログラム又はデータの蓄積先のメモリを変更するようにした。メモリが扱えるデータ単位を考慮することで、メモリの容量を効率的に利用することができる。
【００６０】
本開示は、実施例に準拠して記述されたが、当該実施例や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、更には、それらに一要素のみ、それ以上、或いはそれ以下を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に入るものである。
【００６１】
マスタノードである電子制御装置１が１個の構成を例示したが、マスタノードである電子制御装置が複数であり、それらマスタノードである複数の電子制御装置がメモリ管理データを共有して管理する構成でも良い。
【００６２】
マスタノードである電子制御装置１がメモリ１ａを有する構成を例示したが、マスタノードである電子制御装置１がメモリ１ａを有しない構成でも良い。即ち、マスタノードである電子制御装置１は、自己を除く電子制御装置２〜５のメモリを対象とし、それらのメモリへのプログラム又はデータの書き込み使用状況を管理しても良い。
【００６３】
通信バス７，８に接続されている全てのメモリを対象とし、それら全てのメモリへのプログラム又はデータの書き込み使用状況を管理する構成を例示したが、通信バス７，８に接続されている全てのメモリのうち選択した何れかの一部を対象とし、それら一部のメモリへのプログラム又はデータの書き込み使用状況を管理しても良い。又、メモリは電子制御装置１〜５内のメモリであれば良く、マイコン内に限定されるものではない。
【００６４】
外部装置９〜１１との間で送受信されるプログラム又はデータを対象とする構成を例示したが、車両ネットワーク内で送受信されるプログラム又はデータを対象としても良い。即ち、車両内のみで扱うプログラム又はデータを対象とし、メモリのプログラム又はデータの書き込み使用状況を一括管理しても良い。
【符号の説明】
【００６５】
図面中、１〜５は電子制御装置、１ａ，２ａ，２ｂ，３ａ，３ｂ，４ａ，５ａはメモリ、７，８は通信バス（車両ネットワーク）、９は車両診断ツール（外部装置）、１０はクラウド（外部装置）、１１は車両接続端末（外部装置）、１２ｂ，１４ｂは書き込み部、１２ｃ，１４ｃは管理データ記憶部、１２ｄ，１４ｄは管理データ更新部、１２ｅは状態確認要求送信部、１２ｆは管理データ受信部、１２ｇは蓄積先変更部、１２ｈは蓄積先変更要求送信部、１４ｅは状態確認要求受信部、１４ｆはメモリ資産判定部、１４ｇは管理データ送信部、１４ｈは蓄積先変更要求受信部、１４ｉは蓄積先変更部である。
【図１】
2019067236.tif 000003
【図２】
2019067236.tif 000004
【図３】
2019067236.tif 000005
【図４】
2019067236.tif 000006
【図５】
2019067236.tif 000007
【図６】
2019067236.tif 000008
【図７】
2019067236.tif 000009
【図８】
2019067236.tif 000010
【図９】
2019067236.tif 000011
【図１０】
2019067236.tif 000012
【図１１】
2019067236.tif 000013