Dma controller core, Core overview, Functional description – Altera Embedded Peripherals IP User Manual
Page 232: Dma controller core -1, Core overview -1, Functional description -1

DMA Controller Core
23
2014.24.07
UG-01085
Core Overview
The direct memory access (DMA) controller core with Avalon
®
interface performs bulk data transfers,
reading data from a source address range and writing the data to a different address range. An Avalon
Memor-Mapped (Avalon-MM) master peripheral, such as a CPU, can offload memory transfer tasks to
the DMA controller. While the DMA controller performs memory transfers, the master is free to perform
other tasks in parallel.
The DMA controller transfers data as efficiently as possible, reading and writing data at the maximum
pace allowed by the source or destination. The DMA controller is capable of performing Avalon transfers
with flow control, enabling it to automatically transfer data to or from a slow peripheral with flow control
(for example, UART), at the maximum pace allowed by the peripheral.
Instantiating the DMA controller in Qsys creates one slave port and two master ports. You must specify
which slave peripherals can be accessed by the read and write master ports. Likewise, you must specify
which other master peripheral(s) can access the DMA control port and initiate DMA transactions. The
DMA controller does not export any signals to the top level of the system module.
For the Nios
®
II processor, device drivers are provided in the HAL system library. See the Software
Programming Model section for details of HAL support.
Functional Description
You can use the DMA controller to perform data transfers from a source address-space to a destination
address-space. The controller has no concept of endianness and does not interpret the payload data. The
concept of endianness only applies to a master that interprets payload data.
The source and destination may be either an Avalon-MM slave peripheral (for example, a constant
address) or an address range in memory. The DMA controller can be used in conjunction with
peripherals with flow control, which allows data transactions of fixed or variable length. The DMA
controller can signal an interrupt request (IRQ) when a DMA transaction completes. A transaction is a
sequence of one or more Avalon transfers initiated by the DMA controller core.
The DMA controller has two Avalon-MM master ports—a master read port and a master write port—and
one Avalon-MM slave port for controlling the DMA as shown in the figure below.
©
2014 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos are
trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as
trademarks or service marks are the property of their respective holders as described at
www.altera.com/common/legal.html
. Altera warrants performance
of its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any
products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,
product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device
specifications before relying on any published information and before placing orders for products or services.
www.altera.com
101 Innovation Drive, San Jose, CA 95134