04-12-2018 10:46 AM
Using Vivado 2015.4 I created a MicroBlaze design that has been working fine. I opened the block diagram editor and added an XADC module. I verified and saved the block diagram, After closing the block diagram editor I executed the 'Generate Output Products' command. All is well until I get to the implementation phase when I get the below error.
[Place 30-99] Placer failed with error: 'There are more instances than sites for type XADC'
Please review all ERROR, CRITICAL WARNING, and WARNING messages during placement to understand the cause for failure.
I opened the Synthesized design which shows only one XADC module. The Synthesis report shows only one XADC black box. My MicroBlaze block diagram only shows one XADC instance. Does anyone have any idea how to find/fix this issue?
04-13-2018 06:27 AM
The XADC is a hard Macro that is always inferred. Instantiating it in your IPI design merely give you access to it through the Microblaze rather than through the the JTAG Access port. I suspect there is an error in the way you have connected the external ports that is making the placer think that the one in your design is different than the one that is inferred.
First place to check is the external Analog Inputs. Do you have them all routed to external ports at the top level of your design? If so, are these ports assigned to the designated XADC pins in your XDC? If you have them connected to other pins, that could cause this problem.
04-13-2018 07:02 AM
Thanks for your help. I figured out what the problem was and I am in the process of fixing it. The problem is I have a DDR memory controller (MIG) that instances the XADC block. There is a pull-down box to enable/disable the XADC, the default is enable, I didn't remember this feature existed. I has to go back into the MIG and disable this feature and add the XADC to my microblaze. Then I have to export the temperature from the XADC into the memory controller.
04-17-2018 04:55 AM
Is the issue resolved? If yes, can you share the solution so that it will help other users facing the same issue and also close this thread by marking the solution post as "Accept as Solution"