4. DMA
121
PowerSpan II User Manual
80A1010_MA001_09
Integrated Device Technology
www.idt.com
Each command packet is 32-byte aligned. If the command packets are resident in PCI memory, the byte
ordering is little-endian. If the command packets are resident in processor bus memory, the byte
ordering is big-endian. command packets can reside on any one of the three PowerSpan II interfaces.
The contents of a command packet are described, with the associated DMA register, in
.
The Command Packet Pointer register (DMAx_CPP) contains two elements: the Next Command
Packet Pointer (NCP[31:5]) and the LAST bit. The NCP[31:5] field directs the PowerSpan II DMA to
the next command packet in the linked-list. The LAST bit indicates the end of the linked-list.
The chaining of the command packets is illustrated in
Table 29: Programming Model for the Command Packet Contents
Register
Register Description and Operation
DMAx_SRC_ADDR
The Source Address Register can be programmed for an address on any
one of the three PowerSpan II buses. This register can be programmed in
Direct mode or automatically loaded in Linked-List mode. Writing to this
register while the DMA is in operation has no effect. While the DMA is
active, this register provides the status on the current source address.
This address is byte-aligned.
DMAx_DST_ADDR
The Destination Address Register can be programmed for an address on
any one of the three PowerSpan II buses (including the same bus as that
used for the Source Address). This register can be programmed in Direct
mode or automatically loaded in Linked-List mode. Writing to this register
while the DMA is in operation has no effect. While the DMA is active, this
register provides the status on the current destination address. This
address is byte-aligned. The lower bits on the destination address are the
same as the lower bits on the source address.
DMAx_TCR
The DMA Transfer Control Register specifies the source and destination
buses, the endian conversion mode of a transfer involving the Processor
Bus and a PCI bus (see
), and specifies
the byte count from any remaining Direct mode operation.
DMAx_CPP
The DMA Command Packet Pointer register specifies the 32-byte aligned
address of the next command packet in the linked-list. This is
programmed by PowerSpan II as it loads a command packet. There is a
LAST flag in this register to indicate the end of the linked-list.
DMAx_ATTR
The DMA Attributes Register specifies to the channel the location of the
linked-list port.