【发布时间】:2018-05-07 13:04:03
【问题描述】:
我正在使用包含 Virtex 7 系列 Xilinx FPGA 的 VC707 FPGA 板。 我想使用以太网连接将 DDR3 内存中包含的数据传输到 PC。 我正在寻找一个教程来做到这一点? 我对数据传输的速度没有要求。
感谢您的帮助
【问题讨论】:
我正在使用包含 Virtex 7 系列 Xilinx FPGA 的 VC707 FPGA 板。 我想使用以太网连接将 DDR3 内存中包含的数据传输到 PC。 我正在寻找一个教程来做到这一点? 我对数据传输的速度没有要求。
感谢您的帮助
【问题讨论】:
事实证明,FPGA 和 PC 通过以太网进行通信是一个非常复杂的过程。大多数人使用 PCI Express 在 VC707 和 PC 之间进行通信。
根据我的经验,在 FPGA 和 PC 之间进行通信时,PCI Express 比以太网更容易使用。首先,FPGA 端不需要任何软件来配置 PCI Express——这一切都在主机上完成。其次,Xilinx PCI Express 参考设计是完整的——一旦你有了参考设计,你就拥有了一个工作系统。我在 Xilinx.com 上找到的以太网参考设计甚至没有显示如何为 MAC 配置设备驱动程序,也没有将 MAC 连接到以太网电缆。下面的 ethernet/microblaze 示例看起来确实很完整,但看看有多少步骤才能让它工作。
我找到了一个设置以太网通信的教程,该教程使用 FPGA 中的 microblaze 软处理器来配置以太网。 https://reference.digilentinc.com/learn/programmable-logic/tutorials/arty-getting-started-with-microblaze-servers/start
我通常使用 PCI Express 内核,因为我想对接口进行更多控制,但 PCI Express AXI Bridge 使用起来非常简单。
答案很长,无法包含在这里。
如果您无法将 vc707 插入 PC 并且设置以太网太令人生畏,那么您会想到另外两个选项:
UART 和 FTDI FIFO 都是双向的,因此它们既可以从 PC 向 FPGA 发送数据,也可以从 FPGA 向 PC 返回数据。
我通常使用具有 RX 和 TX FIFO 的 UART 而不是寄存器接口,以便与 RTL 轻松集成。
鉴于您没有速度要求并且您已经让 UART 在一个方向上工作,因此将 UART 用于两个方向可能是最简单的。
【讨论】: