External Memory Interfaces Agilex™ 7 M-Series FPGA IP User Guide

ID 772538
Date 11/18/2024
Public
Document Table of Contents

12.2. Sending a Mailbox Command

Follow these steps to send a mailbox command.
  1. Write to the CMD_PARAM_* register. If the command does not require any CMD_PARAM – for example, GET_MEM_INTF_INFO – you can skip this step.
  2. Write to the CMD_REQ with the desired command (CMD_TARGET_IP_TYPE, CMD_TARGET_INSTANCE_ID, CMD_TYPE and CMD_OPCODE)
  3. Wait until STATUS_CMD_RESPONSE_READY (BIT 0 of CMD_RESPONSE_STATUS) equals 1 .
  4. Read the CMD_RESPONSE_DATA_* and/or CMD_RESPONSE_DATA_SHORT (as required for the CMD_REQ).
  5. Clear the STATUS_COMMAND_RESPONSE_READY (Bit 0 of CMD_RESPONSE_STATUS register) . Perform a Read-Modify-Write operation:
    1. Read from CMD_RESPONSE_STATUS register.
    2. Write_Data = Data in (a) & 0xffff_fffe (Change only bit 0 ).
    3. Write to Address = 0x500_045c Data= Write_Data from (b).
Figure 76. Sending a Mailbox Command