^

AR# 46743 Would Vivado Synthesis be able to infer tristate logic in a lower level design when flatten_hierarchy is set to none?

When -flatten_hierarchy switch is set to "none," Vivado synthesis generates the following Error message while trying to infer a tristate primitive for a tristate logic in a lower level design,

"[OPT 282] Blackbox i_0 (tricell) is driving pin I of primitive cell OBUF_6.This blackbox cannot be found in the existing library."

When the -flatten_hierarchy switch is set to "none," it is not recommended to have tristate at lower level. In case of a design containing tristate logic, forcing the design to preserve hierarchy by setting flatten_hierarchy to "none" makes theVivado synthesis tool not be able to reach these tristate logics within the lower level design. As a result, the tool generates the above mentioned error message.

The workaround would be to set -flatten_hierarchy to either "full" or "rebuilt," in which case the Vivado synthesis tool would be able to move the tristate logic to the top level and infer the right tristate primitive (OBUFT, IOBUF etc.,).

AR# 46743
Date Created 10/08/2012
Last Updated 01/23/2013
Status Active
Type Known Issues
Tools
  • Vivado
Feed Back