168 Intel® 631xESB/632xESB I/O Controller Hub Datasheet
Functional Description
5.7.2 Address Compatibility Mode
When the DMA is operating, the addresses do not increment or decrement through the
High and Low Page Registers. Therefore, if a 24-bit address is 01FFFFh and increments,
the next address is 010000h, not 020000h. Similarly, if a 24-bit address is 020000h
and decrements, the next address is 02FFFFh, not 01FFFFh.
However, when the DMA is operating in 16-bit mode, the addresses still do not
increment or decrement through the High and Low Page Registers but the page
boundary is now 128 K. Therefore, if a 24-bit address is 01FFFEh and increments, the
next address is 000000h, not 0100000h. Similarly, if a 24-bit address is 020000h and
decrements, the next address is 03FFFEh, not 02FFFEh. This is compatible with the
82C37 and Page Register implementation used in the PC-AT. This mode is set after
CPURST is valid.
5.7.3 Summary of DMA Transfer Sizes
Table 5-28 lists each of the DMA device transfer sizes. The column labeled “Current
Byte/Word Count Register” indicates that the register contents represents either the
number of bytes to transfer or the number of 16-bit words to transfer. The column
labeled “Current Address Increment/Decrement” indicates the number added to or
taken from the Current Address register after each DMA transfer cycle. The DMA
Channel Mode Register determines if the Current Address Register will be incremented
or decremented.
5.7.3.1 Address Shifting When Programmed for 16-Bit I/O Count by Words
The Intel®631xESB/632xESB I/O Controller Hub maintains compatibility with the
implementation of the DMA in the PC AT that used the 82C37. The DMA shifts the
addresses for transfers to/from a 16-bit device count-by-words.
Note: The least significant bit of the Low Page Register is dropped in 16-bit shifted mode.
When programming the Current Address Register (when the DMA channel is in this
mode), the Current Address must be programmed to an even address with the address
value shifted right by one bit.
Table 5-27. DMA Channel Priority
Current Both Fixed Lower Fixed, Upper
Rotating Lower Rotating,
Upper Fixed Both Rotating
0 0, 1, 2, 3, 5, 6, 7 5, 6, 7, 0, 1, 2, 3 1, 2, 3, 0, 5, 6, 7 5, 6, 7, 1, 2, 3, 0
1 0, 1, 2, 3, 5, 6, 7 5, 6, 7, 0, 1, 2, 3 2, 3, 0, 1, 5, 6, 7 5, 6, 7, 2, 3, 0, 1
2 0, 1, 2, 3, 5, 6, 7 5, 6, 7, 0, 1, 2, 3 3, 0, 1, 2, 5, 6, 7 5, 6, 7, 3, 0, 1, 2
3 0, 1, 2, 3, 5, 6, 7 5, 6, 7, 0, 1, 2, 3 0, 1, 2, 3, 5, 6, 7 5, 6, 7, 0, 1, 2, 3
5 0, 1, 2, 3, 5, 6, 7 6, 7, 0, 1, 2, 3, 5 0, 1, 2, 3, 5, 6, 7 6, 7, 0, 1, 2, 3, 5
6 0, 1, 2, 3, 5, 6, 7 7, 0, 1, 2, 3, 5, 6 0, 1, 2, 3, 5, 6, 7 7, 0, 1, 2, 3, 5, 6
7 0, 1, 2, 3, 5, 6, 7 0, 1, 2, 3, 5, 6, 7 0, 1, 2, 3, 5, 6, 7 0, 1, 2, 3, 5, 6, 7
Table 5-28. DMA Transfer Size
DMA Device Date Size And Word Count Current Byte/Word
Count Register Current Address
Increment/Decrement
8-Bit I/O, Count By Bytes Bytes 1
16-Bit I/O, Count By Words (Address Shifted) Words 1