这些问题对大多数人来说可能听起来很深奥,但我真的很想了解更多关于这些东西的信息。
第一
我想知道 FPGA 重新配置自身需要多长时间,从其建模电路断电到新电路就位并开始运行。
我知道 Place-&-Route 是一个代价高昂的过程,但这是因为 P&R 工具必须决定将组件放置在哪里以及如何布线。
考虑到 P&R 分析已经完成,剩下的实际上就是重新配置 FPGA:这本身是一个缓慢的过程吗?每秒可以完成数百或数千次吗?
我很好奇这种可能性有几个含义。举个例子,它可以让我们将 FPGA 服务于多个并发的“客户端”(就像 GPU 能够为多个不同的程序渲染内容一样),或者为长时间的数字运算过程提供非常精细的电路。高度异步处理的定义明确但数量众多的处理阶段(想想:复杂的 Haskell 程序)。
第二
我想问的另一件事是,FPGA 是否可以实时部分重新配置,而建模电路是通电和可操作的,当然,只要正在重新配置的部分断电。
这种可能性也会产生一些有趣的影响,例如允许实时可重构总线、神经网络的硬件仿真等。
这些东西现在正在被广泛研究吗?他们在未来被研究的可能性有多大?