动态可插拔模块可以用VHDL完成吗?

时间:2008-12-19 14:22:59

标签: verilog vhdl fpga dynamic-loading hdl

在c(嵌入式)中,可以通过定义函数指针表和可以加载模块的地址范围来实现插件。

这需要链接器指令来分配空间并定义函数表的位置。

HDL / VHDL或Verilog中是否存在类似的机制。

我想我想的是在FPGA中定义一个门块以用于我的扩展功能,定义它将连接到的端口,然后能够将逻辑加载到该块中以执行某个操作。

这必须是在运行时,因为FPGA是插件将由其提供的通信系统的一部分。

2 个答案:

答案 0 :(得分:5)

如果您使用的是Xilinx FPGA,可以在部分芯片中支持。

请参阅: Benefits of Partial Reconfiguration with Xilinx

- jeffk ++

答案 1 :(得分:2)

您正在寻找的功能与VHDL的域正交。 VHDL允许模块(实体,由架构实现),所以理论上,是的,这可以工作。但在实践中,它实际上取决于您的运行系统。

您希望通过此获得什么?节省重新配置时间?

如果你有一个运行某些软件的足够复杂的电路板,你可以从一些通信通道轻松下载FPGA的全新配置。通过使用部分重配置,您还可以在Xilinx上获得较小的性能优势。

或者您可以创建一个可配置的VHDL模块,软件将在运行时配置该模块以满足要求。