CicInterpolator
CIC補間フィルタ
入力サンプルをSTAGES段の櫛形フィルタへ通し、その結果をINTERPOLATION倍のゼロ挿入列としてSTAGES段の積分器へ入力する。
output_validは動作中、クロックごとにHighになる。
定常ゲインの補正は行わないため、倍率と段数に応じたスケーリングは利用側で行う。
通過帯域のdroop補正もこのモジュールの責務外とする。
1入力をinput_valid && input_readyで受理すると、INTERPOLATION個の出力を連続生成する。
burst最終cycleではinput_readyもHighとなるため、次入力を同時受理すればoutput_validを途切れさせず次burstへ移れる。
Parameters
| INPUT_WIDTH | u32 | 入力サンプルのビット幅 |
|---|---|---|
| ACCUMULATOR_WIDTH | u32 | 積分器・出力のビット幅 |
| STAGES | u32 | 積分器と櫛形フィルタの段数 |
| INTERPOLATION | u32 | 補間比 |
Ports
| clk | input | clock | システムクロック | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| rst | input | reset | リセット | ||||||||
| input_valid | input | bbool | 入力サンプル有効 | ||||||||
| input_ready | output | logic | 入力受理可能 | ||||||||
| input_sample | input | signedlogic| 入力サンプル
|
output_valid |
output |
bbool |
出力サンプル有効
|
output_sample |
output |
signedlogic | 補間後の出力サンプル
|
|