FPGA 中可以执行多少次加法运算来代替一次乘法运算?

问题描述 投票:0回答:1

FPGA 上可以执行多少次加法运算而不是一次乘法运算?就使用的资源而言 - 例如 - 能源和逻辑区域成本。我想知道它的多种精度。我知道对于 FIX16 - 单次乘法比单次加法占用的资源多 15 倍。对于 FP32 - 它是 4 比 1。FPGA 不同,我想了解更一般的估计。如果具体的话,我试图依靠这个芯片(https://www.digikey.com/en/products/detail/amd/XCVC1902-2MSEVSVA2197/15907949)。如果可能的话,有人可以告诉我在哪里可以找到这些规格或如何根据数据表估计值。

谢谢。

addition precision bitwise-operators fpga multiplication
1个回答
0
投票

在 FPGA 中,乘法器/加法运算可以通过以下两种方式进行:a) 使用内置 dsp 模块或 b) 使用 CLB 资源。

让我们考虑第一种情况:每个 DSP 可以实现一次乘法运算,但加法运算的次数取决于 DSP 引擎的架构。让我们看看该 FPGA 的数据表对此有何说明:

每个 DSP 引擎基本上由一个专用的 27 × 24 位二进制补码乘法器和一个 58 位累加器组成。乘法器可以动态旁路,两个 58 位输入可以馈送到单指令多数据 (SIMD) 算术单元(双 24 位加/减/累加或四 12 位加/减/累加),或可以生成十种不同逻辑功能中任何一种的逻辑单元 两个操作数的值。

所以简而言之,它既可以实现2个24位加法,也可以实现8个12位加法。

当在CLB中实现乘法时,情况就变得困难了。现在它至少取决于两个因素:

  1. 乘法运算符在 CLB 上是如何实现的? (它可以位于小型 CLB(具有较小 LUT)上,也可以位于大型 CLB(具有较大 LUT)上)
  2. 输入、输出和中间信号如何路由?

现在相应的添加数量再次取决于至少相同的两个因素。但我对 CLB 添加的用法了解不多,您可能必须等到有人描述更简洁的答案。

© www.soinside.com 2019 - 2024. All rights reserved.