cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
fernandohr95
Visitor
Visitor
420 Views
Registered: ‎06-01-2021

What is the difference between an .XML board file and an .XDC constraint file?

Jump to solution

Hi!

I'm very new to SoC programming and I have several theory questions about xdc and xml files. Maybe this questions make no sense, so I apologize in advance:

When we are developing on a zedboard, for example, we have to load its .xml file in order to connect properly some peripherals in our design, right? However, we also use the constraint file to attach an specific port to a peripheral (for example a digital output to one of the zed's LED). I am not sure the difference between the functionality of these 2 files (.xdc and .xml).

The thing is, if I had to migrate a design made in a zedboard to a custom board, how and where do I have to specify the functionality of my pins? should I do it on a custom .xml of my board or a constraint file? (or both). I mean, how do I connect my inputs/outputs of my block design to the Zynq physical pins?

Thank you in advance

0 Kudos
1 Solution

Accepted Solutions
florentw
Moderator
Moderator
278 Views
Registered: ‎11-09-2015

HI @fernandohr95 

The XML file is a configuration file. This is used by vivado to create some board related configuration. For example, if using Zynq, it is used to define the configuration of the PS for the specific board so you can run automation in vivado. This can also be used to assign peripherals to pins also using automation when the IPs support automation.

XDC files are constraints files. When talking about the location constraints, it will define which port of the design is connected to which pin of the device.

When running automation based on the XML file the tool will basically create XDC constraints so they are kind of doing the same thing for location constraint.

So both file can be used. And if you are using IPs connected to ports which do not support automation, then you will need to have the constraints defined in a XDC file.

Hope that helps


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**

View solution in original post

1 Reply
florentw
Moderator
Moderator
279 Views
Registered: ‎11-09-2015

HI @fernandohr95 

The XML file is a configuration file. This is used by vivado to create some board related configuration. For example, if using Zynq, it is used to define the configuration of the PS for the specific board so you can run automation in vivado. This can also be used to assign peripherals to pins also using automation when the IPs support automation.

XDC files are constraints files. When talking about the location constraints, it will define which port of the design is connected to which pin of the device.

When running automation based on the XML file the tool will basically create XDC constraints so they are kind of doing the same thing for location constraint.

So both file can be used. And if you are using IPs connected to ports which do not support automation, then you will need to have the constraints defined in a XDC file.

Hope that helps


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**

View solution in original post