English
Language : 

82801FB Datasheet, PDF (181/786 Pages) Intel Corporation – Intel I/O Controller Hub 6 (ICH6) Family
Functional Description
5.16.2 Bus Master Function
The ICH6 can act as a PCI Bus master on behalf of an IDE device. One PCI Bus master channel is
provided for the IDE connector. By performing the IDE data transfer as a PCI Bus master, the
ICH6 off-loads the processor and improves system performance in multitasking environments.
Both devices attached to the connector can be programmed for bus master transfers, but only one
device can be active at a time.
5.16.2.1 Physical Region Descriptor Format
The physical memory region to be transferred is described by a Physical Region Descriptor (PRD).
The PRDs are stored sequentially in a Descriptor Table in memory. The data transfer proceeds until
all regions described by the PRDs in the table have been transferred.
Descriptor Tables must not cross a 64-KB boundary. Each PRD entry in the table is 8 bytes in
length. The first 4 bytes specify the byte address of a physical memory region. This memory region
must be DWord-aligned and must not cross a 64-KB boundary. The next two bytes specify the size
or transfer count of the region in bytes (64-KB limit per region). A value of 0 in these two bytes
indicates 64-KB (thus the minimum transfer count is 1). If bit 7 (EOT) of the last byte is a 1, it
indicates that this is the final PRD in the Descriptor table. Bus master operation terminates when
the last descriptor has been retired.
When the Bus Master IDE controller is reading data from the memory regions, bit 1 of the Base
Address is masked and byte enables are asserted for all read transfers. When writing data, bit 1 of
the Base Address is not masked and if set, will cause the lower Word byte enables to be de-asserted
for the first DWord transfer. The write to PCI typically consists of a 32-byte cache line. If valid data
ends prior to end of the cache line, the byte enables will be de-asserted for invalid data.
The total sum of the byte counts in every PRD of the descriptor table must be equal to or greater
than the size of the disk transfer request. If greater than the disk transfer request, the driver must
terminate the bus master transaction (by setting bit 0 in the Bus Master IDE Command Register to
0) when the drive issues an interrupt to signal transfer completion.
Figure 5-7. Physical Region Descriptor Table Entry
Main Memory
Byte 3
Byte 2
Byte 1
Byte 0
Memory Region Physical Base Address [31:1]
o
EOT
Reserved
Byte Count [15:1]
o
Memory
Region
Intel® I/O Controller Hub 6 (ICH6) Family Datasheet
181