LFE2M50E-PS-EVN Lattice, LFE2M50E-PS-EVN Datasheet - Page 57

no-image

LFE2M50E-PS-EVN

Manufacturer Part Number
LFE2M50E-PS-EVN
Description
Programmable Logic IC Development Tools LatticeECP2M PCI Express Dev Kit
Manufacturer
Lattice
Datasheet

Specifications of LFE2M50E-PS-EVN

Rohs
yes
Tool Is For Evaluation Of
LatticeECP2M-50
Factory Pack Quantity
1
Running the PCI Express DMA Demos
LatticeECP2M PCI Express Development Kit User’s Guide
Figure 14: SGDMA Buffer Address Mapping
The SGDMA needs physical addresses to put on the bus and needs
contiguous memory. In a simple flat memory architecture, the SGDMA could
just take a starting address and a length of 1MB and transfer all data in one
continuous operation. In virtual memory machines, the kernel and memory
manager need to be enlisted at the driver level to create a map of the virtual
memory to physical pages. In Windows, this mapping is known as a Memory
Descriptor List (MDL).
The MDL is a Scatter-Gather List that maps virtual memory to physical page
addresses. The device driver uses the MDL entries to program the buffer
descriptors. Each buffer descriptor is programmed with the physical memory
address and the length (usually one page, 4096 bytes). When the SGDMA
channel is activated it reads the linked list of buffer descriptors and moves the
data to that address, and then moves to the next buffer descriptor and next
address until the end of the list is reached. The following figure illustrates this
operation.
The buffer descriptors (BD[1, 2,..], shown on the left in Figure 14 have their
destination addresses programmed to the start of the physical pages in
memory. These pages in Physical RAM to the right of the buffer descriptors
may not be contiguous or sequential in memory. The memory manager in the
PC hardware uses the MDL or Scatter Gather List (SG List) to make this set
of pages appear contiguous to the application running in user space (Virtual
Memory mode).
The SGDMA offloads the processor and kernel by having the ability to
perform this scattering of contiguous data (memory on the solutions board) to
arbitrary memory pages, or for reading, to gather a set of discontinuous
memory pages into a contiguous memory on the solutions board.
DMA Demo Operations Overview
49

Related parts for LFE2M50E-PS-EVN