I have a Xilinx FPGA project that I put together in Vivado 2014.4 (64-bit on Linux). The project uses a MicroBlaze. I've written my MicroBlaze firmware in Xilinx SDK 2015.1. My target hardware is the Digilent Nexys4DDR with a Xilinx Artix-7.

I've gone through the process of exporting my hardware design (including the bitstream) from Vivado. It was successfully imported in the SDK when I created my new firmware project. The Board Support Package also seems to have been created properly. All warnings and errors are resolved.

When I go to Xilinx Tools -> Program FPGA, I get this dialog:

Program Dialog

I have verified that the files listed here do exist. RangeCompensator.bit and RangeCompensator.mmi are in the hardware platform specification project, and range_compensator.elf file is in the firmware project's "Binaries" folder.

When I click "Program", I get this error:

Program Error

According to this post on the Xilinx forums, I shouldn't have to worry about the download.bit file if all the fields of the program FPGA dialog are populated, yet it download.bit doesn't seem to be getting generated.

How can I resolve the error during programming?

  • \$\begingroup\$ A quick and dirty way of doing it is to clean up you project, then chose Download from the Tool menue, this will regenerate all the files, creates teh bit file, merges it with your SW and programs the HW. \$\endgroup\$
    – FarhadA
    May 31, 2015 at 10:43
  • \$\begingroup\$ The file is called RangeCompensator.bit but Impact is looking for download.bit... does renaming the file work? If so, that's a workaround, but I'd still look for a cleaner solution (tell Impact to look for the right filename) \$\endgroup\$
    – user16324
    May 31, 2015 at 11:05
  • \$\begingroup\$ @FarhadA There is no "Download" option in the SDK's "Xilinx Tools" menu. I assume you meant "Program FPGA". Either way though, cleaning the project had no effect. \$\endgroup\$
    – skrrgwasme
    May 31, 2015 at 17:52
  • \$\begingroup\$ @BrianDrummond Renaming the file worked. I don't see where or how the intermediate tools are invoked. Do you know how I can update Impact to look for the right file? \$\endgroup\$
    – skrrgwasme
    May 31, 2015 at 17:53

1 Answer 1


I never did find a great solution for this, but as suggested in the comments, renaming the "RangeCompensator.bit" file to "download.bit" worked.

If you encounter this issue, renaming the *.bit file that is present is a workaround.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.