6. DMA Controller
64
DMA Mode Registers
The DMAMOD 1 register is used to select a particular channel's data-transfer mode and
transfer direction, and to enable the channel's auto-initialize buffer-transfer mode. You
can configure the DMA controller to modify the target address during a buffer transfer by
clearing DMAMOD2.2, then use DMAMOD1.3 to specify how the channel modifies the
address.
REGISTER:
ADDRESS:
AT ADDRESS:
ACCESS:
D7
D6
D5
D4
D3
D2
D1
D0
000Bh
0F00Bh
0
0
0
0
0
0
0
0
DMAMOD1
W/O, D0 specifies channel
1= Bits D7-D2 affect channel 1
0= Bits D7-D2 affect channel 0
Reserved
Transfer direction:
00= target is read, nothing is written (test mode)
1= Auto-initialize channel
0= Do not auto-initialize channel
1= target address decrement
DMA mode register 1
01= requestor is read, target is written
10= target is read, requestor is written
11= reserved
0= target address increment
Data transfer mode:
00= demande mode
01= single transfer mode
10= target is read, requestor is written
11= reserved
DMA Mode Register 1
The DMAMOD2 register is used to select the data transfer bus cycle option, specify
whether the requestor and target are in memory or I/O, and determine whether the DMA
controller will modify the target and requestor addresses.