Embedded DMA controllers

Moving memory around is often more important than instruction execution speed. It can also be more difficult. This is extremely true in distributed embedded systems, where a number of nodes make up a system with some objective. The problem becomes even more interesting if the arrival and departure time of said memory is constrained in time. LL has a fascinating paper concerning the management of clocks and the ordering of events.

A recently posted article on Hacker News discusses the DMA controllers available on the RP2040. Some STM32 devices also feature DMA controllers. The speed and usability of these cores, and the speed of the memory can be important to the system design.

These are an important feature to know about and make use of if real-time operation of your main processor cores can impact the greater system.

The presence of the PIO controllers on the RP2040 is another powerful addition. These features bring embedded microprocessors closer to their FPGA counterparts.

Leave a comment