tlul_fifo_sync

Buffer a TL-UL link with synchronous request and response FIFOs.

Instantiate separate request and response FIFOs to add elasticity on a TL-UL bus. The response FIFO stores d_data as zero for any opcode other than ACCESS_ACK_DATA. REQ_PASS and RSP_PASS allow fall-through when the corresponding FIFO is empty. SPARE_REQ_W and SPARE_RSP_W carry optional sideband bits alongside each channel.

Parameters

Table 1. Parameters
NameTypeDefaultDescription
REQ_PASSbit1'b1Allow A-channel fall-through when empty.
RSP_PASSbit1'b1Allow D-channel fall-through when empty.
REQ_DEPTHint unsigned2Depth of the host-to-device request FIFO; 0 bypasses it and requires REQ_PASS.
RSP_DEPTHint unsigned2Depth of the device-to-host response FIFO; 0 bypasses it and requires RSP_PASS.
SPARE_REQ_Wint unsigned1Width of spare bits with each request.
SPARE_RSP_Wint unsigned1Width of spare bits with each response.

Ports

Table 2. Ports
NameDirectionTypeDescription
clk_iinputSystem clock.
rst_niinputActive-low reset.
tl_h_iinputtlul_pkg::tl_h2d_tHost-side TL-UL request.
tl_h_ooutputtlul_pkg::tl_d2h_tHost-side TL-UL response.
tl_d_ooutputtlul_pkg::tl_h2d_tDevice-side TL-UL request.
tl_d_iinputtlul_pkg::tl_d2h_tDevice-side TL-UL response.
spare_req_iinput[SPARE_REQ_W-1:0]Spare request bits entering with tl_h_i.
spare_req_ooutput[SPARE_REQ_W-1:0]Spare request bits leaving with tl_d_o.
spare_rsp_iinput[SPARE_RSP_W-1:0]Spare response bits entering with tl_d_i.
spare_rsp_ooutput[SPARE_RSP_W-1:0]Spare response bits leaving with tl_h_o.