
Agere Systems Inc.
65
Data Sheet
July 2001
T8302 Internet Protocol Telephone
Advanced RISC Machine (
ARM
)
6 Programmable Direct Memory Access (DMA) Controller
(continued)
6.2.4 DMA Preload Transfer Count Registers for Channels [0:3]
The
DMA transfer count register
is a 16-bit register that decrements after each transfer. When the
DMA transfer
count register
reaches 0, the DMA transfer is halted unless it is in circular buffer mode. The
DMA transfer count
register
(Table 41) and the
DMA destination address register
(see Table 39 on page 64)
are reset to the value in
their preset registers. The
DMA transfer count register
is a read-only register that is preset to the number of
[bytes/half-words/words] to be transferred by writing to the
DMA preload transfer count register
. For all reset
conditions, the
DMA preload transfer count register
is set to 0.
Table 40 shows the format of the
DMA preload transfer count registers
.
Table 40. DMA Preload Transfer Count Registers for Channels [0:3]
6.2.5 DMA Transfer Count Registers for Channels [0:3]
Table 41. DMA Transfer Count Registers for Channels [0:3]
6.2.6 DMA Burst and Hold Count Registers
The DMA controller always attempts to send burst count (
BCNT
) number of transfers and then backs off of the bus
for at least hold count (
HCNT
) number of clock cycles to allow bus activity from other bus masters to occur. The
DMA burst and hold count registers
(see Table 42 on page 66)
allow the programmer to specify how many trans-
fers should be performed in a burst, and how many wait-states should be allowed between bursts. Table 42 shows
the format of the
DMA burst and hold count registers
.
Addresses, 0 (0xE000 2080), 1 (0xE000 2084), 2 (0xE000 2088), 3 (0xE000 208C)
31:16
RSVD
Name
RSVD
Reserved.
PLD_TCNT[15:0]
Preload value of the transfer count.
A write to this register also writes through to
the
DMA transfer count register
(Table 41)
and initializes it. In periphery-to-mem-
ory and circular buffer mode, these bits indicate the size of the circular buffer in
words.
Bit #
Name
Bit #
31:16
15:0
15:0
PLD_TCNT[15:0]
Description
This register is
not
initialized or updated by hardware.
Addresses, 0 (0xE000 20A0), 1 (0xE000 20A4), 2 (0xE000 20A8), 3 (0xE000 20AC)
31:16
RSVD
Name
RSVD
Reserved.
TCNT[15:0]
Number of bytes/half-words/words remaining to be transferred. Updated by hardware
to show the transfer count remaining. If a start is issued and
TCNT
= 0x0000, a transfer
will
not
occur, however, a
CH_DONE
x will be generated in response to the start.
Bit #
Name
Bit #
31:16
15:0
15:0
TCNT[15:0]
Description