Initialization Mode - 1.0 English

AXI Memory Initialization LogiCORE IP Product Guide (PG341)

Document ID
PG341
Release Date
2019-05-22
Version
1.0 English

When the AXI Memory Init core is in its initial state, it is in Initialization Mode. The AXI Memory Init IP immediately re-enters Initialization Mode following a reset.

During Initialization Mode, the slave interface (SI) of the core is held in a quiescent state for write and read. No write or read commands requested on the SI are accepted (s_axi_awready and s_axi_arready output signals are deasserted). No write responses received on the master interface (MI) are propagated to the SI. Any read data transfers observed on the MI are ignored, as AXI protocol prohibits them from occurring when no read commands have been issued.

While in the Initialization Mode, the AXI Memory Init IP autonomously writes an initial value (default all-zeros) to all specified address locations accessible on the MI, according to the values of BASE_ADDR and ADDR_SIZE. That is, the IP assumes that the memory to be initialized is of size 2**ADDR_SIZE bytes. Throughout Initialization Mode, init_complete_out is driven to zero.

After writing all locations and waiting for all outstanding write responses (which are accepted and discarded), the IP transitions to Operational Mode.

For all write transactions issued autonomously during Initialization Mode:

  • AWLEN = h'0F (16-beat bursts)
  • AWSIZE = log2(DATA_WIDTH / 8), that is, full-width
  • AWBURST = 2'h01 (INCR)
  • AWID, AWPROT, AWCACHE, AWQOS, AWUSER, AWLOCK = all zeros
  • WDATA = INIT_VALUE
  • WSTRB = all ones
  • WUSER = all zeros

For the first write transaction, AWADDR = BASE_ADDR. For each subsequent write transaction issued, AWADDR is incremented by 16 * (DATA_WIDTH / 8).