(57)【要約】【課題】不揮発の記憶部の長寿命化を図りながら、緊急時におけるデータの消失を有効に抑制できる記憶制御装置、記憶装置および書き込み制御方法を提供する。【解決手段】実施形態の記憶制御装置は、収集部と、制御部と、を備える。収集部は、不揮発の記憶部に書き込むデータを収集する。制御部は、異常事態の発生を予測したことを示す緊急予測通知を受け取った場合に、前記データを収集してから前記記憶部に書き込むまでの時間が前記緊急予測通知を受け取る前よりも短くなるように制御する。【選択図】図２
2019032757.tif 000002
【特許請求の範囲】
【請求項１】
不揮発の記憶部に書き込むデータを収集する収集部と、
異常事態の発生を予測したことを示す緊急予測通知を受け取った場合に、前記データを収集してから前記記憶部に書き込むまでの時間が前記緊急予測通知を受け取る前よりも短くなるように制御する制御部と、
を備える記憶制御装置。
【請求項２】
前記データの書き込み方式として、収集した前記データを揮発領域に保持し、保持するデータ量が一定量に達してから前記記憶部に書き込む第１方式と、収集した前記データを前記データ量に関わらず前記記憶部に書き込む第２方式とを有し、
前記制御部は、前記緊急予測通知を受け取った場合に、前記データの書き込み方式を前記第１方式から前記第２方式に切り替える
請求項１に記載の記憶制御装置。
【請求項３】
前記書き込み方式は、前記制御部が前記緊急予測通知を受け取ってから所定時間経過後に前記第２方式から前記第１方式に復帰する
請求項２に記載の記憶制御装置。
【請求項４】
前記第２方式に従って前記記憶部に書き込まれた前記データに上書き禁止フラグが設定される
請求項２または３に記載の記憶制御装置。
【請求項５】
前記書き込み方式を前記第１方式から前記第２方式に切り替えた時点から所定時間前までに前記記憶部に書き込まれた前記データに上書き禁止フラグがさらに設定される
請求項４に記載の記憶制御装置。
【請求項６】
前記制御部は、前記書き込み方式が前記第２方式から前記第１方式に復帰したときに、ユーザの指示に応じて前記記憶部に書き込まれた前記データの上書き禁止フラグを解除する
請求項４または５に記載の記憶制御装置。
【請求項７】
前記データは、上書き禁止の状態で前記記憶部に書き込まれ、
所定のタイミングで、前記記憶部に書き込まれた前記データのうち、予め定めた条件を満たす前記データに上書き許可フラグが設定される
請求項１乃至３のいずれか一項に記載の記憶制御装置。
【請求項８】
前記記憶部に書き込まれた前記データを外部に転送する転送部をさらに備える
請求項１乃至７のいずれか一項に記載の記憶制御装置。
【請求項９】
前記転送部は、前記記憶部の空き容量が第１閾値以下になると、前記記憶部に書き込まれた前記データを外部に転送する
請求項８に記載の記憶制御装置。
【請求項１０】
前記転送部は、前記制御部が前記緊急予測通知を受け取った場合に、前記記憶部に書き込まれた前記データを外部に転送する
請求項８または９に記載の記憶制御装置。
【請求項１１】
前記制御部は、外部に転送された前記データを前記記憶部から削除する
請求項８乃至１０のいずれか一項に記載の記憶制御装置。
【請求項１２】
前記制御部は、前記記憶部の空き容量が第１閾値以下になると、前記記憶部に書き込まれた前記データのうち、外部に転送した前記データであって上書きが禁止されていない前記データを前記記憶部から削除し、前記記憶部の空き容量が前記第１閾値よりも小さい第２閾値以下になると、前記記憶部に書き込まれた前記データのうち、外部に転送した前記データをすべて削除する
請求項１１に記載の記憶制御装置。
【請求項１３】
前記記憶制御装置は移動体の内部に設けられ、
前記制御部が前記緊急予測通知を受け取った場合に、前記移動体の外部から収集される前記データを遮断するフィルタリング部をさらに備える
請求項１乃至１２のいずれか一項に記載の記憶制御装置。
【請求項１４】
前記制御部は、前記記憶部の空き容量が第３閾値以下になると、データを記録できない状態にあることを示す記録不可通知を、前記データの送信元となる機器が受信できるように送信し、
前記機器は、前記記録不可通知を受信すると、前記データを内部の記憶部に保持する
請求項１乃至１３のいずれか一項に記載の記憶制御装置。
【請求項１５】
請求項１乃至１４のいずれか一項に記載の記憶制御装置と、
前記記憶部と、
を備える記憶装置。
【請求項１６】
不揮発の記憶部に書き込むデータを収集するステップと、
収集した前記データを前記記憶部に書き込むステップと、を有し、
異常事態の発生を予測したことを示す緊急予測通知を受け取った場合に、前記データを収集してから前記記憶部に書き込むまでの時間が前記緊急予測通知を受け取る前よりも短くなるように制御する
書き込み制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、記憶制御装置、記憶装置および書き込み制御方法に関する。
【背景技術】
【０００２】
例えば、自動車の事故発生時の状況などを解析するためには、車載ネットワーク上の情報、車外からと車外への情報、電子制御ユニット（ＥＣＵ：Electronic  Control  Unit）の処理に関する情報、センサが取得した自動車の周辺に関する情報などが有用なデータとなる。そこで、こうしたデータをＳＳＤ（Solid  State  Drive）やｅＭＭＣ（embedded  Multi  Media  Card）といった不揮発の記憶部にログとして書き込んで記憶させることが検討されている。ここで、ログを記憶する記憶部は、利用環境に応じた寿命が確保されることが望まれる。例えば、記憶部を自動車に搭載する場合、自動車のライフサイクルを考慮して１５年程度は永続的に利用できることが求められる。
【０００３】
記憶媒体にＮＡＮＤフラッシュメモリを用いるＳＳＤやｅＭＭＣなどの記憶部は、データの書き込み頻度が寿命に影響を及ぼす。このため、記憶部に書き込むデータを一時的に揮発領域に一定量保持した後に記憶部に書き込むことで、記憶部の長寿命化を図ることができる。しかし、例えば自動車の事故発生時などの緊急時には電源が遮断されることも想定され、その場合は揮発領域に保持されたデータが記憶部に書き込まれる前に消失し、事故発生直前に収集されたデータなどの重要度の高いデータが記録できなくなる問題がある。そこで、不揮発の記憶部の長寿命化を図りながら、緊急時におけるデータの消失を有効に抑制できるようにすることが求められている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１８６４６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明が解決しようとする課題は、不揮発の記憶部の長寿命化を図りながら、緊急時におけるデータの消失を有効に抑制できる記憶制御装置、記憶装置および書き込み制御方法を提供することである。
【課題を解決するための手段】
【０００６】
実施形態の記憶制御装置は、収集部と、制御部と、を備える。収集部は、不揮発の記憶部に書き込むデータを収集する。制御部は、異常事態の発生を予測したことを示す緊急予測通知を受け取った場合に、前記データを収集してから前記記憶部に書き込むまでの時間が前記緊急予測通知を受け取る前よりも短くなるように制御する。
【図面の簡単な説明】
【０００７】
【図１】実施形態に係る記憶装置の適用例を説明するシステム構成図。
【図２】実施形態に係る記憶装置の機能的な構成例を示すブロック図。
【図３】実施形態に係る記憶装置のハードウェア構成例を示すブロック図。
【図４】領域管理テーブルの一例を示す図。
【図５】ログ管理テーブルの一例を示す図。
【図６】制御部による書き込み制御の処理手順の一例を示すフローチャート。
【図７】緊急書き込み方式によりデータを書き込む際の書き込み部の処理手順の一例を示すフローチャート。
【図８】通常書き込み方式によりデータを書き込む際の書き込み部の処理手順の一例を示すフローチャート。
【図９】制御部による転送制御の処理手順の一例を示すフローチャート。
【図１０】転送部の処理手順の一例を示すフローチャート。
【図１１】第１変形例における記憶装置の機能的な構成例を示すブロック図。
【図１２】第１変形例における制御部の処理手順の一例を示すフローチャート。
【図１３】第２変形例における記憶装置の機能的な構成例を示すブロック図。
【図１４】第２変形例における制御部の処理手順の一例を示すフローチャート。
【図１５】第２変形例における転送部の処理手順の一例を示すフローチャート。
【発明を実施するための形態】
【０００８】
以下、実施形態の記憶制御装置、記憶装置および書き込み制御方法について、図面を参照して詳細に説明する。以下では、自動車の事故発生時の状況などを解析するために有用なデータを記憶する用途での適用例を説明するが、適用可能な形態はこれに限らない。
【０００９】
図１は、本実施形態に係る記憶装置１００の適用例を説明するシステム構成図である。図１に示すように、記憶装置１００は、例えば自動車Ｖに搭載される。自動車Ｖには、各種のＥＣＵ１０が設けられており、少なくともこれらＥＣＵ１０がネットワークバス３０や車載ゲートウェイ装置２０を介して通信する車載ネットワークが自動車Ｖ内に構築されている。
【００１０】
ＥＣＵ１０は、自動車Ｖ内の様々な対象装置を制御する。対象装置は、例えば、エンジンなどの自動車Ｖの運動系の装置、燃料供給装置などのエネルギ系の装置、窓またはドアなどのボディ系の装置、オーディオ装置などのエンターテイメント系の装置である。ＥＣＵ１０は、対象装置を制御するために車載ネットワーク上の他のＥＣＵ１０と通信する場合もある。また、ＥＣＵ１０は、自身に接続されたセンサのデータを用いて対象装置を制御する場合もある。
【００１１】
車載ゲートウェイ装置２０は、ネットワークバス３０を介して各ＥＣＵ１０と接続し、異なるネットワークバス３０を跨ったＥＣＵ１０間での通信の中継などを行う。また、車載ゲートウェイ装置２０は、インターネットなどの外部ネットワーク４０を介して外部サーバ５０と接続し、外部サーバ５０から提供される情報をＥＣＵ１０に送ったり、ＥＣＵ１０が出力する情報を外部サーバ５０に送信したりといった機能を持つ。
【００１２】
本実施形態に係る記憶装置１００は、例えば、車載ゲートウェイ装置２０に接続され、車載ゲートウェイ装置２０に入力される各種のデータをログとして記憶する。ただし、記憶装置１００は、車載ゲートウェイ装置２０に接続するだけでなく、ＥＣＵ１０に接続してもよい。この場合、記憶装置１００が記憶するデータは、ＥＣＵ１０に入力されるデータあるいはＥＣＵ１０の処理結果のデータなどである。また、記憶装置１００は、車載ゲートウェイ装置２０やＥＣＵ１０の内部に設ける構成であってもよい。
【００１３】
図２は、本実施形態に係る記憶装置１００の機能的な構成例を示すブロック図であり、図３は、本実施形態に係る記憶装置１００のハードウェア構成例を示すブロック図である。記憶装置１００は、図２および図３に示すように、記憶部１１０と記憶制御装置１２０とを備える。
【００１４】
記憶部１１０は、電源が遮断されても記憶しているデータを消失しない不揮発の記憶部である。記憶部１１０としては、例えば、記憶媒体にＮＡＮＤフラッシュメモリを用いるＳＳＤやｅＭＭＣなどのストレージデバイスを用いることができる。
【００１５】
記憶制御装置１２０は、例えば図３に示すように、ＣＰＵ（Central  Processing  Unit）などのプロセッサ（プロセッサ回路）１０１と、ＲＡＭ（Random  Access  Memory）などのメインメモリ１０２と、制御プログラムを格納するプログラムＲＯＭ（Read  Only  Memory）１０３と、ストレージデバイス（記憶部）１１０に接続するストレージＩ／Ｆ（インタフェース）１０４と、車載ゲートウェイ装置２０と通信するための通信Ｉ／Ｆ１０５とを備え、これらがバス１０６により接続されたハードウェア構成を有する。そして、例えば、プロセッサ１０１がメインメモリ１０２をワークエリアとして利用して、プログラムＲＯＭ１０３に格納された制御プログラムを実行することにより、図２に示す記憶制御装置１２０内部の機能的な構成要素が実現される。
【００１６】
すなわち、記憶制御装置１２０は、図３に示すハードウェアとソフトウェア（制御プログラム）とにより実現される機能的な構成要素として、図２に示すように、通信部１２１と、収集部１２２と、書き込み部１２３と、制御部１２４と、転送部１２５と、読み出し部１２６とを備える。なお、記憶制御装置１２０は、これらの機能的な構成要素の一部または全部を、例えばＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field-Programmable  Gate  Array）などの専用のハードウェアを用いて実現する構成であってもよい。
【００１７】
通信部１２１は、車載ゲートウェイ装置２０との間でデータ交換を行う機能である。通信部１２１は、例えば、車載ゲートウェイ装置２０に入力される各種のデータを、車載ゲートウェイ装置２０から受信する。これらのデータは、例えば、車載ネットワーク上の情報、車外からと車外への情報、ＥＣＵ１０の処理に関する情報、センサが取得した自動車の周辺に関する情報などを含む。
【００１８】
また、通信部１２１は、例えば、車載ネットワーク上のいずれかのＥＣＵ１０などから緊急予測通知が出力されると、車載ゲートウェイ装置２０を介してこの緊急予測通知を受信し、制御部１２４に送る。緊急予測通知は、例えば、自動車Ｖの事故発生、ＥＣＵ１０の異常や故障、ＥＣＵ１０が制御する対象装置の異常や故障など、自動車Ｖの異常事態の発生を予測したことを示す通知である。
【００１９】
収集部１２２は、車載ゲートウェイ装置２０に入力される各種のデータを収集する機能である。収集部１２２によるデータの収集は、車載ゲートウェイ装置２０に能動的に入力されるデータを収集する方法と、収集部１２２が取得要求を行い、ＥＣＵ１０などがこの要求に応答することによって収集する方法とがある。収集部１２２により収集されたデータは、揮発領域に保持される。収集部１２２は、揮発領域に保持するデータ量が一定量に達すると、制御部１２４に収集完了通知を送る。
【００２０】
書き込み部１２３は、収集部１２２が収集したデータをログとして記憶部１１０に書き込む機能である。書き込み部１２３によるデータの書き込み方式には、収集部１２２により収集されて揮発領域に保持されたデータ量が一定量に達したら記憶部１１０に書き込む通常書き込み方式（第１方式）と、データ量に関わらず（例えば、収集部１２２により収集されたデータを随時）書き込む緊急書き込み方式（第２方式）とがある。
【００２１】
制御部１２４は、記憶部１１０の状態を把握しながら、記憶装置１００の全体の動作を制御する機能である。記憶部１１０の状態は、例えば、図４に示すような領域管理テーブル１３１と、図５に示すようなログ管理テーブル１３２とを用いて管理される。
【００２２】
領域管理テーブル１３１は、記憶部１１０の容量を管理するためのテーブルであり、例えば図４に示すように、記憶部１１０を構成するドライブごとに、ドライブ名と、全体容量と、ブロック数と、空き容量と、空きブロック数とが格納される。空き容量や空きブロック数は、例えば記憶部１１０内の管理機能により随時検知されて領域管理テーブル１３１の値が更新される。なお、図４に示す例では、記憶部１１０が複数のドライブを含む場合を想定しているが、記憶部１１０が単一のドライブのみを有する場合は、そのドライブの全体容量、ブロック数、空き容量、空きブロック数が領域管理テーブル１３１に格納される。
【００２３】
ログ管理テーブル１３２は、記憶部１１０に書き込まれたログを管理するためのテーブルであり、例えば図５に示すように、記憶部１１０に書き込まれたログごとに、ログを識別するログ識別子と、書き込み時刻と、上書き禁止フラグの値と、転送済みフラグの値とを格納する。上書き禁止フラグは、ログの上書きを禁止して記憶部１１０内に永続的に保持することを示すフラグであり、図５の例では、上書き禁止フラグが未設定の場合（デフォルト）は値“０”が格納され、上書き禁止フラグが設定されると値が“０”から“１”に変更される。また、転送済みフラグは、ログが外部（例えば図１に示した外部サーバ５０）に転送されたことを示すフラグであり、図５の例では、未転送の場合（デフォルト）は値“０”が格納され、外部に転送されると値が“０”から“１”に変更される。
【００２４】
このログ管理テーブル１３２には、収集部１２２により収集されたデータが書き込み部１２３によってログとして記憶部１１０に書き込まれるたびに、そのログに関するエントリが随時追加されていく。また、記憶部１１０に書き込まれたログが記憶部１１０から削除されると、そのログに関するエントリがログ管理テーブル１３２から削除される。
【００２５】
制御部１２４は、例えば、上述のような領域管理テーブル１３１やログ管理テーブル１３２を参照して記憶部１１０の空き容量や記録されているログを把握する。そして、記憶部１１０の空き容量が少なくなってくると、転送部１２５にログ転送要求通知を送ることで記憶部１１０に記録されているログを外部に転送させたり、記憶部１１０から不要なログを削除したりといった制御を行う。
【００２６】
なお、記憶部１１０の空き容量が切迫した場合（記憶部１１０の空き容量が閾値以下となった場合）、制御部１２４は、記憶装置１００がデータを記録できない状態にあることを示す記録不可通知を、通信部１２１から車載ゲートウェイ装置２０に対して送信するようにしてもよい。この記録不可通知は、例えば、車載ゲートウェイ装置２０からネットワークバス３０を介して各ＥＣＵ１０にブロードキャストされる。記録不可通知を受け取った各ＥＣＵ１０は、記憶装置１００がデータを記録できない状態にあることを認識し、ネットワークバス３０上に送出するデータを、記憶装置１００の記憶部１１０の代わりにＥＣＵ１０内部の記憶部に保持するといった処理を行うことが可能となる。
【００２７】
また、制御部１２４は、書き込み部１２３によるデータの書き込みを制御する。特に、制御部１２４は、通信部１２１から上述の緊急書き込み通知（所定の通知の一例）を受け取ると、収集部１２２がデータを収集してから記憶部１１０に書き込むまでの時間が、緊急書き込み通知を受け取る前よりも短くなるように、書き込み部１２３によるデータの書き込みを制御する。
【００２８】
具体的には、制御部１２４は、収集部１２２から揮発領域に保持したデータ量が一定量に達したことを示す収集完了通知を受け取ると、書き込み部１２３に対して書き込み通知を送ることにより、書き込み部１２３が上述の通常書き込み方式で記憶部１１０にデータを書き込むように制御する。また、制御部１２４は、通信部１２１を介して上述の緊急予測通知を受け取ると、書き込み部１２３に対して緊急書き込み通知を送り、書き込み部１２３が上述の緊急書き込み方式で記憶部１１０にデータを書き込むように制御する。すなわち制御部１２４は、緊急予測通知を受け取ると、書き込み部１２３の書き込み方式を通常書き込み方式から緊急書き込み方式に切り替える。
【００２９】
上述の上書き禁止フラグは、例えば、緊急書き込み方式で記憶部１１０に書き込まれたログに対して設定される。あるいは、緊急書き込み方式で記憶部１１０に書き込まれたログに加え、書き込み部１２３の書き込み方式を通常書き込み方式から緊急書き込み方式に切り替えた時点から所定時間前までに通常書き込み方式により記憶部１１０に書き込まれたログに対しても、上書き禁止フラグを設定するようにしてもよい。上書き禁止フラグの設定は、書き込み部１２３が記憶部１１０にデータを書き込み、ログ管理テーブル１３２に新たなエントリが追加されるたびに制御部１２４が行ってもよいし、書き込み部１２３が行ってもよい。
【００３０】
転送部１２５は、記憶部１１０に記録されたログを外部（例えば外部サーバ５０）に転送する機能である。転送部１２５は、制御部１２４からログ転送要求通知を受け取ると、未転送のログの読み出しを読み出し部１２６に要求し、この要求に応じて読み出し部１２６が記憶部１１０から読み出したログを、通信部１２１を介して外部に転送する。
【００３１】
読み出し部１２６は、記憶部１１０からログを読み出す機能である。読み出し部１２６は、例えば、転送部１２５からの要求に応じて、記憶部１１０が記憶するログのうち、外部に転送されていない未転送のログを記憶部１１０から読み出して、転送部１２５に渡す。
【００３２】
次に、本実施形態に係る記憶装置１００の動作について、フローチャートを参照しながら説明する。図６は、制御部１２４による書き込み制御の処理手順の一例を示すフローチャートである。この図６のフローチャートで示す一連の処理は、制御部１２４が割り込み通知を受けるたびに実施される。
【００３３】
制御部１２４は、割り込み通知を受け取ると、受け取った割り込み通知が緊急予測通知であるか、収集完了通知であるかを判断する（ステップＳ１０１、ステップＳ１０４）。そして、受け取った割り込み通知が緊急予測通知の場合（ステップＳ１０１：Ｙｅｓ）、制御部１２４は、書き込み部１２３に対して緊急書き込み通知を送り（ステップＳ１０２）、緊急予測フラグを設定して（ステップＳ１０３）、処理を終了する。緊急予測フラグは、制御部１２４が緊急予測通知を受け取ったことを示すフラグである。この緊急予測フラグが設定されると、緊急予測通知を受け取ってからの経過時間のカウントが開始される。
【００３４】
一方、受け取った割り込み通知が収集部１２２からの収集完了通知の場合（ステップＳ１０１：Ｎｏ、ステップＳ１０４：Ｙｅｓ）、制御部１２４は、まず緊急予測フラグが設定されているか否かを確認する（ステップＳ１０５）。そして、緊急予測フラグが設定されていれば（ステップＳ１０５：Ｙｅｓ）、緊急予測フラグを設定してから予め定めた一定時間が経過しているか否かを判断する（ステップＳ１０６）。ここで、緊急予測フラグを設定してから一定時間が経過していなければ（ステップＳ１０６：Ｎｏ）、処理を終了する。なお、受け取った割り込み通知が緊急予測通知でも収集完了通知でもない場合（ステップＳ１０４：Ｎｏ）、制御部１２４は書き込み制御を行うことなく処理を終了する。
【００３５】
一方、緊急予測フラグを設定してから一定時間が経過していれば（ステップＳ１０６：Ｙｅｓ）、制御部１２４は緊急予測フラグを解除し（ステップＳ１０７）、書き込み部１２３に対して書き込み通知を送って（ステップＳ１０８）、処理を終了する。また、ステップＳ１０５で緊急予測フラグが設定されていない場合も（ステップＳ１０５：Ｎｏ）、制御部１２４は書き込み部１２３に対して書き込み通知を送り（ステップＳ１０８）、処理を終了する。
【００３６】
図７は、緊急書き込み方式により記憶部１１０にデータを書き込む際の書き込み部１２３の処理手順の一例を示すフローチャートである。この図７のフローチャートで示す一連の処理は、書き込み部１２３が制御部１２４から緊急書き込み通知を受け取ると開始される。
【００３７】
書き込み部１２３は、制御部１２４から緊急書き込み通知を受け取ると、まず、緊急書き込みフラグを設定する（ステップＳ２０１）。緊急書き込みフラグは、緊急書き込み方式によりデータの書き込みを行うことを示すフラグである。
【００３８】
次に、書き込み部１２３は、収集部１２２により収集されたデータがあるか否かを判定する（ステップＳ２０２）。そして、収集部１２２により収集されたデータがあれば（ステップＳ２０２：Ｙｅｓ）、書き込み部１２３は、収集部１２２により収集されたデータをログとして記憶部１１０に書き込み（ステップＳ２０３）、書き込んだログに関するエントリをログ管理テーブル１３２に追加して、ログ管理テーブル１３２を更新する（ステップＳ２０４）。このとき、書き込んだログに対して上書き禁止フラグが設定される。
【００３９】
一方、収集部１２２により収集されたデータがなければ（ステップＳ２０２：Ｎｏ）、ステップＳ２０３およびステップＳ２０４の処理は行われず、ステップＳ２０５に進む。ステップＳ２０５では、緊急書き込みフラグが解除されたか否かが判断される。緊急書き込みフラグは、後述のように、書き込み部１２３が制御部１２４から書き込み通知を受け取ると解除される。ここで、緊急書き込みフラグが解除されていなければ（ステップＳ２０５：Ｎｏ）、ステップＳ２０２に戻って以降の処理が繰り返される。そして、緊急書き込みフラグが解除されると（ステップＳ２０５：Ｙｅｓ）、処理を終了する。
【００４０】
図８は、通常書き込み方式により記憶部１１０にデータを書き込む際の書き込み部１２３の処理手順の一例を示すフローチャートである。この図８のフローチャートで示す一連の処理は、書き込み部１２３が制御部１２４から書き込み通知を受け取ると開始される。
【００４１】
書き込み部１２３は、制御部１２４から書き込み通知を受け取ると、まず、緊急書き込みフラグが設定されているか否かを確認する（ステップＳ３０１）。そして、緊急書き込みフラグが設定されていれば（ステップＳ３０１：Ｙｅｓ）、緊急書き込みフラグを解除する（ステップＳ３０２）。
【００４２】
次に、書き込み部１２３は、収集部１２２により収集されて揮発領域に保持されたデータを記憶部１１０にログとして書き込み（ステップＳ３０３）、書き込んだログに関するエントリをログ管理テーブル１３２に追加して、ログ管理テーブル１３２を更新する（ステップＳ３０４）。このとき、書き込んだログに対して上書き禁止フラグは設定されない。
【００４３】
収集部１２２により収集されて揮発領域に保持されるデータ量は、書き込み部１２３が記憶部１１０に一度に書き込めるデータ量（書き込みサイズ）と比べて大きい。そのため、書き込み部１２３は、通常書き込み方式でデータを記憶部１１０に書き込む場合、書き込みサイズ分のデータを記憶部１１０に書き込む処理を繰り返す。すなわち、書き込み部１２３は、書き込みサイズ以上のデータが揮発領域に残っているかを判定し（ステップＳ３０５）、残っていれば（ステップＳ３０５：Ｙｅｓ）、ステップＳ３０３に戻って処理を繰り返す。そして、揮発領域に残っているデータ量が書き込みサイズ未満になると（ステップＳ３０５：Ｎｏ）、処理を終了する。
【００４４】
図９は、制御部１２４による転送制御の処理手順の一例を示すフローチャートである。この図９のフローチャートで示す一連の処理は、記憶部１１０の空き容量が第１閾値以下になると開始される。記憶部１１０の空き容量は、例えば、上述の領域管理テーブル１３１を参照することにより検知される。
【００４５】
記憶部１１０の空き容量が第１閾値以下になると、制御部１２４は、転送部１２５に対してログ転送要求通知を送る（ステップＳ４０１）。その後、制御部１２４は、転送部１２５からログ転送完了通知を受信するまで待機し（ステップＳ４０２：Ｎｏ）、ログ転送完了通知を受信すると（ステップＳ４０２：Ｙｅｓ）、外部に転送されたログに対して転送済みフラグを設定する（ステップＳ４０３）。
【００４６】
なお、本実施形態ではログの転送先として、外部ネットワーク４０に接続された外部サーバ５０を想定する。このため、車載ゲートウェイ装置２０が外部ネットワーク４０に接続可能な環境にない場合、制御部１２４から転送部１２５にログ転送要求通知が送られてもログの転送はすぐには実施されず、その間に記憶部１１０に対するデータの書き込みが行われることもある。また、ログを外部サーバ５０に転送している間にも記憶部１１０に対するデータの書き込みが行われることもある。この場合、ログの転送が完了したときの記憶部１１０の空き容量が、ログの転送を行う前よりもさらに低下することになる。
【００４７】
ログの転送が完了すると、制御部１２４は、記憶部１１０の空き容量が上述の第１閾値よりも小さい第２閾値以下であるか否かを判断する（ステップＳ４０４）。そして、記憶部１１０の空き容量が第２閾値以下でなければ（ステップＳ４０４：Ｎｏ）、制御部１２４は、記憶部１１０が記憶するログのうち、転送済みフラグが設定され、かつ、上書き禁止フラグが設定されていないログを記憶部１１０から削除する（ステップＳ４０６）。
【００４８】
一方、記憶部１１０の空き容量が第２閾値以下にまで低下していれば（ステップＳ４０４：Ｙｅｓ）、制御部１２４は、上書き禁止フラグが設定されているか否かに関わらず、転送済みフラグが設定されているログを全て記憶部１１０から削除する（ステップＳ４０５）。そして、制御部１２４は、記憶部１１０から削除したログに関するエントリをログ管理テーブル１３２から削除し（ステップＳ４０７）、処理を終了する。
【００４９】
図１０は、転送部１２５の処理手順の一例を示すフローチャートである。この図１０のフローチャートで示す一連の処理は、転送部１２５が制御部１２４からログ転送要求通知を受け取ると開始される。
【００５０】
転送部１２５は、制御部１２４からログ転送要求通知を受け取ると、まず、ログ管理テーブル１３２を参照して、転送済みフラグが設定されていない未転送のログのログ識別子のリストを取得する（ステップＳ５０１）。そして、転送部１２５は、取得したログ識別子のリストに含まれるログ識別子を用い、読み出し部１２６に対してこれらログ識別子で識別されるログの読み出しを要求する（ステップＳ５０２）。
【００５１】
その後、転送部１２５は、読み出し部１２６が記憶部１１０から読み出したログを取得し（ステップＳ５０３）、通信部１２１を介して外部にログを転送する（ステップＳ５０４）。例えば、通信部１２１から車載ゲートウェイ装置２０にログを送信し、このログを車載ゲートウェイ装置２０から外部ネットワーク４０を介して外部サーバ５０に送信させる。そして、ログの転送が完了すると、転送部１２５は、制御部１２４に対してログ転送完了通知を送り（ステップＳ５０５）、処理を終了する。
【００５２】
以上、具体的な例を挙げながら詳細に説明したように、本実施形態によれば、制御部１２４が緊急予測通知を受け取るまでは、書き込み部１２３が、収集部１２２により収集されたデータを揮発領域に一定量保持してから記憶部１１０に書き込む通常書き込み方式によりデータの書き込みを行う。そして、制御部１２４が緊急予測通知を受け取ると、書き込み部１２３は、収集部１２２により収集されたデータをすぐに記憶部１１０に書き込む緊急書き込み方式によりデータの書き込みを行う。したがって、不揮発の記憶部１１０の長寿命化を図りながら、緊急時におけるデータの消失を有効に抑制することができる。
【００５３】
また、本実施形態によれば、緊急書き込み方式により記憶部１１０に書き込まれたデータ（ログ）、あるいは、これに加えて、緊急書き込み方式に切り替えた時点から所定時間前までに通常書き込み方式により記憶部１１０に書き込まれたデータ（ログ）の上書きを禁止するようにしているので、自動車Ｖの事故発生時の状況などを解析する上で特に有用になると想定されるこれらのログを永続的に保持することができる。
【００５４】
また、本実施形態によれば、記憶部１１０の空き容量が少なくなると記憶部１１０が記憶するログを外部に転送するようにしているので、記憶部１１０が記憶するログが上書きによって消失することを有効に抑制することができる。
【００５５】
また、本実施形態によれば、記憶部１１０の空き容量が少なくなると外部に転送したログのうち、上書きが禁止されていないログを記憶部１１０から削除し、記憶部１１０の空き容量がさらに少なくなると、外部に転送した全てのログを記憶部１１０から削除するようにしているので、記憶部１１０の空き容量を確保しながら、重要なログを長期的に保持することができる。
【００５６】
なお、以上説明した実施形態はあくまで一例であり、様々な変形が可能である。以下では、いくつかの変形例を説明する。なお、以下の説明において、上述した実施形態と同様の構成要素については同一の符号を付して、重複した説明を適宜省略する。
【００５７】
＜第１変形例＞
上述の実施形態では、緊急書き込み方式により記憶部１１０に書き込まれたデータ（ログ）の上書きを禁止するようにしているので、例えば、自損事故により緊急予測通知が制御部１２４に送られた場合や、走行中の路面状況などの偶発的要因によって故障と判断されて緊急予測通知が制御部１２４に送られた場合であっても、そのときに書き込まれたログの上書きが禁止される。しかし、これらのログは自動車Ｖの事故原因を解明して責任の所在を明らかにするといった用途での有用性が低く、永続的に保持する必要性が低いと考えられる。また、これらのログの上書きが禁止されたままであると、上書きできないログが記憶部１１０に溜まり、記憶部１１０の容量を占有してしまう。
【００５８】
そこで、本変形例では、書き込み部１２３の書き込み方式が緊急書き込み方式から通常書き込み方式に復帰したときに、ユーザ（例えば自動車Ｖのドライバ）の指示に応じて、それまでの緊急書き込み方式で記憶部１１０に書き込んだデータ（ログ）に設定した上書き禁止フラグを解除する。例えば、ログを保持し続けるか否かをユーザに問い合わせ、保持し続ける旨の応答がなければ、それらのログの上書き禁止フラグを解除する。
【００５９】
図１１は、本変形例における記憶装置１００の機能的な構成例を示すブロック図である。記憶装置１００の構成は上述の実施形態の構成（図２参照）と同様であるが、記憶制御装置１２０の制御部１２４が、自動車Ｖ内に設けられたユーザインタフェースである表示部１４０に接続されている。そして本変形例では、書き込み部１２３の書き込み方式が緊急書き込み方式から通常書き込み方式に復帰したときに、制御部１２４が、今回の緊急時において記録されたログを保持し続けるか否かを問い合わせるメッセージを表示部１４０に表示させる。そして、ログを保持し続ける旨の応答がなければ、通常書き込み方式に復帰する前の緊急書き込み方式により記憶部１１０に書き込まれたデータ（ログ）の上書き禁止フラグを解除する。
【００６０】
図１２は、本変形例における制御部１２４の処理手順の一例を示すフローチャートである。この図１２のフローチャートで示す一連の処理は、書き込み部１２３の書き込み方式が緊急書き込み方式から通常書き込み方式に復帰したときに開始される。
【００６１】
書き込み部１２３の書き込み方式が緊急書き込み方式から通常書き込み方式に復帰すると、制御部１２４は、ログを保持し続けるか否かをユーザに問い合わせるメッセージを表示部１４０に表示させる（ステップＳ６０１）。そして、ユーザからログを保持し続ける旨の応答があれば（ステップＳ６０２：Ｙｅｓ）、制御部１２４は、上書き禁止フラグの解除は行わずにそのまま処理を終了する。一方、ユーザからログを保持し続ける旨の応答がなければ（ステップＳ６０２：Ｎｏ）、制御部１２４は、通常書き込み方式に復帰する前の緊急書き込み方式により記憶部１１０に書き込まれたデータ（ログ）の上書き禁止フラグを解除して（ステップＳ６０３）、処理を終了する。
【００６２】
本変形例によれば、ユーザが永続的に保持し続ける必要があると判断したログ以外は、上書き禁止フラグを解除して上書きできるようにしているので、上書きできないログが記憶部１１０に溜まって容量が逼迫する不都合を有効に回避することができる。
【００６３】
＜第２変形例＞
自動車Ｖの緊急時には、一般に、車内のデータが車外からのデータよりも重要性が高いと想定される。しかし、上述の実施形態では、車内のデータと車外からのデータを特に区別しないため、緊急予測通知が発生したときに、車外からのデータによって重要性の高い車内のデータの書き込みが正常に行えない可能性がある。そこで、本変形例では、制御部１２４が緊急予測通知を受け取ると、車外からのデータを遮断することにより、車内のデータの書き込みを正常に行えるようにする。また、本変形例では、制御部１２４が緊急予測通知を受け取ると、車内のデータを記憶部１１０に書き込むのと同時に車外へ転送することにより、重要性の高い車内のデータの消失をより効果的に防止する。
【００６４】
図１３は、本変形例における記憶装置１００の機能的な構成例を示すブロック図である。本変形例における記憶装置１００は、上述の実施形態の構成（図２参照）に対し、フィルタリング部１５０を記憶制御装置１２０に追加した構成である。フィルタリング部１５０は、制御部１２４により起動／停止が制御され、制御部１２４により起動されると、停止するまでの間、通信部１２１によって受信されたデータのうち、車外からのデータを遮断する。
【００６５】
本変形例における制御部１２４は、緊急予測通知を受け取ると、書き込み部１２３に対して緊急書き込み通知を送るとともに、フィルタリング部１５０を起動する。また、本変形例における制御部１２４は、緊急予測通知を受け取ってから一定時間が経過すると（緊急予測フラグを設定してから一定時間が経過すると）、フィルタリング部１５０を停止する。
【００６６】
図１４は、本変形例における制御部１２４の処理手順の一例を示すフローチャートである。この図１４のフローチャートで示す一連の処理は、図６のステップＳ１０３の処理の後にステップＳ７０１の処理とステップＳ７０２の処理とが追加され、図６のステップＳ１０７の処理とステップＳ１０８の処理との間にステップＳ７０３の処理が追加されたものである。以下では、追加の処理についてのみ説明する。
【００６７】
本変形例における制御部１２４は、ステップＳ１０３において緊急予測フラグを設定した後、フィルタリング部１５０を起動して（ステップＳ７０１）、車外からのデータを遮断させる。そして、制御部１２４は、データ転送要求通知を転送部１２５に送り（ステップＳ７０２）、収集部１２２により収集されたデータを外部に転送させる。
【００６８】
また、本変形例における制御部１２４は、ステップＳ１０７において緊急予測フラグを解除した後、フィルタリング部１５０を停止して（ステップＳ７０３）、車外からのデータも収集部１２２によって収集されるようにする。
【００６９】
図１５は、本変形例における転送部１２５の処理手順の一例を示すフローチャートである。この図１５のフローチャートで示す一連の処理は、転送部１２５が制御部１２４からデータ転送要求通知を受け取ると開始される。
【００７０】
本変形例における転送部１２５は、制御部１２４からデータ転送要求通知を受け取ると、収集部１２２により収集されたデータがあるか否かを判定する（ステップＳ８０１）。そして、収集部１２２により収集されたデータがあれば（ステップＳ８０１：Ｙｅｓ）、収集部１２２により収集されたデータを、通信部１２１を介して外部に転送する（ステップＳ８０２）。例えば、収集部１２２により収集されたデータを通信部１２１から車載ゲートウェイ装置２０に送信し、このデータを車載ゲートウェイ装置２０から外部ネットワーク４０を介して外部サーバ５０に送信させる。
【００７１】
その後、転送部１２５は、緊急予測フラグが解除されたか否かを確認し（ステップＳ８０３）、緊急予測フラグが解除されていなければ（ステップＳ８０３：Ｎｏ）、ステップＳ８０１に戻って以降の処理を繰り返す。そして、緊急予測フラグが解除されると（ステップＳ８０３：Ｙｅｓ）、処理を終了する。
【００７２】
本変形例によれば、緊急書き込み方式により記憶部１１０にデータの書き込みを行っている間は車外からのデータを遮断するので、重要性の高い車内のデータの書き込みを正常に行うことができる。また、車内のデータを記憶部１１０に書き込むのと同時に車外へ転送するようにしているので、重要性の高い車内のデータの消失をより効果的に防止することができる。
【００７３】
＜第３変形例＞
上述の実施形態では、緊急書き込み方式により記憶部１１０に書き込まれたデータ（ログ）に対して上書き禁止フラグを設定することで、そのログの上書きを禁止するようにしている。しかし、データの書き込みと上書き禁止フラグの設定を併せて行うと処理負荷が増加するため、緊急予測通知の発生時にデータの正常な書き込みに支障を来すことも想定される。
【００７４】
そこで、記憶部１１０に書き込まれたデータ（ログ）をデフォルトで上書き禁止の状態とし、処理負荷が低いことが想定される所定のタイミングで、記憶部１１０が記憶するログのうち、予め定めた条件を満たすデータの上書きを許可するようにしてもよい。例えば、図５に例示したログ管理テーブル１３２の「上書き禁止フラグ」を「上書き許可フラグ」に変更し、デフォルトでは上書き許可フラグが設定されていない状態、つまり、上書きが禁止されている状態とする。そして、自動車Ｖが停止したときなど、収集部１２２が収集するデータ量が少なくなることが想定されるタイミングで、例えば、過去に通常書き込み方式で記憶部１１０に書き込まれたデータなど、所定の条件を満たすデータ（ログ）に対して上書き許可フラグを設定する。また、上述の第１変形例のように、表示部１４０にログを保持し続けるか否かを問い合わせるメッセージを表示し、ユーザからの応答に応じて指定されたログに上書き許可フラグを設定するようにしてもよい。
【００７５】
＜第４変形例＞
上述の実施形態では、ＳＳＤやｅＭＭＣなどのストレージデバイスを記憶部１１０として用いることを想定した。しかし、記憶部１１０と記憶制御装置１２０とを備える記憶装置１００をストレージデバイスとして実現してもよい。この場合、ストレージデバイス内のＮＡＮＤフラッシュなどの不揮発メモリが記憶部１１０となり、記憶制御装置１２０は、ストレージデバイス内のコントローラとして実現される。
【００７６】
＜第５変形例＞
上述の実施形態は、記憶装置１００を自動車Ｖに搭載する例を説明した。しかし、記憶装置１００は、自動車Ｖに限らず、電車、飛行機、船舶、ロボットなどの他の移動体に搭載されてもよい。また、移動体に搭載する例に限らず、例えば、通信機能を持った家電機器が接続されたホームネットワークシステムに記憶装置１００を組み込んでもよい。このような他の適用例においても、記憶装置１００は、障害を事後的に解析するために有用なデータをログとして記憶部１１０に書き込む。そして、上述の実施形態と同様に書き込み方式の切り替えを行うことにより、記憶部１１０の長寿命化を図りながら、緊急時におけるデータの消失を有効に抑制できる。
【００７７】
以上、本発明の実施形態およびその変形例を説明したが、ここで説明した実施形態および変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。ここで説明した新規な実施形態および変形例は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。ここで説明した実施形態やその変形例は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７８】
１００  記憶装置
１１０  記憶部
１２０  記憶制御装置
１２１  通信部
１２２  収集部
１２３  書き込み部
１２４  制御部
１２５  転送部
１２６  読み出し部
１４０  表示部
１５０  フィルタリング部
【図１】
2019032757.tif 000003
【図２】
2019032757.tif 000004
【図３】
2019032757.tif 000005
【図４】
2019032757.tif 000006
【図５】
2019032757.tif 000007
【図６】
2019032757.tif 000008
【図７】
2019032757.tif 000009
【図８】
2019032757.tif 000010
【図９】
2019032757.tif 000011
【図１０】
2019032757.tif 000012
【図１１】
2019032757.tif 000013
【図１２】
2019032757.tif 000014
【図１３】
2019032757.tif 000015
【図１４】
2019032757.tif 000016
【図１５】
2019032757.tif 000017