TwoXHalfbandAsrc::<FORMAT>
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に記録する。
Generic Parameters
| FORMAT | gndless_fixedpoint SignedFixedPointFormat |
|---|
Parameters
| 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 | modport | gndless_fixedpoint FixedPointValue input_port | 入力sample | ||||||||||||||||
| phase_increment | input | logic| 入力レート基準のQ0位相増分
|
output_active |
output |
bbool |
連続出力が有効
|
output_sample |
modport |
gndless_fixedpoint FixedPointValue output_port |
補間後の出力sample
|
input_level |
output |
logic<$clog2(INPUT_DEPTH+1)> |
ASRC FIFOのワード数
|
underflow |
output |
bbool |
入力不足のstickyフラグ
|
|