入門ガイド(https://reference.digilentinc.com/reference/programmable-logic/b205mini/getting-started)ではGNU Radioを使用したFMラジオレシーバのデザインについて簡単に順を追って説明します。ソフトウェアドライバーとGNUラジオのLinux OSへのインストール方法、リアルタイムDiscrete Fourier Transform(DFT:離散フーリエ変換)の実行例、FMラジオレシーバをゼロから作成する方法についてそれぞれ学ぶことができます。
FMレシーバは変調信号(つまりVHF帯域の電波)の入力から20 Hz〜20 kHzの幅のオリジナルの音声信号を生成します。まず初めに、ターミナルでGNU Radio Companionが開きます。それからSample Rate、Frequency、USRP、そしてQT GUI Sinkのブロックを追加します。さらに、ローパスフィルタを使います。音声信号の帯域幅が200 Hz〜20 kHzであることに注目してください。ローパスフィルタが追加できたら、次はFM復調を実行してください。
出力信号は耳で聴くことができるため、この信号がサウンドカードに送られます。これが実際は96 kHzくらいのサンプルレートのDA(Digital/Analog)コンバータとなっています。Rationalリサンプルブロックが使用されて、x(補間)が出力周波数、y(デシメーション)が入力周波数となるx/y操作が行われます。最後に、出力信号がスピーカから流れるようAudioシンクブロックが追加されます。生成が行われたらPythonのスクリプトがUSRP B205mini-iに送られて実行されます。出力信号はタイムと周波数のドメインに表示されます。