浪潮加速卡XC7K480T搭建PCIE测试工程
浪潮加速卡XC480T搭建PCIE测试工程
背景
前面我们使用小黄鱼淘到的板子并且使用JTAG探测了板上所有芯片的管脚,之前建立了MicroBlaze软核成功驱动了板上的DDR和LED,接下来准备搭建一个工程用来测试板上PCIE。板上的各个资源和FPGA的连接关系如下图
本次工程打算使用PCIE DMA核的测试工程来跑通PCIE接口,让板子插在电脑主板上能识别到我们配置的PCIE设备ID。
本次开发基于Vivado2024.1。
创建PCIE例程
先新建一个空白工程,器件选择XC7K480TFFG1156,工程新建完后在block design中调用PCIE IP

点击IP,配置PCIE参数,首先配置PCIE宽度为X8,速率为5G

接着配置设备ID和厂家ID,这里随便修改为一个自定义的ID

剩下的部分先使用默认参数,一路Next下去直到完成配置。对IP右键打开例子工程,填写完工程目录和名称后Vivado会自动根据配置的IP生成一个例程


在Open Elaborated Design中分配PCIE、时钟和复位信号管脚

点击**Generate Bitstream综合、实现并生成比特流文件。

使用电脑测试
板子买回来自带的程序里面也是例化了PCIE设备的,可以把板子直接插在电脑主板的PCIE槽位中,开机启动后在设备管理器中可以看到一个PCIE设备,只是由于没有对应的驱动程序,所以会报没有驱动的警告,先忽略这个问题。

查看设备属性,可以看到原版程序的PCIE厂家ID是10EE,设备ID是7028,子系统厂家ID是10EE,子系统ID是0007

将仿真器连上板子,使用Vivado将上一步生成的比特流文件加载进FPGA,在设备管理器中右键重新扫描检测硬件设备改动,没问题的话会成功扫描到PCIE设备,查看ID与我们在IP核中配置的ID也是一致的,证明电脑已经成功扫描到了FPGA内部的PCIE设备了。

总结
使用Vivado自带的例程搭建PCIE测试工程还是比较简单的,下一步就是使用软件操作PCIE设备,实现PCIE数据传输,这又涉及在Linux中开发驱动和编写测试程序,再后面再实现这个需求了。

浙公网安备 33010602011771号