HpfShiftVariableSigned
可変シフト量に対応したHPF (符号付き版)。 実行時にシフト量を変更できる。 x - lpf_out が出力幅を超える場合はsigned範囲へ飽和する。
伝達関数: y[n] = x[n] - lpf[n]。 ここで lpf[n] = lpf[n-1] + (x[n] - lpf[n-1]) >> shift。
Parameters
| DATA_WIDTH | u32 | 入出力データ幅 |
|---|---|---|
| MAX_SHIFT | u32 | 最大シフト量 |
| SHIFT_BITS | u32 | シフト量を表現するビット数 |
Ports
| clk | input | clock | システムクロック |
|---|---|---|---|
| rst | input | reset | リセット (出力を0に初期化) |
| enable | input | bbool | イネーブル信号 (trueでフィルタ更新) |
| shift | input | logic<SHIFT_BITS> | シフト量 (1 ~ MAX_SHIFT) |
| x | input | signedlogic<DATA_WIDTH> | 入力サンプル (符号付き) |
| y | output | signedlogic<DATA_WIDTH> | フィルタ出力 (符号付き) |