FALL_THROUGH: bitDATA_WIDTH: int unsignedDEPTH: int unsigneddtype: typeADDR_DEPTH: int unsignedFifoDepth: int unsignedclk_i: input logicrst_ni: input logicflush_i: input logictestmode_i: input logicfull_o: output logicempty_o: output logicusage_o: output logic [ADDR_DEPTH-1:0]data_i: input dtypepush_i: input logicdata_o: output dtypepop_i: input logic