Veryl registryAkiyukiOkayasu/gndless-sample-rate-conversion-veryl · gndless_sample_rate_conversionSource ↗

Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

BurstFifo

複数sampleまでを吸収するvalid/ready FIFO。

書き込み側は連続したburst書き込みを吸収でき、input_readyは空きがある間Highになる。 読み出し側はoutput_valid && output_readyでpopする。書き込みから読み出しまでのレイテンシーは 1クロックで、burst書き込みとpopが同時に起きても失われない。 主にHalfbandUpsamplerの2クロックburst出力を、入力readyが間欠的な次段へ引き渡すために使う。 消費側の処理時間が生産側のburst間隔より長い場合はDEPTHを拡大する (例: 39tap×8chのS3段ではburst4フレームを吸収するためDEPTH=4)。

Parameters


CHANNELS u8 1 wordあたりのchannel数
DEPTH u8 FIFOの深さ

Ports


clk input clock system clock
rst input reset reset
input_valid input bbool write valid
input_ready output bbool write ready (空きがある)
input_samples modport gndless_fixedpoint __FixedPointValue__gndless_fixedpoint_Q4_23 input_port [CHANNELS] Q4.23 write word
output_valid output bbool read valid (データあり)
output_ready input bbool read ready
output_samples modport gndless_fixedpoint __FixedPointValue__gndless_fixedpoint_Q4_23 output_port [CHANNELS] Q4.23 read word