When you have flexible LVDS functions in your Cyclone® or Cyclone II design, you may get a mismatch in formal verification with the Cadence Conformal LEC tool. The problem occurs when LVDS receiver instantiated in the design has an odd deserialization factor.
The Quartus® II software uses an altsyncram megafunction for these LVDS functions. The altsyncram megafunctions that are used during synthesis are not treated as black boxes for formal verification, resulting in many registers in the formal verification netlist file (*.vo) that cause mismatches between the golden and revised netlists in Conformal LEC.
To avoid this problem, use the following steps to create a black box for the altsyncram entity that is inferred for the LVDS function.
- Find the corresponding altsyncram function in the Quartus II Project Navigator window.<
- Add Preserve Hierarchy and black box assignments for each module. For example, these assignments create the following Tcl commands in the Quartus II Settings File (*.qsf) for a design containing an altsyncram function called altsyncram_l7v:
set_instance_assignment -name PRESERVE_HIERARCHICAL_BOUNDARY FIRM -to | -entity altsyncram_l7v
set_instance_assignment -name EDA_FV_HIERARCHY BLACKBOX -to | -entity altsyncram_l7v
- Recompile the design.