将视频流式传输到PCIE插槽

时间:2012-05-17 17:39:20

标签: c linux video-streaming fpga pci

我希望能够将连接到计算机的相机中的视频直接传输到我通过PCIE连接到计算机的FPGA上。

我不介意使用像javascript或C#这样的高级语言来执行此操作(因为我知道这些语言具有视频流功能),但我认识到为了达到该级别的硬件,我可能会必须使用C(我非常清楚)。

我只是想知道是否有一条特定的路线我必须去实现这一目标,例如安装Linux(它是一台Windows 7计算机),或使用特定语言,或者是否有一个库,这样做了。

谢谢!

3 个答案:

答案 0 :(得分:4)

我可能错了,但听起来你需要为你的硬件编写内核驱动程序。

这意味着您需要学习内核开发。对于Windows,您需要WDK,Windows驱动程序工具包。

我不熟悉Linux内核开发。

答案 1 :(得分:3)

您是否拥有FPGA卡的规格,协议信息,寄存器功能,寄存器地址等?

如果您决定在Windows上执行此操作,可能会发现有关Windows Drivers的一些信息。

如果您想使用Linux,请查看this PDF on Linux PCI Drivers

答案 2 :(得分:1)

执行此操作的“正确”方法可能是通过DMA通道完成此操作,但如果它只是标准视频流,您应该能够应对更简单的编程I / O(PIO),如果正确完成,通过PCIe x1链接写入时应该可以提供高达30MB / s的速度 - 尽管这将在您的PC上使用比DMA更多的处理器资源。

我在硕士论文的预备项目中通过PCI express将FPGA连接到PC上 - 可以在这里找到pdf版本:http://loejer.dk/files/FORK,%20pdf.zip(journal2-5 pdf可能是最感兴趣的那些)< / p>

它涵盖了FPGA方面(使用Xilinx Spartan3,但它与Spartan6T基本相同),以及Windows(XP)和Linux驱动程序。