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# 64673

2015.1 Vivado IP Packager - Using a custom IP containing a MIG core can produce an error where the PRJ file cannot be read when trying to generate the custom IP


I have created a custom IP core containing the MIG IP and when I add this to a larger project, I get the following error on generation of the IP:

ERROR: [xilinx.com:ip:mig_7series:2.3-0] mig_dft2: Code generation aborted: Can not read PRJ file: f:/ambrosef/CASE_10149596/use_nondft_loc/project_1/project_1.srcs/sources_1/ip/example_top_nonbd/src/mig_dft2/mig_a.prj
CRITICAL WARNING: [IP_Flow 19-1747] Failed to deliver file 'c:/Xilinx/Vivado/2015.1/data/ip/xilinx/mig_7series_v2_3/xit/synthesis.xit':
ERROR: [IP_Flow 19-167] Failed to deliver one or more file(s).
ERROR: [IP_Flow 19-3505] IP Generation error: Failed to generate IP 'mig_dft2'. Failed to generate 'Synthesis' outputs:
ERROR: [IP_Flow 19-98] Generation of the IP CORE failed.
Failed to generate IP 'mig_dft2'. Failed to generate 'Synthesis' outputs:

Why does this occur?

Is this a known issue and can it be avoided?


This is a known issue and has been seen to occurs in the following scenarios.

2014.3 and 2014.4:

1) When the MIG core is included in an RTL project and that project is packaged into a custom IP using the IP Packager.

If the resulting IP core is used in an IP Integrator Block Design, (BD), then the generation of that BD will fail with the error above.

To work around this issue, do the one of the following:

  1. Copy the "mig_a.prj" file into the location in the error message.
    It is necessary to reset the block design and then make this directory structure first and perform the copy prior to running "Generate Block Design".
  2. Alternatively, a more robust work-around is to package the IP core using the "Include Generated Files" option in the packager instead of using the "Include XCI file" option.

2) This can also occur when generating the custom IP in an RTL project, however, in that case it was found that this only fails if the packaged IP was not placed in the default location that Vivado selects.

If you choose a non-default location for the custom IP repository, then the above issue will occur.
  1. The work-around here is to accept the default location for the custom IP repository selected by the IP Packager.
  2. Alternatively, use the "Include Generated Files" option when packaging the IP.

Note: Issue number 2 above will also affect these custom IPs used in a Block Design.


In 2015.1, scenario #1 above is resolved regardless of how the user packages the custom IP, i.e. using either "Include XCI file" or "Include generated files" options.

However, scenario #2 is still a problem in 2015.1 and the same work-arounds apply.

This will be fixed in Vivado 2015.3.
AR# 64673
Date 06/09/2015
Status Active
Type General Article
  • Vivado Design Suite - 2014.1
  • Vivado Design Suite - 2014.2
  • Vivado Design Suite - 2014.3
  • More
  • Vivado Design Suite - 2014.4
  • Vivado Design Suite - 2014.4.1
  • Vivado Design Suite - 2015.1
  • Less
  • MIG 7 Series