(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2025-01-24
(54)【発明の名称】プロセッサ負荷を低減するための方法及び装置
(51)【国際特許分類】
G01S 19/37 20100101AFI20250117BHJP
【FI】
G01S19/37
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024541176
(86)(22)【出願日】2022-01-11
(85)【翻訳文提出日】2024-09-06
(86)【国際出願番号】 RU2022000004
(87)【国際公開番号】W WO2023136738
(87)【国際公開日】2023-07-20
(81)【指定国・地域】
(71)【出願人】
【識別番号】505315742
【氏名又は名称】トプコン ポジショニング システムズ, インク.
(74)【代理人】
【識別番号】110003937
【氏名又は名称】弁理士法人前川知的財産事務所
(72)【発明者】
【氏名】ドミトリー アナトーリエヴィチ ルプツォフ
(72)【発明者】
【氏名】アレクセイ スタニスラヴォヴィチ レベジンスキー
【テーマコード(参考)】
5J062
【Fターム(参考)】
5J062CC07
5J062DD13
5J062DD14
(57)【要約】
航法受信機は、全地球航法衛星システム信号を受信し、航法受信機にて使用されるプロセッサの負荷を低減する方法で信号を処理する。航法受信機は、航法受信機のプロセッサの負荷を低減するリラックスティック信号を使用して、信号の発生などの事象を検出して応答するように組み立てられて構成された複数のコンポーネントを含んでいる。
【特許請求の範囲】
【請求項1】
航法受信機であって、
アンテナから全地球航法衛星システム(GNSS)信号を受信し、中間周波数で前記GNSS信号を送信するように構成されたRF経路と、
前記RF経路から前記中間周波数で前記GNSS信号を受信し、周波数CLKnavで前記GNSS信号をサンプリングするように構成されたアナログ-デジタルコンバータ(ADC)と、
ティック信号及びリラックスティック信号を生成するように構成されたタイムスケール生成器と、
前記ADCから前記GNSS信号を受信するように構成されたチャネルと、
前記航法受信機を制御して相関器からデータを読み取るCPUと、を
備え、
前記チャネルは、
中間周波数及び中間周波数位相でパルスを生成するように構成された中間周波数数値制御発振器(NCO)と、
コードレートNCO位相及びコードレートNCO周波数を有するコードレートNCO信号を生成するように構成されたコードレートNCO(CRNCO)と、
前記コードレートNCO周波数に基づいてコード信号を生成するように構成されたコード生成器と、
前記コードレートNCO位相及び前記コード信号の形状に基づいて、ストローブ信号を生成するように構成されたストローブ生成器と、
前記コードレートNCO周波数に基づいて積分期間信号を生成するように構成された積分期間カウンタと、
前記ADCから前記GNSS信号を受信するように構成されたコミュテータと、
前記コミュテータから出力された信号、前記コード生成器から出力された信号、及び、前記中間周波数NCOからの中間周波数位相を乗算して第1の積を生成するように構成され、かつ、積分期間中に前記第1の積を格納するように構成され、かつ、前記コミュテータから出力された信号、前記ストローブ信号、及び前記中間周波数NCOからの前記中間周波数位相を乗算して第2の積を生成するように構成され、かつ、前記積分期間中に前記第2の積を格納するように構成された前記相関器と、を備える、
航法受信機。
【請求項2】
前記CRNCOは、更新CRNCOから出力される即時の信号、前記積分期間信号、前記リラックスティック信号、及び前記ティック信号のうちの1つに基づいて、前記コードレートNCO周波数を生成するようにさらに構成されている、
請求項1に記載の航法受信機。
【請求項3】
前記CRNCOは、更新CRNCOから出力される即時の信号、前記積分期間信号、前記リラックスティック信号、及び前記ティック信号のうちの1つに基づいて、コードレートNCO位相シフトを生成するようにさらに構成されている、
請求項1に記載の航法受信機。
【請求項4】
前記CRNCOと通信する更新ロック位相CRNCOをさらに備え、
前記更新ロック位相CRNCOは、更新CRNCOから出力される即時の信号、前記積分期間信号、前記リラックスティック信号、及び前記ティック信号のうちの1つに基づいて、CRNCOロック位相更新信号を生成するように構成されている、
請求項1に記載の航法受信機。
【請求項5】
中間周波数NCO周波数更新信号は、更新IFNCOから出力される即時の信号、前記積分期間信号、前記リラックスティック信号、及び前記ティック信号のうちの1つから選択される、
請求項1に記載の航法受信機。
【請求項6】
中間周波数NCO位相シフト更新信号は、前記ティック信号、前記リラックスティック信号、前記積分期間信号、及び中間信号更新IFNCOのうちの1つから選択される、
請求項1に記載の航法受信機。
【請求項7】
中間周波数NCOにおいて現在の中間周波数位相をロックさせる中間周波数NCO周波数更新信号を生成するように構成された更新周波数IFNCOをさらに備え、
前記中間周波数NCO周波数更新信号は、更新IFNCOから出力される即時の信号、前記積分期間信号、前記リラックスティック信号、及び前記ティック信号のうちの1つに基づいている、
請求項1に記載の航法受信機。
【請求項8】
前記CPUは、更新信号に基づいて、コード周波数信号を前記コードレートNCOのバッファレジスタにコピーするように構成されている、
請求項1に記載の航法受信機。
【請求項9】
前記CPUは、更新信号に基づいて、前記中間周波数NCOにおけるバッファレジスタのインタフェースレジスタに、中間周波数制御信号をコピーするように構成されている、
請求項1に記載の航法受信機。
【請求項10】
前記コードレートNCOは、更新信号に基づいて、コードレートNCOコード位相を位相シフトするようにさらに構成されている、
請求項1に記載の航法受信機。
【請求項11】
前記中間周波数NCOは、更新信号に基づいて、前記中間周波数NCOにおける中間周波数を位相シフトするようにさらに構成されている、
請求項1に記載の航法受信機。
【請求項12】
前記CPUは、積分期間にわたって、前記相関器においてプライマリバッファの値を格納するように構成されている、
請求項1に記載の航法受信機。
【請求項13】
前記CPUは、前記ティック信号に基づいてプライマリバッファからデータをコピーし、セカンダリバッファにおいて前記プライマリバッファからの前記データを格納するように構成されている、
請求項1に記載の航法受信機。
【請求項14】
前記リラックスティック信号の期間は、前記ティック信号の期間の倍数である、
請求項1に記載の航法受信機。
【請求項15】
航法受信機の操作方法であって、
GNSS信号を受信する工程と、
周波数CLKnavで前記GNSS信号をサンプリングする工程と、
ティック信号及びリラックスティック信号を生成する工程と、
中間周波数及び中間周波数位相でパルスを生成する工程と、
コードレートNCO位相及びコードレートNCO周波数を有するコードレートNCO信号を生成する工程と、
前記コードレートNCO周波数に基づいてコード信号を生成する工程と、
前記コードレートNCO位相及び前記コード信号の形状に基づいてストローブ信号を生成する工程と、
前記コードレートNCO周波数に基づいて積分期間信号を生成する工程と、
サンプリングされた前記GNSS信号を受信するコミュテータから出力される信号、前記コード信号、及び前記中間周波数位相を乗算して、前記積分期間信号によって識別される期間中に格納される第1の積を生成する工程と、
サンプリングされた前記GNSS信号を受信するコミュテータから出力される信号、前記ストローブ信号、及び前記中間周波数位相を乗算して、前記積分期間信号によって識別される期間中に格納される第2の積を生成する工程と、
前記ティック信号、リラックスティック信号、前記第1の積、及び前記第2の積に基づいて前記航法受信機を制御する工程と、を備える、
航法受信機の操作方法。
【請求項16】
更新コードレートNCO又は更新IFNCOのうちの1つから出力された即時の信号、前記積分期間信号、前記リラックスティック信号、及び前記ティック信号のうちの1つに基づいて、前記コードレートNCO周波数をコードレートNCOにより生成する工程をさらに備える、
請求項15に記載の方法。
【請求項17】
更新コードレートNCO又は更新IFNCOのうちの1つから出力された即時の信号、前記積分期間信号、前記リラックスティック信号、及び前記ティック信号のうちの1つに基づいて、コードレートNCO位相シフトをコードレートNCOにより生成する工程をさらに備える、
請求項15に記載の方法。
【請求項18】
航法受信機であって、
GNSS信号を受信する手段と、
周波数CLKnavで前記GNSS信号をサンプリングする手段と、
ティック信号及びリラックスティック信号を生成する手段と、
中間周波数及び中間周波数位相でパルスを生成する手段と、
コードレートNCO位相及びコードレートNCO周波数を有するコードレートNCO信号を生成する手段と、
前記コードレートNCO周波数に基づいてコード信号を生成する手段と、
前記コードレートNCO位相及び前記コード信号の形状に基づいてストローブ信号を生成する手段と、
前記コードレートNCO周波数に基づいて積分期間信号を生成する手段と、
サンプリングされた前記GNSS信号を受信するコミュテータから出力される信号、前記コード信号、及び前記中間周波数位相を乗算して第1の積を生成する手段と、
前記積分期間信号によって識別される期間中に前記第1の積を格納する手段と、
サンプリングされた前記GNSS信号を受信するコミュテータから出力される信号、前記ストローブ信号、及び前記中間周波数位相を乗算して第2の積を生成する手段と、
前記積分期間信号によって識別される期間中に前記第2の積を格納する手段と、
前記ティック信号、前記リラックスティック信号、前記第1の積、及び前記第2の積に基づいて、GNSS受信機を制御する手段と、を備える、
航法受信機。
【請求項19】
更新CRNCOから出力される即時の信号、前記積分期間信号、前記リラックスティック信号、及び前記ティック信号のうちの1つに基づいて、前記コードレートNCO周波数を生成する手段をさらに備える、
請求項18に記載の航法受信機。
【請求項20】
更新CRNCOから出力される即時の信号、前記積分期間信号、前記リラックスティック信号、及び前記ティック信号のうちの1つに基づいて、前記コードレートNCO位相を生成する手段をさらに備える、
請求項18に記載の航法受信機。
【請求項21】
更新IFNCOから出力される即時の信号、前記積分期間信号、前記リラックスティック信号、及び前記ティック信号のうちの1つに基づいて、中間周波数NCO周波数を中間周波数NCOによって生成する工程をさらに備える、
請求項15に記載の方法。
【請求項22】
更新IFNCOから出力される即時の信号、前記積分期間信号、前記リラックスティック信号、及び前記ティック信号のうちの1つに基づいて、中間周波数NCO位相シフトを中間周波数NCOによって生成する工程をさらに備える、
請求項15に記載の方法。
【請求項23】
更新IFNCOから出力される即時の信号、前記積分期間信号、前記リラックスティック信号、及び前記ティック信号のうちの1つに基づいて、中間周波数NCO周波数を生成する手段をさらに備える、
請求項18に記載の航法受信機。
【請求項24】
更新IFNCOから出力される即時の信号、前記積分期間信号、前記リラックスティック信号、及び前記ティック信号のうちの1つに基づいて、中間周波数NCO位相シフトを生成する手段をさらに備える、
請求項18に記載の航法受信機。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般的には、GPS又はGLONASSなどの種々の全地球航法衛星システム(GNSS)からの信号を処理するための方法に関し、より具体的には、プロセッサの負荷を低減するための方法に関する。
【背景技術】
【0002】
全地球航法衛星システム受信機におけるプロセッサの速度は、信号生成などの発生事象がプロセッサにより検出され、それに応じて応答されるのに、十分なものでなければならない。プロセッサが遅すぎたり過負荷になったりすると、それは適時に事象を処理することができない。
【0003】
米国特許第 8,401,546 B2号は、全地球航法衛星システム(GNSS)のためのユニバーサル捕捉追跡装置に関する。捕捉追跡装置は、1ミリ秒間隔にわたって入力信号を処理し、ローカル割り込みマネージャに入力される時間フレーム(コードエポック)を生成するチャネルを有すると説明されている。1ミリ秒の割合(Global 1ms)でのグローバル時間信号もまた、生成されて割り込み信号として機能する。グローバル割り込みマネージャは、グローバル時間信号を複数のチャネルプロセッサのそれぞれに分配し、複数の相関信号、サンプルキャリア及びコード位相信号の少なくとも1つを含む蓄積データをチャネルプロセッサのそれぞれから収集し、蓄積されたデータをさらなる処理のためのコンピュータホストに転送する。相関は、常に蓄積され、1ミリ秒の割合で処理するための割り込みハンドラローカル割り込みモジュールに「ダンプ」されるが、フィードバック信号は、特定された合計コヒーレント及びノンコヒーレントの積分期間の終了時に更新される。
【0004】
米国特許第8,331,422 B2号は、微弱なGPS/GNSS信号を使用し、サブマイクロ秒の時間転送を使用した取得、追跡及び転送のための方法及び装置に関する。方法及び装置は、固定GPS/GNSS受信機における高感度GPS/GNSS信号取得を提供する。制御アルゴリズム及び装置であって、入力信号、疑似ランダムノイズ(PRN)コード信号、及び数値制御発振器(NCO)の出力信号の1ms相関が生成され、20msシンボルが出力される。見かけのドップラーシフトに起因する周波数の不確実性は、複数の連続した周波数ビンに分割され、航法データビット境界の位置の不確実性は、等間隔の試行ビット境界位置に分割される。例えば、ドップラーシフトの補填は、1Hz/sec以下の割合での補正によって生成される。
【0005】
これらの特許は、プロセッサを特定の間隔に基づいて動作させる構成を記載しているが、これらの構成は、プロセッサの負荷を低減するものではない。必要なことは、プロセッサの負荷を低減して、それが信号を適時に処理することができるようにする方法及び装置である。
【発明の概要】
【0006】
一実施形態では、GNSS受信機(「航法受信機」ともいう。)は、アンテナから全地球航法衛星システム(GNSS)信号を受信し、中間周波数を介してGNSS信号を送信するように構成されたRF経路を含んでいる。
アナログ-デジタルコンバータ(ADC)は、RF経路から中間周波数でGNSS信号を受信し、周波数CLKnavでGNSS信号をサンプリングするようになっている。
タイムスケール生成器は、ティック信号及びリラックスティック信号を生成するように構成されている。
ADCからGNSS信号を受信するように構成されたチャネルは、中間周波数と中間周波数位相とにてパルスを生成するように構成された中間周波数数値制御発振器(NCO)を含んでいる。
チャネルはまた、コードレートNCO位相とコードレートNCO周波数とを有するコードレートNCO信号を生成するように構成されたコードレートNCOを含んでいる。
チャネルはまた、コードレートNCO周波数に基づいてコード信号を生成するように構成されたコード生成器を含んでいる。
チャネルはまた、コードレートNCO位相及びコード信号の形状に基づいてストローブ信号を生成するように構成されたストローブ生成器と、コードレートNCO周波数に基づいて積分期間信号を生成するように構成された積分期間カウンタと、ADCからGNSS信号を受信するように構成されたコミュテータと、を含んでいる。
チャネルはまた、コミュテータとコード生成器とから出力される信号と、中間周波数NCOからの中間周波数位相と、を乗算して第1の積を生成するように構成され、かつ、積分期間において第1の積を格納するように構成された相関器を含んでいる。
相関器はまた、コミュテータから出力される信号と、ストローブ信号と、中間周波数NCOからの中間周波数位相とを乗算して第2の積を生成するように構成され、かつ、積分期間において第2の積を格納するように構成されている。
航法受信機はまた、航法受信機を制御し、相関器からのデータを読み取るCPUを含んでいる。
航法受信機を操作するための方法もまた説明される。
【図面の簡単な説明】
【0007】
【
図1】
図1は、一実施形態における全地球航法衛星システム(GNSS)受信機を示している。
【
図2】
図2は、
図1に示すタイムスケール生成器の詳細を示している。
【
図5】
図5は、一実施形態における、ティック(すなわち、クロックパルス信号)と、積分期間信号と、プライマリバッファ及びセカンダリバッファにおけるデータと、の関係を表示している時間ダイアグラムを示している。
【
図6】
図6は、一実施形態におけるティック、読み取り、処理、及び書き込みの動作の関係を表示している時間ダイアグラムを示している。
【
図7】
図7は、一実施形態における、ティック、リラックスティック(すなわち、クロックパルスに基づいて生成され、クロックパルスよりも後に発生するティック)、並びに、読み取り、処理、及び、書き込みの動作の関係を表示している時間ダイアグラムを示している。
【
図8】
図8は、一実施形態における、リラックスティックが生成及び利用されるGNSS受信機を示している。
【
図9】
図9は、
図8に示されるタイムスケール生成器の詳細を示している。
【
図11】
図11は、一実施形態における航法受信機を動作させるための方法を示している。
【発明を実施するための形態】
【0008】
全地球航法衛星システム受信機のプロセッサの速度は、信号の生成などの発生事象が、プロセッサにより検出され、それに応じて応答されるほどに、十分なものでなければならない。この検出と応答とは、生の測定値を生成するために必要である。生の測定値を正しく生成するためには、ティック信号(すなわち、クロックパルス)に従って中間周波数及びコード周波数にて制御値を更新する必要がある。具体的には、制御値は、正確に既知の時間に発生する事象に従って更新される必要がある。使用時間におけるコード周波数及び中間周波数の積分は、コード及び位相の測定値を生成するために使用される。新しい中間周波数及びコード周波数の使用時間に誤差があると、生の測定値の誤差が蓄積される。
【0009】
制御信号は、プログラム可能であり、CPUによって実行される追跡アルゴリズムにより生成される。制御信号は、特定の時間に一又は複数のチャネルに書き込まれる。制御信号は、既知のティック信号(発生するクロックパルスなど)に基づいて開始される動作(更新/コピーなど)を実行する。既知のティック信号に基づいて開始する動作に関する、この制限は、GNSS受信機のプログラムコンポーネントの厳密なリアルタイム要件に適用される。さらに、持続時間(時間的に隣接する2つのティック間の時間など)に関して1ティックより長く持続する制御信号の生成は、チャネル相関器からのコンポーネントの読み取り、及び通信サブシステムにおけるデータ交換タスクなど、種々のタスクによって中断される可能性がある。ティック中に実行される動作の期間は、1つのコード持続時間(1/1023000=977ms)から、チャネルからCPUメモリへのデータの読み取りに必要な時間を差し引いた期間より長くすることはできない。
【0010】
特定の動作が発生する時間をより多く確保するために、リラックスティックを追加することができる。リラックスティックは、通常であればクロックパルスに基づいて発生するティックの後に発生するように生成されるティックである。例えば、1秒あたり2回の割合でクロックから出力されるティックであれば、2Hzのティック周波数を提供する。リラックスティックは、クロックによって生成されるティックが発生し、リラックスティックが後で(例えば、クロックによって生成された元のティックの後の次のクロックティックよりも後で)発生するように、生成され、1Hzのティック周波数を提供する。
クロックパルスから生成されるティックが発生する時間を超える期間、及びクロックパルスの倍数だけ、周波数において制御信号の生成開始に対して延期されるリラックスティックを追加すると、信号追跡アルゴリズムの実行時間要件を大幅に削減することができ、保証された新しい値を提供するために必要な余分なオーバーヘッドを削減することができる。リラックスティックは、ティックよりも低い頻度で生成される。
【0011】
図1は、RF経路101(1…N)に入力される信号を受信するアンテナ100を有する全地球航法衛星システム受信機を示している。RF経路101(1…N)のそれぞれは、それぞれのアナログ-デジタルコンバータ(ADC)102(1…N)に信号を送信する。ADC102(1…N)の出力は、チャネル103(1、2、…N)に入力される。ADC102(1…N)及びチャネル103(1、2、…N)は、本明細書では、まとめてADC102及びチャネル103と称される場合があることに留意されたい。同様の番号が付された他のコンポーネントも同様にまとめて称される場合がある。チャネル103(1、2、…N)は、タイムスケール生成器104にも接続されている。チャネル103(1、2、…N)は、タイムスケール生成器104からティック信号S107を受信する。ティック信号は、タイムスケール生成器104から中央処理装置(CPU)105(「プロセッサ」ともいう。)にも送信される。CPU105は、通信モジュール106を介して、ユーザ109に情報を送信したり、ユーザ109から情報を受信したりすることができる。
【0012】
一実施形態では、CPU105は、チャネル103及びタイムスケール生成器104を制御する。一実施形態では、
図1に示される受信機は、次のように動作する。受信機の動作前に、CPU105は、タイムスケール生成器104を調整する。タイムスケール生成器104は、等時間間隔においてティック信号S107(ティック)を生成する。
【0013】
衛星信号は、アンテナ100によって受信され、RF経路101及びADC102を通過して、チャネル103に入力される。チャネル103は、ADC102からの信号を処理する。タイムスケール生成器104は、クロックサイクル(ティック)を生成する。CPU105は、チャネル103及びタイムスケール生成器104を制御する。CPU105は、ティック信号S107が利用可能なときにチャネル103から受信した情報、及び、通信モジュール106を介して受信した情報を処理し、生成されたデータを通信モジュール106経由でユーザ109に送信する。一実施形態では、ADC102、チャネル103、及びタイムスケール生成器104は、クロックCLKnavにて動作する。
【0014】
図2は、
図1に示されるタイムスケール生成器104の詳細を示している。一実施形態では、タイムスケール生成器104は、CPU105及び閾値ユニット301と通信するクロックカウンタ300を備えている。一実施形態では、タイムスケール生成器104は次のように動作する。
【0015】
タイムスケール生成器104の動作が開始する前に、CPU105は閾値ユニット301に閾値を割り当てる。動作が開始する前、クロックカウンタ300の値は0である。クロックカウンタ300の値は、クロックCLKnavの各パルスごとに1ずつ増加する。クロックカウンタ300の値は、閾値ユニット301の入力に送信される。値がCPU105によって閾値ユニット301に割り当てられた閾値に等しい場合、閾値ユニット301の出力は1である。クロックカウンタ300の値が閾値に等しくない場合、閾値ユニット301の出力は0である。閾値ユニット301からの出力信号は、割り込みとしてCPU105、クロックカウンタ300、及びチャネル103に入力される。閾値ユニット301の出力信号が1に等しい場合、クロックカウンタ300は次のクロックでリセットされる(例えば、0に設定される)。ティック信号S107は、クロックカウンタ301の閾値ユニットの出力信号である。
【0016】
図3は、
図1及び
図2に示されたチャネル103の詳細を示している。一実施形態では、チャネル103は、CRNCO200というコードレート数値制御発振器(NCO)、コード生成器201、中間周波数NCO(IFNCO)202、積分期間カウンタ203、コミュテータ204、相関器205、積分期間信号S206、更新周波数CRNCO207、更新シフト位相CRNCO208、更新ロック位相CRNCO209、更新周波数IFNCO210、更新シフト位相IFNCO211、更新ロック位相IFNCO212、更新周波数CRNCO信号S207、更新シフト位相CRNCO信号S208、更新ロック位相CRNCO信号S209、更新周波数IFNCO信号S210、更新シフト位相IFNCO信号S211、更新ロック位相IFNCO信号S212、ストローブ生成器213、コード周波数信号S215、コード位相信号S216、COSコサイン信号S217、SINサイン信号S218、コード(PRNコード信号)S219、ストローブ信号S220を備えている。更新CRNCO207、208、209、及び、更新IFNCO210、211、212は、ユニットともいう。
【0017】
一実施形態では、CPU105は、CRNCO200、コード生成器201、IFNCO202、積分期間カウンタ203、コミュテータ204、相関器205、更新周波数CRNCO207、更新シフト位相CRNCO208、更新ロック位相CRNCO209、更新周波数IFNCO210、更新シフト位相IFNCO211、更新ロック位相IFNCO212、及びストローブ生成器213を制御し、及び/又は、それらからデータを受信する。
【0018】
一実施形態では、信号は次のようにコンポーネント間で送信される。更新周波数CRNCO信号S207は、更新周波数CRNCO207から出力され、CRNCO200の入力に送信される。更新シフト位相CRNCO信号S208は、更新シフト位相CRNCO208から出力され、CRNCO200の入力に送信される。更新ロック位相CRNCO信号S209は、更新ロック位相CRNCO209から出力され、CRNCO200の入力に送信される。
【0019】
更新周波数IFNCO信号S210は、更新周波数IFNCO210から出力され、IFNCO202の入力に送信される。更新シフト位相信号IFNCOS211は、更新シフト位相IFNCO211から出力され、IFNCO202の入力に送信される。更新ロック位相IFNCO信号S212は、更新ロック位相IFNCO212から出力され、IFNCO202の入力に送信される。信号S207、S208、S209、S210、S211、S212は、更新信号ともいう。
【0020】
一実施形態では、CPU105は、CRNCO200を制御する。CPU105は、コード周波数、インタフェースレジスタ、及び1つの値をCRNCO200に割り当て、信号S207に基づいてインタフェースレジスタからバッファ(クロック周波数CLKnavで動作する)にデータを更新/コピーする。CPU105はコード位相シフトをインタフェースレジスタに入力し、インタフェースレジスタからのコード位相シフトは信号S208に基づいて現在のコード位相に追加され、インタフェースレジスタにおけるコード位相シフトは0に等しいように設定される。CPU104は、CRNCO200でのコードロック位相レジスタにてコード位相の現在の状態をコピーし、この値は信号S209に基づいて更新される。
【0021】
一実施形態では、CPU105は、IFNCO202を次のように制御する。CPU105は、中間周波数をインタフェースレジスタに入力し、1つの値をIFNCO202に割り当て、信号S210に基づいてインタフェースレジスタからバッファレジスタ(クロック周波数CLKnavで動作する)にデータを更新/コピーする。CPU105は中間周波数位相シフトをインタフェースレジスタに入力し、信号S211に基づいて、インタフェースレジスタからの中間周波数位相シフトは現在の中間周波数位相に追加され、インタフェースレジスタにおける中間周波数位相シフトは0に等しいように設定される。CPU105は、IFNCO202における現在の中間周波数位相を中間周波数ロック位相にコピーし、この値は信号S212に基づいて更新される。
【0022】
CPU105がCRNCO200でのコード周波数インタフェースレジスタにて新しい値を書き込むと、即時の信号がユニット207にて生成される。CPU105がCRNCO200でのコード位相シフトのインタフェースレジスタにて新しい値を書き込むと、即時の信号がユニット208で生成される。CPU105がCRNCO200でのコード周波数ロック位相のレジスタにて新しい値を書き込むと、即時の信号がユニット209にて生成される。CPU105がIFNCO202での中間周波数のインタフェースレジスタにて新しい値を書き込むと、即時の信号がユニット210にて生成される。CPU105がIFNCO202での中間周波数位相シフトのインタフェースレジスタにて新しい値を書き込むと、即時の信号がユニット211にて生成される。CPU105がIFNCO202での中間周波数ロック位相のインタフェースレジスタにて新しい値を書き込むと、即時の信号がユニット212にて生成される。即時の信号は、1つのクロックサイクルCLKnavである。
【0023】
一実施形態では、CPU105はユニット207、208、209、210、211、212を制御し、これらのユニットの出力において更新信号が生成される。各ユニット207、208、209、210、211、212は、自身の/独立した制御を有する。
【0024】
一実施形態では、ティック信号S107、積分期間信号S206は、ユニット207、208、209、210、211、212のそれぞれの出力に供給される。シングルクロック/ワンクロック信号は、ユニット207、208、209、210、211、212から更新信号を出力させることができる。
【0025】
一実施形態では、即時の信号は、後述する制御ユニットにおける対応する1つのレジスタに値が書き込まれた後、CPU制御ユニット207、208、209、210、211、212の1つから生成されて出力される。積分期間信号S206は、積分期間終了の信号であり、積分期間カウンタ203によって生成される。ティック信号S107は、タイムスケール生成器104によって生成される。表1は、CPU105からの信号に基づくユニット207、208、209、210、211、212の出力信号を示している。
【0026】
【0027】
ティック信号S107に基づいて、積分期間カウンタ203の現在の状態は、積分期間カウンタのロック状態のレジスタにコピーされる。
【0028】
積分期間カウンタのロック状態、IFNCO202における中間周波数ロック位相、及び、CRNCO200におけるロック位相レジスタは、疑似範囲算出のために使用され、ティック信号S107に基づいて動作する。IFNCO202は、コサイン信号とサイン信号との2つの信号を生成して出力する。
【0029】
一実施形態では、
図3に示されるチャネルの初期設定は次の通りである。
図3のチャネルの動作を開始する前に、CPU105は、コード生成器201、コミュテータ204、ユニット209、212、ストローブ生成器213を調整し、次の操作もまた実行する。CPU105は、CRNCO200にてコード周波数を設定する。必要であれば、CPU105は、CRNCO200にてコード位相シフトを割り当てる。CPU105は、ユニット207、208を更新信号及びティック信号S107として選択する。CPU105は、IFNCO202にて中間周波数を設定する。必要であれば、CPU105は、IFNCO202にて中間周波数位相シフトを設定する。CPU105は、ユニット210及び211の出力を更新信号及びティック信号S107として選択する。CPU105は、積分期間カウンタ203において積分期間S206の持続時間を設定する。
【0030】
一実施形態では、
図3に示されるチャネルの動作は次のとおりである。タイムスケール生成器104から出力されるティック信号S107は、更新周波数CRNCO207、更新シフト位相CRNCO208、更新ロック位相CRNCO209、更新周波数IFNCO210、更新シフト位相IFNCO211、更新ロック位相IFNCO212、積分期間カウンタ203、相関器205、及びCPU105に入力される。CRNCO200は、ティック信号S107に基づいてコード周波数を生成する。コード周波数S215は、CRNCO200から出力されてコード生成器201に入力され、この周波数でコード信号S219が生成される。CRNCO200から出力されたコード周波数は積分期間カウンタ203に入力され、積分期間信号S206は受信コード周波数で必要な持続時間をカウントアウトする。コード生成器201からのコード信号S219は、相関器205及びストローブ生成器213に入力される。CRNCO200の出力からのコード位相信号S216は、ストローブ生成器213に入力される。ストローブ生成器213は、相関器205に入力されるストローブ信号S220を生成する。
【0031】
一実施形態では、積分期間カウンタ203から出力される積分期間信号S206は、相関器205、周波数更新CRNCO207、シフト位相更新CRNCO208、ロック位相更新CRNCO209、周波数更新IFNCO210、シフト位相更新IFNCO211、ロック位相更新IFNCO212、及びCPU105に入力される。
【0032】
一実施形態では、IFNCO202は、ティック信号S107に基づいて中間周波数を生成する。IFNCO202から出力される中間周波数位相信号(信号COS S217及びSIN S218)は、相関器205に入力される。
【0033】
一実施形態では、デジタル化された信号は、ADC102から出力されてコミュテータ204に入力される。コミュテータ204から出力された選択信号の1つは、相関器205に入力される。
【0034】
図4は、
図3に示される相関器205の詳細を示している。一実施形態では、相関器205は、乗算ユニット400、401、402、403、404、405、アキュムレータI(Acc I)406、アキュムレータQ(Acc Q)407、アキュムレータdl(Acc dl)408、アキュムレータdQ(Acc dQ)409、プライマリバッファI410、プライマリバッファQ411、プライマリバッファdl412、プライマリバッファdQ413、セカンダリバッファI414、セカンダリバッファQ415、セカンダリバッファdl416、及びセカンダリバッファdQ417を備えている。
【0035】
相関器205では、IFNCO202からの中間周波数位相信号(信号COS S217及びSIN S218)は、コミュテータ204から出力されるデジタル信号とコード生成器201から出力されるコード信号S219とにより乗算される。また、相関器205では、IFNCO202からの中間周波数位相信号(信号COS S217及びSIN S218)は、コミュテータ204から出力されるデジタル信号とストローブ生成器213から出力されるストローブ信号S220とにより乗算される。
【0036】
乗算結果は、蓄積し、積分期間信号S206に基づく期間にわたって格納される。格納された数値は、相関器205におけるプライマリバッファ410、411、412、413にコピーされ、積分期間信号S206に従ってゼロに設定される。相関器205は、CPU105によって読み取られるコンポーネントI、Q、dI、dQを生成する。値は、ティック信号S107に基づいて、プライマリバッファ410/411/412/413からセカンダリバッファ414、415、416、417にコピーされる。
【0037】
一実施形態では、CPU105は、動作中に必要であれば次の変更/割り当て/読み取り、すなわち、CRNCO200におけるコード周波数の変更、CRNCO200におけるコード位相シフトの割り当て、ユニット207、208、209、210、211、212の制御の変更、IFNCO202における中間周波数の変更、IFNCO202における中間周波数位相シフトの割り当て、CRNCO200におけるコード周波数ロック位相のレジスタの読み取り、IFNCO202における中間周波数ロック位相のレジスタの読み取り、積分期間カウンタ203のロック状態のレジスタの読み取り、相関器205におけるプライマリバッファ410、411、412、413の読み取り、相関器205におけるセカンダリバッファ414、415、416、417の読み取りを行う。
【0038】
一実施形態では、ストローブ生成器213の動作は、
図2に示されるユニバーサルストローブ生成器500に関して、米国特許第7,764,226号に記載されている通りである。米国特許第7,764,226号は、本明細書において参照により組み込まれている。
【0039】
一実施形態では、
図4に示される相関器は次のように動作する。
コミュテータ204から出力されるデジタル信号とIFNCO202から出力されるコサイン信号S217とは、乗算ユニット400に入力され、そこで信号が乗算される。
コミュテータ204から出力されるデジタル信号とIFNCO202から出力されるサイン信号S218とは、乗算ユニット401に入力され、そこで信号が乗算される。
ユニット400による乗算結果とコード生成器201からのコード信号S219とは、乗算ユニット402に入力され、そこで信号が乗算される。
ユニット401による乗算結果とコード生成器201からのコード信号S219とは、乗算ユニット403に入力され、そこで信号が乗算される。
ユニット400による乗算結果とストローブ生成器213からのストローブ信号S220とは、乗算ユニット404に入力され、そこで信号が乗算される。
ユニット401による乗算結果とストローブ生成器213からのストローブ信号S220とは、乗算ユニット405に入力され、そこで信号が乗算される。
積分期間カウンタ203から出力される積分期間信号S206は、ユニット406、407、408、409、410、411、412、413の入力に送信される。
ユニット402による乗算結果は、アキュムレータI406に入力され、そこで、積分期間信号S206が動作している間、格納される。
ユニット403による乗算結果は、アキュムレータQ407に入力され、積分期間信号S206が動作している間、格納される。
ユニット404による乗算結果は、アキュムレータdI408に入力され、積分期間信号S206が動作している間、格納される。
ユニット405による乗算結果は、アキュムレータdQ409に入力され、積分期間信号S206が動作している間、格納される。
【0040】
一実施形態では、積分期間信号S206に基づいて、アキュムレータI406からの格納値がプライマリバッファ1410にコピーされ、アキュムレータI406にて格納された値が値0に設定され、アキュムレータI407にて格納された値がプライマリバッファQ411にコピーされ、アキュムレータI407にて格納された値が0に設定され、アキュムレータI408にて格納された値がプライマリバッファdl412にコピーされ、アキュムレータI408にて格納された値が値0に設定され、アキュムレータI409にて格納された値がプライマリバッファdQ413にコピーされ、アキュムレータI409にて格納された値が値0になる。
【0041】
一実施形態では、ティック信号S107及び積分期間信号S206に基づいて、プライマリバッファI410での値がセカンダリバッファI414にコピーされ、プライマリバッファQ411からの値がセカンダリバッファQ415にコピーされ、プライマリバッファdI412での値がセカンダリバッファdI416にコピーされ、プライマリバッファdQ413での値がセカンダリバッファdQ417にコピーされる。
【0042】
一実施形態では、CPU105は、プライマリバッファI410、プライマリバッファQ411、プライマリバッファdI412、プライマリバッファdQ413、セカンダリバッファI414、セカンダリバッファQ415、セカンダリバッファdI416、及びセカンダリバッファdQ417から値を読み取る。ティック信号S107の期間は、使用される最小の積分期間信号S206よりも小さい値になるように選択される。動作中のティック信号S107の期間にわたってセカンダリバッファ414、415、416、417に値を格納すると、プライマリバッファ410、411、412、413での値が変更された場合であっても(これらの値は積分期間信号S206に従って更新される)、これらの値の読み取りが保証される。
【0043】
図5は、ティック信号S107と、積分期間S206と、プライマリバッファ及びセカンダリバッファにおけるデータと、の関係を表すタイミング図を示している。ティック信号S107の期間において、プライマリバッファ410、411、412、413でのチャネル103にて値が変更された場合、積分期間信号S206に基づいて新しいコンポーネントが相関器205、I、Q、dI、dQにて書き込まれる。ティック信号S107に基づいて、プライマリバッファ410、411、412、413からの値がセカンダリバッファ414、415、416、417にコピーされる。ユニット414、415、416、417からの値は、ティック信号S107の次の期間で1回読み取られ、ユニット414、415、416、417から読み取られた値は、CPU105によって処理される。
【0044】
図6は、ティック、読み取り、処理、及び書き込みの動作の関係を表すタイミング図を示している。一実施形態では、中間周波数とコード周波数とについての制御値の更新は、ティックの生成に基づいている。具体的には、生のデータの正確な生成は、正確な既知の時点で発生する事象に基づく必要がある。使用時間におけるコード周波数と中間周波数との積分は、チャネル103の相関器205においてレプリカを形成するために使用され、そのレプリカは、コード及び位相の測定値を生成するために使用される。中間周波数とコード周波数との新しい値の時間の適用及び/又は使用におけるエラーは、生データにおけるエラーの蓄積をもたらす。
【0045】
一実施形態では、制御信号自体は、プログラム可能であり、CPU105における追跡アルゴリズムによって生成される。一実施形態では、制御信号は、特定の時点でチャネル103のインタフェースレジスタにて書き込まれる。それらは、ティック信号から書き込まれる(例えば、CRNCO200及びIFNCO202におけるインタフェースレジスタからバッファレジスタに更新及び/又はコピーされる)。この制限は、GNSS受信機のプログラムコンポーネントに対する厳密なリアルタイム要件に適用可能である。さらに、制御信号の生成は、1ティック期間よりも長く持続する可能性があり、チャネル103からの読み取り、データ交換タスクなどの様々なタスクによって中断される可能性がある。ティック事象を形成するための期間は、1コード期間の格納期間よりも長くすることはできない(例えば、1/1023000=977ms)。
【0046】
一実施形態では、コード周波数及び中間周波数における制御信号の生成開始に対して、一又は複数のティックを超える時間延期されたリラックスティック事象を追加することにより、信号追跡アルゴリズムの実行時間要件を減少させ、IFNCO及びCRNCOについての新しい制御値の使用を保証するための不要な負担を回避することができる。
図7は、リラックスティック、読み取り、処理、及び書き込みの動作の関係を表すタイミング図を示している。
【0047】
図8は、一実施形態におけるリラックスティックが生成及び利用される受信機を示している。
図8に示す受信機は、
図1に示す受信機の構成と同様の構成を有している。しかし、
図8に示す受信機の構成の一部は、
図1に示す受信機の対応する構成とは異なっている。
図8の異なる構成/信号は、「修正」という用語により識別される。これらの違いにより、
図8の受信機は、リラックスティックを生成して利用することができる。
図8に示す受信機と
図1に示す受信機との相違は次の通りである。
チャネル103(1
…N)は、修正されたチャネル110(1
…N)により置き換えられる。タイムスケール生成器104は、修正されたタイムスケール生成器111により置き換えられる。リラックスティック信号S108は、修正されたタイムスケール生成器111から出力される。リラックスティック信号S108は、割り込み信号として、修正されたチャネル110(1
…N)及びCPU105に入力される。
【0048】
図9は、
図8に示された、修正されたタイムスケール生成器111の詳細を示している。一実施形態では、修正されたタイムスケール生成器111は、リラックスティックカウンタ302、閾値リラックスティックカウンタ303、及びANDゲート304を備えている。
【0049】
一実施形態では、修正されたタイムスケール生成器111は次のように動作する。動作前に、CPU105は、閾値クロックカウンタ301にて閾値を割り当て、リラックスティックカウンタ303にて閾値を割り当てる。また、動作前に、クロックカウンタ300及びリラックスティックカウンタ302は、0の値にある。クロックカウンタ300は、クロックCLKnavごとに1を加算する。
【0050】
クロックカウンタ300の現在の値は、ユニット301に入力される。クロックカウンタ300の値が、CPU105によって割り当てられたユニット301の閾値に等しい場合、ユニット301は1の値を出力し、それ以外の場合、ユニット301は0の値を出力する。ユニット301の出力は、割り込み信号として、チャネル103、クロックカウンタ300、リラックスティックカウンタ302、ANDゲート304、及びCPU105に入力される。ユニット301の出力値が1の値である場合、クロックカウンタ300は、次のクロックでリセットされる(つまり、クロックカウンタ300は、次のクロックで0の値に等しいように設定される)。
【0051】
ティック信号S107は、閾値クロックカウンタ301の出力である。ティック信号S107が利用可能であるとき、リラックスティックカウンタ302は1の値を加算する。リラックスティックカウンタ302の値は、ユニット303の入力に入力される。リラックスティックカウンタ302における値が、CPU105によって割り当てられたリラックスティックカウンタ303の閾値に等しい場合、ユニット303は1の値を出力し、そうでない場合、ユニット303は0の値を出力する。ユニット303の出力は、ANDゲート304に入力される。ユニット303の出力信号とティック信号S107とが利用可能な場合、ANDゲート304は1の値を出力し、そうでない場合、ANDゲート304は0の値を出力する。ユニット304の出力は、割り込み信号として、修正されたチャネル110、リラックスティックカウンタ302、及び、CPU105に入力される。ユニット304が1の値を出力する場合、ユニット302は次のクロックでリセットされる(つまり、ユニット302は、0の値に等しいように設定される)。
【0052】
リラックスティック信号S108は、ANDゲート304から出力される。CPU105は、ユニット302の値を読み取ることができる。修正されたタイムスケール生成器111の動作中に、CPU105は、必要な場合、リラックスティックカウンタ303の閾値を変更することができる。
【0053】
図10は、
図8及び
図9に示された、修正されたチャネル110の詳細を示している。修正されたチャネル110は、チャネル103の信号及び構成と、次の相違点とを備えている。
更新周波数CRNCO207は、修正された更新周波数CRNCO2070により置き換えられる。
更新位相シフトCRNCO208は、修正された更新位相シフトCRNCO2080により置き換えられる。
更新ロック位相CRNCO209は、修正された更新ロック位相CRNCO2090により置き換えられる。
更新周波数IFNCO210は、修正された更新周波数IFNCO2100により置き換えられる。
更新位相シフトIFNCO211は、修正された更新位相シフトIFNCO2110により置き換えられる。
更新ロック位相IFNCO212は、修正された更新ロック位相IFNCO2120により置き換えられる。
修正されたCRNCO周波数更新信号S2070は、修正された更新周波数CRNCO2070から出力される。
修正されたCRNCO位相シフト更新信号S2080は、修正された更新位相シフトCRNCO2080から出力される。
修正されたCRNCOロック位相更新信号S2090は、修正された更新ロック位相CRNCO2090から出力される。
修正されたIFNCO周波数更新信号S2100は、修正された更新周波数IFNCO2100から出力される。
修正されたIFNCO位相シフト更新信号S2110は、修正された更新位相シフトIFNCO2110から出力される。
修正されたIFNCOロック位相更新信号S2120は、更新ロック位相IFNCO2120からの、修正された出力である。
ロックカウンタ更新信号S2140は、更新ロックカウンタ2140から出力される。
【0054】
一実施形態では、CPU105は、CRNCO200を次のように制御する。CPU105は、インタフェースレジスタにおいてコード周波数を設定し、信号S2070を使用して、インタフェースレジスタから(クロックCLKnavで動作する)バッファに、CRNCO200における値を更新及び/又はコピーする。CPU105は、インタフェースレジスタにおいてコード位相シフトを配置し、インタフェースレジスタから(クロックCLKnavで動作する)バッファレジスタにデータをコピーし、バッファレジスタからのコード位相シフトは、信号S2080に基づいて現在のコード位相に追加され、バッファレジスタにおけるコード位相シフトは、0に等しいように設定される。CRNCO200におけるコード位相の現在の状態は、ロックコード位相のレジスタにコピーされ、その値は、信号S2090を使用して更新される。
【0055】
一実施形態では、CPU105は、IFNCO202を次のように制御する。CPU105は、インタフェースレジスタにおいて中間周波数を設定し、IFNCO202の値は、信号S2100によって、インタフェースレジスタから(クロックCLKnavで動作する)バッファに更新及び/又はコピーされる。CPU105は、インタフェースレジスタにおいて中間周波数位相シフトを設定し、インタフェースレジスタから(クロックCLKnavで動作する)バッファレジスタにデータをコピーし、バッファレジスタからの中間周波数位相シフトは、信号S2110によって現在の中間周波数位相に加算され、バッファレジスタにおける中間周波数位相シフトは、0の値に設定される。CPU105は、中間周波数ロック位相レジスタにおいて、IFNCO202の中間周波数位相の現在の状態をコピーし、その値は、信号S2120によって更新される。
【0056】
CPU105がCRNCO200におけるコード周波数のインタフェースレジスタにて新しい値を書き込むと、クロックCLKnavで動作するユニット2070において即時の信号が生成される。
CPU105がCRNCO200におけるコード位相シフトのインタフェースレジスタにて新しい値を書き込むと、クロックCLKnavで動作するユニット2080において即時の(位相シフト)信号が生成される。
CPU105がCRNCO200におけるロック位相のインタフェースレジスタにおいて新しい値を書き込むと、クロックCLKnavで動作するユニット2090において即時の(ロック位相)信号が生成される。
CPU105がIFNCO202における中間周波数のインタフェースレジスタにおいて新しい値を書き込むと、クロックCLKnavで動作するユニット2100において即時の信号が生成される。
CPU105がIFNCO202における中間周波数(位相シフト)のインタフェースレジスタにおいて新しい値を書き込むと、クロックCLKnavで動作するユニット2110において即時の信号が生成される。
CPU105がIFNCO202における中間周波数ロック位相のインタフェースレジスタにおいて新しい値を書き込むと、ユニット2120において即時の信号が生成される。
【0057】
一実施形態において、CPU105は、ユニット2070、2080、2090、2100、2110、及び2120を制御し、各ユニットから更新信号が出力される。各ユニット2070、2080、2090、2100、2110、及び2120は、それ自身の独立した制御を有している。
【0058】
ティック信号S107、リラックスティック信号S108、及び積分期間信号S206は、各ユニット2070、2080、2090、2100、2110、及び2120の出力に供給される。次の1クロック信号は、ユニット2070、2080、2090、2100、2110、2120の出力において更新信号となり得る。即時の信号は、レジスタでの書き込み後に生成される信号である。積分期間信号S206は、積分期間の終了を識別する信号であり、積分期間カウンタ203によって生成される。ティック信号S107は、タイムスケール生成器111によって生成される信号である。リラックスティック信号S108は、タイムスケール生成器111によって生成される。ユニット2070、2080、2090、2100、2110、及び2120の制御と、これらのユニットによって制御信号に基づいて出力される信号とが表2に示されている。
【表2】
【0059】
CPU105は、更新信号を出力するためにユニット2140を制御する。また、ユニット2140からは、ティック信号S107、リラックスティック信号S108も出力される。次の1クロック信号は、ユニット2140から出力される更新信号であり得る。ティック信号S107は、修正されたタイムスケール生成器111によって生成される信号である。リラックスティック信号S108は、修正されたタイムスケール生成器111によって生成される信号である。
【0060】
積分期間カウンタ203の現在の状態は、ロックカウンタ更新信号S2140によってロック積分期間のレジスタにコピーされる。ユニット2140の制御とユニット2140によって出力される信号とが表3に示されている。
【表3】
【0061】
一実施形態では、IFNCO202は、2つの信号、すなわちCOS S217とSIN S218とを出力する。
【0062】
一実施形態では、
図10に示される受信機の初期設定は次の通りである。受信機が動作を開始する前に、CPU105は次の動作を実行する。CPU105は、CRNCO200におけるコード周波数を設定する。必要であれば、CPU105は、CRNCO200におけるコード位相シフトもまた設定する。CPU105は、ユニット2070及び2080についての更新信号としてティック信号S107を選択する。CPU105は、IFNCO202における中間周波数を設定する。必要であれば、CPU105は、IFNCO202における中間周波数位相シフトもまた設定する。CPU105は、ユニット2100及び2110についての更新信号としてティック信号S107を選択する。CPU105は、コード生成器201を調整し、積分期間カウンタ203における積分期間信号S206を設定する。CPU105は、コミュテータ204とユニット2090、2120、2140とストローブ生成器213とを調整する。
【0063】
一実施形態では、
図10に示される受信機は次のように動作する。修正されたタイムスケール生成器111から出力されるティック信号S107は、修正されたCRNCO周波数更新2070、修正されたCRNCO位相シフト更新2080、修正されたCRNCOロック位相更新2090、修正されたIFNCO周波数更新2100、修正されたIFNCO位相シフト更新2110、修正されたIFNCOロック位相更新2120、ロックカウンタ更新ユニット2140、及び相関器205に入力される。
【0064】
一実施形態では、修正タイムスケール生成器111の出力からのリラックスティック信号S108は、修正されたCRNCO周波数更新2070、修正されたCRNCO位相シフト更新2080、修正されたCRNCOロック位相更新2090、修正されたIFNCO周波数更新2100、修正されたIFNCO位相シフト更新2110、修正されたIFNCOロック位相更新2120、及びロックカウンタ更新ユニット2140に入力される。
【0065】
CRNCO200は、ティック信号S107に基づいてコード周波数を生成する。コード周波数信号S215は、CRNCO200から出力されてコード生成器201に入力され、この周波数でコード信号S219が生成される。
CRNCO200から出力されたコード周波数は、積分期間カウンタ203に入力され、積分期間信号S206の割り当てられた持続時間がこの周波数でカウントアウトされる。
コード生成器201からのコード信号S219は、相関器205及びストローブ生成器213に入力される。CRNCO200から出力されるコード位相信号S216は、ストローブ生成器213に入力される。ストローブ生成器213は、相関器205に入力されるストローブ信号S220を生成する。
積分期間カウンタ203の出力からの積分期間信号S206は、相関器205、修正されたCRNCO周波数更新2070、修正されたCRNCO位相シフト更新2080、修正されたCRNCOロック位相更新2090、修正されたIFNCO周波数更新2100、修正されたIFNCO位相シフト更新2110、修正されたIFNCOロック位相更新2120、ロックカウンタ更新ユニット2140、及びCPU105に入力される。
【0066】
IFNCO202は、ティック信号S107に従って中間周波数を生成する。中間周波数位相(例えば、COS S217及びSIN S218信号)は、ユニットIFNCO202から出力されて相関器205に入力される。ADC102から出力されたデジタル信号は、コミュテータ204に入力される。コミュテータ204から出力された、選択されたデジタル信号のうちの1つは、相関器205に入力される。
【0067】
相関器205では、IFNCO202からの中間周波数位相が、コミュテータ204から出力されるデジタル信号と、コード生成器201から出力されるコード信号S219とにより乗算される。
【0068】
相関器205では、ユニットIFNCO202からの中間周波数位相が、コミュテータ204から出力されたデジタル信号と、ストローブ生成器213から出力されたストローブ信号S220とにより乗算される。
【0069】
乗算結果は、蓄積され、積分期間信号S206の持続時間にわたって格納される。積分期間信号S206に基づいて、格納された値は、相関器205のプライマリバッファ410、411、412、413にコピーされてゼロにされる。相関器205は、CPU105によって読み取られるコンポーネントI、Q、dI、dQを生成する。プライマリバッファ410、411、412、413から、ティック信号S107に基づいて、値がセカンダリバッファ414、415、416、417にコピーされる。
【0070】
修正されたチャネル110を開始した後、CPU105は、ユニット2070、2080、2100、2110についての更新信号として、リラックスティック信号S108を選択する。必要であれば、CPU105は、次の動作を実行する、すなわち、CRNCO200におけるコード周波数を変更し、CRNCO200におけるコード位相シフトを設定し、ユニット2070、2080、2090、2100、2110、2120、2140における制御を変更し、IFNCO202における中間周波数を変更し、IFNCO202における中間周波数位相シフトを設定し、CRNCO200におけるコード周波数ロック位相のレジスタを読み取り、IFNCO202における中間周波数ロック位相のレジスタを読み取り、積分期間カウンタ203におけるロック状態のレジスタを読み取り、相関器205におけるプライマリバッファ410、411、412、413を読み取り、相関器205におけるセカンダリバッファ414、415、416、417を読み取る。一実施形態では、全ての更新信号は、クロックCLKnavで動作する。
【0071】
図11は、一実施形態における航法受信機を操作する方法1100のフローチャートを示している。この方法のステップは、上述したように航法受信機のコンポーネントによって実行される。この方法は、GNSS信号が受信されるステップ1102において開始する。一実施形態では、信号は、アンテナからRF経路において受信される。一実施形態では、GNSS信号は、中間周波数でRF経路から送信される。
ステップ1104では、GNSS信号は、周波数CLKnavでサンプリングされる。一実施形態では、GNSS信号は、RF経路からGNSS信号を受信するADCによってサンプリングされる。
ステップ1106では、ティック信号及びリラックスティック信号が生成される。一実施形態では、ティック信号及びリラックスティック信号は、タイムスケール生成器によって生成される。
ステップ1108では、中間周波数及び中間周波数位相でパルスが生成される。一実施形態では、パルスはIFNCOによって生成される。
ステップ1110では、コードレートNCO信号が生成される。一実施形態では、コードレートNCO信号は、コードレートNCOによって生成されて周波数及び位相を有する。
ステップ1112では、コードレートNCO周波数に基づいてコード信号が生成される。一実施形態では、コード信号はコード生成器によって生成される。
ステップ1114では、コードレートNCO位相及びコード信号の形状に基づいてストローブ信号が生成される。一実施形態では、ストローブ信号は、ストローブ生成器によって生成される。
ステップ1116では、コードレートNCO位相に基づいて積分期間信号が生成される。一実施形態では、積分期間信号は、積分期間カウンタによって生成される。
ステップ1118では、信号が乗算されて第1の積が生成される。一実施形態では、乗算される信号は、ADCからGNSS信号を受信するコミュテータから出力された信号を備える。乗算される信号は、コード生成器から出力された信号と、IFNCOからの中間周波数位相と、をも含んでいる。一実施形態では、第1の積は、それが生成された後で格納される。
ステップ1120では、信号が乗算されて第2の積が生成される。一実施形態では、乗算される信号は、コミュテータから出力された信号、ストローブ信号、及び中間周波数NCOからの中間周波数位相を備える。一実施形態では、第2の積は、それが生成された後に格納される。
ステップ1122では、航法受信機は、ティック信号、リラックスティック信号、第1の積、及び第2の積に基づいて制御される。
【0072】
以上の「発明を実施するための形態」は、あらゆる点において例示的であって限定的ではないものとして理解されるべきであり、本明細書に開示される本発明概念の範囲は、特許法によって認められる全容に渡って判断されるべきものである。理解されるべきことであるが、本明細書に図示、説明された実施形態は、本発明概念の原理を例示したにすぎず、本発明概念の範囲及び趣旨から逸脱することなく、当業者によって様々な修正が行われてもよい。当業者は、本発明概念の範囲及び趣旨から逸脱することなく、他の様々な特徴の組合せを実現できるであろう。
【国際調査報告】