Veryl registryAkiyukiOkayasu/gndless-interpolation-veryl · gndless_interpolationSource ↗

Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

gndless_interpolation

Combinational sample interpolation kernels for Veryl.

Version 0.2.0
Repository https://github.com/AkiyukiOkayasu/gndless-interpolation-veryl
License MIT OR Apache-2.0

Modules

CubicLagrangeInterpolator::<FORMAT> formatを保持したsample interfaceを使う4点3次Lagrange補間器
LinearInterpolator::<FORMAT> formatを保持したsample interfaceを使う2点間の線形補間器

Modules


CubicLagrangeInterpolator::<FORMAT> formatを保持したsample interfaceを使う4点3次Lagrange補間器
LinearInterpolator::<FORMAT> formatを保持したsample interfaceを使う2点間の線形補間器

CubicLagrangeInterpolator::<FORMAT>

formatを保持したsample interfaceを使う4点3次Lagrange補間器

既定のQ2.23はASRC処理中のheadroomを確保する。Horner段の乗算は27x36 DSP幅を超えるため、resource重視のASRC経路にはhalfbandとlinearの組合せを推奨する

Generic Parameters


FORMAT gndless_fixedpoint SignedFixedPointFormat

Parameters


PHASE_WIDTH u32 位相の小数部ビット幅
ROUNDING_MODE RoundingMode 右シフト時の丸め方式
OVERFLOW_MODE OverflowMode 出力範囲超過時の処理方式

Ports


sample_m1 modport gndless_fixedpoint FixedPointValue input_port 補間窓の1つ前のsample
sample0 modport gndless_fixedpoint FixedPointValue input_port 補間窓の第1sample
sample1 modport gndless_fixedpoint FixedPointValue input_port 補間窓の第2sample
sample2 modport gndless_fixedpoint FixedPointValue input_port 補間窓の第3sample
phase input logic sample0からsample1へ進む位相
sample modport gndless_fixedpoint FixedPointValue output_port 補間結果

LinearInterpolator::<FORMAT>

formatを保持したsample interfaceを使う2点間の線形補間器

FORMATはsampleの幅とbinary pointを一体で指定する。既定のQ2.23は24bit PCMを精度を失わずに符号拡張し、ASRC処理中のheadroomを確保する

Generic Parameters


FORMAT gndless_fixedpoint SignedFixedPointFormat

Parameters


PHASE_WIDTH u32 位相の小数部ビット幅
ROUNDING_MODE RoundingMode 右シフト時の丸め方式
OVERFLOW_MODE OverflowMode 出力範囲超過時の処理方式

Ports


sample0 modport gndless_fixedpoint FixedPointValue input_port 補間窓の前側sample
sample1 modport gndless_fixedpoint FixedPointValue input_port 補間窓の後側sample
phase input logic sample0からsample1へ進む位相
sample modport gndless_fixedpoint FixedPointValue output_port 補間結果

Module Prototypes


Interfaces


Packages