Multi Channel DMA Intel® FPGA IP for PCI Express User Guide

ID 683821
Date 11/01/2022
Document Table of Contents

8.3.1. Architecture

Figure 51. MCDMA IP Kernel Mode Character Device Driver Architecture

The MCDMA device is exposed as a character device (mcdma_device_<bdf>) to the application. The application uses standard file operations on the character device to perform DMA operations.

MCDMA chardev driver has 3 components :
  • Example test application (testapp): It is the standalone multi-threaded application, which creates multiple threads, allocates threads to queues, and schedules DMA transactions.
  • Libmcmem: This library allocates, deallocates & manages hugepages that the application uses for DMA transfers. The library consists of 5 APIs.
  • MCDMA kernel module (ifc_mcdma_chardev.ko): MCDMA kernel module provides functionality for DMA operations to applications and performs the following operations.
    • Device Management
    • Channel Management
    • Completions Management

Did you find the information on this page useful?

Characters remaining:

Feedback Message