从FPGA到PC的以太网连接

时间:2018-05-07 13:04:04

标签: fpga ethernet

我正在使用VC707 FPGA板,其中包括Virtex 7系列Xilinx FPGA。 我想使用以太网连接将DDR3内存中包含的数据传输到PC。 我正在寻找一个教程来做到这一点? 我对数据传输的速度没有要求。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

事实证明,FPGA和PC之间通过以太网进行通信是一个非常复杂的过程。大多数人使用PCI Express在VC707和PC之间进行通信。

根据我的经验,在FPGA和PC之间进行通信时,PCI Express比以太网更容易使用。首先,FPGA端不需要软件来配置PCI Express - 它们都是从主机完成的。其次,Xilinx PCI Express参考设计已经完成 - 一旦您拥有参考设计,您就拥有了一个工作系统。我在Xilinx.com上找到的以太网参考设计甚至没有显示如何为MAC配置设备驱动程序,也没有将MAC连接到以太网电缆。以下的ethernet / microblaze示例似乎已经完成,但是看看有多少步骤可以使它工作。

我找到了一个设置以太网通信的教程,它使用FPGA中的微型软件处理器来配置以太网。    https://reference.digilentinc.com/learn/programmable-logic/tutorials/arty-getting-started-with-microblaze-servers/start

我通常使用PCI Express内核,因为我想要更多地控制界面,但PCI Express AXI Bridge非常简单易用。

答案很长,包括在这里。

如果您无法将vc707插入PC并且设置以太网太令人生畏,那么可以考虑另外两个选项:

  1. 通过Uart传输数据
  2. 添加FTDI UMFT600X-B FMC FIFO板并使用USB 3传输数据
  3. UART和FTDI FIFO都是双向的,因此它们可以将数据从PC发送到FPGA,也可以将数据从FPGA返回到PC。

    我通常使用具有RX和TX FIFO而不是寄存器接口的UART,以便于与RTL集成。

    鉴于您没有速度要求并且您已经让UART在一个方向上工作,那么在两个方向上使用UART可能最容易。