fpga - 使用 PCI EXPRESS 进行 FPGA 到 PC 的数据传输
问题描述
我正在使用包含 Virtex 7 Xilinx FPGA 的 VC707 Fpga 板。我想通过 PCIexpress 将数据从 DDR 3 内存传输到 PC。是否有任何教程可以做到这一点?我一直在阅读本教程https://www.xilinx.com/support/documentation/boards_and_kits/vc707/2014_4/xtp207-vc707-pcie-c-2014-4.pdf 但这没什么帮助 谢谢
解决方案
您的问题缺少一些信息,例如您没有告诉我们数据如何进入 DDR 内存。我暂且不说。
您想要一个具有 DDR 和 PCIe 的 FPGA。两者都是非常高速的接口,需要对电子设备有很好的了解。您使用的是商用板,因此我们可以假设该板已被证明可以与 DDR 和 PCIe 一起使用。
您首先需要使用这些接口制作 FPGA。因此,您必须制作一个 DDR 块和一个 PCIe 块。Xilinx 已经完成了大部分工作,但您必须使用工具来填充细节。这就是本教程的内容。一些 Virtex-7 芯片具有现成的 PCIe 块,但不是全部。我所看到的,没有一个有现成的 DDR 接口。可能有类似的教程如何制作DDR接口。
如果您设法通过它,您将拥有两个单独的逻辑块。然后,您需要 HDL 技能来连接它们。
如果你幸运的话,两个块都可以工作。如果由于某种原因它们不起作用,则必须应用上述高速接口和电子学知识以及调试 FPGA 系统。
最后但同样重要的是,您必须在 PC 上编写 PCIe 设备驱动程序才能访问您构建的所有内容。
我关于本教程的问题是评估您在 FPGA 和 HDL 方面的技能。您想要实现的目标需要 FPGA、HDL 设计和 Xilinx 工具方面的经验和知识。如果您没有使用过 FPGA、HDL、Xilinx,那么您有两个选择:
- 首先花几周/月的时间在这些领域获得更多经验。
- 找一个已经有这种经验的人来为(和?)你做最困难的工作。
推荐阅读
- endeca - Oracle Endeca 两种方式词库不显示相同数量的记录
- facebook - 如何使用 Facebook 页面订阅消息
- javascript - setState 在此代码中的工作方式的混乱
- python - 如何在不使用内置函数的情况下从python中的数组中删除元素
- javascript - 启用/禁用多个输入字段JS的更有效方法
- python - 为什么小数不能与浮点数互操作
- c# - 如何在 .net Core 中一次在多个浏览器中运行相同的 specflow 测试?
- visual-studio - Visual Studio 测试资源管理器键盘将焦点设置为测试列表
- powershell - Invoke-Webrequest 单击一个按钮并继续使用会话变量
- python - 平滑数据以确定 Python 中的峰值