(57)【要約】【課題】自装置の現在位置を複数の都市から検索する際の、ＣＰＵの負担を軽減することのできるＧＰＳ受信装置を実現すること。【解決手段】自装置の現在位置情報を取得した後に、都市名データ、緯度データ・経度データ、時差データ、インデックスを互いに対応付けて複数組記憶している記憶部をアクセスし、取得した現在位置情報に対応するインデックスを作成し（Ｓ２０１）、この作成したインデックスが、記憶部に記憶されているインデックスに一致するか否かを判別し（Ｓ２０２）、この判別結果に基づいて、記憶部に記憶されている複数の都市の緯度データ・経度データの中から、取得されている現在位置情報と一致する都市の位置情報、またはそれに近い都市の位置情報の検索を行う（Ｓ２１５）。【選択図】図１
2008164436.tif 000002
【特許請求の範囲】
【請求項１】
複数のＧＰＳ衛星から受信したＧＰＳ信号に基づいて、自装置の現在位置情報を取得する現在位置情報取得手段と、
都市の都市名を示す都市名情報、当該都市の緯度・経度を示す位置情報、当該都市の世界標準時刻からの差を示す時差情報、当該都市の位置から予め定められている範囲内に少なくとも１つの他の都市の位置を含む第１のインデックスを互いに対応付けて複数組記憶している第１の情報記憶手段と、
前記現在位置情報取得手段により取得された現在位置情報に対応する第２のインデックスを作成する作成手段と、
前記作成手段により作成された第２のインデックスが、前記第１の情報記憶手段に記憶されている第１のインデックスに一致するか否かを判別する一致判別手段と、
前記一致判別手段の判別結果に基づいて、前記第１の情報記憶手段に記憶されている複数の都市の位置情報の中から、前記現在位置情報取得手段により取得された現在位置情報と一致する都市の位置情報、またはそれに近い都市の位置情報の検索を行う検索手段と、
を備えることを特徴とするＧＰＳ受信装置。
【請求項２】
前記検索手段は、
前記一致判別手段により前記第２のインデックスが前記第１のインデックスに一致すると判別された場合において、前記現在位置取得手段により取得された現在位置情報が、前記第１の情報記憶手段に記憶されている複数の都市の位置情報に一致するか否かを判別する都市位置判別手段と、
前記第都市位置判別手段の判別結果に基づいて、自装置の現在位置から予め定められている範囲内に位置する都市として当該都市の抽出を行う第１の抽出手段と、
を備えることを特徴とする請求項１に記載のＧＰＳ受信装置。
【請求項３】
前記検索手段は、
前記現在位置取得手段により取得された現在位置情報が、前記第１の情報記憶手段に記憶されている複数の都市の位置情報に一致するか否かを判別する第１の判別手段と、
前記第１の判別手段の判別結果に基づいて、当該第１の判別手段により一致しないと判別された場合、前記現在位置情報取得手段により取得された現在位置情報を変更して、当該変更した現在位置情報が前記第１の情報記憶手段に記憶されている複数の都市の位置情報に一致するか否かを判別する第２の判別手段と、
前記第２の判別手段の判別結果に基づいて、自装置の現在位置から予め定められている範囲内に位置する都市として当該都市の抽出を行う第２の抽出手段と、
を備えることを特徴とする請求項１又は２に記載のＧＰＳ受信装置。
【請求項４】
前記検索手段により検索された都市の位置情報に対応する少なくとも１つの都市名及び時差を前記第１の情報記憶手段の中から読み出して表示させる表示制御手段を備えることを特徴とする請求項１から３のいずれか一項に記載のＧＰＳ受信装置。
【請求項５】
現在時刻を計時する計時手段と、
前記検索手段により検索された都市の位置情報に対応する時差に基づいて、前記計時手段の現在時刻を修正する時刻修正手段を更に備えることを特徴とする請求項１から４のいずれか一項に記載のＧＰＳ受信装置。
【請求項６】
前記時刻修正手段は、
前記表示制御手段により表示された少なくとも１つの都市名及び時差のなかから１つを確定する際に操作される第１の操作手段と、
前記第１の操作手段が操作されたか否かを判別する第１の操作判別手段と、
前記第１の操作判別手段により前記第１の操作手段が操作されたと判別された場合、前記検索手段により検索された都市の時差に基づいて、前記計時手段の時刻修正を行う修正手段と、
を備えることを特徴とする請求項５に記載のＧＰＳ受信装置。
【請求項７】
前記時刻修正手段は、
前記第１の操作判別手段により前記第１の操作手段が操作されないと判別された場合、前記表示制御手段により表示された少なくとも１つの都市名及び時差のなかから１つを選択する際に操作される第２の操作手段と、
前記第２の操作手段が操作されたか否かを判別する第２の操作判別手段と、を更に備え、
前記修正手段は、
前記第２の操作判別手段により前記第２の操作手段が操作されたと判別された場合、前記第２の操作手段により選択された都市の時差に基づいて、前記計時手段の時刻修正を行うこと特徴とする請求項５又は６に記載のＧＰＳ受信装置。
【請求項８】
前記現在位置情報取得手段により取得された位置情報と、前記検索手段により検索された都市の時差と、を対応付けて前記第１の情報記憶手段に追加する追加手段を備えることを特徴とする請求項５から７のいずれか一項に記載のＧＰＳ受信装置。
【請求項９】
全ＧＰＳ衛星の軌道情報を前記第１の情報記憶手段に記憶させる記憶制御手段と、
前記現在位置情報取得手段により取得された現在位置情報と前記検索手段により検索された都市の時差とを記憶する第２の情報記憶手段と、
自装置の現在位置の上空にある複数のＧＰＳ衛星を捕捉する捕捉手段と、
前記第２の情報記憶手段から現在位置情報、前記第１の情報記憶手段からＧＰＳ全衛星の軌道情報、前記計時手段から現在時刻、を読み出して取得する取得手段と、
前記取得手段により取得した現在位置情報、ＧＰＳ全衛星の軌道情報、現在時刻、に基づいて、自装置の現在位置の上空にあるＧＰＳ衛星を予測する予測手段と、
前記予測手段により予測したＧＰＳ衛星と前記捕捉手段により捕捉したＧＰＳ衛星とが一致しているか否かを判別する衛星判別手段と、を更に備え、
前記時刻修正手段は、
前記衛星判別手段により一致していると判別された場合、前記第２の情報記憶手段から時差を読み出し、当該読み出した時差に基づいて前記計時手段の現在時刻を修正し、
前記現在位置情報取得手段は、
前記衛星判別手段により一致していないと判別された場合、自装置の現在位置情報を取得し、
前記作成手段は、
前記現在位置情報取得手段により取得された現在位置情報に対応する第２のインデックスを作成し、
前記一致判別手段は、
前記作成手段により作成された第２のインデックスが、前記第１の情報記憶手段に記憶されている第１のインデックスに一致するか否かを判別し、
前記検索手段は、
前記一致判別手段の判別結果に基づいて、前記第１の情報記憶手段に記憶されている複数の都市の位置情報の中から、前記現在位置情報取得手段により取得された現在位置情報と一致する都市の位置情報、またはそれに近い都市の位置情報の検索を行い、
前記時刻修正手段は、
前記検索手段により検索された都市の時差に基づいて、前記計時手段の現在時刻の修正を行うことを特徴とする請求項５から８のいずれか一項に記載のＧＰＳ受信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＧＰＳ受信装置に関する。
【背景技術】
【０００２】
ＧＰＳ（Global Positioning System）衛星は、高度２万ｋｍ、傾斜角約５５度の６軌道を周る周回衛星である。当該ＧＰＳ衛星の数は、ＧＰＳ受信機の受信範囲の拡大や受信状態の地域差の減少等による理由により増加してきた。現在、ＧＰＳ衛星は２８衛星が作動している。
【０００３】
ＧＰＳ衛星からはＧＰＳ信号が送信される。当該ＧＰＳ信号にはＵＴＣ（Universal Time Coordinated：協定世界時）が含まれる。このＵＴＣを受信して、自機の現在位置の時差を知る技術が知られている。当該技術では、都市名、時差、緯度・経度、測地系に関する都市データを記憶している不揮発性のメモリを備える。これにより、都市データから読み出された時差とＧＰＳ衛星から送信されるＵＴＣとに基づいて、自機の現在位置の時差を知ることができる（例えば、特許文献１参照）。
【特許文献１】特開平１１−１８３５９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の技術では、不揮発性のメモリに記憶されている都市データの中から自装置の現在位置の都市をユーザが選択するが、このとき、ユーザが都市の選択を行うので、検索対象となる都市データのデータ量が多くなるとユーザは検索に時間を要する。  このため、都市データのデータ量には制限があった。
都市データの中から自装置の現在位置の都市の検索をＣＰＵが行えば、不揮発性のメモリに記憶されている都市データのデータ量を多くすることができる。また、都市データのデータ量が多くなれば、検索対象が増えるので、より正確な検索を行うことができる。
一方、都市データのデータ量が多くなると、ＣＰＵの負担が大きくなる。例えば、腕時計等の小型の電子時計に搭載されているＧＰＳ受信装置のＣＰＵでは処理能力に限界がある。したがって、自装置の現在位置を都市データから検索する際、ＣＰＵの処理能力の負担を軽減し得るＧＰＳ受信装置を実現する要請があった。
【０００５】
本発明の課題は、自装置の現在位置を都市データから検索する際の、ＣＰＵの負担を軽減することのできるＧＰＳ受信装置を実現することである。
【課題を解決するための手段】
【０００６】
以上の課題を解決するため、請求項１に記載の発明のＧＰＳ受信装置（例えば、図１のＧＰＳ受信装置１００）は、
複数のＧＰＳ衛星から受信したＧＰＳ信号に基づいて、自装置の現在位置情報を取得する現在位置情報取得手段（例えば、図１のＣＰＵ１０；図１０のステップＳ１０２）と、
都市の都市名を示す都市名情報、当該都市の緯度・経度を示す位置情報、当該都市の世界標準時刻からの差を示す時差情報、当該都市の位置から予め定められている範囲内の少なくとも１つの他の都市の位置を含む第１のインデックスを互いに対応付けて複数組記憶している第１の情報記憶手段（例えば、図１の記憶部１７）と、
前記現在位置情報取得手段により取得された現在位置情報に対応する第２のインデックスを作成する作成手段（例えば、図１のＣＰＵ１０；図１１のステップＳ２０１）と、
前記作成手段により作成された第２のインデックスが、前記第１の情報記憶手段に記憶されている第１のインデックスに一致するか否かを判別する一致判別手段（例えば、図１のＣＰＵ１０；図１１のステップＳ２０２）と、
前記一致判別手段の判別結果に基づいて、前記第１の情報記憶手段に記憶されている複数の都市の位置情報の中から、前記現在位置情報取得手段により取得された現在位置情報と一致する都市の位置情報、またはそれに近い都市の位置情報の検索を行う検索手段（例えば、図１のＣＰＵ１０；図１１のステップＳ２０３〜ステップＳ２１５，図１２のステップＳ３０１〜Ｓ３０８）と、
を備えることを特徴とする。
【０００７】
請求項２に記載の発明は、請求項１に記載のＧＰＳ受信装置において、  
前記検索手段は、
前記一致判別手段により前記第２のインデックスが前記第１のインデックスに一致すると判別された場合において、前記現在位置取得手段により取得された現在位置情報が、前記第１の情報記憶手段に記憶されている複数の都市の位置情報に一致するか否かを判別する都市位置判別手段（例えば、図１のＣＰＵ１０；図１１のステップＳ２０２；ＹＥＳ、Ｓ２０３、Ｓ２０６、Ｓ２０８、Ｓ２１１）と、
前記第都市位置判別手段の判別結果に基づいて、自装置の現在位置から予め定められている範囲内に位置する都市として当該都市の抽出を行う第１の抽出手段（例えば、図１のＣＰＵ１０；図１１のステップＳ２１５）と、
を備えることを特徴とする。
【０００８】
請求項３に記載の発明は、請求項１又は２に記載のＧＰＳ受信装置において、
前記検索手段は、
前記現在位置取得手段により取得された現在位置情報が、前記第１の情報記憶手段に記憶されている複数の都市の位置情報に一致するか否かを判別する第１の判別手段（例えば、図１のＣＰＵ１０；図１１のステップＳ２０２〜ステップＳ２１４、図１２のステップＳ３０１〜Ｓ３０８）と、
前記第１の判別手段の判別結果に基づいて、当該第１の判別手段により一致しないと判別された場合、前記現在位置情報取得手段により取得された現在位置情報を変更して、当該変更した現在位置情報が前記第１の情報記憶手段に記憶されている複数の都市の位置情報に一致するか否かを判別する第２の判別手段（例えば、図１のＣＰＵ１０；図１１のステップＳ２０２〜ステップＳ２１４、図１２のステップＳ３０１〜Ｓ３０８）と、
前記第２の判別手段の判別結果に基づいて、自装置の現在位置から予め定められている範囲内に位置する都市として当該都市の抽出を行う第２の抽出手段（例えば、図１のＣＰＵ１０、図１１のステップＳ２１５、図１２のステップＳ３０８）と、
を備えることを特徴とする。
【０００９】
請求項４に記載の発明は、請求項１から３のいずれか一項に記載のＧＰＳ受信装置において、
前記検索手段により検索された都市の位置情報に対応する少なくとも１つの都市名及び時差を前記第１の情報記憶手段の中から読み出して表示させる表示制御手段（例えば、図１のＣＰＵ１０；図１０のステップＳ１０４）を備えることを特徴とする。
【００１０】
請求項５に記載の発明は、請求項１から４のいずれか一項に記載のＧＰＳ受信装置において、
現在時刻を計時する計時手段（例えば、図１の計時部２２）と、
前記検索手段により検索された都市の時差に基づいて、前記計時手段の現在時刻を修正する時刻修正手段（例えば、図１のＣＰＵ１０；図１０のステップＳ１０５〜Ｓ１０９）と、を更に備えることを特徴とする。
【００１１】
請求項６に記載の発明は、請求項５に記載のＧＰＳ受信装置において、
前記時刻修正手段は、
前記表示制御手段により表示された少なくとも１つの都市名及び時差のなかから１つを確定する際に操作される第１の操作手段（例えば、図１の操作部１５；図１０のステップＳ１０５）と、
前記第１の操作手段が操作されたか否かを判別する第１の操作判別手段（例えば、図１のＣＰＵ１０；図１０のステップＳ１０５）と、
前記第１の操作判別手段により前記第１の操作手段が操作されたと判別された場合、前記検索手段により検索された時差に基づいて、前記計時手段の時刻修正を行う修正手段（例えば、図１のＣＰＵ１０；図１０のステップＳ１０９）と、
を備えることを特徴とする。
【００１２】
請求項７に記載の発明は、請求項５又は６に記載のＧＰＳ受信装置において、
前記時刻修正手段は、
前記第１の操作判別手段により前記第１の操作手段が操作されないと判別された場合、前記表示制御手段により表示された少なくとも１つの都市名及び時差のなかから１つを選択する際に操作される第２の操作手段（例えば、図１の操作部１５；図１０のステップＳ１０７）と、
前記第２の操作手段が操作されたか否かを判別する第２の操作判別手段（例えば、図１のＣＰＵ１０；図１０のステップＳ１０７）と、を更に備え
前記修正手段は、
前記第２の操作判別手段により前記第２の操作手段が操作されたと判別された場合、前記第２の操作手段により選択された都市の時差に基づいて、前記計時手段の時刻修正を行う（例えば、図１のＣＰＵ１０；図１０のステップＳ１０７）ことを特徴とする。
【００１３】
請求項８に記載の発明は、請求項５から７のいずれか一項に記載のＧＰＳ受信装置において、
前記現在位置情報取得手段により取得された位置情報と、前記検索手段により検索された都市の時差と、を対応付けて前記第１の情報記憶手段に追加する追加手段（例えば、図１のＣＰＵ１０；図１０のステップＳ１０８）を備えることを特徴とする。
【００１４】
請求項９に記載の発明は、請求項５からの８いずれか一項に記載のＧＰＳ受信装置において、
ＧＰＳ全衛星の軌道情報を前記第１の情報記憶手段に記憶させる記憶制御手段（例えば、図１のＣＰＵ１０）と、
前記現在位置情報取得手段により取得された現在位置情報と前記検索手段により検索された都市の時差とを記憶する第２の情報記憶手段（例えば、図１のＲＡＭ１２）と、
自装置の現在位置の上空にある複数のＧＰＳ衛星を捕捉する捕捉手段（例えば、図１のＣＰＵ１０；図１５のステップＳ４０７）と、
前記第２の情報記憶手段から現在位置情報、前記第１の情報記憶手段からＧＰＳ全衛星の軌道情報、前記計時手段から現在時刻、を読み出して取得する取得手段（例えば、図１のＣＰＵ１０；図１５のステップＳ４０８）と、
前記取得手段により取得した現在位置情報、ＧＰＳ全衛星の軌道情報、現在時刻、に基づいて、自装置の現在位置の上空にあるＧＰＳ衛星を予測する予測手段（例えば、図１のＣＰＵ１０；図１５のステップＳ４０９）と、
前記予測手段により予測したＧＰＳ衛星と前記捕捉手段により捕捉したＧＰＳ衛星とが一致しているか否かを判別する衛星判別手段（例えば、図１のＣＰＵ１０；図１５のステップＳ４１０）と、を更に備え、
前記時刻修正手段は、
前記衛星判別手段により一致していると判別された場合、前記第２の情報記憶手段から時差を読み出し、当該読み出した時差に基づいて前記計時手段の現在時刻を修正し、（例えば、図１のＣＰＵ１０；図１５のステップＳ４１１）
前記現在位置情報取得手段は、
前記衛星判別手段により一致していないと判別された場合、自装置の現在位置情報を取得し、（例えば、図１のＣＰＵ１０；図１６のステップＳ４１３）
前記作成手段は、
前記現在位置情報取得手段により取得された現在位置情報に対応する第２のインデックスを作成し、（例えば、図１のＣＰＵ１０、図１６のステップＳ４１５）
前記一致判別手段は、
前記作成手段により作成された第２のインデックスが、前記第１の情報記憶手段に記憶されている第１のインデックスに一致するか否かを判別し、（例えば、図１のＣＰＵ１０、図１６のステップＳ４１５）
前記検索手段は、
前記一致判別手段の判別結果に基づいて、前記第１の情報記憶手段に記憶されている複数の都市の位置情報の中から、前記現在位置情報取得手段により取得された現在位置情報と一致する都市の位置情報、またはそれに近い都市の位置情報の検索を行い、（例えば、図１のＣＰＵ１０、図１６のステップＳ４１５）
前記時刻修正手段は、
前記検索手段により検索された都市の時差に基づいて、前記計時手段の現在時刻の修正（例えば、図１のＣＰＵ１０、図１６のステップＳ４１５）
を行うことを特徴とする。
【発明の効果】
【００１５】
請求項１に記載の発明によれば、第２のインデックスと第１のインデックスとを一致判別し、その判別結果に基づいて、第１の情報記憶手段に記憶されている複数の都市の位置情報の中から、現在位置情報取得手段により取得された現在位置情報と一致する都市の位置情報、またはそれに近い都市の位置情報の検索を行うので、第１の情報記憶手段に記憶されている膨大な都市の位置情報を最初から１つずつ検索する場合と比較して、ＧＰＳ受信装置のＣＰＵの処理の負担を大幅に軽減することができる。
【００１６】
請求項２に記載の発明によれば、第２のインデックスと第１のインデックスとが一致する場合において、現在位置情報取得手段により取得された位置情報が、第１の情報記憶手段に記憶されている複数の都市の位置情報に一致するか否かを判別し、その判別結果に基づいて、自装置の現在位置から予め定められている範囲内に位置する都市として当該都市の抽出を行うことができる。したがって、第１の情報記憶手段に記憶されている膨大な都市の位置情報を１つずつ検索する場合と比較し、最初に少ない数のインデックス同士の一致判別を行い、その一致判別にかかる都市の位置情報に絞り込んで、目的とする都市の位置情報を検索することができるために、ＧＰＳ受信装置のＣＰＵの処理の負担を軽減することができる。
【００１７】
請求項３に記載の発明によれば、現在位置情報取得手段により取得された位置情報が、第１の情報記憶手段に記憶されている複数の都市の位置情報に一致するか否かを判別し、その判別結果、当該第１の判別手段により一致しないと判別された場合、現在位置情報取得手段により取得された現在位置情報を変更して、当該変更した現在位置情報が第１の情報記憶手段に記憶されている複数の都市の位置情報に一致するか否かを判別し、その判別結果に基づいて、自装置の現在位置から予め定められている範囲内に位置する都市として、当該都市の抽出を行うことができる。したがって、第１の情報記憶手段に記憶されている膨大な都市の位置情報を１つずつ検索する場合と比較し、最初に少ない数のインデックス同士の一致判別を行ったあとに、その一致判別にかかる都市の位置情報に絞り込んで、目的とする都市の位置情報を検索することができるために、ＧＰＳ受信装置のＣＰＵの処理の負担を軽減することができる。
【００１８】
請求項４に記載の発明によれば、検索手段により検索された都市の位置情報に対応する都市名及び時差を第１の情報記憶手段の中から読み出して表示させることができる。これにより、ユーザは都市名及び時差を確認することができる。
【００１９】
請求項５に記載の発明によれば、検索手段により検索された都市の時差に基づいて、自装置の現在時刻の時刻修正を行うことができる。
【００２０】
請求項６に記載の発明によれば、表示された少なくとも１つの都市名及び時差のなかから１つを確定されたあとに、その確定された都市の時差に基づいて、計時手段の時刻修正を行うことができる。これにより、ユーザは手間をかけずに時刻修正を行うことができる。
【００２１】
請求項７に記載の発明によれば、表示された少なくとも１つの都市名及び時差のなかから１つを選択されたあとに、その選択された都市の時差に基づいて、計時手段の時刻修正を行うことができる。これにより、ユーザは手間をかけずに時刻修正を行うことができる。
【００２２】
請求項８に記載の発明によれば、現在位置情報取得手段により取得された位置情報と、検索手段により検索された都市の時差と、を対応付けて第１の情報記憶手段に追加することができる。これにより、次回の都市検索時に、より精度よく都市の検索を行うことができる。
【００２３】
請求項９に記載の発明によれば、予測したＧＰＳ衛星と、捕捉手段により捕捉したＧＰＳ衛星と、が一致している場合、第２の情報記憶手段から時差を読み出して、当該読み出した時差に基づいて計時手段の現在時刻を修正することができる。これにより、再度、現在位置情報を測位する必要がないので消費電流を削減することができる。また、予測したＧＰＳ衛星と捕捉手段により捕捉したＧＰＳ衛星とが一致しない場合、再度、自装置の現在位置情報の取得を行うことにより、計時手段の現在時刻の時刻修正を行うことができる。
【発明を実施するための最良の形態】
【００２４】
以下、添付図面を参照して本発明に係る第１及び第２の実施の形態を詳細に説明する。ただし、発明の範囲は、図示例に限定されない。
【００２５】
（第１の実施の形態）
図１〜図１３を参照して、本発明に係る第１の実施の形態を説明する。
先ず、図１を参照して、本実施の形態のＧＰＳ受信装置１００の構成を説明する。図１のＧＰＳ受信装置１００は、ＣＰＵ（Central Processing Unit）１０と、ＲＯＭ（Read Only Memory）１１と、ＲＡＭ（Random Access Memory）１２と、表示部１３と、表示駆動回路部１４と、操作部１５と、電池部１６と、記憶部１７と、ＧＰＳモジュール部１８と、アンテナ部１８Ａと、計時部２２と、照明部２３と、照明駆動回路部２４と、ブザー回路部２５と、スピーカー部２６と、を備えて構成される。
【００２６】
ＣＰＵ１０は、ＲＯＭ１１に記憶されているシステムプログラム及び各種アプリケーションプログラムの中から指定されたプログラムをＲＡＭ１２に展開し、ＲＡＭ１２に展開されたプログラムとの協働で、各種処理を実行する。また、ＲＯＭ１１には、第１の都市検索プログラムが記憶されている。
【００２７】
ＣＰＵ１０は、後述する第１の都市検索プログラムとの協働により、都市データ１７ＡからＧＰＳ受信装置１００の現在位置情報と一致、またはそれに近い都市の位置情報の検索を行う。そして、当該検索した都市の時差に基づいて、自装置の現在時刻の時刻修正を行う。
【００２８】
ＲＯＭ１１は、情報を読み込み可能に記憶するメモリである。図２（Ａ）に示すように、ＲＯＭ１１は、プログラムエリア１１１、１１２を備えている。プログラムエリア１１１には第１の都市検索プログラムが記憶されている。プログラムエリア１１２には第２の都市検索プログラムが記憶されている。
【００２９】
ＲＡＭ１１は、各種情報を格納する揮発性のメモリであり、各種プログラム、データを展開するワークエリアを有する。
【００３０】
図２（Ｂ）に示すように、ＲＡＭ１２は、記憶エリアとしてデータエリア１２１〜１２３と、プログラムエリア１２４、１２５とを備えている。データエリア１２１には、自装置の現在位置情報が格納される。データエリア１２２には、時差データが格納される。時差データとは、都市データ１７Ａより検索された都市に対応する時差のデータである。データエリア１２３には、ＧＰＳ衛星の衛星番号(衛星番号ＩＤ−ｍ，・・・，ＩＤ−ｐ：後述する全衛星番号ＩＤ−１〜ＩＤ−ｎのうちのそれぞれ１つ)が格納される。プログラムエリア１２４には、第１の都市検索プログラムが展開される。プログラムエリア１２５には第２の都市検索プログラムが展開される。
【００３１】
表示部１３は、小型ＬＣＤ（Liquid Crystal Display）、ＥＬＤ（ElectroLuminescent Display）等により構成され、ＣＰＵ１０から入力された表示情報に基づいて各種情報を表示する。例えば、表示部１３は、計時部２２で計時する現在時刻等をデジタル表示する。また、表示駆動回路部１４は、表示部１３に各種情報を表示させるための駆動回路である。
【００３２】
操作部１５は、ＧＰＳ受信装置１００に各種機能を実行させる為のキー、ボタン等で構成される。これらのキー、ボタン等が操作された時には、対応するスイッチの操作信号がＣＰＵ１０に出力される。  
【００３３】
電池部１６は、電源としての電池を備えており、この電池からの電圧、電流を各部に供給する。  
【００３４】
記憶部１７は、フラッシュメモリ、ＥＥＰＲＯＭ（Electrically Erasable Programmable ROM）等により構成され、情報を読み書き可能に記憶する。
【００３５】
図２（Ｂ）に示すように記憶部１７は、記憶エリアとしてのデータエリア１７１〜１７３を備えている。データエリア１７１には、後述する都市データ１７Ａが記憶されている。データエリア１７２には、アルマナックデータが記憶されている。アルマナックデータについては後述する。データエリア１７３には、全ＧＰＳ衛星を識別する衛星番号（衛星番号ＩＤ−１〜ＩＤ−ｎ、但し、ｎは全衛星数）が記憶されている。
【００３６】
ＧＰＳモジュール部１８は、ＧＰＳ衛星からのＧＰＳ信号を受信するアンテナ部１８Ａを介して受信したＧＰＳ衛星からのデータを処理し測位を行うモジュールである。
【００３７】
計時部２２は、現在時刻を計時する。計時部２２は、発信回路部１９と、分周回路部２０と、計時計数回路部２１と、を備えて構成される。発振回路部１９は、常時、一定周波数のクロック信号を分周回路部２０に出力している回路である。分周回路部２０は、発振回路部１９からの上記クロック信号を計数して計数値が１分に対応する値になる度に１分信号を計時計数回路２１に出力する回路部である。計時計数回路２１は、分周回路部２０からの上記１秒信号を計数して、現在時刻のデータ、即ち時データ、分データ、秒データ等と、日付データとを得て、これを、ＣＰＵ１０に出力する。また、ＣＰＵ１０から出力される時刻データに基づいて、計数している現在時刻データ、及び日付データを修正する。
【００３８】
照明部２３は、表示部１３の視認性を良くするために、表示部１３の背後若しくは側面側から照らすための照明である。例えば、ＬＥＤ（Light Emitting Diode）、ＥＬ（Electro luminescence）バックライトや、ＦＬ（冷陰極管）バックライト等により構成される。照明駆動回路部２４は、照明部２３を駆動させるための回路である。
【００３９】
ブザー回路部２５は、ユーザによって設定されたタイマ機能などによって、ＣＰＵ１０から送られる信号に従って、スピーカー部２６にアラーム音を発生させる。
【００４０】
次に、図３及び図４を参照して、都市データ１７Ａを説明する。先ず、図３を参照して都市データ１７Ａのフォーマットについて説明する。図３（Ａ）は、１都市分の都市データの変換方法を示した図である。
例えば、都市の都市名が「東京」の場合、「東京」→「ＴＯＫＹＯ」に変換される。さらに「ＴＯＫＹＯ」→「８４７９７５８９７９３２３２３２３２３２３２３２３２３２３２３２」に変換される。この都市名を示すデータは、ＡＳＣＩＩコードの１６バイトのデータである。また、都市の緯度が「北緯３５．６７度」の場合、「北緯３５．６７度」→「１２８４１２秒」に変換される。さらに「１２８２１２秒」→「０１Ｆ５９Ｃ」に変換される。この緯度を示すデータは、１６進数の３バイトのデータである。また、都市の経度が「東経１３９．７７度」の場合、「東経１３９．７７度」→「５０３１７２秒」に変換される。さらに、「５０３１７２秒」→「０７ＡＤ８４」に変換される。この都市の経度を示すデータは、１６進数の３バイトのデータである。また、都市の世界標準時刻からの差を示す時差が「ＵＴＣ＋９時間」の場合、「ＵＴＣ＋９」→「５４」に変換される。この都市の世界標準時刻からの差を示す時差データは、１６進数の１バイトのデータである。
【００４１】
図３（Ｂ）は、時差と１６進数の関係を示した図である。ＨＥＸ（Hexadecimal）は、１６進数を意味する。時差と１６進数の関係は、時差「−１２．００」を１６進数「００」とし、０．２５時間毎に「＋１」する。例えば、１６進数が「００」の時は、時差は「−１２．００」、１６進数が「０１」の時は、時差は「−１１．７５」となる。換算式は、「ＤＥＣ＝４×ｔ＋４８」となる。ここで、「ＤＥＣ」は、１０進数、「ｔ」は、時差を示す。例えば、東京の場合、時差は「ＵＴＣ＋９時間」であるので、時差ｔには「９」が式に代入され、「５４」が算出される。
【００４２】
図３（Ｃ）は、１都市分のデータを示した図である。図３（Ｃ）に示すように、１都市分のデータは、２３バイトのデータとなる。都市データ１７Ａには、図３（Ｃ）に示すデータが１都市分のデータとして格納される。
【００４３】
次に、図４を参照して都市データ１７Ａの構成について説明する。まず、図４（Ａ）を参照して都市データ１７Ａのデータのソート（並べ替え）方法について説明する。以下、経度データが「０１Ｆ５９Ｃ」、緯度データが「０７ＡＤ８４」の場合で説明する。まず、経度・緯度データ「０１Ｆ５９Ｃ  ０７ＡＤ８４」が１バイトごとに分けられる。そして、経度データの１バイト目である「０１」→緯度データの１バイト目である「０７」→経度データの２バイト目である「Ｆ５」→緯度データの２バイト目である「ＡＤ」→経度データの３バイト目である「９Ｃ」→緯度データの３バイト目である「８４」の順に都市データ１７Ａのデータをソートする。この順でソートされた都市データ１７Ａの経度・緯度データの例を図４（Ａ）に示す。
【００４４】
次に、図４（Ｂ）を参照して都市データ１７Ａの構成を説明する。都市データ１７Ａは、都市名情報としての都市名データ４４、都市の緯度・経度を示す位置情報としての緯度データ４２・経度データ４３、都市の世界標準時刻からの差を示す時差情報としての時差データ４５、第１のインデックスとしてのインデックス４１、が互いに対応付けられている。ここで、インデックス４１とは、緯度データ４２・経度データ４３を代表するデータであり、ある位置から予め定められている範囲内の少なくとも１つの他の都市の位置を含むデータのことをいう。図４（Ｂ）に示すインデックス４１は、緯度データ４２の１バイト目、経度データ４３の１バイト目、及び緯度データ４２の２バイト目の左桁で順に構成される。
【００４５】
ここで、図５を参照して、図４（Ｂ）に示すインデックス４１の緯度及び経度で表される範囲について説明する。図５は、ある都市の位置から予め定められている範囲で位置を分割した図である。分割した位置の範囲は、図４（Ｂ）のインデックスで示される。また、「×」印は、都市データ１７Ａの都市の経度・緯度データ（即ち、位置）を示す。例えば、インデックスが「０００００」を示す位置の範囲では、「×」印が６個存在する。これは、インデックスが「０００００」を示す位置の範囲では、都市データ１７Ａの都市が６都市あることを意味している。この６都市は、図４（Ｂ）の例では、都市名が「Ａ」〜「Ｆ」の６都市に該当する。
【００４６】
次に、図６〜図９を参照して、都市データ１７Ａの複数の都市の緯度データ４２・経度データ４３の中から、測位により取得した自装置の現在位置情報と一致する都市の緯度データ４２・経度データ４３、またはそれに近い都市の緯度データ４２・経度データ４３の検索方法について説明する。
先ず、図６を参照して、測位により取得した自装置の現在位置情報から第２のインデックスとしてのインデックス６１を作成する方法について説明する。図６（Ａ）は、測位により取得した自装置の現在位置の経度・緯度が、北緯１８．２度、西経１０９．２度の場合のインデックス６１の作成方法を示した図である。この場合、測位により取得した経度・緯度を１６進数のデータで表すと、緯度を示すデータは「００ＦＦＦ０」、経度を示すデータは「０５ＦＦＡ０」となる。即ち、自装置の現在位置情報は「００ＦＦＡ０  ０５ＦＦＡ０」となる。ここで、図４（Ｂ）で説明したように、緯度を示すデータの１バイト目「００」、経度を示すデータの１バイト目「０５」、緯度を示すデータの２バイト目の左桁である「Ｆ」を順に並べると、インデックス６１は「０００５Ｆ」となる。
【００４７】
そして、インデックス６１の「０００５Ｆ」が、都市データ１７Ａのインデックス４１に一致するか否かが判別される。図６（Ｂ）は、インデックス６１の「０００５Ｆ」と一致するインデックス４１「０００５Ｆ」と、当該インデックス４１に対応付けられた緯度データ４２・経度データ４３を示した図である。
【００４８】
次に、図７を参照して、インデックス６１が都市データベース１７Ａのインデックス４１に一致すると判別された場合、取得された現在位置情報「００ＦＦＡ０  ０５ＦＦＡ０」が、都市データ１７Ａの複数の都市の緯度データ４２・経度データ４３に一致するか否かを判別する方法について説明する。図７の一番上の行のデータは、現在位置情報「００ＦＦＦ０  ０５ＦＦＡ０」（探したいデータ）を示す。そして、２行目以下のデータは、インデックス４１の「０００５Ｆ」に対応する都市データ１７Ａの緯度データ４２・経度データ４３を示す。よって、２行目以下のデータは、現在位置情報「００ＦＦＦ０  ０５ＦＦＡ０」内の、緯度を示すデータの１バイト目「００」、経度を示すデータの１バイト目「０５」、緯度を示すデータの２バイト目の左桁「Ｆ」と一致している。したがって、現在位置情報「００ＦＦＦ０  ０５ＦＦＡ０」の検索は、現在位置情報と、２行目以下のデータにおける緯度データ４２・経度データ４３の２バイト目以降のデータと、が一致するか否かを判別することにより行われる。判別の順番としては、先ず、（１）現在位置情報の緯度データの２バイト目「ＦＦ」が、２行目以下の緯度データ４２の２バイト目と一致するか否かが判別される。そして、（２）現在位置情報の経度データの２バイト目「ＦＦ」が、２行目以下の経度データ４３の２バイト目と一致するか否かが判別される。そして、（３）現在位置情報の緯度データの３バイト目「Ｆ０」が、２行目以下の緯度データ４２の３バイト目と一致するか否かが判別される。そして、（４）現在位置情報の経度データの３バイト目「Ａ０」が、２行目以下の経度データ４３の３バイト目と一致するか否かが判別される。
【００４９】
次に図８を参照してデータ一致確認ルーチンについて説明する。データ一致確認ルーチンは、図７で説明した現在位置情報「００ＦＦＡ０  ０５ＦＦＡ０」が、都市データ１７Ａの複数の都市の緯度データ４２・経度データ４３に一致するか否かを判別する方法を詳細に示したルーチンである。
まず、現在位置情報の緯度データの２バイト目「ＦＦ」と、緯度データ４２の２バイト目とが一致するか否かが判別される（以下、緯度データ４２の２バイト目のデータを（１）とする）。（１）が一致したと判別された場合、現在位置情報の経度データの２バイト目「ＦＦ」と、経度データ４３の２バイト目とが一致するか否かが判別される（以下、経度データ４３の２バイト目のデータを（２）とする）。（２）が一致したと判別された場合、現在位置情報の緯度データの３バイト目「Ｆ０」と、緯度データ４２の３バイト目とが一致するか否かが判別される（以下、緯度データ４２の３バイト目のデータを（３）とする）。（３）が一致すると判別された場合、現在位置情報の経度データの３バイト目「Ａ０」と、経度データ４３の３バイト目とが一致するか否かが判別される（以下、経度データ４３の３バイト目を（４）とする）。そして、（４）が一致すると判別された場合、そのデータが使用される（現在位置情報と一致する都市名として確定する）。また、（４）が一致しないと判別された場合、一番近い（４）が探される。ここで、一番近い（４）が探されるとは、例えば、自装置の現在位置から距離が一番近い経度データ４３が探されることをいう。そして、一番近い（４）のデータに対応する都市名が候補とされる。
【００５０】
また、（２）が不一致と判別された場合、（１）が一致した中で（２）、（４）が一番近いデータが探される。ここで、（１）が一致した中で（２）、（４）が一番近いデータが探されるとは、例えば、自装置の現在位置から距離が一番近い経度データ４３が探されることをいう。そして、一番近いデータに対応する都市名が候補とされる。
【００５１】
（３）が不一致と判別された場合、（４）が一致するか否かが判別される。（４）が一致すると判別された場合、一番近い（３）が探される。ここで、一番近い（３）が探されるとは、例えば、自装置の現在位置から距離が一番近い緯度データ４２が探されることをいう。そして、一番近い（３）のデータに対応する都市名が候補とされる。また、（４）が不一致と判別された場合、一番近い（３）及び一番近い（４）が探される。そして、一番近い（３）のデータに対応する都市名が候補１とされる。また、一番近い（４）のデータに対応する都市名が候補２とされる。この候補１と候補２とを比較し、探したいデータと近い方のデータに対応する都市名が候補とされる。ここで、探したいデータと近い方のデータに対応する都市名が候補とされるとは、自装置の現在位置から距離が近い方が候補とされることをいう。
【００５２】
（１）が不一致と判別された場合、（２）が一致するか否かが判別される。（２）が一致すると判別された場合、（２）が一致した中で（１）、（３）が一番近いデータが探される。ここで、（２）が一致した中で（１）、（３）が一番近いデータが探されるとは、例えば、自装置の現在位置から距離が一番近い緯度データ４２が探されることをいう。そして、一番近いデータに対応する都市名が候補とされる。また、（２）が不一致と判別された場合、一番近い（１）及び一番近い（２）が探される。そして、一番近い（１）のデータに対応する都市名が候補１とされる。また、一番近い（２）のデータに対応する都市名が候補２とされる。この候補１と候補２とを比較し、探したいデータと近い方のデータに対応する都市名が候補とされる。
【００５３】
次に、図９を参照して、測位により取得した現在位置情報に基づいて作成したインデックス６１「０００５Ｆ」が、都市データ１７Ａに格納されているインデックス４１と一致しなかった場合について説明する。図９（Ａ）に現在位置情報の変更方法を示す。現在位置情報の変更とは、取得した現在位置情報の緯度データ・経度データを変更して、検索範囲を拡大することをいう。以下、現在位置情報の緯度データを「００ＦＦＦ０」、経度データを「０５ＦＦＡ０」とした場合の現在位置情報の緯度データ・経度データの変更の方法について説明する。ここで、現在位置情報である「００ＦＦＦ０  ０５ＦＦＡ０」を元データとする。
【００５４】
先ず、元データ内の緯度データの２バイト目「ＦＦ」と、元データ内の経度データの２バイト目「ＦＦ」と、を−１する場合について説明する。このとき、元データ内の緯度データの２バイト目は「ＦＦ」から「ＦＥ」に、元データ内の経度データの２バイト目は「ＦＦ」から「ＦＥ」に変更される。同時に、元データ内の緯度データの３バイト目は「Ｆ０」から最も大きい「ＦＦ」に変更され、元データ内の経度データの３バイト目「Ａ０」は「ＦＦ」に変更される。したがって、元データ「００ＦＦＦ０  ０５ＦＦＡ０」→「００ＦＥＦＦ  ０５ＦＥＦＦ」（図９（Ａ）の（１））に変更される。次に、元データ内の緯度データの２バイト目「ＦＦ」と、元データ内の経度データの２バイト目と、を＋１する場合について説明する。このとき、元データ内の緯度データの２バイト目は「ＦＦ」から「００」に変更され、元データ内の経度データの２バイト目は「ＦＦ」から「００」に変更される。同時に、元データ内の緯度データの３バイト目「Ｆ０」は最も小さい「００」に変更され、元データ内の経度データの３バイト目「Ａ０」は「００」に変更される。したがって、元データ「００ＦＦＦ０  ０５ＦＦＡ０」→「０１００００  ０６００００」（図９（Ａ）の（２））に変更される。以下、同様に現在位置情報の変更が行われる（図９（Ａ）の（３）、（４））。
【００５５】
次に、図９（Ｂ）を参照して、再検索の方法について説明する。図９（Ｂ）は、再検索の順番を示した図である。再検索とは、現在位置情報を変更した場合、変更した現在位置情報が、都市データ１７Ａの複数の都市の緯度データ４２・経度データ４３に一致するか否かを判別することをいう。図９（Ｂ）は、一番上の行から下の行へ順番に再検索を行うことを示している。一番上の行は、緯度データが元データである「００ＦＦＦ０」、経度データが図９（Ａ）の（１）のデータである「０５ＦＥＦＦ」を示している。即ち、緯度データ・経度データ「００ＦＦＦ０  ０５ＦＥＦＦ」で、図８で説明したデータ一致確認ルーチンが行われる。図９（Ｂ）の上から２行目は、緯度データが元データである「００ＦＦＦ０」、経度データが図９（Ａ）の（２）のデータである「０６００００」を示している。即ち、緯度データ・経度データ「００ＦＦＦ０  ０６００００」でデータ一致確認ルーチンが行われる。以下、図９（Ｂ）に示す順番で、再検索が所定回数行われる。このとき、検索範囲を変更する度に、自装置の現在位置の候補が検索される。候補が検索されると、前の候補と比較され、自装置の現在位置と近い方の候補が残される。この残された候補が、次の候補となる。そして、最終的に残った候補が一番近い都市の候補となる。例えば、緯度データ・経度データ「００ＦＦＦ０  ０５ＦＥＦＦ」でデータ一致確認ルーチンが行われた結果、検索された候補を候補１とする。次に、「００ＦＦＦ０  ０６００００」でデータ一致確認ルーチンが行われた結果、検索された候補を候補２とする。そして、候補１と候補２とが比較され、自装置の現在位置と近い方の候補が残される。ここで、候補１が自装置の現在位置と近い場合、候補１が残される。以下、同様に候補の比較が行われ、所定回数の再検索が実行された後、最終的に残った候補が一番近い都市の候補となる。  
【００５６】
次に、図１０〜図１２を参照して、本実施の形態のＧＰＳ受信装置１００の動作を説明する。図１０〜図１２に、第１の都市検索処理の流れを示す。第１の都市検索処理は、都市データ１７ＡからＧＰＳ受信装置１００の現在位置情報と一致、またはそれに近い都市の位置情報の検索を行う。そして、当該検索した都市の時差に基づいて、自装置の現在時刻の時刻修正を行う。
【００５７】
例えば、ＧＰＳ受信装置１００において、第１の都市検索処理の実行指示が操作部１５を介して入力されたこと等をトリガとして、ＲＯＭ１１から第１の都市検索プログラムが読み出される。そして、当該読み出された第１の都市検索プログラムがＲＡＭ１２に展開され、展開された第１の都市検索プログラムとＣＰＵ１０との協働により第１の都市検索処理が実行される。
【００５８】
先ず、複数のＧＰＳ衛星が捕捉された後、当該ＧＰＳ衛星から受信したＧＰＳ信号に基づいて自装置の現在位置情報の測位が行われる（ステップＳ１０１）。ここで、自装置の現在位置情報の測位は、アルマナックデータ、現在時刻等の情報を用いることにより行われる。そして、測位された自装置の現在位置情報の取得が行われる（ステップＳ１０２）。自装置の現在位置情報の取得とは、ＧＰＳ計測により測位された自装置の現在位置情報の緯度データ・経度データを取得することをいう。ステップＳ１０２の実行後、取得された現在位置情報と一致する都市データ１７Ａの緯度データ４２・経度データ４３、又はそれに近い都市の緯度データ４２・経度データ４３の検索が行われる（ステップＳ１０３）。
【００５９】
ここでステップＳ１０３について、図１１及び図１２を参照して詳細に説明する。
ステップＳ１０２の実行後、取得された現在位置情報に対応するインデックス６１が作成される（ステップＳ２０１）。そして、作成されたインデックス６１が都市データ１７Ａのインデックス４１と一致するか否かが判別される（ステップＳ２０２）。作成されたインデックス６１が都市データ１７Ａのインデックス４１と一致しない場合（ステップＳ２０２；ＮＯ）、ステップＳ２１４へ移行される。
【００６０】
作成されたインデックス６１が都市データ１７Ａのインデックス４１と一致する場合（ステップＳ２０２；ＹＥＳ）、現在位置情報の緯度データの２バイト目が、一致したインデックス４１内にある緯度データ４２・経度データ４３（以下、一致したインデックス４１内にある緯度データ４２・経度データ４３をインデックス一致データとする）における緯度データ４２の２バイト目に一致するか否かが判別される（ステップＳ２０３）。このステップは図８のデータ一致確認ルーチンにおける「（１）が一致」「（１）が不一致」に該当する。インデックス一致データの緯度データ４２に、現在位置情報の緯度データの２バイト目に一致するデータがない場合（ステップＳ２０３；ＮＯ）、現在位置情報の経度データの２バイト目が、インデックス一致データの経度データ４３の２バイト目に一致するか否かが判別される（ステップＳ２０４）。このステップは図８のデータ一致確認ルーチンにおける「（１）が不一致→（２）が一致、（２）が不一致」に該当する。インデックス一致データの経度データ４３に、現在位置情報の経度データの２バイト目に一致するデータがある場合（ステップＳ２０４；ＹＥＳ）、インデックス一致データの緯度データ４２の中から、緯度データ４２の２バイト目、緯度データ４２の３バイト目が一番近いデータが探され、現在位置に一番近い都市の候補にされる（ステップＳ２０５）。このステップは、図８のデータ一致確認ルーチンにおける「（１）が一致した中で（２）（４）が一番近いデータを探す」に該当する。ステップＳ２０５の実行後、ステップＳ２１４へ移行される。
【００６１】
インデックス一致データの経度データ４３の中に、現在位置情報の経度データの２バイト目に一致するデータがない場合（ステップＳ２０４；ＮＯ）、インデックス一致データの中から、緯度データの２バイト目に一番近いデータが探され、現在位置に一番近い都市の候補１とされる（ステップＳ３０１）。このステップは、図８のデータ一致確認ルーチンにおける「（２）が不一致→一番近い（１）を探す」に該当する。そして、インデックス一致データの中から、経度データの２バイト目に一番近いデータが探され、現在位置に一番近い都市の候補２とされる（ステップＳ３０２）。このステップは、図８のデータ一致確認ルーチンにおける「（２）が不一致→一番近い（２）を探す」に該当する。ステップＳ３０２の実行後、候補１と候補２とが比較され、現在位置情報に近い方の候補が現在位置に一番近い都市の候補とされる（ステップＳ３０３）。ステップＳ３０３の実行後、ステップＳ２１４に移行される。
【００６２】
ステップＳ２０３において、インデックス一致データの緯度データ４２に、現在位置情報の緯度データの２バイト目に一致するデータがある場合（ステップＳ２０３；ＹＥＳ）、現在位置情報の経度データの２バイト目が、インデックス一致データの経度データ４３の２バイト目に一致するか否かが判別される（ステップＳ２０６）。このステップは、図８におけるデータ一致確認ルーチンにおける「（１）が一致→（２）が一致、（２）が不一致」に該当する。インデックス一致データの経度データ４３に、現在位置情報の経度データの２バイト目に一致するデータがない場合（ステップＳ２０６；ＮＯ）、インデックス一致データの中から、現在位置情報の経度データの２バイト目、経度データの３バイト目に一番近いデータが探され、候補にされる（ステップＳ２０７）。このステップは、図８のデータ一致確認ルーチンにおける「（２）が不一致→（１）が一致した中で（２）（４）が一番近いデータを探す」に該当する。ステップＳ２０７の実行後、ステップＳ２１３へ移行される。
【００６３】
ステップＳ２０６において、インデックス一致データの経度データ４３に、現在位置情報の経度データの２バイト目に一致するデータがある場合（ステップＳ２０６；ＹＥＳ）、現在位置情報の緯度データの３バイト目がインデックス一致データの緯度データ４２の３バイト目に一致するか否かが判別される（ステップＳ２０８）。このステップは、図８のデータ一致確認ルーチンにおける「（１）が一致→（３）が一致、（３）が不一致」に該当する。インデックス一致データの緯度データ４２に、現在位置情報の緯度データの３バイト目に一致するデータがない場合（ステップＳ２０８；ＮＯ）、現在位置情報の経度データの３バイト目がインデックス一致データの経度データ４３の３バイト目に一致するか否かが判別される（ステップＳ２０９）。このステップは、図８のデータ一致確認ルーチンにおける「（３）が不一致→（４）が一致、（４）が不一致」に該当する。インデックス一致データの経度データ４３に、現在位置情報の経度データの３バイト目に一致するデータがない場合（ステップＳ２０９；ＮＯ）、インデックス一致データの中から、現在位置情報の緯度データの３バイト目に一致するデータが探され、候補１とされる（ステップＳ３０４）。このステップは、図８のデータ一致確認ルーチンにおける「（４）が不一致→一番近い（３）を探す」に該当する。そして、インデックス一致データの中から、現在位置情報の経度データの３バイト目に一致するデータが探され、候補２とされる（ステップＳ３０５）。このステップは、図８のデータ一致確認ルーチンにおける「（４）が不一致→一番近い（４）を探す」に該当する。ステップＳ３０５の実行後、候補１と候補２とが比較され、現在位置情報に近い方の候補が、現在位置に一番近い都市の候補とされる（ステップＳ３０６）。ステップＳ３０６の実行後、ステップＳ２１３へ移行される。
【００６４】
ステップＳ２０９において、インデックス一致データの経度データ４３に、現在位置情報の経度データの３バイト目に一致するデータがある場合（ステップＳ２０９；ＹＥＳ）、インデックス一致データの中から、現在位置情報の緯度データの３バイト目に一番近いデータが探され、候補にされる（ステップＳ２１０）。このステップは、図８のデータ一致確認ルーチンにおける「（４）が一致→一番近い（３）を探す」に該当する。ステップＳ２１１の実行後、ステップＳ２１３へ移行される。
【００６５】
ステップＳ２０８において、インデックス一致データの緯度データ４２に、現在位置情報の緯度データの３バイト目に一致するデータがある場合（ステップＳ２０８；ＹＥＳ）、現在位置情報の経度データの３バイト目が、インデックス一致データの経度データ４３の３バイト目に一致するか否かが判別される（ステップＳ２１１）。このステップは、図８のデータ一致確認ルーチンにおける「（３）が一致→（４）が一致、（４）が不一致」に該当する。インデックス一致データの経度データ４３に、現在位置情報の経度データの３バイト目に一致するデータがない場合（ステップＳ２１１；ＮＯ）、インデックス一致データの中から、現在位置情報の経度データの３バイト目に一番近いデータが探され、候補にされる（ステップＳ２１２）。このステップは、図８のデータ一致確認ルーチンにおける「（３）が一致→（４）が不一致→一番近い（４）を探す」に該当する。そして、前回候補と比較され、現在位置情報に近い方の候補が残される（ステップＳ２１３）。ここで、前回候補とは、現在位置情報を変更した場合、今回のデータ一致確認ルーチンより１回前に行われたデータ一致確認ルーチンで最終的に残った候補のことをいう。ステップＳ２１４の実行後、現在位置情報の緯度データ・経度データそれぞれ２バイト目が±１される（ステップＳ２１４）。このステップは、図９（Ａ）の元データ内の緯度データ・経度データの２バイト目を＋１、−１する動作に該当する。そして、現在位置情報の緯度データ・経度データのそれぞれ２バイト目が±１される回数がＸ回繰り返されたか否かが判別される（ステップＳ３０７）。Ｘ回未満の場合（ステップＳ３０７；ＮＯ）、ステップＳ２０１へ移行される。Ｘ回以上の場合（ステップＳ３０７；ＹＥＳ）、最後まで残った候補が、自装置の現在位置から予め定められている範囲内に位置する都市として抽出される（ステップＳ３０８）。ステップＳ３０８の実行後、ステップＳ１０４へ移行される。
【００６６】
ステップＳ２１１において、インデックス一致データの経度データ４３に、現在位置情報の経度データの３バイト目に一致するデータがある場合（ステップＳ２１１；ＹＥＳ）、一致したデータの都市が自装置の現在位置から予め定められている範囲内に位置する都市として抽出される（ステップＳ２１５）。このステップは、図８のデータ一致確認ルーチンにおける「（１）が一致→そのデータを使用」に該当する。Ｓ２１５の実行後、ステップＳ１０４へ移行される。
【００６７】
そして、ステップＳ２１５及びステップＳ３０８で抽出された都市の緯度データ４２・経度データ４３に対応する都市名及び時差が表示部１３に表示される（ステップＳ１０４）。ここで、都市名と時差は図１３に示すように表示部１３に表示される。図１３に示す「ＣＩＴＹ」は都市名を示す。ＴＤ（ＵＴＣ）は、時差を示す。例えば、ステップＳ２１５又はステップＳ３０８で抽出された都市が「ＮＥＷ  ＹＯＲＫ」の場合は、図１３に示すように「ＮＥＷ  ＹＯＲＫ」が選択された状態で選択表示される。このとき、図１３に示す「ＮＥＷ  ＹＯＲＫ」以外の都市は、検索された「ＮＥＷ  ＹＯＲＫ」と時差が近い都市を示す。
【００６８】
ステップＳ１０４の実行後、表示された都市名及び時差のなかから１つを確定する操作が、ユーザにより操作部１５を介して行われる。例えば、ステップＳ２１５又はステップＳ３０８で抽出された都市である「ＮＥＷ  ＹＯＲＫ」を都市として確定する場合、ユーザは操作部１５を操作することにより（例えば、図示しないボタン等を押す操作により）、「ＮＥＷ  ＹＯＲＫ」が都市として確定される。そして、操作部１５により確定操作がされたか否かが判別される（ステップＳ１０５）。
【００６９】
操作部１５により確定操作がされない場合（ステップＳ１０５；ＮＯ）、表示部に表示された都市名及び時差のなかから１つを選択する操作が、ユーザにより操作部１５を介して行われる。例えば、自装置の現在位置が「ＮＥＷ  ＹＯＲＫ」でなく、「ＣＨＩＣＡＧＯ」であった場合、操作部１５を介して「ＣＨＩＣＡＧＯ」を選択する操作が行われる。そして、操作部１５により都市名及び時差の選択操作がされたか否かが判別される（ステップＳ１０７）。都市名及び時差の選択操作がされた場合（ステップＳ１０７；ＹＥＳ）、次の都市名及び時差が選択表示される（ステップＳ１０８）。例えば、「ＣＨＩＣＡＧＯ」を選択する操作が行われた場合、「ＣＨＩＣＡＧＯ」が「次の都市名」に該当する。ステップＳ１０８の実行後、ステップＳ１０５に移行される。例えば、「ＣＨＣＡＧＯ」を選択した操作が行われた後、ステップＳ１０５において「ＣＨＩＣＡＧＯ」を都市として確定する操作が行われると、「ＣＨＩＣＡＧＯ」が都市として確定される。また、ステップＳ１０７において、都市名及び時差の選択操作がされない場合（ステップＳ１０７；ＮＯ）、ステップＳ１０５に移行される。
【００７０】
ステップＳ１０５において、確定操作がされた場合（ステップＳ１０５；ＹＥＳ）、現在位置情報と、ステップＳ１０５で確定された都市の時差データと、が取得される。そして、取得された現在位置情報と、時差データと、が都市データ１７Ａに追加される（ステップＳ１０６）。そして、ステップＳ１０５で確定した都市の時差データに基づいて、時差の修正が行われ、計時部２２の現在時刻が修正される（ステップＳ１０９）。そして、修正された現在時刻が表示部１３に表示される（ステップＳ１１０）。ステップＳ１１０の実行後、第１の都市検索処理は終了する。
【００７１】
以上、本実施の形態によれば、インデックス６１とインデックス４１とを一致判別し、その判別結果に基づいて、記憶部１７に記憶されている複数の都市の位置情報の中から、ＣＰＵ１０により取得された現在位置情報と一致する都市の緯度データ４２・経度データ４３、またはそれに近い都市の緯度データ４２・経度データ４３の検索を行うので、記憶部１７に記憶されている膨大な都市の緯度データ４２・経度データ４３を最初から１つずつ検索する場合と比較して、ＧＰＳ受信装置１００のＣＰＵ１０の処理の負担を大幅に軽減することができる。
【００７２】
また、インデックス６１とインデックス４１とが一致する場合において、ＣＰＵ１０により取得された現在位置情報が、記憶部１７に記憶されている複数の都市の緯度データ４２・経度データ４３に一致するか否かを判別し、その判別結果に基づいて、自装置の現在位置から予め定められている範囲内に位置する都市として当該都市の抽出を行うことができる。したがって、記憶部１７に記憶されている膨大な都市の緯度データ４２・経度データ４３を１つずつ検索する場合と比較し、最初に少ない数のインデックス同士の一致判別を行い、その一致判別にかかる都市の緯度データ４２・経度データ４３に絞り込んで、目的とする都市の緯度データ４２・経度データ４３を検索することができるために、ＧＰＳ受信装置１００のＣＰＵ１０の処理の負担を軽減することができる。
【００７３】
また、インデックス６１とインデックス４１とが一致する場合において、ＣＰＵ１０により取得された現在位置情報が、記憶部１７に記憶されている複数の都市の緯度データ４２・経度データ４３に一致するか否かを判別し、その判別結果により一致しないと判別された場合、ＣＰＵ１０により取得された現在位置情報を変更して、当該変更した現在位置情報が記憶部１７に記憶されている複数の都市の緯度データ４２・経度データ４３に一致するか否かを判別し、その判別結果に基づいて、自装置の現在位置から予め定められている範囲内に位置する都市として、当該都市の抽出を行うことができる。したがって、記憶部１７に記憶されている膨大な都市の緯度データ４２・経度データ４３を１つずつ検索する場合と比較し、最初に少ない数のインデックス同士の一致判別を行ったあとに、その一致判別にかかる都市の緯度データ４２・経度データ４３に絞り込んで、目的とする都市の緯度データ４２・経度データ４３を検索することができるために、ＧＰＳ受信装置１００のＣＰＵ１０の処理の負担を軽減することができる。
【００７４】
また、検索された都市の緯度データ４２・経度データ４３に対応する都市名及び時差を記憶部１７の中から読み出して表示させることができる。これにより、ユーザは都市名及び時差を確認することができる。
【００７５】
また、検索された都市の時差データ４５に基づいて、自装置の現在時刻の時刻修正を行うことができる
【００７６】
また、表示された少なくとも１つの都市名及び時差のなかから１つを確定されたあとに、その確定された都市の時差に基づいて、計時部２２の時刻修正を行うことができる。これにより、ユーザは手間をかけずに時刻修正を行うことができる。
【００７７】
また、表示された少なくとも１つの都市名及び時差のなかから１つを選択されたあとに、その選択された都市の時差に基づいて、計時部２２の時刻修正を行うことができる。これにより、ユーザは手間をかけずに時刻修正を行うことができる。
【００７８】
また、ＣＰＵ１０により取得された現在位置情報と、検索された都市の時差データと、を対応付けて記憶部１７に追加することができる。これにより、次回の都市検索時に、より精度よく都市の検索を行うことができる。
【００７９】
（第２の実施の形態）
図１４〜図１６を参照して、本発明に係る第２の実施の形態を説明する。図１４に本実施の形態の説明概略図を示す。図１５及び図１６に第２の都市検索処理の流れを示す。
【００８０】
本実施の形態の装置構成は、第１の実施の形態と同様にＧＰＳ受信装置１００を用い、同様な部分には同一の符号を付している。また、その詳細な説明を援用し、異なる部分について以下説明する。
【００８１】
ＧＰＳ装置１００において、ＲＯＭ１７に第２の都市検索プログラムが記憶される。
【００８２】
記憶部１７には、アルマナックデータが記憶される。ここで、アルマナックデータとは、全ＧＰＳ衛星の概略軌道情報のことをいう。
【００８３】
図１４を参照して、本実施の形態における概略を説明する。図１４に示す２００は、「Ａ地点」・「Ｔ０」時におけるＧＰＳ衛星の配置を示している。Ａ地点とは、自装置の現在位置を示している。Ｔ０時とは、ＧＰＳ衛星を捕捉した時の時間を示している。２０１で示す１〜６の数字は、各ＧＰＳ衛星の衛星番号を示している。まず、このＡ地点で、ＧＰＳ衛星を捕捉後、現在位置情報の測位が行われる。このとき、現在位置情報（即ち、Ａ地点）の緯度・経度データ、捕捉したＧＰＳ衛星の衛星番号が取得される。取得された現在位置情報の緯度・経度データはＲＡＭ１２のデータエリア１２１、捕捉したＧＰＳ衛星の衛星番号はＲＡＭ１２のデータエリア１２３にそれぞれ格納される。これらのデータは、次回計測時のＧＰＳ測位時のアシストデータとして使用される。
【００８４】
図１４に示す２０１は、「？地点」・「Ｔ１時」におけるＧＰＳ衛星配置の予測図を示している。ここで、「？地点」は、ユーザがＡ地点から移動したかどうかわからない地点のことを示している。Ｔ１時は、Ｔ０時から、所定時間経過後の時間を示している。この２０１の？地点で、「Ａ地点・Ｔ１時」におけるＧＰＳ衛星の配置（衛星数とその位置）が予測される。Ａ地点・Ｔ１時のＧＰＳ衛星の配置の予測は、Ａ地点・Ｔ０時に取得されたＡ地点の緯度・経度データと、アルマナックデータと、Ｔ１時に取得された現在時刻Ｔ１と、を用いることにより行われる。これにより、「？地点」・Ｔ１時において、上空にあるＧＰＳ衛星の衛星番号が予測される。
【００８５】
また、２０１の？地点・Ｔ１時において、受信可能なＧＰＳ衛星が捕捉される。捕捉されたＧＰＳ衛星の衛星番号は、ＲＡＭ１２のデータエリア１２３に記憶される。捕捉されたＧＰＳ衛星の衛星番号の中に、予測されたＧＰＳ衛星の識別番号が見つかり、ＧＰＳ衛星の配置もほぼ一致した場合、自装置の現在位置である？地点はＡ地点から大きく移動していないと判断される。図１４に示す２０２は、「？地点」がＡ地点から大きく移動していない場合を示した図である。この場合、ＧＰＳ信号に基づいて測位を行われず、ＲＡＭ１２のデータエリア１２２に格納されている時差データが読み出され、当該読み出された時差データに基づいて、計時部２２の現在時刻の修正が行われる。
【００８６】
また、捕捉されたＧＰＳ衛星の識別番号の中に、予測されたＧＰＳ衛星の識別番号が全く見つからなかった場合は、自装置の現在位置である？地点がＡ地点から大きく移動したと判断される。２０３は、自装置の現在位置である？地点がＡ地点から大きく移動した場合を示した図である。この場合、ＧＰＳ受信装置１００は、「？地点」で新たにＧＰＳ衛星から受信したＧＰＳ信号に基づいて測位を行う。そして、「？地点」で測位を行い、「？地点」における現在位置情報の緯度・経度データを取得する。そして、都市データ１７Ａの複数の都市の緯度データ４２・経度データ４３の中から、取得した緯度・経度データと一致する都市の緯度データ４２・経度データ４３、またはそれに近い都市の緯度データ４２・経度データ４３の検索を行う。検索後、検索された都市の時差に基づいて、計時部２２の現在時刻が修正される。
【００８７】
次に、図１５を参照して、第２の都市検索処理の流れを説明する。第２の都市検索処理は、予測したＧＰＳ衛星と捕捉したＧＰＳ衛星とが一致しているか否かを判別し、この判別結果に基づいて現在時刻を修正する処理である。
【００８８】
例えば、ＧＰＳ受信装置１００において、第２の都市検索処理の実行指示が操作部１５を介して入力されたこと等をトリガとして、ＲＯＭ１１から第２の都市検索プログラムが読み出される。そして、当該読み出された第２の都市検索プログラムがＲＡＭ１２に展開され、展開された第２の都市検索プログラムとＣＰＵ１０との協働により第２の都市検索処理が実行される。
【００８９】
先ず、複数のＧＰＳ衛星が捕捉された後、当該ＧＰＳ衛星から受信したＧＰＳ信号に基づいて自装置の現在位置情報の測位が行われる（ステップＳ４０１）。そして、測位された自装置の現在位置情報の取得が行われる（ステップＳ４０２）。このステップは、図１４のＡ地点・Ｔｏ時においてＧＰＳ衛星を捕捉し、測位した後にＡ地点の位置情報を取得する動作に該当する。そして、捕捉したＧＰＳ衛星の衛星番号と、取得した自装置の現在位置情報と、がＲＡＭ１２に記憶される（ステップＳ４０３）。そして、都市検索・時差修正が行われる（ステップＳ４０４）。このステップは、図１０〜図１２で説明した第１の都市検索処理のステップＳ１０４〜Ｓ１１１（ステップＳ２０１〜Ｓ２１５、Ｓ３０１〜Ｓ３０８を含む）に該当する。そして、ステップＳ４０４により取得された時差データがＲＡＭ１２に記憶される（ステップＳ４０５）。ステップＳ４０５の実行後、測位が終了される（ステップＳ４０６）。
【００９０】
ステップＳ４０６以降は、ユーザが位置を移動した場合（例えば、図１４のＡ地点から？地点にユーザが移動した場合）について説明する。ステップＳ４０６の実行後、自装置の現在位置の上空にあるＧＰＳ衛星が捕捉され、捕捉されたＧＰＳ衛星の衛星番号がＲＡＭ１２に記憶される（ステップＳ４０７）。このステップは、図１４の？地点・Ｔ１時にＧＰＳ衛星を捕捉する動作に該当する。そして、ＲＡＭ１２から現在位置情報と、記憶部１７からアルマナックデータと、計時部２２から現在時刻と、が読み出されて取得される（ステップＳ４０８）。そして、取得された現在位置情報と、アルマナックデータと、現在時刻と、に基づいて自装置の現在位置の上空にあるＧＰＳ衛星が予測される（ステップＳ４０９）。このステップは、図１４の？地点・Ｔ１時において、上空にあるＧＰＳ衛星の衛星番号が予測される動作に該当する。そして、予測されたＧＰＳ衛星と捕捉されたＧＰＳ衛星とが一致しているか否かが判別される（ステップＳ４１０）。このステップは、図１４の？地点・Ｔ１時において、捕捉されたＧＰＳ衛星の識別番号と、予測されたＧＰＳ衛星の識別番号と、が一致するか否かを判別する動作に該当する。
【００９１】
予測されたＧＰＳ衛星と捕捉されたＧＰＳ衛星とが一致していない場合（ステップＳ４１０；ＮＯ）、複数のＧＰＳ衛星が捕捉された後、ＧＰＳ信号に基づいて自装置の現在位置情報の測位が行われる（ステップＳ４１２）。そして、測位された自装置の現在位置情報の取得が行われる（ステップＳ４１３）。このステップは、図１４の？地点で新たにＧＰＳ衛星からＧＰＳ信号を受信し、測位する動作に該当する。そして、捕捉したＧＰＳ衛星の衛星番号と、取得した自装置の現在位置情報と、がＲＡＭ１１に記憶される（ステップＳ４１４）。そして、都市検索・時差修正が行われる（ステップＳ４１５）。このステップは、図１０〜図１２で説明した第１の都市検索処理のステップＳ１０４〜Ｓ１１１（ステップＳ２０１〜Ｓ２１５、Ｓ３０１〜Ｓ３０８を含む）に該当する。
【００９２】
ステップＳ４１０において、予測されたＧＰＳ衛星と捕捉されたＧＰＳ衛星とが一致する場合（ステップＳ４１０；ＹＥＳ）、場所は大きく移動していないので、ＲＡＭ１１に記憶されている時差データに基づいて現在時刻が修正される（ステップＳ４１１）。このステップは、図１４の予測されたＧＰＳ衛星が、「？地点」・Ｔ１時で見つかり、ＧＰＳ衛星の配置もほぼ一致した場合、自装置の現在位置である？地点はＡ地点から大きく移動していないと判断される動作に該当する。ステップＳ４１１、Ｓ４１５の実行後、第２の都市検索処理は終了する。
【００９３】
以上、本実施の形態によれば、予測したＧＰＳ衛星と、捕捉手段により捕捉したＧＰＳ衛星と、が一致している場合、ＲＡＭから時差データを読み出して、当該読み出した時差に基づいて計時部２２の現在時刻を修正することができる。これにより、再度、現在位置情報の測位を行う必要がないので消費電流を削減することができる。また、予測したＧＰＳ衛星と捕捉手段により捕捉したＧＰＳ衛星とが一致しない場合、再度、自装置の現在位置情報の取得を行うことにより、計時部２２の現在時刻の時刻修正を行うことができる。
【００９４】
その他、上記の実施の形態におけるＧＰＳ受信装置１００の細部構成及び詳細動作に関しても、本発明の趣旨を逸脱しない範囲で適宜変更可能である。
【図面の簡単な説明】
【００９５】
【図１】本発明に係るＧＰＳ受信装置１００を示すブロック図である。
【図２】（Ａ）はＲＯＭ１１の記憶構成を示す図である。（Ｂ）は、ＲＡＭ１２の記憶構成を示す図である。（Ｃ）は記憶部１７の記憶構成を示す図である。
【図３】（Ａ）は、１都市分の都市データの変換方法を示した図である。（Ｂ）は、時差と１６進数の関係を示した図である。（Ｃ）は、１都市分の都市データを示した図である
【図４】（Ａ）は、ソートされた都市データ１７Ａの経度・緯度データの例を示した図である。（Ｂ）は、都市データ１７Ａの構成を示した図である。
【図５】ある都市の位置から予め定められている範囲で位置を分割した図である。
【図６】（Ａ）は、測位により取得した自装置の現在位置の経度・緯度が、北緯１８．２度、西経１０９．２度の場合のインデックスの作成方法を示した図である。（Ｂ）は、インデックス６１の「０００５Ｆ」と一致するインデックス４１「０００５Ｆ」と、当該インデックス４１に対応付けられた緯度データ４２・経度データ４３を示した図である。
【図７】現在位置情報を検索する方法を示した図である。
【図８】データ一致確認ルーチンを示した図である。
【図９】（Ａ）は、現在位置情報の検索範囲の変更方法を示した図である。（Ｂ）は再検索の方法を示した図である。
【図１０】第１の都市検索処理を示すフローチャートである。
【図１１】第１の都市検索処理を示すフローチャートである。
【図１２】第１の都市検索処理を示すフローチャートである。
【図１３】表示部１３に表示される都市名と時差を示した図である。
【図１４】第２の実施の形態の説明概略図を示した図である。
【図１５】第２の都市検索処理を示すフローチャートである。
【図１６】第２の都市検索処理を示すフローチャートである。
【符号の説明】
【００９６】
１０   ＣＰＵ
１１   ＲＯＭ
１２   ＲＡＭ
１３   表示部
１４   表示駆動回路部
１５   操作部
１６   電池部        
１７   記憶部
１７Ａ 都市データ
１８   ＧＰＳモジュール部
１８Ａ アンテナ部
１９   発信回路部
２０   分周回路部
２１   計時計数回路
２２   計時部
２３   照明部
２４   照明駆動回路部
２５   ブザー回路部
２６   スピーカー部
４１，６１    インデックス
１００ ＧＰＳ受信装置
【図１】
2008164436.tif 000003
【図２】
2008164436.tif 000004
【図３】
2008164436.tif 000005
【図４】
2008164436.tif 000006
【図５】
2008164436.tif 000007
【図６】
2008164436.tif 000008
【図７】
2008164436.tif 000009
【図８】
2008164436.tif 000010
【図９】
2008164436.tif 000011
【図１０】
2008164436.tif 000012
【図１１】
2008164436.tif 000013
【図１２】
2008164436.tif 000014
【図１３】
2008164436.tif 000015
【図１４】
2008164436.tif 000016
【図１５】
2008164436.tif 000017
【図１６】
2008164436.tif 000018