c - 使用C编程调用VHDL实现

标签 c vhdl fpga xilinx xilinx-ise

我正在考虑编写一个 C 函数,该函数基本上将实数数组/vector 作为参数传递给 VHDL 实现,VHDL 代码使用 FPGA 中的数组进行一些计算,并将结果返回给 C功能。那么,我的问题是——如何编写 C 函数来调用 VHDL 实现?任何人都可以指导我正确的方向,例如教程、API 或其他内容吗?

任何帮助将不胜感激。谢谢! :)

最佳答案

VHDL 不会产生运行时例程,它会变成硬件中的实际实现。为了能够与 VHDL 例程与 CPU 中的高级语言进行通信,CPU 和 VHDL 模块必须连接,并且 VHDL 代码必须具有适当的方式来从 CPU 提供数据。

在你的情况下,有两种方法,一种是VHDL以CPU和FPGA逻辑都可以访问共享数据的方式实现,在这种情况下,你需要知道该地址是什么。另一种方法是 VHDL 通过串行端口、USB 或以太网向 CPU 提供数据,但在这两种情况下,VHDL 例程都必须支持。

无论如何,您需要了解更多有关 FPGA 的知识,而不仅仅是进行过程调用。

本文可能会帮助您了解一些东西的工作原理(也可能不是正确的 FPGA,但无论如何可能会有所帮助)。

How to interface FPGAs to microcontrollers

关于c - 使用C编程调用VHDL实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30926630/

相关文章:

c++ - 我可以使用什么在 FPGA (Virtex) : C, C++、OpenCL、MPI 上进行开发?

c++ - libuvc 程序无法编译

c - 在 C 中使用环绕处理到达时间处理

vhdl - Vivado 是否已忘记进行类型推断?

process - 何时必须将信号插入进程的敏感列表中

c - 使用 pjreddie 的 YOLOv3 时出现段错误(核心转储)

c - 使用 c 函数返回多个变量

c++ - 绕过 gcc 中的静态链接顺序问题

vhdl - 在 VHDL 中定义和初始化矩阵的最佳方法

linux - 如何设置 "something"使用的模块