5

这些问题对大多数人来说可能听起来很深奥,但我真的很想了解更多关于这些东西的信息。

第一

我想知道 FPGA 重新配置自身需要多长时间,从其建模电路断电到新电路就位并开始运行。

我知道 Place-&-Route 是一个代价高昂的过程,但这是因为 P&R 工具必须决定将组件放置在哪里以及如何布线

考虑到 P&R 分析已经完成,剩下的实际上就是重新配置 FPGA:这本身是一个缓慢的过程吗?每秒可以完成数百或数千次吗?

我很好奇这种可能性有几个含义。举个例子,它可以让我们将 FPGA 服务于多个并发的“客户端”(就像 GPU 能够为多个不同的程序渲染内容一样),或者为长时间的数字运算过程提供非常精细的电路。高度异步处理的定义明确但数量众多的处理阶段(想想:复杂的 Haskell 程序)。

第二

我想问的另一件事是,FPGA 是否可以实时部分重新配置,而建模电路是通电和可操作的,当然,只要正在重新配置的部分断电。

这种可能性也会产生一些有趣的影响,例如允许实时可重构总线、神经网络的硬件仿真等。

这些东西现在正在被广泛研究吗?他们在未来被研究的可能性有多大?

4

1 回答 1

5

重新配置时间取决于很多事情。大的是

  • 您正在重新配置多少 FPGA(需要输入多少位)
  • 获取数据的速度有多快(现在使用四通道 SPI 似乎是使 FPGA 快速启动的首选方式)

大型 FPGA 可能需要 10 到 100 毫秒才能完全重新配置。

可以在 PCI express 启动时间(100ms IIRC)内完成一个小配置,以便及时枚举纯 FPGA 卡,然后可以稍后加载其余配置。

就非常动态的重新配置而言,瓶颈更有可能是交换与每个比特流一起进出的各种数据集 - 我想任何需要大量 FPGA 来加速它的东西都是一个相当大的数据集......但是您可能有其他应用程序?

于 2013-06-22T19:57:43.320 回答