User Space Application Software Components
The user space software component comprises the application traffic generator block and
the GUI. The function of the traffic generator block is to feed I/O buffers to the XDMA driver
for demonstrating raw I/O performance capable by the Expresso DMA.
The user space software interfaces with the XDMA driver through an application data driver
in the I/O path and directly with the XDMA driver to fetch performance data from hardware
performance monitoring registers.
The application data driver provides a character driver interface to user space software
components.
Graphical User Interface
The user space GUI is a Java-based interface that provides these features:
•
Install/uninstall selected mode device drivers
•
Gather statistics like power, PCIe reads/writes, and AXI reads/writes from the DMA
driver and display them in the Java GUI
•
Control test parameters like packet size and mode (S2C/C2S)
•
Display PCIe information such as credits, etc.
•
Graphically represent performance numbers
•
JNI layer of the GUI interacts with the application traffic generator and driver interface.
It is written in C++.
Application Traffic Generator
The application traffic generator is a multi-threaded application that generates traffic. It
constructs a packet according to the format of the application driver and includes these
threads:
•
A TX thread allocates and formats a packet according to test parameters.
•
A TX done thread polls for packet completion.
•
An RX thread provides buffers to the DMA ring.
•
An RX done thread polls for receiving packets. I
•
A main thread spawns all these threads according to test parameters.
PCIe Streaming Data Plane TRD
UG920 (v2017.1) June 01, 2017
Chapter 5: Targeted Reference Design Details and Modifications
www.xilinx.com
64
Send Feedback