The following error occurs when I use an out of contact (OOC) flow for an IP core in Vivado 2013.2:
[Netlist 29-77] Could not replace (cell 'blk_mem_gen', library 'work', file 'NOFILE') with (cell 'blk_mem_gen', library 'blk_mem_gen_lib', file 'blk_mem_gen.ngc') because of a port interface mismatch; port 'ena' is missing on the replacing cell.
[Synth 37-3] Please ensure the connections to this cell instantiation have the correct bit-width.
[Synth 37-1] Failed to resolve instance 'blk_mem_instance'. This instance will appear as a black box. ["/eda/test_proj/top.vhd":92]
In this case, the design checkpoint, blk_mem_gen.dcp, was generated in Vivado. However, there was also an older NGC netlist named blk_mem_gen.ngc, created from CORE Generator, in a source directory for the design.
Because there were other NGCs that were being used for the design in this same directory during Implementation, ngc2edif was run on all the NGCs including the one not used in the design. The tools then added the edif created from the NGC to the design instead of the dcp causing the error.
To work around this issue, remove the NGC files from the source directory where the other used NGCs are located.
This issue will be resolved in Vivado Design Suite 2013.4.