多通道PCIe DMA引擎IP

多通道PCIe DMA引擎IP
在主机端PCIe驱动的控制和调度下,数据采集与回放IP Core可以同时完成对多个通道数据的采集以及回放驱动工作,既可采用行缓存机制(无需帧缓存,无需DDR),也可采用帧缓存机制(需要DDR),使用PCIe接口和主机进行数据的传输,设备端内嵌多通道DMA引擎完成多个通道数据的H2C(Host to Card)和C2H(Card to Host)传输,支持MSI中断机制,完全释放主机/CPU/GPU采集&回放的密集任务量,特别适用于高速AD/DA采集和回放、多通道视频采集和显示等的应用。

内核特性:

  1. 多种PCIe驱动:
    a) 兼容视频设备内核驱动V4L2,支持MMAP,USERPTR和DMABUF
    b) Xilinx XDMA驱动,Windows和Linux版本
    c) 自研DMA-Queue驱动,Windows和Linux版本
  2. 每个通道的采集和回放DMA地址队列深度大于32
  3. 多通道DMA引擎,支持连续式DMA(CDMA)和链式DMA(SGDMA)
  4. 支持MSI中断机制,寄存器读写
  5. 支持H2C(Host to Card)和C2H(Card to Host)的全双工数据传输
  6. 自适应PCIe链路速率:PCIe 1.0,PCIe 2.0,PCIe 3.0和PCIe 4.0
  7. 自适应PCIe链路宽度:PCIe x1,PCIe x2,PCIe x4,PCIe x8和PCIe x16
  8. 支持Xilinx器件:Spartan-6,Virtex-5,Virtex-6,Artix-7,Kintex-7,Virtex-7,Ultrascale,Ultrascale+

对外接口:

  1. 数据总线:标准的FIFO接口或AXI4-Stream接口
  2. 配置总线:标准的AXI4-Lite Master接口
  3. 中断总线:16个用户中断输入
  4. 辅助总线:软复位输出、预定义用户寄存器输入输出

多通道PCIe DMA引擎IP_第1张图片
多通道PCIe DMA引擎IP_第2张图片

性能指标:

  1. PCIe 2.0 x4:DMA Read(C2H)速率大于1750MB/s,DMA Write(H2C)速率大于1710MB/s
  2. PCIe 2.0 x8:DMA Read(C2H)速率大于3590MB/s,DMA Write(H2C)速率大于3500MB/s
  3. PCIe 3.0 x8:DMA Read(C2H)速率大于7050MB/s,DMA Write(H2C)速率大于7000MB/s
  4. PCIe 3.0 x16:DMA Read(C2H)速率大于13300MB/s,DMA Write(H2C)速率大于13800MB/s
  5. 支持8路1080p视频的采集和显示
  6. 支持8路4K视频的采集和显示
  7. 支持8路8K视频的采集和显示

资源使用:
1通道CDMA资源使用(XC7K325为例,PCIe 2.0 x8):

  1. LUTs:9343,FFs:14043,BRAM:10,PCIe:1

1通道CDMA资源使用(XCKU060为例,PCIe 3.0 x8):

  1. LUTs:11265,FFs:19089,BRAM:48,PCIe:1

8通道CDMA资源使用(XC7K325为例,PCIe 2.0 x4):

  1. LUTs:14803,FFs:20712,BRAM:75,PCIe:1

8通道SGDMA资源使用(XC7K325为例,PCIe 2.0 x4):

  1. LUTs:19055,FFs:27529,BRAM:94,PCIe:1

8通道CDMA资源使用(XC7K325为例,PCIe 2.0 x8):

  1. LUTs:20235,FFs:29327,BRAM:55,PCIe:1

8通道SGDMA资源使用(XC7K325为例,PCIe 2.0 x8):

  1. LUTs:26432,FFs:38087,BRAM:55,PCIe:1

8通道CDMA资源使用(XCKU060为例,PCIe 3.0 x8):

  1. LUTs:18747,FFs:36805,BRAM:78,PCIe:1

8通道SGDMA资源使用(XCKU060为例,PCIe 3.0 x8):

  1. LUTs:25886,FFs:51406,BRAM:78,PCIe:1

8通道CDMA资源使用(XCVU9P为例,PCIe 3.0 x16):

  1. LUTs:34531,FFs:75161,BRAM:150,PCIe:1

8通道SGDMA资源使用(XCVU9P为例,PCIe 3.0 x16):

  1. LUTs:46256,FFs:101538,BRAM:150,PCIe:1

可交付资料:

  1. 详细的用户手册
  2. Design File:Post-synthesis EDIF netlist or RTL Source
  3. Timing and layout constraints,Test or Design Example Project
  4. 技术支持:邮件,电话,现场,培训服务

联系方式:
Email:[email protected]

数据采集与回放IP Block Diagram
多通道PCIe DMA引擎IP_第3张图片

数据采集与回放系统结构框图
多通道PCIe DMA引擎IP_第4张图片

系统结构描述:
数据源模块产生采集数据,以FIFO接口输出到S2MM模块
S2MM模块负责把采集到的数据传输到DMA模块。
DMA模块负责把采集数据搬移到用户的采集缓冲区,或把用户回放缓冲区的数据搬移到MM2S模块。
MM2S模块负责数据回放输出。
数据校验模块接收MM2S输出的数据,进行回放数据的接收和校验。
Register Files模块用来配置以及控制S2MM和M2SS模块,并且返回这些模块的状态。
S2MM和M2SS的中断请求发送到Interrupt模块,发出MSI中断。
PCIe Gen3 Integrated Endpoint Block实现PCIe协议规范,支持Gen 3,8-lane endpoint配置
PCIe驱动采用WDF框架来开发,支持win7/win10操作系统,或者Linux操作系统。用户应用程序访问采集缓冲区可以获得采集数据,或者把回放数据传输到回放缓冲区进行回放。

你可能感兴趣的:(技术交流,pci-e,dma,linux,windows,azure,msi)