禁用 LUT 组合 - 2023.2 简体中文

适用于 FPGA 和 SoC 的 UltraFast 设计方法指南 (UG949)

Document ID
UG949
Release Date
2023-11-29
Version
2023.2 简体中文
注释: report_qor_suggestions Tcl 命令可自动应用这种最优化技巧。

LUT 组合通过将成对的 LUT 与共享输入组合,形成同时使用 O5 和 O6 输出的单双输出 LUT 来降低逻辑使用率。但 LUT 组合可能会增加拥塞,因为它会增加 slice 的输入/输出连接。如果在拥塞区域内 LUT 组合比例较高 (> 40%),您可尝试使用综合策略来消除 LUT 组合以帮助缓解拥塞。Flow_AlternateRoutability 综合策略和指令可指示综合工具停止生成任何其他 LUT 组合。

注释: 如果您使用 Synplify Pro 进行综合,那么您可以使用“Device”(器件)选项卡下“Implementation Options”(实现选项)中的Enable Advanced LUT Combining(启用高级 LUT 组合)选项。默认情况下,该选项处于已启用状态。如果您修改 Synplify Pro 工程文件 (*prj),请指定以下内容:set_option -enable_prepacking 1

您可以使用以下命令来选择设计中启用 LUT 组合的单元:

select_objects [get_cells -hier -filter {SOFT_HLUTNM != "" || HLUTNM != ""}]

下图显示了含和不含 LUT 组合的设计的水平拥塞。与 LUT 组合的单元以紫色高亮。

图 1. LUT 组合对水平拥塞的影响

要在与高拥塞区域重叠的模块上禁用 LUT 组合,请使用以下 Tcl 命令:

reset_property SOFT_HLUTNM [get_cells -hierarchical -filter {NAME =~ <module name> && SOFT_HLUTNM != ""}]