Intel® Quartus® Prime Pro Edition用户指南: 设计建议

ID 683082
日期 9/28/2020
Public

本文档可提供新的版本。客户应 单击此处 前往查看最新版本。

文档目录

1.6.5.3. IF语句中的隐式默认值

Verilog HDL和VHDL中的IF语句可以简化表达条件,而这些条件不容易采用CASE类型的方法。但是,IF语句可能会导致复杂的多路复用器树,综合工具很难对其进行优化。特别是,所有的IF语句都有一个ELSE条件,即使未在代码中指定。这些隐式默认值可能导致多路复用设计的额外复杂性。

您可以使用多种方法简化多路逻辑并删除不需要的默认值。最佳方法是重新编码设计,因此逻辑采用4:1 CASE语句的结构。或者,如果优先级很重要,那么可以重组代码以减少默认案例(default case)和展平多路复用器。检查默认的"ELSE IF"条件是否是don't care情况。您可以添加一个默认的ELSE语句以使行为明确。避免多路复用器逻辑中不必要的默认条件,以降低设计实现所需的复杂性和逻辑利用率。