Why does each register of my Scatter-Gather DMA Controller Core slave interface take 256bytes?

0
Posted

Why does each register of my Scatter-Gather DMA Controller Core slave interface take 256bytes?

0

Solution You will see a larger than expected memory space being taken up by the SGDMA slave interface because eight address bits are used for the slave port. As a result each 32 bit register is spaced 16 bytes apart. The registers are located at the following addresses: Status –> byte address 0, 32 bit word address 0 Control –> byte address 16, 32 bit word address 4 Next Descriptor Pointer –> byte address 32, 32 bit word address 8 If you access the SGDMA registers directly, it is very important that you use the macros defined in “altera_avalon_sgmda_regs.h” so that you do will not need to modify your code if the SGDMA address range is changed.

Related Questions