AN 690:PCI Express Avalon-MM DMA参考设计

ID 683824
日期 5/28/2016
Public

1.6.4. 运行软件

完成下列步骤以运行DMA软件:

  1. 从终端窗口切换到安装Linux驱动程序的目录。
  2. 输入su
  3. 输入超级用户密码。
  4. 输入make以编译驱动程序和应用。
  5. 输入./install安装驱动程序。
  6. 输入./run运行DMA驱动程序。
    驱动程序打印出可用命令以指定您需要运行的DMA流量。默认情况下,软件使能DMA读,DMA写,以及同步DMA读和写。
    表 11.  可用于DMA操作的有效命令

    命令

    操作

    1

    启动DMA

    2

    使能或禁用读DMA

    3

    使能或禁用写DMA

    4

    使能或禁用同步读和写DMA

    5

    设置每DMA的dword个数。允许范围是256-4096个dword。

    6

    设置描述符个数。允许范围是1-127个。

    7

    设置根复合源地址偏移。该地址必须是4的倍数。

    8

    运行环路DMA。

    10

    退出。

  7. 启动DMA,输入1。使DMA运行一个环路。输入8在环路中运行DMA。

下列图示说明DMA读,DMA写,以及同步DMA读和写的性能。

图 3. 从256-Bit DMA驱动程序的输出
了解吞吐量测量

为测量吞吐量,软件驱动程序消耗两个时间戳(timestamp)。在输入Start DMA命令后不久,软件使用第一个时间戳。在DMA完成并归还所要求的完成状态,EPLAST后,软件就使用第二个时间戳。如果使能全部读DMA,写DMA和同步读和写DMA,驱动程序就消耗6个时间戳进行三次时间测量。

使用系统中的PCIe Gen3 x8(如下)完成此DMA运行:

  • 母板:Asus PBZ77-V
  • 存储器:Corsair 8 GB 2 dimm x [4GB (2x2GB)] @ 1600 MHz
  • CPU:
    • Vendor_ID:GenuineIntel
    • CPU系列:6
    • 型号:58
    • 型号名:Intel(R) Core (TM) i5-3450 CPU @ 3.10GHz
    • 步进:9
    • Microcode:0xc
    • CPU Mhz:3101.000
    • Cache大小:6144 KByte