基于Camera Link和PCIe DMA的多通道视频采集和显示系统

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

内核特性:

  1. 多种PCIe驱动:
    a) Xilinx XDMA驱动,Windows和Linux版本
    b) 自研驱动,Windows和Linux版本
  2. 每个通道的采集和回放DMA地址队列深度大于32
  3. 多通道DMA引擎,支持连续式DMA(CDMA)和链式DMA(SGDMA)
  4. 支持MSI中断机制,传统的寄存器读写
  5. 支持H2C(Host to Card)和C2H(Card to Host)的全双工数据传输
  6. 支持Camera Link接口的相机和显示器
  7. 支持DDR3-1600和DDR4-2400接口的内存颗粒或内存条
  8. 自适应PCIe链路速率:PCIe 1.0,PCIe 2.0,PCIe 3.0和PCIe 4.0
  9. 自适应PCIe链路宽度:PCIe x1,PCIe x2,PCIe x4,PCIe x8,PCIe x16
  10. 支持Xilinx器件:Spartan-6,Virtex-5,Virtex-6,Artix-7,Kintex-7,Virtex-7,Ultrascale,Ultrascale+

对外接口:

  1. PCIe接口
  2. DDR3/DDR4接口
  3. Camera Link接口

性能指标:

  1. PCIe 2.0 x4:DMA Read(C2H)速率大于1750MB/s,DMA Write(H2C)速率大于1710MB/s
  2. PCIe 2.0 x8:DMA Read(C2H)速率大于3490MB/s,DMA Write(H2C)速率大于3400MB/s
  3. PCIe 3.0 x8:DMA Read(C2H)速率大于6850MB/s,DMA Write(H2C)速率大于6800MB/s
  4. PCIe 3.0 x16:DMA Read(C2H)速率大于13300MB/s,DMA Write(H2C)速率大于13800MB/s
  5. 64bit DDR3-1600,72bit DDR3-1600,64bit DDR4-2400,72bit DDR4-2400
  6. Camera Link:base,medium,full

资源使用:
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:neteasy163z@163.com

视频采集与显示系统结构框图
在这里插入图片描述

系统结构描述:
Camera Link RX模块负责从相机采集视频,以AXIS接口输出到S2MM模块
S2MM模块负责把采集到的视频写入预设的DDR4缓存区。
SGDMA模块负责把DDR4缓冲区的数据搬移到用户的采集缓冲区,或把用户回放缓冲区的数据搬移到DDR4缓冲区。
MM2S模块负责读取预设的DDR4缓存区的数据显示输出。
Camera Link TX模块接收MM2S输出的数据,显示到显示器。
Register Files模块用来配置以及控制S2MM和M2SS模块,并且返回这些模块的状态。
S2MM和M2SS的中断请求发送到Interrupt模块,发出MSI中断。
DDR4控制器完成对4GB-DDR4的读写访问,支持2400MHz主频,72-bit接口宽度,ECC
PCIe Gen3 Integrated Endpoint Block实现PCIe协议规范,支持Gen 3,8-lane endpoint配置
PCIe驱动采用WDF框架来开发,支持win7/win10操作系统,或者Linux操作系统。用户应用程序访问采集缓冲区可以获得采集数据,或者把回放数据传输到回放缓冲区进行回放。

xilliix pcie dma 驱动 (基于 xilnx xdma ip核 4.0 的WDF驱动) --- # XDMA Windows Driver This project is Xilinx's sample Windows driver for 'DMA/Bridge Subsystem for PCI Express v4.0' (XDMA) IP. *Please note that this driver and associated software are supplied to give a basic generic reference implementation only. Customers may have specific use-cases and/or requirements for which this driver is not suitable.* ### Dependencies * Target machine running Windows 7 or Windows 10 * Development machine running Windows 7 (or later) * Visual Studio 2015 (or later) installed on development machine * Windows Driver Kit (WDK) version 1703 (or later) installed on development machine ## Directory Structure ``` / |__ build/ - Generated directory containing build output binaries. |__ exe/ - Contains sample client application source code. | |__ simple_dma/ - Sample code for AXI-MM configured XDMA IP. | |__ streaming_dma/ - Sample code for AXI-ST configured XDMA IP. | |__ user_events/ - Sample code for access to user event interrupts. | |__ xdma_info/ - Utility application which prints out the XDMA core ip | | configuration. | |__ xdma_rw/ - Utility for reading/writing to/from xdma device nodes such | | as control, user, bypass, h2c_0, c2h_0 etc. | |__ xdma_test/ - Basic test application which performs H2C/C2H transfers on | all present channels. |__ inc/ - Contains public API header file for XDMA driver. |__ libxdma/ - Static kernel library for XDMA IP. |__ sys/ - Reference driver source code which uses libxdma |__ README.md - This file. |__ XDMA.sln - Visual Studio Solution. ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值