Edit the Platform DSA
Copy the Base Platform
The first step is to locate the platform specific files for one of theSDSoCbase platforms. The files are provided as a part of the SDSoC software installation, and can generally be found at the following location:
. For instance, the files for the ZCU102 platform can be found at
.
Open the Platform DSA
The DSA file for the platform can be can be found in the./hwfolder of the platform. For example, the DSA file for the ZCU102 platform is found atzcu102/hw/zcu102.dsa
.
- Launch the Vivado Design Suite:
source
/settings64.csh vivado & - From within the Vivado IDE, open the DSA by using the following command from the Tcl Console:
open_dsa
/zcu102.dsa
A new project is created in your current working directory, and the block design is opened in the Vivado IP Integrator. The block design inside the DSA file has the name from the original platform you are editing. At this point, you should rename the block design to match the name of the new platform you are creating.
Use the
command from the main menu to rename the block design.Remove Original Block Design
To remove the original block design, and its wrapper from the project, open the Sources window, and expand the wrapper to show original block design inside. Select both the wrapper and the block design. Right-click and select theRemove File from Projectcommand.
Figure:Remove File from Project
This removes the HDL wrapper and the original block design from the project. In the Remove Sources dialog box that opens, you can select theAlso delete the project local file/directory from diskcheckbox to completely delete the files. This should leave the new block design in the project, and you are ready to move to the next step of changing the target part for the project.
Change the Project Part
At this point you can edit the project settings to change the target part for the project. Select theSettingscommand under the Project Manager menu in the Flow Navigator window. The Settings dialog box will open displaying the current Project device as shown below.
Figure:General Page of the Settings Dialog Box
Select theBrowsebutton for the Project device field to open the Select Device dialog box. From this dialog box you can select a board or part for the project. Select thePartstab at the top of the Select Device dialog box to list the available parts as shown below. The displayed parts can be filtered by Category, Family, Package, etc. You can also use the Search field to filter the displayed parts by a specific search string.
Select a new Project part for your design, for example thexczu9eg-ffvb1156-2-i
device.
Figure:Select Device
As soon as you change the project settings from a board flow to a part-based flow, all of the IP in the design will go stale, be locked, and require an upgrade. This is indicated by the yellow banner at the top of the block design. At the very least, the change of the target part in the project has made the current customization of the IP in the design out-of-date. For this reason the IP is locked, and must be updated to re-target the new part in the design.
Figure:Locked IP Banner
Click theReport IP Statuslink in the banner. This opens theIP Statusreport. Select all of the IP in the report and click theUpgrade Selectedcommand.
After the IP in the design are upgraded, the Generate Output Products dialog box is displayed. SelectGenerate. This starts the generation of the necessary HDL files for the IP contained within the block design. Wait for the generation of the output products to finish. TheDesign Runswindow displays the status of the Out-of-Context module runs.
Edit Platform Properties
The block design needs platform properties to be defined, as explained inDeclaring Platform (PFM) Interfaces and Properties. Review that topic for a complete discussion of what needs to be done.
Begin editing the platform properties by selectingEnable platform interfaceslink. This displays any existing platform properties that you may need to update.
from the Vivado menu bar and clicking on theIn the Platform Interface window, select the top-level Platform, as shown in the following figure. Selecting the top-level Platform in the Platform Interfaces window, opens the Platform Properties window, also shown in the following figure.
Figure:Select the Top-Level Platform
Notice the Platform Properties window displays the Name, Vendor, Board, and Version properties, which you can edit as needed to define your custom platform. Edit theVendorfield to specify your company name, or appropriate name as the Vendor of this platform.
set_property pfm.name my_platform [get_files ...] set_property dsa.name "my_platform" [current_project] set_property dsa.vendor "xilinx.com" [current_project] set_property dsa.board_id "lib" [current_project]
In the Platform Interfaces window, check the Clocking properties, the Interface properties, and the Interrupt properties as defined inConfiguring Platform Interface Properties.
With the platform properties defined, you can validate the block design by running validation. This can be done by typing the following command in the Tcl console:
validate_bd_design -include_pfm -force
Write the Platform DSA
In this step, you will create an HDL wrapper for the block design, generate a bitstream for the design (after synthesis and implementation), export the hardware description file, and write the DSA file for use by SDSoC.
In the Sources window, create a new HDL wrapper by right-clicking on the block design and selectingCreate HDL Wrapper. In the Create HDL Wrapper dialog box, select theLet Vivado manage wrapper and auto-updateoption, and clickOK.
After the wrapper is created, right-click the wrapper in the Sources window, and select theSet as Topcommand to specify this as the top-level of your platform design.
In the Flow Navigator, selectGenerate Bitstream. The Vivado tool notifies you that there are no implementation results, and asks if you want to run synthesis and implementation. ClickYesto proceed. ClickOKto launch the runs.
With the bitstream generated for the platform, use theInclude bitstreamwhen prompted in the Export Hardware dialog box.
command to write the hardware description file for the project. Selectwrite_dsa -force -include_bit /my_platform.dsa validate_dsa my_platform.dsa
With the platform DSA file exported, you are now ready to import the DSA into a new platform project, and define the software platform elements as described in the next section.
Edit the Platform DSA
Copy the Base Platform
The first step is to locate the platform specific files for one of theSDSoCbase platforms. The files are provided as a part of the SDSoC software installation, and can generally be found at the following location:
. For instance, the files for the ZCU102 platform can be found at
.
Open the Platform DSA
The DSA file for the platform can be can be found in the./hwfolder of the platform. For example, the DSA file for the ZCU102 platform is found atzcu102/hw/zcu102.dsa
.
- Launch the Vivado Design Suite:
source
/settings64.csh vivado & - From within the Vivado IDE, open the DSA by using the following command from the Tcl Console:
open_dsa
/zcu102.dsa
A new project is created in your current working directory, and the block design is opened in the Vivado IP Integrator. The block design inside the DSA file has the name from the original platform you are editing. At this point, you should rename the block design to match the name of the new platform you are creating.
Use the
command from the main menu to rename the block design.Remove Original Block Design
To remove the original block design, and its wrapper from the project, open the Sources window, and expand the wrapper to show original block design inside. Select both the wrapper and the block design. Right-click and select theRemove File from Projectcommand.
Figure:Remove File from Project
This removes the HDL wrapper and the original block design from the project. In the Remove Sources dialog box that opens, you can select theAlso delete the project local file/directory from diskcheckbox to completely delete the files. This should leave the new block design in the project, and you are ready to move to the next step of changing the target part for the project.
Change the Project Part
At this point you can edit the project settings to change the target part for the project. Select theSettingscommand under the Project Manager menu in the Flow Navigator window. The Settings dialog box will open displaying the current Project device as shown below.
Figure:General Page of the Settings Dialog Box
Select theBrowsebutton for the Project device field to open the Select Device dialog box. From this dialog box you can select a board or part for the project. Select thePartstab at the top of the Select Device dialog box to list the available parts as shown below. The displayed parts can be filtered by Category, Family, Package, etc. You can also use the Search field to filter the displayed parts by a specific search string.
Select a new Project part for your design, for example thexczu9eg-ffvb1156-2-i
device.
Figure:Select Device
As soon as you change the project settings from a board flow to a part-based flow, all of the IP in the design will go stale, be locked, and require an upgrade. This is indicated by the yellow banner at the top of the block design. At the very least, the change of the target part in the project has made the current customization of the IP in the design out-of-date. For this reason the IP is locked, and must be updated to re-target the new part in the design.
Figure:Locked IP Banner
Click theReport IP Statuslink in the banner. This opens theIP Statusreport. Select all of the IP in the report and click theUpgrade Selectedcommand.
After the IP in the design are upgraded, the Generate Output Products dialog box is displayed. SelectGenerate. This starts the generation of the necessary HDL files for the IP contained within the block design. Wait for the generation of the output products to finish. TheDesign Runswindow displays the status of the Out-of-Context module runs.
Edit Platform Properties
The block design needs platform properties to be defined, as explained inDeclaring Platform (PFM) Interfaces and Properties. Review that topic for a complete discussion of what needs to be done.
Begin editing the platform properties by selectingEnable platform interfaceslink. This displays any existing platform properties that you may need to update.
from the Vivado menu bar and clicking on theIn the Platform Interface window, select the top-level Platform, as shown in the following figure. Selecting the top-level Platform in the Platform Interfaces window, opens the Platform Properties window, also shown in the following figure.
Figure:Select the Top-Level Platform
Notice the Platform Properties window displays the Name, Vendor, Board, and Version properties, which you can edit as needed to define your custom platform. Edit theVendorfield to specify your company name, or appropriate name as the Vendor of this platform.
set_property pfm.name my_platform [get_files ...] set_property dsa.name "my_platform" [current_project] set_property dsa.vendor "xilinx.com" [current_project] set_property dsa.board_id "lib" [current_project]
In the Platform Interfaces window, check the Clocking properties, the Interface properties, and the Interrupt properties as defined inConfiguring Platform Interface Properties.
With the platform properties defined, you can validate the block design by running validation. This can be done by typing the following command in the Tcl console:
validate_bd_design -include_pfm -force
Write the Platform DSA
In this step, you will create an HDL wrapper for the block design, generate a bitstream for the design (after synthesis and implementation), export the hardware description file, and write the DSA file for use by SDSoC.
In the Sources window, create a new HDL wrapper by right-clicking on the block design and selectingCreate HDL Wrapper. In the Create HDL Wrapper dialog box, select theLet Vivado manage wrapper and auto-updateoption, and clickOK.
After the wrapper is created, right-click the wrapper in the Sources window, and select theSet as Topcommand to specify this as the top-level of your platform design.
In the Flow Navigator, selectGenerate Bitstream. The Vivado tool notifies you that there are no implementation results, and asks if you want to run synthesis and implementation. ClickYesto proceed. ClickOKto launch the runs.
With the bitstream generated for the platform, use theInclude bitstreamwhen prompted in the Export Hardware dialog box.
command to write the hardware description file for the project. Selectwrite_dsa -force -include_bit /my_platform.dsa validate_dsa my_platform.dsa
With the platform DSA file exported, you are now ready to import the DSA into a new platform project, and define the software platform elements as described in the next section.
Edit the Platform DSA
Copy the Base Platform
The first step is to locate the platform specific files for one of theSDSoCbase platforms. The files are provided as a part of the SDSoC software installation, and can generally be found at the following location:
. For instance, the files for the ZCU102 platform can be found at
.
Open the Platform DSA
The DSA file for the platform can be can be found in the./hwfolder of the platform. For example, the DSA file for the ZCU102 platform is found atzcu102/hw/zcu102.dsa
.
- Launch the Vivado Design Suite:
source
/settings64.csh vivado & - From within the Vivado IDE, open the DSA by using the following command from the Tcl Console:
open_dsa
/zcu102.dsa
A new project is created in your current working directory, and the block design is opened in the Vivado IP Integrator. The block design inside the DSA file has the name from the original platform you are editing. At this point, you should rename the block design to match the name of the new platform you are creating.
Use the
command from the main menu to rename the block design.Remove Original Block Design
To remove the original block design, and its wrapper from the project, open the Sources window, and expand the wrapper to show original block design inside. Select both the wrapper and the block design. Right-click and select theRemove File from Projectcommand.
Figure:Remove File from Project
This removes the HDL wrapper and the original block design from the project. In the Remove Sources dialog box that opens, you can select theAlso delete the project local file/directory from diskcheckbox to completely delete the files. This should leave the new block design in the project, and you are ready to move to the next step of changing the target part for the project.
Change the Project Part
At this point you can edit the project settings to change the target part for the project. Select theSettingscommand under the Project Manager menu in the Flow Navigator window. The Settings dialog box will open displaying the current Project device as shown below.
Figure:General Page of the Settings Dialog Box
Select theBrowsebutton for the Project device field to open the Select Device dialog box. From this dialog box you can select a board or part for the project. Select thePartstab at the top of the Select Device dialog box to list the available parts as shown below. The displayed parts can be filtered by Category, Family, Package, etc. You can also use the Search field to filter the displayed parts by a specific search string.
Select a new Project part for your design, for example thexczu9eg-ffvb1156-2-i
device.
Figure:Select Device
As soon as you change the project settings from a board flow to a part-based flow, all of the IP in the design will go stale, be locked, and require an upgrade. This is indicated by the yellow banner at the top of the block design. At the very least, the change of the target part in the project has made the current customization of the IP in the design out-of-date. For this reason the IP is locked, and must be updated to re-target the new part in the design.
Figure:Locked IP Banner
Click theReport IP Statuslink in the banner. This opens theIP Statusreport. Select all of the IP in the report and click theUpgrade Selectedcommand.
After the IP in the design are upgraded, the Generate Output Products dialog box is displayed. SelectGenerate. This starts the generation of the necessary HDL files for the IP contained within the block design. Wait for the generation of the output products to finish. TheDesign Runswindow displays the status of the Out-of-Context module runs.
Edit Platform Properties
The block design needs platform properties to be defined, as explained inDeclaring Platform (PFM) Interfaces and Properties. Review that topic for a complete discussion of what needs to be done.
Begin editing the platform properties by selectingEnable platform interfaceslink. This displays any existing platform properties that you may need to update.
from the Vivado menu bar and clicking on theIn the Platform Interface window, select the top-level Platform, as shown in the following figure. Selecting the top-level Platform in the Platform Interfaces window, opens the Platform Properties window, also shown in the following figure.
Figure:Select the Top-Level Platform
Notice the Platform Properties window displays the Name, Vendor, Board, and Version properties, which you can edit as needed to define your custom platform. Edit theVendorfield to specify your company name, or appropriate name as the Vendor of this platform.
set_property pfm.name my_platform [get_files ...] set_property dsa.name "my_platform" [current_project] set_property dsa.vendor "xilinx.com" [current_project] set_property dsa.board_id "lib" [current_project]
In the Platform Interfaces window, check the Clocking properties, the Interface properties, and the Interrupt properties as defined inConfiguring Platform Interface Properties.
With the platform properties defined, you can validate the block design by running validation. This can be done by typing the following command in the Tcl console:
validate_bd_design -include_pfm -force
Write the Platform DSA
In this step, you will create an HDL wrapper for the block design, generate a bitstream for the design (after synthesis and implementation), export the hardware description file, and write the DSA file for use by SDSoC.
In the Sources window, create a new HDL wrapper by right-clicking on the block design and selectingCreate HDL Wrapper. In the Create HDL Wrapper dialog box, select theLet Vivado manage wrapper and auto-updateoption, and clickOK.
After the wrapper is created, right-click the wrapper in the Sources window, and select theSet as Topcommand to specify this as the top-level of your platform design.
In the Flow Navigator, selectGenerate Bitstream. The Vivado tool notifies you that there are no implementation results, and asks if you want to run synthesis and implementation. ClickYesto proceed. ClickOKto launch the runs.
With the bitstream generated for the platform, use theInclude bitstreamwhen prompted in the Export Hardware dialog box.
command to write the hardware description file for the project. Selectwrite_dsa -force -include_bit /my_platform.dsa validate_dsa my_platform.dsa
With the platform DSA file exported, you are now ready to import the DSA into a new platform project, and define the software platform elements as described in the next section.