User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 273
UG585 (v1.11) September 27, 2016
Chapter 9: DMA Controller
9.3 Programming Guide for DMA Controller
9.3.1 Startup
Example: Start-up Controller
1. Configure Clocks. Refer to section 9.6.1 Clocks
2. Configure Security State. Refer to section 9.6.3 Reset Configuration of Controller
3. Reset the Controller. Refer to section 9.6.2 Resets
4. Create Interrupt Service Routine. Refer to section 9.3.3 Interrupt Service Routine
5. Execute DMA Transfers. Refer to section 9.3.2 Execute a DMA Transfer
9.3.2 Execute a DMA Transfer
1. Write Microcode into Memory for DMA Transfer. Refer to section 9.4 Programming Guide for
DMA Engine
a. Create a program for the DMA channel.
b. Store the program in a region of system memory.
2. Start the DMA Channel Thread. Refer to section 9.2.3 DMA Manager
9.3.3 Interrupt Service Routine
There are two types of interrupt signals from the DMA controller to the PS interrupt controller:
°
Eight DMAC IRQs [75:72] and [49:46]
°
One DMAC ABOART IRQ [45]
An interrupt service routine (ISR) can be use for each type of interrupt. The two ISRs are described
below. For more information on interrupts, refer to section 9.2.10 Events and Interrupts.
Write queue depth 16
Read issuing capability 8
Write issuing capability 8
Peripheral request capabilities All capabilities
Secure APB base address 0xF800_3000
Non-secure APB base address 0xF800_4000
Table 9-9: DMAC IP Configuration Options (Cont’d)
IP Configuration Option
Value