PCM2902 のサンプル遅れを確認

Confirmed one sample delay of PCM2902.  I thought it was a ‘specification’ but TI says it’s an erratum. 🙂

「ビーコンモニタ 2 プロジェクト」その後です。ちゃんと続いています。

昨日は、新しい SoftRock 受信機で既存のビーコンモニタプログラムを走らせて受信機の動作確認をしました。(若干の修正が必要でしたが、動きました。) 最初、18MHz 帯しか受からないので頭を抱えたのですが、既存系(実動系)のアンテナに繋ぎ直したら、他のバンドもちゃんと受信できました。どうやらバックアップ系のアンテナがしょぼすぎるようです。アンテナの重要性を再認識しました。

とりあえず受信機ボードは問題なさそうということで、改めてベースバンド信号の品質評価から始めました。まずは、I/Q 位相ずれの問題から再確認です。以前、ある方の投稿を見て、PCM2902 には R チャネルの 1 サンプル遅延があることを知りましたが、実際に自分の目で確認したことはないので実験してみました。

Raspberry Pi 2 に繋いだ UCA202(PCM2902 を内蔵しているサウンドカード)の L と R に(電気的に)同一のガウス雑音を入力し、Audacity に取り込んで波形を確認します。確かに、R チャネルが 1 サンプル遅延していることを確認しました。

スクリーンショット 2016-03-09 10.17.34

ちなみに、1サンプルずれにどういう問題があるのか? 大した問題ではないと思う方があるかも知れません。L/R チャネル間にサンプルずれがあると、もちろん I/Q 検波が正しくできなくなるのですが、単純にオーディオインターフェイスとして考えたとき、たとえば L と R のチャネルをミックスダウンしたりすると、周波数特性がおかしくなることが上げられます。(周波数に比例して位相角のずれが増えるため、周波数が高いほどゲインが落ちます。耳で聞いたときに実際にどういう影響があるかは未検証です。)

なお、エラッタはここにあります。

今日は、L/R 間の周波数特性やゲイン差がないかどうかを、確認しようと思います。