TwoXHalfbandAsrc
1段のhalfband補間と連続線形ASRCを接続した1ch 2倍オーバーサンプラ。
phase_incrementは入力サンプルレートを基準にしたQ0.PHASE_WIDTH値で受け取る。
halfbandで入力を2倍へ補間してからFIFOへ格納するため、内部のNCOには位相増分を
2倍して渡す。呼び出し側の推定器は48/44.1kHzなど元のADATレートの増分をそのまま
接続できる。
input → Halfband 2x (COEFFICIENT_SET=1)
→ 2-sample burst → FIFO → continuous linear ASRC → output
HBFはナイキスト付近のスペクトルイメージ成分を抑えるため、短いset2ではなくset1を使う。
STARTUP_LEVELまでFIFOを満たしてから出力を開始し、入力欠落はunderflowへ
stickyに記録する。
Parameters
| SAMPLE_WIDTH | u32 | 入出力サンプルの符号付きビット幅 |
|---|---|---|
| PHASE_WIDTH | u32 | 入力レート基準の位相増分幅 |
| INPUT_DEPTH | u32 | 線形ASRC FIFOの深さ |
Ports
| clk | input | clock | システムクロック | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| rst | input | reset | リセット | ||||||||||||||||||||
| input_valid | input | bbool | 入力サンプル有効 | ||||||||||||||||||||
| input_ready | output | bbool | 入力受理可能 | ||||||||||||||||||||
| input_sample | input | signedlogic| 入力サンプル
|
phase_increment |
input |
logic | 入力レート基準のQ0位相増分
|
output_active |
output |
bbool |
連続出力が有効
|
output_sample |
output |
signedlogic | 補間後の出力サンプル
|
input_level |
output |
logic<$clog2(INPUT_DEPTH+1)> |
ASRC FIFOのワード数
|
underflow |
output |
bbool |
入力不足のstickyフラグ
|
|