ノートブックPCで ソフトウェアによる ベースバンド処理を 可能にする汎用 GPSレシーバ 50bps DATA REPEAT 20 1000bps 1.023Mcps SPREAD G = 1023 RF BPSK cos (2!ft) 図1. 民生用GPS信号の信号生成ブロックでは、スペクトル拡散方式 で信号を送出します。 David Weber (Strategic Applications Engineer)、 Roger Bremer (Strategic Applications Engineer) GPSシステム自体は、スペクトラム拡散型のシンプルな 通信システムです4。図1に示しているのが、民生用アプ リケーションの信号生成ブロックです。まず、50bpsの 航法メッセージを20回繰り返し、1000bpsのビットスト リームとします。これを1023チップ長のC/A (coarse/ acquisition)コードでスペクトラム拡散させます(チップと は擬似乱数雑音(PRN)コードを適用するレート)。これで 1.023Mcpsのベースバンド信号が得られます。このような 処理をしておくと、GPSシステムが持つ43dBの処理利得 (G)によって、サーマルノイズレベルを下回る信号を十分 に復調することができます。 通 信 分 野 や ナ ビ ゲ ー シ ョ ン 分 野 で は 、 GPS (Global Positioning System)用ソフトウェアの利用が広がって います1、2。大規模集積回路の開発が可能になった結果、 パワフルなC P UとD S Pを使って、G P S信号の検出と デコードをソフトウェアでリアルタイムに行えるように なったからです。生成されるソフトウェアベースのGPS レシーバはIF周波数の変更などの設定変更により、ハード ウェアの設計をやりなおさなくても、新しいアプリケー ションに対応したり、将来的なアップグレードが可能で あるなど、高い柔軟性を持ちます。 各衛星には一意のC/Aコード(ゴールドコードとも呼ばれる) が割り当てられています5。C/Aコードは自己相関特性と 相互相関特性に優れていることから、WCDMAやcdma2000® などのCDMA通信システムでも広く使用されています。 ベースバンド信号には2位相偏移変調(BPSK)をかけ、L1帯 にアップコンバートして送信します。 GPSレシーバ用RFフロントエンドのMAX2769を利用 すれば、シンプルなUSBドングルやPCI Express® (PCIe®) Mini Cardといった形でGPS機能をノートブックPCへ 低コストに追加することができます。MAX2769は取り 込んだ生データをPCホストへ送り、ホスト側でソフトウェア によるベースバンド復調処理を行えば、スタンドアロンの GPSシステムで用いられているベースバンドASICは不要 になります。つまり、MAX2769を使うことによって、 GPS信号とGalileo信号をシングルチップで処理する アダプタ機能が実現します。 信号捕捉方法の検討 GPSはCDMA情報通信システムであるため、データを復調 するためには、まず、PRNコードに同期する必要があり ます。これは、通常2段階で行います。まずコードを捕捉 して大まかにアライメントを取り、その後、コード位相 トラッキングによって微調整を行います6。具体的には、 まず、GPSレシーバから衛星へ見通し線が通っているか どうかを確認する必要があります。前述したように、 各衛星には一意のC/Aコードが割り振られています。その ため、衛星を見通し線で捉えることができれば、コードの 捕捉によって信号の周波数とコード位相を求め、そこから 復調パラメータを得ることができます。ただし、レシーバ と衛星の相対速度に応じ、受信する信号の周波数には ドップラー効果による5kHzから10kHz程度のずれが生じ ます7。 このアーティクルでは、まずGPSシステムの動作を概観し、 その後、Maximが提供するソフトウェアベースのGPS レシーバソリューションについて解説します。 GPSシグナリング GPSシステムを構築するには、24基の衛星(各衛星は一意 の擬似乱数雑音コードで特定)、地上の基準局、および ユーザ機器(レシーバ)が必要となります。民生用GPSと Galileoアプリケーションでは、1.57542GHzのL1帯で 衛星との通信が行われます 3 。GPSレシーバで信頼性の ある測位を行うには、少なくとも4つの衛星が見通し線上 になければなりません。信号は時間とレシーバ位置によって 変化するため、その捕捉とトラッキングは非常に複雑です。 レシーバ側では、受信したGPS信号をまずダウンコン バートし、同相成分と直交成分(IとQ)に変換します。その後、 12 トラッキングによるアライメントの微調整 ベースバンド信号から得たこのIおよびQとローカルに 生成したPRNシーケンスとの相関を、I/Q相関器のペアを 用いて取ります。これを1ビット分積分したあと、I/Q 相関器の出力を合計して出力決定変数とします。 捕捉により、GPS信号の周波数とコード位相パラメータ との大まかなアライメントが実現されます。トラッキング はそのアライメントを微調整し、正確なコード位相情報と 周波数情報を元にデータの復調が行えるようにするもの です。トラッキングにはコード位相のトラッキングと キャリア周波数のトラッキングがあります。 決定変数があるスレッショルド値を超えると捕捉が成功 したと判断し、トラッキングモードへ移行します。超え ない場合はPRNシーケンスとオシレータ周波数の相対的 位相を調整して決定変数を更新し、上記プロセスを繰り 返します。 コードのトラッキングは、図2に示す遅延ロックループ (DLL)で行います。DLL回路では、ローカルに複製した PRNコードのレプリカ、3種類(±0.5チップにおける コード)を受信信号に対して積算します。3種類のレプリカは、 受信信号に対して早め、同時、遅めに到着したものを表し ます。これを積分すると、各信号は受信信号とローカル レプリカとの相関関係を表すものとなります。そのうち 相関値が最も高いものを選んで保持します(図3)。 これはシリアル探索で、ロジック構造がシンプルとなる ことからASICによる実装が可能である半面、探索空間が 巨大となるためソフトウェアによる実装は非現実的です。 キャリア周波数のオフセットを500Hzまで許容し、ドッ プラー効果による周波数のずれが10kHzまであるとすると、 ソフトウェアで実装しなければならない探索空間は 2 x (10,000/500) x 1023 = 40,920程度となります。 このようにシリアル探索による捕捉をソフトウェアで 実現するのは困難です。 キャリア周波数のトラッキングは位相ロックループ(PLL) かコスタスループで行います 8 。ローカルに生成する 周波数を受信信号の周波数にぴったり合わせることが キャリアトラッキングの目的だからです。 ソフトウェアでの実装が容易な捕捉方法としては、周波数 領域によるパラレルコード位相捕捉が考えられます。この 場合、PRNコードを高速フーリエ変換(FFT)してからドッ プラー周波数の探索とコード位相の探索をまとめて行い、 コード位相情報のすべてを周波数領域に移します。こう すれば、ドップラー周波数オフセットの部分だけを探索 するだけでよくなるため、ソフトウェアによって高速かつ 効果的な探索が実現します。 捕捉とトラッキングによって初期同期を実現したら、 航法ビットのデコードを行います。まず、1.023Mcpsの 入力信号を逆拡散させ、1000bpsのビットストリームに します。次にビット同期を行い、1000bpsのビットスト リームから50bpsの情報を取得します。ビット同期を 行うためには、まず、零交差エッジ(ゼロボルトとなる点) を見つけてビットの開始点を特定します。航法データの メッセージは50ビットで時間にすると20msを占めると わかっているので、エッジが特定できたら1000bpsの 入力ストリームを20ms間隔に分割します。20ms間隔の ビットサンプルを合計し、平均値を取るとデコードが 完了し、航法データが得られます。 実際のシステムでは、まず、ローカルに生成したサイン波 とコサイン波によるキャリアを受信した信号にかけ合わせ ます(それぞれ、信号のI成分とQ成分)。その後、このI成分 とQ成分を合成してFFTブロックへの複素入力とします。 フーリエ変換の出力にPRNコードをFFT変換した共役数を かけます(PRN発生器で生成されるコードの位相はゼロ)。 実装する際には、FFT操作とPRNコード生成の部分はテー ブル化し、計算を簡略化することができます。 ローカルに生成したコードと受信信号の積は受信周波数と キャリア周波数との補正を表すため、これを逆フーリエ 変換し、その二乗出力を決定ロジックへフィードバック します。このFFTによる周波数領域処理は、計算リソースの 消費が少ないという特長を持ち、前述と同じ例で考えると、 20,000/500 = 40回程度のFFT操作で済みます。 INCOMING SIGNAL CE CP CL シリアル探索は、便利なASICによる実装で必要とされる シンプルなロジックと制御アーキテクチャを持っています。 しかし探索空間が巨大で、ソフトウェアアルゴリズムでの 実現は困難です。つまり、ソフトウェアをベースとした GPSレシーバには不向きです。これに対し、パラレル コード捕捉方式はソフトウェアによる実装に適しています。 しかしそのロジックアーキテクチャはシリアル探索法と 比較してはるかに複雑で、ASICによる実装は困難です。 LOCAL OSCILLATOR LOCAL PRN GENERATOR 図2. コードのトラッキングでは遅延ロックループを用いてアライ メントを微調整し、正確なコード位相情報と周波数情報を もとにデータの復調が行えるようにします。 13 を実現します。ベースバンド機能の処理からPC画面への 現在位置の表示まで、残りのすべてはソフトウェアで行い ます。これでノートブックPCはパワフルなGPSデバイス となり、ナビゲーションから位置情報をベースとした各種 サービスまでを利用できるようになります。 INCOMING EARLY ディジタル化されたIFデータは、GPSフロントエンドから 業界標準のUSB 2.0インタフェース経由でノートブックに ストリーミングされます。これを入力としてベースバンド ソフトウェアが位置決定計算からトラッキングまでを行い ます。このようなソフトウェアは、Geotateなどが提供して います。詳しい情報はwww.geotate.comを参考にして ください。 PROMPT CORRELATOR OUTPUT LATE CP CE CL ソフトウェアで仮想COMポートを構築すれば、汎用インタ フェースとしてさまざまなナビゲーションアプリケーション や位置情報アプリケーションとリンクすることができます。 GPSソフトウェアパッケージの多くはNMEA 0183に準拠 したインタフェースを持っていますし、オペレーティング システムとしてはMicrosoftのWindows® XPやWindows VistaTMに対応しています。また、業界標準のプロトコル あるいは独自インタフェースを通じて支援データが得られ る場合、ソフトウェアであれば、その処理も行うことが できます。 図3. DLL回路では、ローカルに複製したPRNコードのレプリカ、 3種類(±0.5チップにおけるコード)を受信信号に対して積算 します。3種類のレプリカは、受信信号に対して早め、同時、 遅めに到着したものを表します。そのうち相関値が最も高い ものを選んで保持します。 ソフトウェアベースのGPSレシーバ 最近のノートブックコンピュータであれば、ソフトウェア GPSレシーバが必要とするリアルタイムデコーディング を十分に行えるだけの性能を持つCPUを搭載しています。 トラッキング中の平均プロセッサ負荷は、1秒ごとにアップ デートを行う場合でも、1GHz Pentium® Mで6%程度、 2.18GHzのCoreTM Duoプロセッサであれば5%以下となり ます。アルゴリズムを改良すれば、2%以下のCPU使用率 とすることも可能です。 従来のGPSレシーバでは、捕捉、トラッキング、ビット 同期をASICで実装していますが、ソフトウェアベースの GPSレシーバではこれらの機能をソフトウェアで実装する ことにより高い柔軟性を実現します。ソフトウェアを活用 すればハードウェア側のアーキテクチャをシンプルにできる ため、コストを削減しつつレシーバの小型化と効率化を 行うことができます。ソフトウェアはC/C++、MATLAB® などさまざまな言語で作成可能で、組込みOS、PC、Linux、 DSPプラットフォームなど、どのようなオペレーティング システムへもポーティングすることができます。このよう にソフトウェア型GPSレシーバは携帯電話、PDAなどの モバイルアプリケーションに適した高い柔軟性を持ちます。 回路の動作と性能 ソフトウェアベースのGPSレシーバのRFフロントエンド では、受信した弱い信号を低ノイズアンプ(LNA)で増幅 した後、約4MHz (図5a)という低IF (中間周波数)へとダウン コンバートします。ダウンコンバージョンは、1つあるいは 2つのミキサを使用し、ローカルオシレータ信号を入力RF 信号へミキシングすることによって実現します。得られた アナログIF信号はアナログ-ディジタルコンバータ(ADC) によってディジタルIF信号に変換します。 USBポートがあるノートブックコンピュータに対しては、 USBドングルの形で設計することができます。新しい ノートブックでPCIe Mini Cardのコネクタを持つ場合は、 RFフロントエンドをPCIe Mini Cardに組み込んでPCに装着 する形を採ることができます(図4a、4b)。PCIe Mini Card インタフェースにはUSBポートも搭載されているため、 USB用でもPCIe Mini Card用でも同じようにフロント エンドアダプタを設計することができます。違いは、PCIe をサポートするためにはある種の電源管理ロジックが必要 になる点とDC電圧の違いくらいです(PCIeは3.3Vである のに対し、外付けUSBポートは5V)。 MAX2769であれば、LNA、ミキサ、およびADCの3つの 機能を集積しているため、アプリケーションの開発期間を 大幅に短縮することができます。またMAX2769では、 2種類のLNAが利用できます。1つはパッシブアンテナ用 で雑音指数が0.9dBと非常に低く、利得は19dB、IP3は -1dBmとなっています。もう1つはアクティブアンテナ用で、 雑音指数は1.5dB、利得と消費電力は若干低め、IP3は 若干高めとなっています。電源電圧は2.8Vで、消費電流 は構成にもよりますが、13mAから18mAと非常に少なく なっています。 図5bに示すUSBドングルのブロックダイアグラムを見れば、 このソリューションがどれほどシンプルであるのかがわか ります。この回路では、汎用GPSレシーバのMAX2769の ほか、カウンタとUSBインタフェースコントローラを使う だけで信号の捕捉からディジタル変換、ホストPCへの転送 14 30mm TOP VIEW MCX RF CONNECTOR 18mm 27.6mm MCX CONNECTOR RF CIRCUITRY RF CIRCUITRY USB CONNECTOR RF SHIELD 50.95mm BOTTOM VIEW MCX CONNECTOR DIGITAL CIRCUITRY DIGITAL CIRCUITRY AND POWER MANAGEMENT USB CONNECTOR USB CONTROL/ SIGNAL LINES 23mm 49mm USB AND PCIe CONNECTIONS (a) (b) 図4. USBドングル用アダプタ構成(a)とPCIe Mini Card用アダプタ構成(b)。いずれの場合もシンプルで低コストな設計となります。 増幅後、外部フィルタでRFのフィルタリングを行う方法も あります。この場合、内蔵の20ビットシグマ-デルタフラク ショナルN周波数シンセサイザと15ビットの整数分周器 を用いることによって、IFを0から12MHzの間で自由に 選び、その周波数へフィルタリングした信号を直接ダウン コンバートすることができます。このようにIFフィルタ リングを自由に選ぶことができれば、Galileoなど、別の 構成にも対応できます。 ます。MAX2769は、アンテナ電源から流れる電流の有無 を検出し、LNA1とLNA2を自動的に切り替えることが できます。この機能は、内蔵パッシブアンテナの代わりに 感度の高いアクティブアンテナを外付けできるようにしたい 場合などに便利です。その場合は、外部アンテナポートを LNA2に、内蔵ポートをLNA1につなぐだけです。外部アン テナを接続すると、その消費電流をMAX2769が検出し、 LNA1からLNA2へ自動的に切り替えます。 RF入力からIF出力までの総合利得は、60dBから115dB の範囲で自由に設定でき、また自動的に制御することも できます。出力は、アナログ、CMOSロジックレベル、 制限差動ロジックレベルから選ぶことができます。内蔵 ADCも、1ビットから3ビットの範囲で出力を選ぶことが できます。基準発振回路も内蔵されており、水晶振動子 あるいは温度補償水晶発振器(TCXO)による動作が可能です。 入力基準周波数は8MHzから44MHzまで対応します。 MAX2769は、ノートブック、携帯電話、PDA、および 車載アプリケーションなどに適した高性能でコンパクトな ソリューションです。総定格電圧利得は最大で115dB、 モジュールの雑音指数は1.4dBであり、一般的なGPS ソフトウェアパッケージを用いた場合で感度は捕捉時 -143dBm、トラッキング時-154dBmとなります。 まとめ USBドングルのシンプルなリファレンスデザインとして、 基準周波数24MHzから動作するCypress Semiconductor社 のUSBコントローラとMAX2769を使用したものが用意 されています(図5b)。このドングルでは、LDO MAX8510 を用いてDC電源を安定化しています。MAX2769のレジ スタのプログラミングは、3線(SPITM)ディジタルバス経由 で行います。それとは別に、3端子をハード的に設定する ことにより、SPI制御なしに8通りの構成の中から1つの 構成を選択して動作させることもできます。 ソフトウェアを活用すると、シンプルで低コストなGPS アプリケーションを構築することができます。そのような 可能性を追求するため、MAX2769は、従来のハード ウェア式GPSレシーバと同等の周波数柔軟性をソフトウェア GPSレシーバに対して提供します。もちろん、どのような ソリューションにもメリットとデメリットがあります。 ソフトウェアGPSレシーバを実現するためには、高性能な プロセッサとそれなりの容量のメモリが必要です。しかし、 ソフトウェアを工夫し、クロックとデータ更新速度を適切 に選択することによって、メモリの使用は最小限に抑える ことができます。 このほか、アクティブアンテナにバイアスを供給すると ともに、USB規格に準拠するように、シャットダウン モードに入ったらアンテナをオフにする回路も内蔵してい 15 ANTENNA HARDWARE ANALOG IF LNA DIGITAL IF ADC MIXER SOFTWARE IMPLEMENTATION ACQUISITION TRACKING BIT SYNCHRONIZATION NAVIGATION DECODING LOCAL OSCILLATOR (a) 1575.42MHz RF BPF MAX2659 LNA RF CABLE MCX CONNECTOR POWER MANAGEMENT MAX2769 LNA2 VGA ADC VGA ADC I1 I0 FILTER RF BPF /2 COUNTER 74LV163/595 RF FE CONTROL GPS DATA Q0 GPSCLK Q1 FRAC-N PLL USB 2.0 CONTROLLER CYPRESS CY68014 GPSCLK 24MHz CRYSTAL CLK_OUT SPI INTERFACE SPI PC DIGITAL CONTROL GPS BASEBAND SPOT SOFTWARE LOOP FILTER USB 2.0 (b) 図5. ソフトウェアGPSレシーバでは、捕捉したRF信号を増幅し、ミキシングによって周波数を下げた上でディジタル化する必要があります(a)。 実際のレシーバでは、低ノイズアンプによってRF信号の増幅を行います。次にMAX2769で周波数の引き下げから信号のディジタル化を 行います。こうして得られたデータは、カウンタとUSBインタフェースコントローラを経由し、USBプロトコルに乗せてホストPCに送り ます(b)。 spectrum multiplexing,” IEEE Transactions on Information Theory, Vol. 13:4 (October 1967). pp. 619–621. リファレンス 1. Kaplan, E., Understanding GPS: Principles and Applications, 2nd ed. (Norwood, MA: Artech House Publishers, 1996). 6. Ziemer, R.E., and Peterson, R.L., Digital Communications and Spread Spectrum Systems (New York: Macmillan Publishing Company, 1985). 2. Bao-Yen Tsui, J., Fundamentals of Global Positioning System Receivers: A Software Approach, 2nd ed. (New York: John Wiley & Sons, Inc., 2004). 7. Proakis, J. G., Digital Communications, 4th ed. (New York: McGraw-Hill, 2000). 8. Ibid. 3. For the decoding of navigation messages and position calculations, refer to Bao-Yen Tsui, Fundamentals of Global Positioning System Receivers. 「Microwaves & RF」の2006年12月号にも、同様のアー ティクルが掲載されています。 cdma2000はTelecommunications Industry Associationの登録商標です。 4. Viterbi, A., CDMA: Principles of Spread Spectrum Communications (Reading, MA: Addison Wesley Longman Publishing Co., Inc., 1995). MATLABはThe MathWorks, Inc.の登録商標です。 PCI ExpressとPCIeは、PCI-SIG Corp.の登録商標です。 PentiumおよびCoreは、それぞれIntel Corp.の登録商標および商標です。 SPIはMotorola, Inc.の商標です。 5. Gold, R., “Co-optimal binary sequences for spread WindowsおよびWindows Vistaは、それぞれMicrosoft Corp.の登録商標および商標です。 16
© Copyright 2024 Paperzz