[转载]PCIe/RapidIO 控制器基于FPGA操作说明(PCIe 部分)

标签:
转载 |
分类: FPGA |
一、coreConsultant生成PCIe
一、coreConsultant生成PCIe IP 核操作步骤
在coreConsutant中,基于版本中附带的参数文件修改了配置参数中的其中几项:
1.
Basic
2.
Basic
3.
Basic
4.
Basic
5.
Basic
6.
Basic
7.
Basic
http://s1/mw690/001OUzCqzy6Kovc0SjK80&690控制器基于FPGA操作说明(PCIe
9.
Advanced
10.
Advanced
11.
Advanced
12.
Advanced
http://s16/mw690/001OUzCqzy6KovdQZnV0f&690控制器基于FPGA操作说明(PCIe
13.
Device-Wide
14.
Device-Wide
15.
Device-Wide
16.
Device-Wide
http://s6/mw690/001OUzCqzy6KoveVkrz35&690控制器基于FPGA操作说明(PCIe
二、基于Xilinx GTX 的PCIe仿真操作说明
进行仿真的文件夹中包含仿真使用的vip文件和vtb文件,使用vtb文件夹下的makefile文件进行仿真,进入vtb文件夹后使用make
仿真中用到的仿真模型描述如下:
1.sim_top作为最顶层模块,调用chip_iip.v和chip_vip.v两个模块。chip_iip.v为主核DWC_pcie_dm.v的顶层模型,相当于ASIC模型中的hr2_pcie_ctl_top.v;后者为验证模型,两个模块间由串行收发差分对相连。
2.PCIe
3.主核DWC_pcie_dm的应用层连接AMBA
4.chip_iip.v下的clk_rst.v模块作为时钟和复位管理模块向DWC_pcie_dm.v、ram、PHY等模块提供具有相互依赖关系的时钟和复位。
http://s3/mw690/001OUzCqzy6KovfKwiCa2&690控制器基于FPGA操作说明(PCIe
三、基于Xilinx GTX 的PCIe综合操作说明
发布的最终版工程文件夹中包含综合所用的全部文件,需要替换仿真下的chip_iip.v文件,在coreConsultant生成代码的基础上删除DW_minmax.v,加入RAM,修改chip_iip.v文件生成综合版chip_iip_fpga.v。其中chip_iip.v修改部分有:时钟和复位,pcie_dm顶层信号,GPIOLINK,替换RAM。具体修改操作如下:
1.时钟部分。chip_iip.v有两路差分输入时钟:host主机通过Cable线缆提供100MHz
2.复位部分。简化chip_iip.v外部复位信号为power_up_rst_n,由HAPS系统总复位驱动。该复位信号经计数器产生10us延时后生效,以防较host端过早复位。替换clk_rst中的延时模块DWC_pcie_bcm21为可综合的固定延时。
3.在chip_iip.v中增加GPIO模块HAPS70_2000T_GPIO,用于FPGA通过GPIO
4.为了方便集成SoC环境前的上板调试,确定链路建立功能,将DWC_pcie_dm.v模块的AXI、MSI、ELBI、SII等应用层接口中的输入部分置固定电平、输出部分悬空。
5.综合时,Synplify提示部分参数未定义。通过在chip_iip.v和cx_pl.v模块中加入include预编译指令指定参数的定义路径解决。
四、上板调试步骤
使用vivado进行后续的布局布线和最终生成上板调试文件,MGB子板跳线接downstream模式,bin文件下载后重启host端,使用PCItree软件扫描并进行数据读写测试。
4.1 chipsocpe观察PIPE接口数据
利用vavido
http://s3/mw690/001OUzCqzy6KovgMYyme2&690控制器基于FPGA操作说明(PCIe
4.2 PCI Tree软件测试
将bit文件下载到HAPS70开发板上,开发板和PC的连接如图所示:
http://s6/bmiddle/001OUzCqzy6KovhWT4135&690控制器基于FPGA操作说明(PCIe
MGB子板的状态灯显示正常后,重启PC端电脑,开机后会自动弹出找到新的硬件向导,系统提示你安装新的驱动设备,打开设备管理器可以找到新的设备名称为PCI设备的新设备,如下图所示:
http://s14/mw690/001OUzCqzy6KoviHXT72d&690控制器基于FPGA操作说明(PCIe
右键点击更新驱动,将synopsys公司提供的驱动文件synps_pedd_win7_32.cat、synps_pedd_win7_32.inf、snps_pedd_win7_32.sys指定到驱动安装文件文件夹,系统自动安装驱动,安装完成后PCI设备名称会变成Synopsys
http://s8/mw690/001OUzCqzy6Kovm7p1t07&690控制器基于FPGA操作说明(PCIe
PCI
http://s3/bmiddle/001OUzCqzy6Kovofpw652&690控制器基于FPGA操作说明(PCIe
选择连续写入memory地址,点击Write
http://s3/bmiddle/001OUzCqzy6KovpxkGu42&690控制器基于FPGA操作说明(PCIe
4.3 Synopys软件测试
在完成单IP阶段测试后,需要重新生成SoC系统级bit文件进行后续测试,集成系统后利用Synopsys软件进行后续DMA测试,该软件测试界面如图所示,图中测试软件不断给待测设备发送TLP和DLLP数据包,由于截图在未连接设备的情况下,所有发送数据包均被忽略,在eDMA吞吐量这一栏中,可以实时监测当前DMA带宽大小和传输完成度。该软件可以完成DMA大数据量测试和压力测试。
http://s12/mw690/001OUzCqzy6KovqroMjfb&690控制器基于FPGA操作说明(PCIe