Intel
®
81341 and 81342 I/O Processors
December 2007
Developer’s Manual
Order Number: 315037-002US
463
Application DMA Unit—Intel
®
81341 and 81342
5.0
Application DMA Unit
This chapter describes the integrated Application DMA (ADMA) Unit. Operation modes,
setup, external interface, and ADMA unit implementation are detailed in this chapter.
5.1
Overview
Application DMA provides low-latency, high-throughput data transfer capability
between the ADMA unit, Intel
®
81341 and 81342 I/O Processors (81341 and 81342)
local memory and host I/O interface (PCI or PCI Express). It executes data transfers
from-and-to the 81341 and 81342 local memory, from the host I/O interface to the
81341 and 81342 local memory, or from the 81341 and 81342 local memory to the
host I/O interface. ADMA can perform a byte-wise XOR operation across up to 16
concurrent data streams and/or a Galois field multiply of up to 16 concurrent data
streams, followed by an XOR operation across them. In addition, the ADMA unit
computes a zero result buffer check across local or Host memory blocks, provides a
hardware assist to the iSCSI* application by calculating CRC-32C on a single data
stream, and performs memory block fills. ADMA is fully programmable from 81341 and
81342 and features:
• Three independent channels
• 6K-byte data transfer queue.
• 2
36
addressing range on the Internal Bus interface
• 2
36
addressing range on the DDR SDRAM MCU Port
• 2
64
addressing range on the Host interface
• Hardware support for unaligned data transfers for both the host I/O interface and
the Internal Bus
The Application DMA performs the following functions:
• Three Options for Transferring Data:
— From memory controller to memory controller
— From host I/O interface to memory controller
— From memory controller to host I/O interface
• While Transferring Data the ADMA unit can:
— Perform an XOR operation on up to 16 read data sources.
— Perform an optimized dual-XOR calculation for dual XOR-based RAID 6
applications
— Calculate CRC-32C on the transferred data stream
— Apply a Galois Field (GF) Multiply function on the Source Data Streams to
simultaneously generate P and Q in support of a P+Q RAID6 algorithm.
• The ADMA Unit can verify the integrity of data by:
— Computing zero result buffer check across memory blocks.
• Perform memory block fills.