938
SAM9G45 [DATASHEET]
6438K–ATARM–12-Feb-13
Multi-buffer DMAC transfer: A DMAC transfer may consist of multiple DMAC buffers. Multi-buffer DMAC transfers
are supported through buffer chaining (linked list pointers), auto-reloading of channel registers, and contiguous
buffers. The source and destination can independently select which method to use.
– Linked lists (buffer chaining) – A descriptor pointer (DSCR) points to the location in system memory
where the next linked list item (LLI) exists. The LLI is a set of registers that describe the next buffer
(buffer descriptor) and a descriptor pointer register. The DMAC fetches the LLI at the beginning of
every buffer when buffer chaining is enabled.
– Replay – The DMAC automatically reloads the channel registers at the end of each buffers to the value
when the channel was first enabled.
– Contiguous buffers – Where the address of the next buffer is selected to be a continuation from the
end of the previous buffer.
Picture-in-Picture Mode: DMAC contains a picture-in-picture mode support. When this mode is enabled, addresses
are automatically incremented by a programmable value when the DMAC channel transfer count reaches a user
defined boundary.
memory. A user defined start address is defined at Picture_start_address. The incremented value is set to
memory_hole_size = image_width - picture_width, and the boundary is set to picture_width.
Figure 41-4. Picture-In-Picture Mode Support
Channel locking: Software can program a channel to keep the AHB master interface by locking the arbitration for
the master bus interface for the duration of a DMAC transfer, buffer, or chunk.
Bus locking: Software can program a channel to maintain control of the AMBA bus by asserting hmastlock for the
duration of a DMAC transfer, buffer, or transaction (single or chunk). Channel locking is asserted for the duration of
bus locking at a minimum.
41.4.2
Memory Peripherals
handshaking interface with the DMAC, and therefore the memory peripheral can never be a flow controller. Once
the channel is enabled, the transfer proceeds immediately without waiting for a transaction request. The alternative