Operation Theory
65
ADLINK Technology Inc.
PCI-9524
Copyright 2008
User’s Manual
By using a high-level programming library for high speed DMA
data acquisition, users simply need to assign the sampling period
and the number of conversions into their specified counters. After
the AD trigger condition is met, the data will be transferred to the
system memory by the bus-mastering DMA.
In a multi-user or multi-tasking OS, such as Microsoft Windows,
Linux, and so on, it is difficult to allocate a large continuous mem-
ory block. Therefore, the PCI controller provides DMA transfer with
scatter-gather function to link non-continuous memory blocks into
a linked list so users can transfer large amounts of data without
being limited by memory limitations. In non-scatter-gather mode,
the maximum DMA data transfer size is 2 MB double words (8 MB
bytes); in scatter-gather mode, there is no limitation on DMA data
transfer size except the physical storage capacity of your system.
Users can also link descriptor nodes circularly to achieve a multi-
buffered DMA.
Figure 4-6 illustrates a linked list that is comprised of three DMA
descriptors. Each descriptor contains a PCI address, PCI dual
address, a transfer size, and the pointer to the next descriptor. PCI
address and PCI dual address support 64-bit addresses which can
be mapped into more than 4 GB of address space.
Figure 4-6: Linked List of PCI address DMA descriptors