(57)【要約】【課題】地図データ格納部２３内のデータへのアクセス速度の低下を抑えることができるナビゲーション装置２０を提供する【解決手段】本発明では、地図データ格納部２３内の物理的な位置を識別する単位領域識別情報を、当該物理的な位置に格納されているデータの識別番号に対応付けると共に、当該データの識別番号が昇順あるいは降順となるように格納されているファイル管理テーブル２３１を参照して、目的のデータが格納されている地図データ格納部２３内の物理的な位置にアクセスする。【選択図】図２
2006275857.tif 000002
【特許請求の範囲】
【請求項１】
車両の現在位置を表示装置に表示する車載用のナビゲーション装置であって、
地図データを構成する複数のファイル格納する地図データ格納手段と、
前記地図データを構成する複数のファイルの前記地図格納手段内の物理的な位置を管理するためのファイル管理テーブルと、
前記現在位置を前記地図データ格納手段に格納されている地図データと共に前記表示装置に表示する現在位置表示手段と
を備え、
前記地図データ格納手段は、
アクセス可能な最小の単位であり、それぞれに識別番号が割り当てられている単位領域により構成され、前記ファイルを前記単位領域１つあたりの容量に分割した分割データを、複数の前記単位領域のそれぞれに格納しており、
前記ファイル管理テーブルは、
前記ファイルのそれぞれについて、当該ファイルを構成する分割データのそれぞれに、当該ファイル内での順番に従ってデータ識別番号を割り当て、当該データ識別番号を昇順または降順に連続して格納すると共に、当該分割データが格納されている単位領域の単位領域識別番号を当該データ識別番号に対応付けて格納し、
前記現在位置表示手段は、
前記単位領域１つあたりの容量およびアクセス対象のデータのファイル内の位置に基づいて、前記アクセス対象のデータに対応する分割データのデータ識別番号を算出し、前記ファイル管理テーブルを参照して、算出したデータ識別番号に対応する単位領域識別番号を特定することにより、アクセスすべきデータが格納されている単位領域にアクセスすること
を特徴とするナビゲーション装置。
【請求項２】
請求項１に記載のナビゲーション装置であって、
前記地図データ格納手段は、
前記ファイルのそれぞれを、連続した単位領域で構成されるファイル領域に格納することを特徴とするナビゲーション装置。
【請求項３】
請求項３に記載のナビゲーション装置であって、
前記地図データ格納手段は、
複数の前記単位領域で構成され、異なる容量を有する複数のファイル領域を有し、前記ファイルのデータサイズよりも大きい容量を有するファイル領域の中で、最小の容量を有するファイル領域に、当該ファイルを格納すること
を特徴とするナビゲーション装置。
【請求項４】
請求項１から３のいずれかに記載のナビゲーション装置であって、
前記地図データ格納手段は、ハードディスク型記録装置であることを特徴とするナビゲーション装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両の現在位置を算出して表示するナビゲーション装置に関する。
【背景技術】
【０００２】
従来、車両の現在位置の表示や、目的地までの経路の誘導等を行うための地図データをハードディスク型記録装置（以下、ＨＤＤと称する）に格納するナビゲーション装置が知られている。このようなＨＤＤを有するナビゲーション装置では、ユーザの設定情報や、最新の地図データとの差分情報等を、ＨＤＤに記録する場合がある。一般的に、ＨＤＤに対して、データの書き込みや消去を繰り返すと、ＨＤＤ内の格納領域にフラグメンテーションが発生する。そのため、データへのアクセス速度が低下する場合がある。
【０００３】
これを回避するために、特許文献１には、所定の条件が満たされる場合に、ＨＤＤのフラグメンテーションを解消するためのデフラグを行う技術が開示されている。
【０００４】
【特許文献１】特開２００１−２８０９７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、デフラグを実行中は、ナビゲーション装置を操作することができない場合がある。また、ＨＤＤの格納容量が大きい場合には、デフラグに長い時間がかかる場合がある。そのため、デフラグを実行中はナビゲーション装置に電源を供給し続けなければならず、デフラグが終了するまで車両のエンジンを停止することができない場合があった。
【０００６】
本発明は上記事情を鑑みてなされたものであり、本発明の目的は、ＨＤＤ内のデータへのアクセス速度の低下を抑えることができるナビゲーション装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明では、記憶装置内の物理的な位置を識別する単位領域識別情報を、当該物理的な位置に格納されているデータの識別番号に対応付けると共に、当該データの識別番号が昇順あるいは降順となるように格納されているテーブルを参照して、目的のデータが格納されている記憶装置内の物理的な位置にアクセスする。
【０００８】
また、本発明は、例えば、車両の現在位置を表示装置に表示する車載用のナビゲーション装置であって、地図データを構成する複数のファイル格納する地図データ格納手段と、地図データを構成する複数のファイルの地図格納手段内の物理的な位置を管理するためのファイル管理テーブルと、現在位置を地図データ格納手段に格納されている地図データと共に表示装置に表示する現在位置表示手段とを備え、地図データ格納手段は、アクセス可能な最小の単位であり、それぞれに識別番号が割り当てられている単位領域により構成され、ファイルを単位領域１つあたりの容量に分割した分割データを、複数の単位領域のそれぞれに格納しており、ファイル管理テーブルは、ファイルのそれぞれについて、当該ファイルを構成する分割データのそれぞれに、当該ファイル内での順番に従ってデータ識別番号を割り当て、当該データ識別番号を昇順または降順に連続して格納すると共に、当該分割データが格納されている単位領域の単位領域識別番号を当該データ識別番号に対応付けて格納し、現在位置表示手段は、単位領域１つあたりの容量およびアクセス対象のデータのファイル内の位置に基づいて、アクセス対象のデータに対応する分割データのデータ識別番号を算出し、ファイル管理テーブルを参照して、算出したデータ識別番号に対応する単位領域識別番号を特定することにより、アクセスすべきデータが格納されている単位領域にアクセスすることを特徴とするナビゲーション装置を提供する。
【発明の効果】
【０００９】
本発明によれば、記憶装置内のデータへのアクセス速度の低下を抑えることができるナビゲーション装置を提供することができる。
【発明を実施するための最良の形態】
【００１０】
以下に、本発明の実施の形態について、図面を参照しながら説明する。
【００１１】
図１は、本発明の一実施形態に係るナビゲーションシステム１０のシステム構成図である。ナビゲーションシステム１０は、基地局１１、地図データ配信サーバ１３、および車両１４を備える。
【００１２】
基地局１１は、電波を介して、例えば、ＷＣＤＭＡ(Wideband-Code Division Multiple Access)やＰＨＳ(Personal Handyphone System)、無線ＬＡＮ等の無線通信方式に基づいて車両１４と通信すると共に、インターネット等の通信網１２を介して、地図データ配信サーバ１３と通信を行う。通信網１２は、全て有線通信網によって構成されていてもよく、部分的に無線通信網によって構成されていてもよい。
【００１３】
地図データ配信サーバ１３は、施設や道路等の新たな建設、道路の規制内容の変更等に基づいて、道路データを含む地図データを更新する。また、基地局１１および通信網１２を介して、更新された地図データの要求を車両１４から受信した場合に、当該更新された地図データを通信網１２および基地局１１を介して車両１４へ送信する。
【００１４】
なお、本実施形態において、地図データ配信サーバ１３が作成する地図データは、道路データや住宅データ等の複数のカテゴリに分けられており、それぞれのカテゴリは、さらに、地図を複数の領域に分割することによって得られるメッシュ単位に分けられている。地図データ配信サーバ１３は、それぞれのカテゴリにおいて、メッシュ単位の地図データを１つのファイルとして作成する。そして、地図データ配信サーバ１３は、更新された地図データの要求を車両１４から受信すると、変更のあったファイルを車両１４へ送信する。
【００１５】
車両１４は、表示装置１５、センサ１６、通信端末１７、およびナビゲーション装置２０を有する。通信端末１７は、最寄りの基地局１１と、電波を介して、例えば、ＷＣＤＭＡ(Wideband-Code Division Multiple Access)やＰＨＳ(Personal Handyphone System)、無線ＬＡＮ等の無線通信方式に基づいて通信する。
【００１６】
センサ１６は、ＧＰＳ受信機や、方位センサ、車速センサ等であり、測地衛星に対する車両１４の現在位置や、車両１４の進行方位、車両１４の移動距離等を測定し、測定信号をナビゲーション装置２０へ送信する。
【００１７】
ナビゲーション装置２０は、道路データを含む地図データを格納しており、センサ１６からの測定信号に基づいて、車両１４の相対変位を算出し、地図データおよび算出した相対変位に基づいて、車両１４の現在位置を地図上に算出して、表示装置１５に表示させる。
【００１８】
なお、表示装置１５は、車両１４の現在位置を画像として表示するが、音声を再生する機能を有し、ナビゲーション装置２０が車両１４の現在位置と共に生成した音声ガイダンス等を、当該車両１４の現在位置と共に再生してもよい。
【００１９】
図２は、ナビゲーション装置２０の詳細な機能構成の一例を示すブロック図である。ナビゲーション装置２０は、現在位置表示部２１、現在位置算出部２２、地図データ格納部２３、およびデータ取得部２４を備える。
【００２０】
地図データ格納部２３は、複数のファイルで構成される地図データを格納している。また、地図データ格納部２３は、物理的にアクセス可能な最小の単位である単位領域によって構成されており、それぞれのファイルをそれぞれの単位領域の容量で分割した分割ファイルを、それぞれの単位領域に格納することにより、当該分割データによって構成されるファイルを格納する。また、地図データ格納部２３は、格納すべきファイルを構成する分割データを、地図データ格納部２３内において連続する単位領域に格納する。
【００２１】
本例において、地図データ格納部２３は、例えば、ハードディスク型記録装置であり、クラスタと呼ばれる最小の領域単位で物理的にアクセスが可能である。それぞれのクラスタには、クラスタ番号が割り当てられており、本実施形態では、連続するクラスタには、連続するクラスタ番号が、地図データ格納部２３内の所定の領域を基準として昇順に割り当てられている。また、他の例として、地図データ格納部２３は、フラッシュＲＯＭやＥＥＰ（Electrically Erasable Programmable）ＲＯＭ、Ｆｅ（Ferroelectric）ＲＡＭ、Ｍ（Magnetoresistive）ＲＡＭ等の不揮発性メモリであってもよい。
【００２２】
地図データ格納部２３は、ディレクトリエントリ２３０、ファイル管理テーブル２３１、および地図データ２３２を格納している。地図データ２３２は、道路データや住宅データ、交通規制情報等のデータをファイルとして格納する。
【００２３】
ディレクトリエントリ２３０は、地図データ２３２に格納されているそれぞれのファイルについて、当該ファイルの先頭のデータが格納されている地図データ格納部２３内の単位領域の識別番号等を、当該ファイルの識別情報に対応付けて格納している。
【００２４】
ファイル管理テーブル２３１は、地図データ２３２に格納されているそれぞれのファイルについて、当該ファイルを構成するデータのそれぞれを識別するデータ識別番号を、当該データ識別番号に対応するデータが格納されている単位領域の識別番号と共に格納している。
【００２５】
データ取得部２４は、通信端末１７を介して、更新された地図データを地図データ配信サーバ１３に要求し、当該要求に応答して地図データ配信サーバ１３から送信された地図データを受信する。そして、データ取得部２４は、受信した地図データを地図データ格納部２３に格納する。このとき、現在位置算出部２２は、更新されたデータを地図データ２３２に追加する処理、更新されたデータに対応する情報をディレクトリエントリ２３０およびファイル管理テーブル２３１に追加する処理等を行う。
【００２６】
現在位置算出部２２は、センサ１６からの測定信号に基づいて、車両１４の相対変位を算出し、算出した相対変位および地図データ格納部２３に格納されている地図データに基づいて、車両１４の現在位置を算出する。
【００２７】
この際、現在位置算出部２２は、ディレクトリエントリ２３０を参照して、読み出すべき地図データを含むファイルに対応する先頭のレコード番号を読み出す。そして、現在位置算出部２２は、読み出すべき地図データを含むファイルの先頭のレコード番号と、読み出すべきデータの対応するファイル内の位置と、単位領域１つあたりの容量とに基づいてファイル管理テーブル２３１を参照し、読み出すべき地図データが格納されている単位領域の識別番号が格納されているレコードを読み出すことにより、読み出すべき地図データが格納されている単位領域の識別番号を特定する。そして、現在位置算出部２２は、地図データ格納部２３内の、特定した識別番号に対応する単位領域に格納されている地図データを読み出す。
【００２８】
現在位置表示部２１は、現在位置算出部２２が算出した車両１４の現在位置に基づいて、表示装置１５に表示する地図データを地図データ格納部２３から取得し、取得した地図データと共に現在位置算出部２２が算出した車両１４の現在位置を表示装置１５に表示する。
【００２９】
この際、現在位置算出部２２の場合と同様に、現在位置表示部２１は、ディレクトリエントリ２３０を参照して、読み出すべき地図データを含むファイルに対応する先頭のレコード番号を読み出し、ファイル管理テーブル２３１を参照して、読み出すべき地図データが格納されている単位領域を特定し、地図データ格納部２３内の、特定した識別番号に対応する単位領域に格納されている地図データを読み出す。
【００３０】
図３は、ディレクトリエントリ２３０の詳細なデータ構造の一例を示す。ディレクトリエントリ２３０は、それぞれのファイルの先頭の分割データの識別番号が格納されている現在位置算出部２２１内の先頭レコード番号２３０１、それぞれのファイルの先頭の分割データが格納されている地図データ格納部２３内の先頭クラスタ番号２３０２、およびそれぞれのファイルのデータサイズ２３０３を、それぞれのファイルを識別するファイルＩＤ２３００に対応付けて格納する。
【００３１】
ディレクトリエントリ２３０を参照することにより、現在位置表示部２１および現在位置算出部２２は、読み出すべき地図データが含まれるファイルを構成する分割データのうち、先頭の分割データに対応するファイル管理テーブル２３１内のレコード番号を取得することができる。
【００３２】
また、ディレクトリエントリ２３０は、それぞれのファイルの作成日時、更新日時、および属性等を、それぞれのファイルＩＤ２３００に対応付けて格納していてもよい。
【００３３】
図４は、ファイル管理テーブル２３１の詳細なデータ構造の一例を示す。ファイル管理テーブル２３１は、それぞれのファイルのファイルＩＤ２３１０毎に、ファイルを構成する分割データを識別する現在位置算出部２２１２および当該分割データのそれぞれが格納されているクラスタの現在位置算出部２２１３を、ファイル管理テーブル２３１が格納する全てのレコードを一意に識別する現在位置算出部２２１１に対応付けて格納している。
【００３４】
本例において、データ番号２３１２は、対応するファイルの先頭の分割ファイルを０として、ファイル内の順番に従って、それぞれの分割データに割り当てられており、それぞれのファイル毎に、現在位置算出部２２１２が昇順となるようにファイル管理テーブル２３１に格納されている。本例では、連続するクラスタのそれぞれに、昇順となるようにクラスタ番号が割り当てられているので、小さい値のデータ番号２３１２に対応する分割データは、小さい値のクラスタ番号２３１３に対応するクラスタに格納され、大きい値のデータ番号２３１２に対応する分割データは、大きい値のクラスタ番号２３１３に対応するクラスタに格納される。
【００３５】
ファイル管理テーブル２３１を参照することにより、現在位置表示部２１および現在位置算出部２２は、読み出すべき地図データが含まれている分割データが格納されているクラスタ番号を取得することができる。
【００３６】
図５は、地図データ２３２の詳細なデータ構造の一例を示す。地図データ２３２は、異なる容量を有する複数の領域２３２０、領域２３２１、および領域２３２２を備える。
【００３７】
なお、領域２３２０、領域２３２１、および領域２３２２のそれぞれは、地図データ格納部２３に物理的に構成された記憶領域であり、地図データ格納部２３は、この他に、ディレクトリエントリ２３０およびファイル管理テーブル２３１を格納する領域や、ナビゲーション装置２０が動作するためのプログラムやパラメータ等を格納する領域を有する。また、地図データ格納部２３は、この他に、外部から取得した音楽データやアプリケーションプログラム等を格納する領域を有してもよい。
【００３８】
領域２３２０は、同一の容量を有する複数の領域によって構成される。領域２３２０を構成する複数の領域のそれぞれは、例えば２Ｇｂｙｔｅの容量を有しており、それぞれの領域には、例えば、１Ｇｂｙｔｅよりも大きく、かつ、２Ｇｂｙｔｅ以下のデータサイズのファイルが格納される。
【００３９】
領域２３２１は、同一の容量を有する複数の領域によって構成され、それぞれの領域は、例えば１Ｇｂｙｔｅの容量を有する。それぞれの領域には、例えば、５００Ｍｂｙｔｅよりも大きく、かつ、１Ｇｂｙｔｅ以下のデータサイズのファイルが格納される。
【００４０】
領域２３２２は、同一の容量を有する複数の領域によって構成され、それぞれの領域は、例えば５００ＭＧｂｙｔｅの容量を有する。それぞれの領域には、例えば、５００Ｍｂｙｔｅ以下のデータサイズのファイルが格納される。
【００４１】
領域２３２０、領域２３２１、および領域２３２２のそれぞれには、予備領域が設けられ、データ取得部２４が地図データ配信サーバ１３等から取得したファイルを新たに追加する場合、データ取得部２４は、新たに追加するファイルをこの予備領域に格納する。また、データ取得部２４が、領域２３２０、領域２３２１、および領域２３２２のそれぞれに格納されているファイルを書き換えることにより更新する場合、例えば、データ取得部２４は、最新のファイルをそれぞれの領域に設けられた予備領域に書き込み、更新されるべきファイルが格納されている領域を予備領域にする。
【００４２】
ここで、現在位置表示部２１および現在位置算出部２２が地図データ格納部２３から所望の地図データを読み出す過程を詳しく説明する。現在位置表示部２１および現在位置算出部２２は、例えば、予め定められた処理によって、読み出すべきデータが含まれるファイルを特定すると共に、特定したファイル内での読み出すべきデータの位置を算出する。本例において、読み出すべきデータを含むファイルは、例えば、ＡＡＡＡ０００１．ＤＡＴであり、読み出すべきデータの当該ファイル中の位置は、先頭から８０ｋｂｙｔｅであると仮定する。なお、クラスタ１つあたりのデータサイズは、予め定められており、本例では１６ｋｂｙｔｅと仮定する。
【００４３】
現在位置表示部２１および現在位置算出部２２は、読み出すべき地図データの対応するファイル中の位置をクラスタ１つあたりのデータサイズで除した商を算出することにより、読み出すべき地図データを含む分割データのデータ番号を算出する。例えば、ファイルの先頭から８０ｋｂｙｔｅ目に読み出すべき地図データが含まれている場合、８０ｋｂｙｔｅ÷１６ｋｂｙｔｅ＝５が読み出すべき地図データを含む分割データのデータ番号として算出される。
【００４４】
そして、現在位置表示部２１および現在位置算出部２２は、ディレクトリエントリ２３０を参照して、読み出すべき地図データを含むファイルの先頭の分割データに関する情報が格納されているファイル管理テーブル２３１内のレコード番号を取得する。
【００４５】
例えば、現在位置表示部２１および現在位置算出部２２は、図３のディレクトリエントリ２３０を参照して、ＡＡＡＡ０００１．ＤＡＴの先頭の分割データに関する情報が格納されているファイル管理テーブル２３１内のレコード番号である１を取得する。
【００４６】
そして、現在位置表示部２１および現在位置算出部２２は、ディレクトリエントリ２３０を参照して取得したレコード番号に、読み出すべき地図データを含む分割データのデータ番号を加えることにより、読み出すべき地図データを含む分割データに関する情報を格納しているファイル管理テーブル２３１内のレコード番号を特定する。
【００４７】
例えば、現在位置表示部２１および現在位置算出部２２は、ディレクトリエントリ２３０を参照して取得したレコード番号である１に、読み出すべき地図データを含む分割データのデータ番号である５を加えることにより、読み出すべき地図データを含む分割データに関する情報を格納しているファイル管理テーブル２３１内のレコード番号である６を特定する。
【００４８】
そして、現在位置表示部２１および現在位置算出部２２は、特定したレコード番号に対応するレコードを含むファイル管理テーブル２３１の一部のデータを地図データ格納部２３から読み出す。そして、読み出したレコードを参照して、現在位置表示部２１および現在位置算出部２２は、読み出すべき地図データが格納されているクラスタのクラスタ番号を特定する。そして、特定したクラスタ番号に対応する地図データ格納部２３内の記憶領域にアクセスすることにより、現在位置表示部２１および現在位置算出部２２は、所望の地図データを地図データ格納部２３から読み出すことができる。
【００４９】
ここで、地図データ格納部２３がＦＡＴ（Ｆｉｌｅ  Ａｌｌｏｃａｔｉｏｎ  Ｔａｂｌｅ）ファイルシステムによって構成されているとすれば、現在位置表示部２１および現在位置算出部２２は、図３に示したディレクトリエントリ２３０および図６に示すようなＦＡＴ２４０を参照して、地図データ格納部２３内の所望のデータにアクセスすることになる。
【００５０】
例えば、現在位置表示部２１現在位置算出部２２は、予め定められた処理によって、読み出すべきデータが含まれるファイルを特定すると共に、特定したファイル内での読み出すべき地図データの位置を算出する。そして、現在位置表示部２１および現在位置算出部２２は、読み出すべき地図データの対応するファイル中の位置を、クラスタ１つあたりのデータサイズで除することにより、読み出すべき地図データに対応する分割データを格納しているクラスタが、当該ファイルを格納しているクラスタの中で何個目かを算出する。
【００５１】
そして、現在位置表示部２１および現在位置算出部２２は、ＦＡＴ２４０を参照して、（算出したクラスタの個数−１）回分、ＦＡＴ２４０をたどることにより、読み出すべき分割データを格納しているクラスタのクラスタ番号を特定し、対応するクラスタから分割データを読み出す。
【００５２】
例えば、読み出すべき地図データを含むファイルがＢＢＢＢ０００２．ＤＡＴであり、読み出すべき地図データを含む分割データが、当該ファイルの先頭から３個目のクラスタに格納されている場合、現在位置表示部２１および現在位置算出部２２は、ディレクトリエントリ２３０を参照して、ＢＢＢＢ０００２．ＤＡＴが格納されている先頭のクラスタ番号である２６３０００を取得する。そして、現在位置表示部２１および現在位置算出部２２は、ＦＡＴ２４０を参照して、２６３００の次のクラスタ番号である２６００２を取得し、取得した２６００２の次のクラスタ番号である２６００３を取得する。このように、現在位置表示部２１および現在位置算出部２２は、ＦＡＴ２４０を（算出したクラスタの個数−１）＝２回参照することにより、目的の分割データが格納されているクラスタを特定し、対応するクラスタから目的の地図データを含む分割データを読み出す。
【００５３】
ここで、それぞれのクラスタのアドレスが３２ｂｉｔの場合、ＦＡＴ２４０内の１レコードは、クラスタ番号２４００と次のクラスタ番号２４０１とで合計６４ｂｉｔ、すなわち８ｂｙｔｅのデータとなる。また、地図データ格納部２３内の地図データ２３２の部分の容量が１０Ｇｂｙｔｅであり、クラスタ１つあたりの容量が１６ｋｂｙｔｅである場合、地図データ２３２に対応する記憶領域には、（１０２４×１０２４×１０２４×１０）／（１０２４×１６）＝６５５，３６０個のクラスタが存在する。
【００５４】
ＦＡＴ２４０は、それぞれのクラスタについて、クラスタ番号２４００および次のクラスタ番号２４０１を有するので、ＦＡＴ２４０のデータサイズは、６５５，３６０×８＝５，２４２，８８０ｂｙｔｅ＝５×１０２４×１０２４＝５Ｍｂｙｔｅとなる。
【００５５】
ナビゲーション装置２０等の機器では、消費電力の低減や低コスト化等のために、データ展開用のメモリとして大きな容量のメモリを搭載できない場合が多い。そのため、５ＭｂｙｔｅのＦＡＴ２４０をメモリに常駐させることができない場合が多い。そのため、現在位置表示部２１は、ＦＡＴ２４０を複数のブロックに分け、ＦＡＴ２４０の一部をメモリ上に展開することにより、目的のデータにアクセスする場合がある。
【００５６】
このような場合、例えば、分割されたＦＡＴ２４０の１つを参照して、特定された次のクラスタ番号が、他の分割されたＦＡＴ２４０内に存在すると、クラスタ番号の参照回数分、分割されたＦＡＴ２４０を地図データ格納部２３から読み込む必要がある。
【００５７】
上記の例では、ＦＡＴ２４０を２回参照することにより、目的のデータを読み出すことができたが、１Ｇｂｙｔｅのファイルの最終に格納されている分割データにアクセスする場合、ＦＡＴ２４０を６５，５３６回参照することにより、目的のデータを読み出すことになる。この場合、１つの分割されたＦＡＴ２４０によって参照されるクラスタ番号が他の分割されたＦＡＴ２４０に格納されているとすれば、現在位置表示部２１および現在位置算出部２２は、地図データ格納部２３から、最大６５，５３６回、ＦＡＴ２４０をメモリ上に読み出す必要があり、目的のデータを読み出すのに多くの時間がかかる。
【００５８】
これに対して、本実施形態の現在位置表示部２１および現在位置算出部２２は、１Ｇｂｙｔｅのファイルの最終に格納されているデータを読み出す場合であっても、対応するファイル内の目的のデータの位置およびクラスタ１つあたりの容量に基づいて、目的のデータを含む分割データのデータ番号を算出し、ディレクトリエントリ２３０およびファイル管理テーブル２３１をそれぞれ１回ずつ参照することにより、目的の分割データが格納されているクラスタ番号を特定することができる。従って、従来のＦＡＴシステムに比べて、より高速に目的のデータにアクセスすることができる。
【００５９】
また、目的のファイルを構成する分割データの複数をメモリ上に読み込む場合、図７に示すように、ファイル２５０を構成するそれぞれの分割データが、磁気ディスク２７０内において連続するクラスタに格納されていないとすれば、現在位置表示部２１および現在位置算出部２２は、例えば、分割データ２５１を読み出すためにヘッドをシークさせ、分割データ２５１を読み出した後に、分割データ２５２を読み出すためにヘッドをさらにシークさせ、分割データ２５２を読み出した後に、分割データ２５３を読み出すためにヘッドをさらにシークさせることになる。そのため、ファイル２５０をメモリ上に読み込むのに時間がかかる場合がある。
【００６０】
これに対して、本実施形態の地図データ格納部２３は、図８に示すように、磁気ディスク２７０内において、１つのファイルを構成する複数の分割ファイルを連続するクラスタに格納するので、１回のシークで、ファイル２６０を構成する分割データ２６１、分割データ２６２、および分割データ２６３を読み出すことができる。このように、本実施形態のナビゲーション装置２０は、より少ないシーク回数で、より迅速に目的の複数の分割データを読み出すことができる。
【００６１】
図９は、地図データの読出処理の一例を示すフローチャートである。本フローチャートに示す処理は、現在位置表示部２１によって行われる現在位置表示処理および現在位置算出部２２によって行われる現在位置算出処理の中で、現在位置表示部２１および現在位置算出部２２によって行われる処理である。
【００６２】
まず、現在位置表示部２１または現在位置算出部２２は、予め定められた処理によって、読み出すべきデータが含まれるファイルを特定すると共に、特定したファイル内での読み出すべき地図データの位置を算出する（Ｓ１００）。
【００６３】
次に、現在位置表示部２１または現在位置算出部２２は、読み出すべき地図データの、対応するファイル中の位置をクラスタ１つあたりのデータサイズで除することにより、読み出すべき地図データを含む分割データのデータ番号を算出する（Ｓ１０１）。
【００６４】
そして、現在位置表示部２１または現在位置算出部２２は、ディレクトリエントリ２３０を参照して、読み出すべき地図データが含まれるファイルを構成する分割データの中で、先頭の分割データに対応するファイル管理テーブル２３１内のレコード番号を特定する。そして、現在位置表示部２１または現在位置算出部２２は、ディレクトリエントリ２３０を参照して取得したレコード番号に、読み出すべき地図データを含む分割データのデータ番号を加えることにより、読み出すべき地図データを含む分割データに関する情報を格納しているファイル管理テーブル２３１内のレコード番号を特定する（Ｓ１０２）。
【００６５】
次に、現在位置表示部２１または現在位置算出部２２は、特定したレコード番号に対応するレコードを含むファイル管理テーブル２３１の一部のデータを地図データ格納部２３から読み出す。そして、現在位置表示部２１または現在位置算出部２２は、読み出したレコードを参照して、読み出すべき地図データが格納されているクラスタのクラスタ番号を特定する（Ｓ１０３）。
【００６６】
そして、現在位置表示部２１または現在位置算出部２２は、特定したクラスタ番号に対応する地図データ格納部２３内の記憶領域にアクセスすることにより、目的の地図データを含む分割データを地図データ格納部２３から読み出し（Ｓ１０４）、本フローチャートに示す地図データの読出処理は終了する。
【００６７】
図１０は、地図データの取得処理の一例を示すフローチャートである。本フローチャートに示す処理は、更新された地図データを地図データ配信サーバ１３から取得する場合にデータ取得部２４によって行われる処理である。
【００６８】
まず、データ取得部２４は、通信端末１７を介して、更新された地図データを地図データ配信サーバ１３から取得するタイミングか否かを判定する（Ｓ２００）。更新された地図データを取得するタイミングではない場合（Ｓ２００：Ｎｏ）、データ取得部２４は、更新された地図データを取得するタイミングになるまで、ステップ２００を繰り返す。
【００６９】
更新された地図データを取得するタイミングである場合（Ｓ２００：Ｙｅｓ）、データ取得部２４は、通信網１２を介して、更新された地図データを地図データ配信サーバ１３へ要求する。そして、データ取得部２４は、地図データ配信サーバ１３から更新された地図データを取得する（Ｓ２０１）。データ取得部２４は、例えば、最後に更新された地図データを取得した日時から所定時間が経過した場合に、ステップ２０１を実行する。また、他の例として、図示しない入力手段を介して、ナビゲーション装置２０のユーザから、更新された地図データの取得指示を受け付けた場合に、データ取得部２４は、ステップ２０１を実行してもよい。
【００７０】
次に、データ取得部２４は、取得したファイルのデータサイズを算出する。そして、データ取得部２４は、算出したファイルのデータサイズに基づいて、地図データ２３２内の予備領域において、取得したファイルのデータサイズ以上であり、かつ最小の容量を有する領域を特定し（Ｓ２０２）、特定した予備領域に、取得したファイルを格納する（Ｓ２０３）。このとき、データ取得部２４は、地図データ格納部２３を構成するクラスタ１つあたりの容量で取得したファイルを分割し、分割したデータのそれぞれに、ファイル内のデータの順番に従ってデータ番号を割り当てる。そして、データ取得部２４は、それぞれの分割データを、特定した領域の連続したクラスタに、データ番号順に格納する。
【００７１】
そして、データ取得部２４は、取得したファイルのファイルＩＤをファイル管理テーブル２３１に追加すると共に、当該ファイルを構成する分割データを格納したクラスタのクラスタ番号を、格納した分割データのデータ番号に対応付けて、ファイル管理テーブル２３１に格納することにより、ファイル管理テーブル２３１を更新する（Ｓ２０４）。
【００７２】
次に、データ取得部２４は、取得したファイルを構成する分割データのうち、先頭の分割データに関する情報を格納しているファイル管理テーブル２３１内のレコード番号を、取得したファイルのファイルＩＤに対応付けてディレクトリエントリ２３０に追加することにより、ディレクトリエントリ２３０を更新し（Ｓ２０５）、再びステップ２００に示した処理を行う。
【００７３】
以上、本発明の実施の形態について説明した。
【００７４】
上記説明から明らかなように、本実施形態によれば、記憶装置内のデータへのアクセス速度の低下を抑えることができるナビゲーション装置２０を提供することができる。
【００７５】
なお、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。
【００７６】
例えば、ナビゲーション装置２０内の現在位置表示部２１、現在位置算出部２２、およびデータ取得部２４は、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array）等の集積ロジックＩＣによりハード的に実現されるものでもよく、ＤＳＰ（Digital Signal Processor）や汎用計算機によりソフトウェア的に実現されてもよく、あるいは、部分的にハードウェアまたはソフトウェアで実現させた機能ブロックを組み合わせてもよい。
【００７７】
また、本実施形態では、データ取得部２４は、通信端末１７を介して地図データ配信サーバ１３から更新されたファイルを取得したが、他の例として、データ取得部２４は、ケーブル等を介して直接地図データ配信サーバ１３から更新されたファイルを取得してもよく、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ、メモリカード等の可搬性の記録媒体を介して、更新されたファイルを取得してもよい。
【図面の簡単な説明】
【００７８】
【図１】本発明の一実施形態に係るナビゲーションシステム１０のシステム構成図である。
【図２】ナビゲーション装置２０の詳細な機能構成の一例を示すブロック図である。
【図３】ディレクトリエントリ２３０の詳細なデータ構造の一例を示す図である。
【図４】ファイル管理テーブル２３１の詳細なデータ構造の一例を示す図である。
【図５】地図データ２３２の詳細なデータ構造の一例を示す図である。
【図６】従来のＦＡＴ２４０の詳細なデータ構造の一例を示す図である。
【図７】従来のデータ記憶位置を説明するための概念図である。
【図８】本発明のデータ記憶位置を説明するための概念図である。
【図９】地図データの読出処理の一例を示すフローチャートである。
【図１０】地図データの取得処理の一例を示すフローチャートである。
【符号の説明】
【００７９】
１０・・・ナビゲーションシステム、１１・・・基地局、１２・・・通信網、１３・・・地図データ配信サーバ、１４・・・車両、１５・・・表示装置、１６・・・センサ、１７・・・通信端末、２０・・・ナビゲーション装置、２１・・・現在位置表示部、２２・・・現在位置算出部、２３・・・地図データ格納部、２３０・・・ディレクトリエントリ、２３００、２３１０・・・ファイルＩＤ、２３０１・・・先頭レコード番号、２３０２・・・先頭クラスタ番号、２３０３・・・データサイズ、２３１・・・ファイル管理テーブル、２３１１・・・レコード番号、２３１２・・・データ番号、２３１３、２４００・・・クラスタ番号、２３２・・・地図データ、２３２０、２３２１、２３２２・・・領域、２４・・・データ取得部、２４０・・・ＦＡＴ、２４０１・・・次のクラスタ番号、２５０、２６０・・・ファイル、２５１、２５２、２５３、２６１、２６２、２６３・・・分割データ、２７０・・・磁気ディスク
【図１】
2006275857.tif 000003
【図２】
2006275857.tif 000004
【図３】
2006275857.tif 000005
【図４】
2006275857.tif 000006
【図５】
2006275857.tif 000007
【図６】
2006275857.tif 000008
【図７】
2006275857.tif 000009
【図８】
2006275857.tif 000010
【図９】
2006275857.tif 000011
【図１０】
2006275857.tif 000012