(57)【特許請求の範囲】
【請求項１】
車両で用いられ、
前記車両においてユーザが受けるサービスに関するアプリケーションを実行する機能処理部（１１４ａ）と、
前記アプリケーションに必要なバックアップデータを一時的に格納しておくための揮発性メモリ（１２）と、
自装置の動作を終了させるイベントの発生時に、前記バックアップデータを前記揮発性メモリから不揮発性メモリ（２０）に書き込んで格納する後援処理部（１１４ｂ）とを備え、
前記機能処理部と前記後援処理部とは、お互いが独立して処理を行うものであるとともに、お互いが前記揮発性メモリの同一メモリ空間にアクセスできるものであり、
前記機能処理部は、前記後援処理部で前記バックアップデータを前記揮発性メモリから前記不揮発性メモリに書き込み中であっても、自装置の起動を維持させるイベントの発生時には、前記揮発性メモリに格納されている前記バックアップデータを前記揮発性メモリから読み出して前記アプリケーションを再起動する車載装置。
【請求項２】
請求項１において、
前記機能処理部及び前記後援処理部は、仮想化技術によって物理プロセッサ（１１）上で動作する複数の基本ソフトウェア（１１３ａ，１１３ｂ）のうちの、それぞれ別の基本ソフトウェアで動作する処理単位である車載装置。
【請求項３】
請求項２において、
前記物理プロセッサは、前記仮想化技術によって複数の仮想プロセッサコア（１１２ａ〜１１２ｄ）に抽象化され、
前記後援処理部を動作させる前記基本ソフトウェア（１１３ｂ）が使用する前記仮想プロセッサコアは、前記仮想プロセッサコア１つ分に満たない車載装置。
【請求項４】
請求項１〜３のいずれか１項において、
前記機能処理部は、自装置の動作を終了させるイベントの発生時に、前記後援処理部での前記バックアップデータの前記不揮発性メモリへの書き込みの完了を待たずに動作を終了する車載装置。
【請求項５】
請求項４において、
前記後援処理部は、さらに、前記バックアップデータの前記不揮発性メモリへの書き込みを完了した後、自装置の電源をオフにする車載装置。
【請求項６】
請求項１〜５のいずれか１項において、
前記後援処理部は、前記バックアップデータを、前記車載装置の外部記憶媒体としての前記不揮発性メモリに書き込んで格納する車載装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バックアップデータを不揮発性メモリに書き込む車載装置に関するものである。
【背景技術】
【０００２】
従来、車載ナビゲーション装置やＥＭＶ（Electro Multi Vision System）等の、車両から電源の供給を受ける車載装置のバックアップデータを不揮発性メモリに格納する技術が知られている。不揮発性メモリには書き込み回数制限があることや読み出し時の電化補正などの処理が必要である。よって、不揮発性メモリを車載装置に用いる場合、不揮発性メモリの長期安定性を考慮して、不揮発性メモリの書き込みや読み出しの回数制限を行う必要がある。そのため、大量のデータや頻繁に更新されるデータに関しては、アクセサリ電源オフとなった場合に不揮発性メモリに格納する対応が取られている。
【０００３】
大量のデータや頻繁に更新されるデータを不揮発性メモリに格納する際、書き込みに時間がかかる。この書き込み中に再度のアクセサリ電源オンが発生したとしても、従来の技術では、不揮発性メモリへの書き込みを中断して車載装置のアプリケーションを再起動することができず、再起動時間が長くなるという問題があった。
【０００４】
これに対して、例えば特許文献１には、車両スイッチがオフになった後にも、車載装置への電源供給を一定時間継続して車載装置の起動状態を保持する技術が開示されている。特許文献１では、この技術により、車両スイッチを再度オンにした直後でも車載装置を利用可能な状態にすることを試みている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−１６２１９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示の技術であっても、ユーザによる車両スイッチのオンのタイミングが、バックアップデータの不揮発性メモリへの書き込み中であった場合には、この書き込みが完了するまでは車載装置のアプリケーションの再起動を待たなければならない。
【０００７】
本発明は、上記従来の問題点に鑑みなされたものであって、その目的は、バックアップデータの不揮発性メモリへの書き込み中にアプリケーションを再起動することになった場合の起動時間の遅延を抑える車載装置を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的は独立請求項に記載の特徴の組み合わせにより達成され、また、下位請求項は、発明の更なる有利な具体例を規定する。特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本発明の技術的範囲を限定するものではない。
【０００９】
上記目的を達成するために、本発明の車載装置は、車両で用いられ、車両においてユーザが受けるサービスに関するアプリケーションを実行する機能処理部（１１４ａ）と、アプリケーションに必要なバックアップデータを一時的に格納しておくための揮発性メモリ（１２）と、自装置の動作を終了させるイベントの発生時に、バックアップデータを揮発性メモリから不揮発性メモリ（２０）に書き込んで格納する後援処理部（１１４ｂ）とを備え、機能処理部と後援処理部とは、お互いが独立して処理を行うものであるとともに、お互いが揮発性メモリの同一メモリ空間にアクセスできるものであり、機能処理部は、後援処理部でバックアップデータを揮発性メモリから不揮発性メモリに書き込み中であっても、自装置の起動を維持させるイベントの発生時には、揮発性メモリに格納されているバックアップデータを揮発性メモリから読み出してアプリケーションを再起動する。
【００１０】
機能処理部と後援処理部とは、お互いが独立して処理を行う。よって、自装置の動作を終了させるイベントの発生時に、後援処理部でバックアップデータを揮発性メモリから不揮発性メモリに書き込み中であっても、機能処理部での処理は実行できる。また、機能処理部と後援処理部とは、お互いが揮発性メモリの同一メモリ空間にアクセスできる。よって、後援処理部でバックアップデータを揮発性メモリから不揮発性メモリに書き込み中であっても、機能処理部が揮発性メモリに格納されているバックアップデータを読み出すことができる。
【００１１】
従って、自装置の動作を終了させるイベントの発生により、揮発性メモリから不揮発性メモリへのバックアップデータの書き込みが行われている途中であっても、自装置の動作を維持させるイベントの発生時には、バックアップデータの書き込みの完了を待たずに機能処理部がアプリケーションを再起動することができる。その結果、バックアップデータの書き込みの完了を待たなくてよい分だけ、アプリケーションを再起動する際の起動時間の遅延を抑えることができる。
【図面の簡単な説明】
【００１２】
【図１】車載システム１の概略的な構成の一例を示す図である。
【図２】プロセッサ１１の概念的な構成を説明するための図である。
【図３】通常起動時におけるプロセッサ１１での処理を説明するための図である。
【図４】通常終了時におけるプロセッサ１１での処理を説明するための図である。
【図５】バックアップ処理中の再起動時におけるプロセッサ１１での処理を説明するための図である。
【発明を実施するための形態】
【００１３】
図面を参照しながら、開示のための複数の実施形態や変形例を説明する。なお、説明の便宜上、複数の実施形態や変形例の間において、それまでの説明に用いた図に示した部分と同一の機能を有する部分については、同一の符号を付し、その説明を省略する場合がある。同一の符号を付した部分については、他の実施形態や変形例における説明を参照することができる。
【００１４】
（実施形態１）
＜車載システム１の概略構成＞
以下、本発明の実施形態１について図面を用いて説明する。図１に示す車載システム１は、車両に搭載されるものであり、制御装置１０、不揮発性メモリ２０、表示装置３０、及び音声出力装置４０を含んでいる。以降では、制御装置１０を搭載している車両を自車と呼ぶ。
【００１５】
不揮発性メモリ２０は、制御装置１０の外部記憶装置であって、ＨＤＤやＳＤカードやフラッシュメモリなどを用いることができる。一例としては、不揮発性メモリ２０としては、フラッシュメモリを利用した組み込み用マルチメディアカードなどを用いればよい。
【００１６】
表示装置３０としては、テキストや画像を表示するディスプレイを用いればよい。音声出力装置４０としては、スピーカを用いる構成とすればよい。表示装置３０及び音声出力装置４０は、制御装置１０の指示に従ってそれぞれ表示と音声出力を行う。
【００１７】
制御装置１０は、通常のコンピュータとして構成されており、図１に示すように、プロセッサ１１及び揮発性メモリ１２を備えている。揮発性メモリ１２としてはＤＲＡＭ（Dynamic Random Access Memory）を用いることができる。また、図示は省略したが、制御装置１０は、Ｉ／Ｏ、バスなども備える。制御装置１０は、グラフィックチップや表示コントローラを備えていてもよい。この制御装置１０が請求項の車載装置に相当する。
【００１８】
実施形態１では、一例として、自車のアクセサリ（以下、ＡＣＣ）電源オン時に制御装置１０が起動し、自車のＡＣＣ電源オフ時に制御装置１０の動作を終了させるものとする。よって、ＡＣＣ電源オフが請求項の自装置の動作を終了させるイベントに相当する。
【００１９】
＜プロセッサ１１の概念的な構成＞
続いて、図２を用いて、プロセッサ１１の概念的な構成について説明する。プロセッサ１１は、ＣＰＵが１つであるシングルコア構成であってもよいし、ＣＰＵ（Central Processing Unit）が複数であるマルチコア構成であってもよい。このプロセッサ１１が請求項の物理プロセッサに相当する。
【００２０】
プロセッサ１１は、自身のリソースをクロック単位で時分割して使用することで仮想的に複数のコアが存在しているように動作させる仮想化技術を利用して、仮想コア１１２ａ〜１１２ｄを並列動作させることができる。この仮想コア１１２ａ〜１１２ｄが請求項の仮想プロセッサコアに相当する。仮想化技術は、一般的にＶｉｒｔｕａｌｉｚａｔｉｏｎと総称されるものであって、その手法としては例えばＨｙｐｅｒｖｉｓｏｒなどを利用する構成とすればよい。
【００２１】
また、プロセッサ１１は、仮想コア１１２ａ〜１１２ｄの動作状態を管理して仮想化を実現するソフトウェアである仮想化レイヤ１１１を搭載している。なお、実施形態１では、プロセッサ１１が仮想コア１１２ａ〜１１２ｄの４つの仮想コアを備える場合を例に挙げて説明を行うが、仮想コアの数は４つ以外であってもよい。
【００２２】
プロセッサ１１は、仮想コア１１２ａ〜１１２ｄ上で複数のＯＳ（Operating System）１１３ａ，１１３ｂを独立かつ並行に動作させることができる。このＯＳ１１３ａ，１１３ｂが請求項の基本ソフトウェアに相当する。
【００２３】
ＯＳ１１３ａ上には、アプリケーションを実行するドメインである機能ドメイン１１４ａが割り当てられる。また、ＯＳ１１３ｂ上には、システム終了時のバックアップ処理を行うドメインであるバックアップ処理ドメイン１１４ｂが割り当てられる。この機能ドメイン１１４ａが請求項の機能処理部に相当し、バックアップ処理ドメイン１１４ｂが請求項の後援処理部に相当する。実施形態１では、バックアップ処理ドメインを動作させるＯＳ１１３ｂが使用する仮想コアは、仮想コア１つ分に満たないものとする。
【００２４】
システム終了時とは、自車のＡＣＣ電源オフ時とする。バックアップ処理とは、機能ドメイン１１４ａで実行するアプリケーションに必要なバックアップデータを、揮発性メモリ１２から不揮発性メモリ２０に書き込んで格納する処理である。また、ドメインとは、それぞれ独立して処理を行うものであるとともに、それぞれ揮発性メモリ１２の同一のメモリ空間をアクセス可能な処理単位を示している。
【００２５】
ここでは一例として、機能ドメイン１１４ａで実行するアプリケーションは、ナビゲーション機能に関するアプリケーションやオーディオ機能に関するアプリケーション等のマルチメディア機器に関する各種アプリケーションとする。例えば、アプリケーションがナビゲーション機能に関するアプリケーションである場合には、バックアップデータとしては、現在位置情報、探索した経路情報、ラストモードといったデータが挙げられる。
【００２６】
なお、実施形態１では、機能ドメイン１１４ａが１つである構成を示すが、機能ドメイン１１４ａが複数である構成としてもよい。例えば、マルチメディア機器に関する各種アプリケーションを実行する機能ドメインと、運転支援に関する各種アプリケーションを実行する機能ドメインがそれぞれ別のＯＳに割り当てられる構成としてもよい。
【００２７】
＜プロセッサ１１での処理＞
続いて、プロセッサ１１での処理について説明する。プロセッサ１１では、制御装置１０が起動した場合に、機能ドメイン１１４ａがマルチメディア機器に関するアプリケーションを実行する。機能ドメイン１１４ａは、実行中のアプリケーションで用いるデータを揮発性メモリ１２に読み書きしつつ、アプリケーションを実行する。一方、プロセッサ１１では、自車のＡＣＣ電源オフ時には、バックアップ処理ドメイン１１４ｂがバックアップ処理を実行する。プロセッサ１１では、バックアップ処理が完了した後に、制御装置１０の電源をオフにする。
【００２８】
以降では、通常起動時、通常終了時、バックアップ処理中の再起動時といった状況別におけるプロセッサ１１での処理について説明を行う。ここで言う通常起動時とは、自車のＡＣＣ電源オンによって制御装置１０の電源もオンになって、制御装置１０が起動する場合の状況を指す。通常終了時は、自車のＡＣＣ電源オフをトリガに制御装置１０でバックアップ処理が開始され、バックアップ処理の完了後に制御装置１０の電源がオフになる場合の状況を指す。バックアップ処理中の再起動時とは、自車のＡＣＣ電源オフをトリガに制御装置１０でバックアップ処理が開始され、バックアップ処理の継続中に自車のＡＣＣ電源がオンになり制御装置１０の起動が維持される場合の状況を指す。
【００２９】
＜通常起動時＞
まず、図３を用いて、通常起動時におけるプロセッサ１１での処理について説明を行う。自車のＡＣＣ電源オンによって制御装置１０が起動すると、ブートローダ（boot loader）がＯＳ１１３ａ，１１３ｂを起動する。ＯＳ１１３ａ，１１３ｂの起動後、ＯＳ１１３ｂに割り当てられるバックアップ処理ドメイン１１４ｂでは、不揮発性メモリ２０に格納されているバックアップデータを揮発性メモリ１２に格納する（つまり、コピーする）。一方、ＯＳ１１３ａに割り当てられる機能ドメイン１１４ａでは、バックアップ処理ドメイン１１４ｂによって揮発性メモリ１２にバックアップデータが格納された後、揮発性メモリ１２に格納されたバックアップデータを使用してアプリケーションを実行する。
【００３０】
このように、揮発性メモリ１２は、機能ドメイン１１４ａとバックアップ処理ドメイン１１４ｂとの間で共有のメモリであって、機能ドメイン１１４ａとバックアップ処理ドメイン１１４ｂとが同一メモリ空間にアクセスできるものである。制御装置１０は、仮想化技術を利用することで、機能ドメイン１１４ａとバックアップ処理ドメイン１１４ｂとが同一メモリ空間にアクセスできる構成が容易に実現可能としている。
【００３１】
＜通常終了時＞
続いて、図４を用いて、通常終了時におけるプロセッサ１１での処理について説明を行う。自車のＡＣＣ電源オフをトリガに制御装置１０の動作を終了させる場合、機能ドメイン１１４ａでは、アプリケーションの再起動時に必要となるバックアップデータを揮発性メモリ１２に格納する。そして、バックアップデータを揮発性メモリ１２に格納した後、機能ドメイン１１４ａでのプロセスを終了する。機能ドメイン１１４ａがバックアップデータを格納するメモリは揮発性メモリ１２であるため、アクセスの速度が速い。よって、バックアップデータの格納が完了するまでには大して時間がかからず、迅速にその後のプロセス終了に移行できる。
【００３２】
バックアップ処理ドメイン１１４ｂでは、機能ドメイン１１４ａによって揮発性メモリ１２にバックアップデータが格納された後、揮発性メモリ１２に格納されたバックアップデータを不揮発性メモリ２０に格納する（つまり、コピーする）バックアップ処理を開始する。そして、バックアップ処理による不揮発性メモリ２０へのバックアップデータの格納完了後、制御装置１０の電源オフを行う。
【００３３】
＜バックアップ処理中の再起動時＞
続いて、図５を用いて、バックアップ処理中の再起動時におけるプロセッサ１１での処理について説明を行う。前述の通常終了時と同様に、自車のＡＣＣ電源オフをトリガに制御装置１０の動作を終了させる場合、機能ドメイン１１４ａではバックアップデータを揮発性メモリ１２に格納する。前述した通り、揮発性メモリ１２へのバックアップデータの格納が完了するまでには大して時間がかからない。そして、前述の通常終了時と同様に、機能ドメイン１１４ａによって揮発性メモリ１２にバックアップデータが格納された後、バックアップ処理を開始する。よって、自車のＡＣＣ電源オフが請求項の自装置の動作を終了させるイベントに相当する。
【００３４】
ここで、バックアップ処理が完了するまでに自車のＡＣＣ電源オンが発生した場合、機能ドメイン１１４ａはバックアップ処理ドメイン１１４ｂとは独立して動作しているため、バックアップ処理の完了を待つことなく、アプリケーションを再起動できる。このバックアップ処理が完了するまでに発生した自車のＡＣＣ電源オンが、請求項の自装置の起動を維持させるイベントに相当する。
【００３５】
また、バックアップ処理中は、制御装置１０の電源がまだオフされていないため、揮発性メモリ１２はバックアップデータを保持し続けている。よって、再起動するアプリケーションが揮発性メモリ１２に格納されているバックアップデータを継続的に使用でき、迅速にアプリケーションを再起動できる。
【００３６】
機能ドメイン１１４ａが揮発性メモリ１２上のバックアップデータを読み込んだり、書き換えたりしても、バックアップ処理ドメイン１１４ｂは機能ドメイン１１４ａと独立してバックアップデータを揮発性メモリ１２から読み込み、不揮発性メモリ２０に格納しているだけなので、バックアップ処理には影響を及ぼさない。
【００３７】
以上の構成によれば、再起動するアプリケーションが、リアビューカメラの画像表示やオープニングアニメの表示やデッドレコニングに関するアプリケーションなど、規定時間内に起動しなければいけないアプリケーションであった場合でも、起動性能要件を満たすことができる。
【００３８】
＜実施形態１のまとめ＞
実施形態１の構成によれば、自車のＡＣＣ電源オフ時に、バックアップ処理ドメイン１１４ｂでバックアップデータを揮発性メモリ１２から不揮発性メモリ２０に書き込み中であっても、機能ドメイン１１４ａが揮発性メモリ１２に格納されているバックアップデータを読み出すことができる。従って、自車のＡＣＣ電源オフをトリガにして、揮発性メモリ１２から不揮発性メモリ２０へのバックアップデータの書き込みが行われている途中であっても、自車のＡＣＣ電源オン時には、バックアップデータの書き込みの完了を待たずに機能ドメイン１１４ａがアプリケーションを再起動することができる。その結果、バックアップデータの書き込みの完了を待たなくてよい分だけ、アプリケーションを再起動する際の起動時間の遅延を抑えることができる。
【００３９】
また、実施形態１の構成によれば、バックアップ処理の完了後は制御装置１０の電源をオフにするので、バッテリ電源によって揮発性メモリ１２のデータを保持し続ける構成に比べて、暗電流を抑えることが可能になる。よって、実施形態１の構成は、マルチメディア機器や運転支援に関するアプリケーションを実行する制御装置１０といった、ＣＰＵパワーが大きいために電力消費量も大きい制御装置１０に特に適している。
【００４０】
（変形例１）
実施形態１では、仮想化技術を利用して複数の仮想コア１１２ａ〜１１２ｄ上で複数のＯＳ１１３ａ，１１３ｂを動作させる構成を示したが、必ずしもこれに限らない。例えば、仮想化技術を用いずに、同一メモリバス上に配置された別プロセッサで複数のＯＳ１１３ａ，１１３ｂをそれぞれ動作させる構成としてもよい。
【００４１】
別プロセッサで複数のＯＳ１１３ａ，１１３ｂをそれぞれ動作させる場合にも、ＯＳ１１３ｂに割り当てられるバックアップ処理ドメイン１１４ｂと、ＯＳ１１３ａに割り当てられる機能ドメイン１１４ａとは、揮発性メモリ１２の同一メモリ空間にアクセスできるものとする。
【００４２】
（変形例２）
実施形態１では、自車のＡＣＣ電源オフ時に制御装置１０を起動し、ＡＣＣ電源オフ時に制御装置１０の動作を終了させる構成を示したが、必ずしもこれに限らない。制御装置１０の起動と動作の終了のトリガとなるイベントは、ＡＣＣ電源のオンオフ以外であってもよい。例えば、自車のイグニッション電源のオンオフ等であってもよい。
【００４３】
（変形例３）
実施形態１では、不揮発性メモリ２０が制御装置１０の外部記憶装置である構成を示したが、必ずしもこれに限らない。例えば、不揮発性メモリ２０が制御装置１０に内蔵されている構成としてもよい。
【００４４】
（変形例４）
実施形態１では、バックアップ処理の完了後にバックアップ処理ドメイン１１４ｂが制御装置１０の電源をオフする構成を示したが、必ずしもこれに限らない。例えば、バックアップ処理の完了後に機能ドメイン１１４ａが制御装置１０の電源をオフする構成としてもよい。この場合、機能ドメイン１１４ａは、アプリケーションの終了後も、バックアップ処理の完了まではバックアップ処理の完了待ち状態として待機しており、バックアップ処理完了後に制御装置１０の電源をオフする構成とすればよい。
【００４５】
なお、本発明は、上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【００４６】
１  車載システム、１０  制御装置（車載装置）、１１  プロセッサ（物理プロセッサ）、１２  揮発性メモリ、２０  不揮発性メモリ、１１１  仮想レイヤ、１１２ａ〜１１２ｄ  仮想コア（仮想プロセッサコア部）、１１３ａ，１１３ｂ  ＯＳ（基本ソフトウェア）、１１４ａ  機能ドメイン（機能処理部）、１１４ｂ  バックアップ処理ドメイン（後援処理部）
【図１】
0006424797.tif 000002
【図２】
0006424797.tif 000003
【図３】
0006424797.tif 000004
【図４】
0006424797.tif 000005
【図５】
0006424797.tif 000006