Piレシーバ処理ブロック ②CICフィルタ ③データ 出力タイミング調整バッファ

ご購入はこちら
第5章
お後が
FPGAでA−D変換データの1サンプル よろしい
ようで
周期を引き伸ばしてからラズパイに進呈
Piレシーバ処理ブロック
② CICフィルタ ③データ
出力タイミング調整バッファ
加東 宗
プログラマブル
(VHDLで記述)
2GHz Piレシーバ拡張ボード
AD9218
(50Msps)
ソフトウェア
4 FIRフィルタ
CIC1/32 CIC1/64
A-D
コンバータ
3 バッファ
2×1024×
10ビット
A-D
コンバータ
CLK
プログラマブル
(C++で記述)
ラズベリー・パイ3
FPGA 2 CICフィルタ
Takashi Katou
5 FM
復調
6 Linuxの
ALSA
オーディオ
出力処理
オー
ディオ
出力
50Mspsまたは
24ksps×2
PDM
モニタ
7 FFT解析
8 画面表示
I /Q 復調器へ
PLL周波数制御
帯域幅制御
PLLシンセサイザ IC
サンプリング周波数切り替え
図 1 Pi ラジオのブロック図
(ディジタル部分を抜粋)
ラズベリー・パイで処理できるように FPGA でデータ量を減らしている.図は第 2 章の NOAA 受信のときのものである.その後,ソフトウェアを改良し,
帯域を倍に広げている.2 つ目の CIC フィルタのデシメーション・レートを 1/64 から 1/32 に変更し,24 ksps 出力を 48 ksps 出力にする
● A−Dコンバータのデータから必要な部分だけ抽出
Pi ラジオのブロック図(ディジタル部のみ)を図 1
に示します.A−D コンバータから出力されたデー
タはまず FPGA
(写真 1)に入ります.
FPGA は Field − Programmable Gate Aaray の 略
で,プログラマブルな大規模ディジタル IC です.
ソフトウェア無線では,内部回路を書き換えられる
FPGA 部分もソフトウェアの一部のように考えます.
FPGA では,A−D コンバータから出てくるデー
タを必要な部分だけ抽出します.
受信に必要な帯域だけ取り出してロー・パス・フ
ィルタをかけつつサンプリング・レートを変換した
り,画面表示に合わせて連続データの一部を切り取
ったりします.
〈編集部〉
72
● FPGA での前処理は必要最小限に留めた
ソフトウェア無線の全ての信号処理を FPGA 化す
ることも可能です.ただし,すべてをハードウェアの
演算ですませようとすると,さまざまな特殊アルゴリ
ズムを駆使することになり難解になるうえに,費用的
に考えても得策ではありません.
Pi ラジオでは,高速処理のためにハードウェアでな
くてはならない部分だけに限定して,FPGA 化するこ
とにしました.
本特集では,気象衛星 NOAA のアナログ信号を復
調することを目標に Pi ラジオの動作を決めました.
狭帯域 FM 信号の復調は,全てソフトウェアの担当に
します.FPGA が担当する処理は,サンプリング・レ
ートを落とす処理
(デシメーション)
,バッファ回路
(RAM)
,データ転送制御のみに限っています.
FPGA での信号処理内容は再定義できるので,広帯
2017 年 1 月号