Hi mjg8t,
Hope you are doing great.
To test this, you can set-up a DMA transfer transferring a block of some data.
for instance copy some RAM buffer to another RAM location. You can measure the time required by toggling the pin at the end of the transfer or at the beginning and the end of the transfer. Or you can measure this period by the SYSTICK or other timer. Then you can calculate transfer speed for the specific cases.
The speed of the transfer may be different, for instance if you are accessing the FLASH or Peripheral Register space or external bus. Because then the data transactions are delayed by internal bus multiplexing (AHB master / slave ports).
Moreover, the speed may be affected by the priorities between the CPU and DMA controllers ( bus masters), when they want to access the same type of the memory (concurrent access). For instance the DMA must wait, causing additional delays.
Our practical measurements shown (very rough estimation) that DMA transfer spped can typically achieve
System clock / 10. It means when the System frequency = 100MHz, DMA can transfer 10Mbytes/s
Hope this helps.
Have a great day
Jonathan