A method, an apparatus, and a computer program are provided for
controlling memory access. Direct Memory Access (DMA) units have become
commonplace in a number of bus architectures. However, managing limited
system resources has become a challenge with multiple DMA units. In order
to mange the multitude of commands generated and preserve dependencies,
embedded flags in commands or a barrier command are used. These
operations then can control the order in which commands are executed so
as to preserve dependencies.