狭帯域フィルタRRCのFIR係数設計
ARM×2+DSP 500MHz!STM32H7信号処理入門
|
|---|
| これはExcelシートを用いて,ルート・レイズド・コサイン・フィルタの係数を生成する方法を説明するもので,128の固定長係数とシンボル・レート16を用いた計算を行う内容である 〈著:加藤 隆志〉 |
| 【出典】:高感度受信!ソフトウェア無線機の心臓部“Root-Raised Cosine Filter”の設計 |
| 画像クリックで動画を見る.または記事を読む |
ルート・レイズド・コサイン・フィルタ(RRC)とは
ルート・レイズド・コサイン・フィルタ,通称RRCフィルタは通信システムで広く使われる狭帯域フィルタです.主にベースバンド信号の整形や帯域制限に用いられ,シンボル間干渉(ISI)を抑制する役割をもちます.RRCフィルタはレイズドコサインフィルタの平方根を取った特性をもち,送信側と受信側でそれぞれ適用することで理想的なレイズドコサイン特性を実現します.
このフィルタの設計において重要なパラメータがロールオフ率です.ロールオフ率はフィルタの遷移帯域の幅を示し,値が小さいほど帯域が狭くなります.一般的に0.35程度のロールオフ率が標準的で,適度な帯域制限と実装のしやすさのバランスが取れています.
FIR係数の設計方法
RRCフィルタの係数は有限インパルス応答(FIR)として設計されます.係数の長さはフィルタの性能や遅延に影響し,今回の例では128タップで固定しています.128タップとは0から数えて129個の係数があることを意味し,中央の係数は64番目に位置します.
設計にあたってはシンボル・レートとサンプリング・レートの関係も考慮します.例えばシンボル・レートが16の場合,1シンボルあたり16サンプルが存在することになります.これにより時間軸上のフィルタ特性を細かく調整できます.
Excelシートを用いた係数生成も可能で,マクロを使わずに数式を直接入力して計算する方法があります.条件を入力すると自動的にパルス応答が算出され,視覚的に特性を確認しながら調整できるメリットがあります.
STM32H7での信号処理応用
STM32H7シリーズはARMコアを2基搭載し,最大500MHzの動作周波数をもつ高性能マイクロコントローラです.DSP機能も強化されているため,高度な信号処理をリアルタイムで実行できます.RRCフィルタのFIR係数を用いた実装も効率的に行えます.
実際の応用では,128タップのFIRフィルタを高速に動作させるために,DSP命令やSIMD演算を活用します.これによりシンボル・レートに応じた高速処理が可能となり,通信の品質向上に寄与します.開発環境としてはC言語や専用のDSPライブラリが利用されることが多いです.
- RRCフィルタはシンボル間干渉を低減する狭帯域フィルタ
- フィルタ係数は128タップのFIRで設計し,中央係数は64番目
- シンボル・レート16に対してサンプリング・レートは16倍で設計
- Excelで数式を用い簡単に係数生成可能
- STM32H7の高速DSP機能でリアルタイム処理が可能
参考文献
- Arm M4/M7/DSP×500MHz!STM32H7ハイスペック計測通信Module開発,ZEPエンジニアリング株式会社.
- 高感度受信!ソフトウェア無線機の心臓部“Root-Raised Cosine Filter”の設計,ZEPエンジニアリング株式会社.
- [VOD]MATLAB/Simulink×FPGAで作るUSBスペクトラム・アナライザ,ZEPエンジニアリング株式会社.
- [VOD/KIT]初めてのソフトウェア無線&信号処理プログラミング 基礎編/応用編,ZEPエンジニアリング株式会社.
- [VOD]Pythonで学ぶ マクスウェル方程式 【電場編】+【磁場編】,ZEPエンジニアリング株式会社.
- 実験しながら学ぶフーリエ解析とディジタル信号処理[Vol.1:フーリエ解析の基本「三角関数」の正しい理解]
- [VOD]Pythonで学ぶ やりなおし数学塾2【フーリエ解析】
- [VOD/KIT]STM32マイコン&Wi-Fiモジュールで学ぶ C/C++プログラミング入門,ZEPエンジニアリング株式会社.


























































