beautypg.com

ADLINK PCIe-7360 User Manual

Page 40

background image

30

Operations

due to the complexity of programming DMA transfer mode, It is
recommended that a high-level program library provided by our
driver be used to configure this card, a number needs only to be
assigned to the sampling period and the number of conversion
into the specified counters. After the trigger condition is matched,
the data is transferred to the system memory by the bus-mastering
DMA.

The PCI/PCIe controller also supports scatter/gather bus master-
ing DMA, enabling transfer of large amounts of data by linking all
the memory blocks into a continuous linked list.

In a multi-user or multi-tasking OS, like Microsoft Windows, or
Linux, it is difficult to allocate a large continuous memory block to
DMA transfer. Therefore, the PCI/PCIe controller enables scat-
ter-gather or chaining mode DMA to link the non-continuous mem-
ory blocks into a linked list avoiding fragments of small size
memory limiting transfer. Users can configure the linked list for the
input DMA channel or the output DMA channel.

As shown in a linked list constructed by three DMA descriptors,
each descriptor contains a PCI/PCIe address, PCI/PCIe dual
address, a transfer size, and the pointer to the next descriptor.
PCI/PCIe address and PCI/PCIe dual address support 64-bit
addresses which can be mapped into more than 4GB of the
address space. Many small size memory blocks can be allocated
and their associative DMA descriptors chained together by their
application programs. The software driver provides simple settings
of the scatter-gather function, and some sample programs are
also provided within the ADLINK all-in-one CD.