Module axi_to_mem_interleaved_intf

AXI4+ATOP interface wrapper for axi_to_mem_interleaved

Parameters

AXI_ID_WIDTH: int unsigned

AXI4+ATOP ID width

AXI_ADDR_WIDTH: int unsigned

AXI4+ATOP address width

AXI_DATA_WIDTH: int unsigned

AXI4+ATOP data width

AXI_USER_WIDTH: int unsigned

AXI4+ATOP user width

MEM_NUM_BANKS: int unsigned

Number of memory banks / macros

BUF_DEPTH: int unsigned

Read latency of the connected memory in cycles

HIDE_STRB: bit

Hide write requests if the strb == ’0

OUT_FIFO_DEPTH: int unsigned

Depth of output fifo/fall_through_register. Increase for asymmetric backpressure (contention) on banks.

mem_addr_t: type

Dependent parameter, do not override. Memory address type.

mem_atop_t: type

Dependent parameter, do not override. Memory atomic type.

mem_data_t: type

Dependent parameter, do not override. Memory data type.

mem_strb_t: type

Dependent parameter, do not override. Memory write strobe type.

Ports

clk_i: input logic

Clock

rst_ni: input logic

Asynchronous reset, active low

test_i: input logic

Testmode enable

busy_o: output logic

Status output, busy flag of axi_to_mem

slv: AXI_BUS.Slave

AXI4+ATOP slave port

mem_req_o: output logic [MEM_NUM_BANKS-1:0]

Memory bank request

mem_gnt_i: input logic [MEM_NUM_BANKS-1:0]

Memory request grant

mem_addr_o: output mem_addr_t [MEM_NUM_BANKS-1:0]

Request address

mem_wdata_o: output mem_data_t [MEM_NUM_BANKS-1:0]

Write data

mem_strb_o: output mem_strb_t [MEM_NUM_BANKS-1:0]

Write data byte enable, active high

mem_atop_o: output mem_atop_t [MEM_NUM_BANKS-1:0]

Atomic operation

mem_we_o: output logic [MEM_NUM_BANKS-1:0]

Write request enable, active high

mem_rvalid_i: input logic [MEM_NUM_BANKS-1:0]

Read data valid response, active high

mem_rdata_i: input mem_data_t [MEM_NUM_BANKS-1:0]

Read data response

Types

id_t
addr_t
data_t
strb_t
user_t
aw_chan_t
w_chan_t
b_chan_t
ar_chan_t
r_chan_t
axi_req_t
axi_resp_t

Signals

mem_axi_req: axi_req_t

mem_axi_resp: axi_resp_t