6. DMA Controller
48
BUSRQ*
/ BRQ_DST
/ LPT_DAK
LPT_DRQ
/ BUSAK
EOP
1
2
U43
ICPSMCI-7S32F
4
16
3
U18C
4
ICPSMCI-74FCT540Q
U18B
17
ICPSMCI-74FCT540Q
VCC
R84
2
1
RESSM-04751
VCC
R80
2
1
RESSM-04751
1
3
1
3
3
1
3
1
JPRX3
JPRX3
JPRX3
JPRX3
W24
W25
W26
W27
CT51
DCD1
RXD1
TXD1
ICP5MCI-386EX
113
117
128
118
112
EOP/CT51
DRQ0/DCD1
DAK0/CS5
DRQ1/RXD1
DAK1/TXD1
2
2
2
2
DMA Architecture
DMA TRANSFER CYCLES
The ZT 8904 supports DMA channel 0 as a channel for backplane DMA slaves.
Channel 0 must be programmed using two-cycle bus transfers. This causes at least two
separate bus cycles to occur for each DMA data transfer. DMA channel 1 is supported
for local devices. Channel 1 can be programmed using either fly-by or two-cycle
transfers.
I/O MAPPING
The 386 EX maps the DMA controller into the standard PC-AT I/O locations for DMA
channel 0 and channel 1. The "
386 EX DMA Controller Registers
" table lists I/O
addresses of the DMA controller registers. The Ziatech STD-DOS BIOS provides
support for the Ziatech ZT 8954 floppy subsystem. All application software must either
communicate with the floppy subsystem through the system BIOS or be coded to
access the correct addresses in the DMA controller I/O map.
DMA CONTROLLER OPERATION
The 386 EX DMA controller transfers data between a requester and a target. The data
can be transferred either from a requester to a target or from a target to a requester.
The target and requester can be located in either memory or I/O space, and transfers
can be on either a byte or a word basis. The requester can be an external device
(located in external I/O) an internal peripheral (located in internal I/O), or memory.