2014-10-30 08:03 AM
We are evaluating the STM32F4 products.
For our current hardware an FPGA will generate measurement values. These values have to be transfered to an external RAM. Both are connected to the STM32 over the bus interface FMC. The idea was, that the STM32 handles this by using DMA, to copy the measurement values from the FPGA to the RAM by using an DMA Request. As I understood now, the STM32 only can perform DMA requests for internal hardware, or triggered from the software. Is there no possibility to solve this issue? We can not generate an interrupt each time measurement values have to be copied, because ist are only a few bytes, but this in a very frequent way. So generating an interrupt would be to much overhead. I am looking forward for your suggestions... #dma-external-trigger2014-10-30 08:21 AM
Use the external signal to trigger an event in some of the internal peripherals, which in turn can trigger a DMA transfer. For example, timer capture is a straighforward choice.
Get a cheap 'F4 Discovery kit and play with it a bit to get the feeling. JW2014-10-30 09:15 AM
We visited DMA to/from GPIO ports triggered by external signals a while back.
Suggest you search the forum, or Google, for additional threads2014-10-30 09:18 AM
You're using an FPGA, so feed it a clock signal generated by the STM32, and have that trigger the transfer.
The DCMI is a clocked parallel interface.2014-10-30 01:03 PM
Thank you for your helpful hints so far.
Can you explain me a little more detailed what you mean with the clock feed to the FPGA or using the DCMI?2014-10-30 01:45 PM
Yeah, I'm not sufficiently familiar with your FPGA, or the protocol here, I merely suggested you consider your interface choices. Please review the manual for DCMI interface capabilities.
2014-11-07 04:55 AM
ok. We checked the DCMI, and it really seems to be a possibility.
But back on the topic, to trigger a DMA request by an external pin. If I would trigger the DMA request by a timer which can do this, are there limitations between the Input-Frequency? In our system we will have to generate DMA request with a rate of 1MHz. Would this be possible?2014-11-07 05:47 AM
I would expect 1 MHz to be viable, you will need to do your own experimentation/testing.