Hello-FPGA CoaXPress 2.0 FPGA HOST IP Core PCIe Demo User Manual

目录

[1 说明 4](#1 说明 4)

[2 设备连接 7](#2 设备连接 7)

[3 VIVADO FPGA工程 8](#3 VIVADO FPGA工程 8)

[4 调试说明 9](#4 调试说明 9)

[图 1‑1 资料目录 4](#图 1‑1 资料目录 4)

[图 1‑2 VIVADO工程目录结构 5](#图 1‑2 VIVADO工程目录结构 5)

[图 1‑3 VS软件工程目录 5](#图 1‑3 VS软件工程目录 5)

[图 1‑4 CXP HOST PCIe Block Design 5](#图 1‑4 CXP HOST PCIe Block Design 5)

[图 1‑5 VS工程 6](#图 1‑5 VS工程 6)

[图 1‑6 CXP camera 6](#图 1‑6 CXP camera 6)

[图 1‑7 KC705搭载Hello-FPGA CoaXPress 2.0 FMC子卡 7](#图 1‑7 KC705搭载Hello-FPGA CoaXPress 2.0 FMC子卡 7)

[图 2‑1 KC705 开发板 8](#图 2‑1 KC705 开发板 8)

[图 3‑1 VIVADO工程 8](#图 3‑1 VIVADO工程 8)

[图 3‑2 XDMA控制器 9](#图 3‑2 XDMA控制器 9)

[图 3‑3 CXP IP实例化 9](#图 3‑3 CXP IP实例化 9)

[图 4‑1 连接相机并完成视频拍摄与显示 10](#图 4‑1 连接相机并完成视频拍摄与显示 10)

[表 1‑1 LINK速率配置 7](#表 1‑1 LINK速率配置 7)

说明

本手册针对Helllo-FPGA的CoaXPress 2.0 HOST FPGA IP Core PCIe demo工程,用于演示IP的使用方法、配置流程,使用上位机采集到相机真实的图像并在界面上完成显示。通过该demo提供了1个较为完整的系统级演示,方便用户更加直观的评估IP

Demo 特点功能如下:

  • Demo 分为FPGA工程与Windows 驱动及其应用程序,利用XDMA搭建PCIe接口,并利用PCIe接口及其驱动,实现对CoaXPress HOST IP的配置、数据读取。
  • 当前代码适用于Xilinx KC705 评估板,其它评估板请联系我们咨询;
  • 使用KC705 FMC HPC接口,搭载Hello-FPGA 4 channel receiver 子卡;
  • 使用EoSens® 2.0CXP2 系列相机进行演示;
  • 使用VIVADO 2017.3(我们测试了2019.1和2020.2,PCIe IP使用有问题,暂时仅支持2017.3)、Windows10台式计算机;
  • VIVADO 工程使用block design形式提供;
  • LINK配置为1个相机,4个LINK,设备发现阶段使用0x38配置,即3.125Gbps,设备采集阶段使用0x48配置,即6.125Gbp,如果相机不支持对应速率,请修改代码后进行测试,请注意KC705不支持10Gbps和12.5Gbps速率,KU/ZU等支持;
  • 使用vs2022或者其它版本调试windows驱动与应用程序;
  • IP使用网表形式提供,参数无法修改,如需不同LINK配置,请联系Info@hello-fpga ;
  • 其它相关IP使用加密方式提供;

文件列表:

顶层文件夹

cxp_host_pcie 示例FPGA工程

IPs 工程依赖的IP文件

Kc705评估板手册

user manual

![图形用户界面, 应用程序

描述已自动生成](https://file.jishuzhan.net/article/1716625765484728321/dfa84a5d183c398700b962c99017e906.webp)

图 ‑1 资料目录

下图展示了cxp_host_pcie内部的目录结构,直接使用VIVADO 2017.3打开 *.xpr工程文件即可。

![图形用户界面, 文本, 应用程序

描述已自动生成](https://file.jishuzhan.net/article/1716625765484728321/1c585560058c141a6a64b5b20a343882.webp)

图 ‑2 VIVADO工程目录结构

![表格

描述已自动生成](https://file.jishuzhan.net/article/1716625765484728321/1549cd89f8baf20803fc3e769329bb43.webp)

图 ‑3 VS软件工程目录

利用XDMA Subsystem 构建PCIe 及其DMA控制器,MIG DDR作为板上缓存,用于缓存高速图像数据并完成DMA操作,AXI Interconnect作为系统总线树,CoaXPress IP以及MIG等均挂载在总线树上,方便XDMA灵活方位其内存完成寄存器读写、DMA读写操作。

![图示, 示意图

描述已自动生成](https://file.jishuzhan.net/article/1716625765484728321/4fd9e15f7ea5546f48fe801f51ec888f.webp)

图 ‑4 CXP HOST PCIe Block Design

VS工程采用C++面向过程驱动、C#面向对象驱动以及C# 应用程序组成,C++驱动负责具体功能实现,C# 应用程序最终通过C# 驱动调用C++ API实现相机的连接、配置、图像读取、图像显示等功能,用于用户更加直观的评估IP。

![图形用户界面, 应用程序

描述已自动生成](https://file.jishuzhan.net/article/1716625765484728321/d535941c4978539c600677de8ce6306a.webp)

图 ‑5 VS工程

![图片包含 蓝色, 盒子, 桌子, 大

描述已自动生成](https://file.jishuzhan.net/article/1716625765484728321/4617e328e49bb4dfa9f188eddfe252ec.webp)

图 ‑6 CXP camera

图 ‑7 KC705搭载Hello-FPGA CoaXPress 2.0 FMC子卡

表 ‑1 LINK速率配置

|----------|-------------|------------|
| 速率配置 | Downlink速率 | 最大速率 |
| 0x28 | 1.250 Gbps | 1.000 Gbps |
| 0x30 | 2.500 Gbps | 2.000 Gbps |
| 0x38 | 3.125 Gbps | 2.500 Gbps |
| 0x40 | 5.000 Gbps | 4.000 Gbps |
| 0x48 | 6.250 Gbps | 5.000 Gbps |
| 0x50 (1) | 10.000 Gbps | 8.000 Gbps |
| 0x58 (1) | 12.500 Gbps | 10.000 Gbp |

设备连接

设备包含:

  1. Camera,camera 请按照厂商要求连接电源,FMC子板提供了对应POE功能,但是KC705开发板供电能力不足,因此依然需要连接相机电源;
  2. Camera 与CXP HOST FMC子卡连接,请注意LINK 序号一一对应,使用CXP同轴线缆完成连接;
  3. Demo使用JTAG启动模式,PCIe lane size对应选择X8模式;
  4. Demo需要将KC705插入台式计算机的PCIe插槽内,注意KC705不是标准3U板卡,需要注意其机械尺寸,使用合适的机箱;

图 ‑1 KC705 开发板

VIVADO FPGA工程

使用VIVADO 2020.2 打开。

![图形用户界面, 文本, 应用程序

描述已自动生成](https://file.jishuzhan.net/article/1716625765484728321/5318bf40ab2a735dc27d3a8d0bca4609.webp)

图 ‑1 VIVADO工程

如下图所示,系统使用Xilinx XDMA控制器作为PCIe与DMA核心,使用PCIe Gen2x8配置。

![图形用户界面, 文本, 应用程序

描述已自动生成](https://file.jishuzhan.net/article/1716625765484728321/28c430172c7b5e0314d27a2dc4ff7581.webp)

图 ‑2 XDMA控制器

![图片包含 图形用户界面

描述已自动生成](https://file.jishuzhan.net/article/1716625765484728321/b1e2085f5388b3c68e0b5bc14ab801ea.webp)

图 ‑3 CXP IP实例化

调试说明

连接好硬件后,烧录bit文件,安装PCIe内核驱动,然后重启计算机,打开VS工程重新编译,运行basic test C#应用程序,然后即可看到相机连接成功、拍摄图像正常。Demo软件使用源码方式提供,用户可以任意修改参数完成调试。

![图形用户界面

描述已自动生成](https://file.jishuzhan.net/article/1716625765484728321/00bef40bd89cb0a47b772f4941f95ba6.webp)

图 ‑1 连接相机并完成视频拍摄与显示