UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 36550

MIG v3.5, Spartan-6 MCB - Synplify fails on a MIG output design with error "port LOCKED does not exist"

Description

When I synthesize a MIG Spartan-6 FPGA MCB design using Synplify Pro, errors similar to the following occur:

@E: CS168 :"/example_design/rtl/memc3_infrastructure.v":284:18:284:18|port LOCKED does not exist 
@E: CS168 :"/example_design/rtl/memc3_infrastructure.v":284:18:284:18|Illegal or Unsupported Syntax within black box. Use: // synthesis  translate_off { unsupported Verilog } // synthesis translate_on


Why do these errors occur and how do I resolve them?

Solution

This issue occurs due to a pin update in the BUFPLL_MCB primitive for Spartan-6 FPGA.

MIG supports Synplicity D-2009.12, however, the Synplify tools have not yet been updated to include the revised BUFPLL_MCB primitive.

For details on the primitive change, see (Xilinx Answer 35976).

Work-around:

Option1
 
Synplicity has created an updated BUFPLL_MCB model that can be downloaded from their support website. 

For instructions on using the updated model and a link to the model, please visit the following Solvnet Article: https://solvnet.synopsys.com/retrieve/030979.html?otSearchResultSrc=advSearch&otSearchResultNumber=1&otPageNum=1

Option2

The Xilinx provided unisim BUFPLL_MCB model can be used if it is treated as a black box. 

This is an alternative work around to Option 1.
 
  1. Copy the BUFPLL_MCB.v file from $XILINX/verilog/src/unisims/BUFPLL_MCB.v and paste it in the MIG output "par" directory.
     
  2. Update the model to add syn_black_box and translate_off/on constructs.
    This is shown in the BUFPLL_MCB.v file attached to this answer record (see link below).
     
  3. Update the script_synp.tcl file to compile the BUFPLL_MCB.v model: add_file -verilog "../par/BUFPLL_MCB.v"
    The updated script_synp.tcl is also attached for reference.
     
  4. Execute the "ise_flow.sh" script (or "ise_flow.bat" in case of Windows) in the par directory.
    This work-around will allow Synplify to synthesize the updated model. Similar steps can be followed for VHDL designs.
ZIP file with example files:
http://www.xilinx.com/txpatches/pub/applications/misc/36550.zip

Linked Answer Records

Master Answer Records

Answer Number Answer Title Version Found Version Resolved
36211 MIG v3.5 - Release Notes and Known Issues for ISE Design Suite 12.2 N/A N/A

Associated Answer Records

Answer Number Answer Title Version Found Version Resolved
39128 MIG Virtex-6 and Spartan-6 v3.7 - Release Notes and Known Issues for ISE Design Suite 13.1 N/A N/A
AR# 36550
Date Created 07/01/2010
Last Updated 09/03/2014
Status Active
Type General Article
Devices
  • Spartan-6 LX
  • Spartan-6 LXT
IP
  • MIG