I am trying to modify the Verilog came with adc12d1000rfrb to do some own test. But running into a weird part of the code in file adc12d1000_rfrb.v, To my mind the FIFO would not work as the rd_clk(hdclk_i) is half the frequency of wr_clk(dclk_i) and the FIFO only got depth of 16. Could someone help me to understand how this works?
Thank you,
fifo_48x16 di_syncfifo (
.rst(rst),
.wr_clk(dclk_i),
.rd_clk(hdclk_i),
.din(di2_reg),
.wr_en(1'b1),
.rd_en(1'b1),
.dout(di_sync),
.full(),
.empty());