Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

ID 814346
Date 4/07/2025
Public
Document Table of Contents

5.2.6.3. Programming Flow for Single Block Transfer

  1. The software reads the DMAC Channel Enable Register (DMAC_CHENREG) to choose a free (unused) channel.
  2. The software programs the CHx_CFG2 register with multi-block type value of both source and destination peripherals to be 2'b00.
  3. The software programs the CHx_SAR and/or CHx_DAR, CHx_BLOCK_TS, and CHx_CTL registers with appropriate values for the block.
  4. The software enables the channel by writing 1 to the appropriate bit location in the DMAC_CHENREG register.
  5. The source and destination request single or burst DMA transactions to transfer the block of data (assuming non-memory peripherals). The DMAC acknowledges at the completion of every transaction (burst and single) in the block and carries out the block transfer.
  6. The software waits for the block transfer completion interrupts or polls the block transfer completion indication bit (BLOCK_TFR_DONE) in the CHx_INTSTATUS register till the bit is 1.