本文实现zc706通过fmc副板的hpc、lpc模式挂载ssd。
国外的FPGA大牛Jeff Johnson写了一个FPGA挂载NVME SSD的教程。
链接:
link
例程中提供了完成的工程,以及支持的开发板。支持XILINX的大部分7系列及最新的UltraScale系列。
下面介绍我实现的流程:
1、软件:vivado2018.3
开发板:zc706
副板:咸鱼买的,仿国外大牛的,这里只放国外大牛的购买网站:http://fpgadrive.com/technical-info/
SSD:联想 SSD固态硬盘,X800 M.2 NVME 2242 128G(我买的另一个M.2 2280(NVMe PCI-e协议的就不能用,我也不知道为什么))
2、下载fpga-drive-aximm-pcie-2018.2.1.zip,解压后将zc706对应的bat和tcl修改成vivado2018.3和vivado.bat对应地址,则点击build-zc706-hpc.bat或build-zc706-lpc.bat(两种模式)
3、打开生成的工程,生成bitstream,export并打开SDK
4、在SDK中创建工程,并将/SDK/common目录下的pcie_gen2_enumerate.c添加到工程中
5、运行,下载开发板中
6、如果出现AP transaction error, DAP status f0000021,说明ddr有问题,只需要在vivado中将ddr的型号改成MT41J256M8HX-15E(只针对zc706),然后重新生成bitstream,export,重新下载到板子中就可以了
7、串口打印,挂载成功
(lpc模式)