FPGA 资源评估

FPGA 包含固定数量的资源。 这些资源是诸如 BlockRAM、触发器(FlipFlops)、LUT 等组件。 应用程序设计必须映射到这些资源组件中。

FPGA 资源:

  • BlockRAM 是一种集成在 FPGA 中的内存,用于保存 FPGA 内部数据。

  • 触发器(FlipFlops)是用于存储逻辑状态信息的电子电路。

  • LUT(查找表)用于实现逻辑功能(AND、OR、XOR 等)。

  • RAM LUT 是与 LUT 相关的 FPGA 内部内存。

  • 嵌入式算术逻辑单元(ALU 或“嵌入式乘法器”)是集成到 FPGA 中的硬件乘法器。

可用于实现设计的资源数量取决于 FPGA 的类型。

[提示] 支持的硬件平台的资源

在 Device Resources 中,您可以找到有关所有支持的硬件平台的信息。

VisualApplets 设计的每个模块(分支、垃圾桶等除外)都排他性地占用可用资源的一部分。 因此,在创建设计时,了解所有正在使用的资源的当前状态至关重要。

[重要] 没有额外资源

您只能使用可用的资源。

有关各个算子资源使用情况的信息,请参见算子参考手册 (例如,参见 Arithmetics 库中的 Operator Reference 中的 MULT 或 DIV)。

设计级别资源占用估算

设计的当前资源使用情况部分由 VisualApplets 精确计算,部分由其估计。 计算和估计在设计规则检查 2 (DRC2) 中执行(参见 'Design Rules Check')。

在设计规则检查 2 期间精确计算资源使用情况:

  • BlockRAM

  • 算术逻辑单元(硬件乘法器)

在设计规则检查 2 期间估计资源使用情况:

  • 查找表 (LUT)

  • RAM-LUT

  • 触发器(FlipFlops)

有关 LUT、RAM-LUT 和触发器(FlipFlops)的确切资源使用情况的信息,仅在成功构建 applet 后才可用。

在设计规则检查 2 之后,完整设计的 FPGA 资源使用情况的绝对结果(后跟使用百分比) 将显示在信息面板的 Project Info 选项卡、Project/Resources 部分中(参见 'Project Info')。

项目信息窗口

图 133:项目信息窗口


设计的资源使用情况取决于设计中使用的 Parallelism(链路参数)以及所部署模块的数量和复杂度。

[重要] 保持较低的 Parallelism

为了节省资源,在为所需带宽定义设置时,应始终尽量保持设计的 Parallelism 处于较低水平(请参阅 Operator Reference 中对算子 PARALLELdn 的描述)。

[重要] 估算值与成功构建

如果资源估算值略低于 100%,构建可能会失败。另一方面,即使资源估算值略高于 100%,构建也可能会成功。这是因为这些值只是估算值,实际资源使用情况可能会略高或略低。

模块级别资源占用估算

要获取有关整个设计的资源使用情况以及每个单独模块的资源使用情况的详细信息,可以通过主菜单选择 Analysis → View FPGA Resources 或者通过点击 View FPGA Resources 按钮 .

Detailed Information on FPGA Resource Estimation

图 134. FPGA 资源估算详细信息


为了进行进一步比较,您可以通过点击 Export as CSV 按钮,将估算值导出为逗号分隔值 (CSV) 文件。

您可以通过上下文菜单(右键点击)访问有关单个模块的估算 FPGA 资源使用情况的信息,并选择 FPGA Resources。

Context Menu FPGA Resources

图 135. 上下文菜单 FPGA Resources


单个模块的 FPGA 资源使用情况

图 136. 单个模块的 FPGA 资源使用情况