Selectively Upgrading IP Flow in Project Mode - 2023.2 English

Vivado Design Suite User Guide: Designing IP Subsystems Using IP Integrator (UG994)

Document ID
UG994
Release Date
2023-10-18
Version
2023.2 English
To upgrade a block design using the Selective IP upgrade feature in project mode:
  1. Launch the latest version of the Vivado Design Suite.
  2. From the Vivado IDE, click File > Project > Open, and navigate to the design that was created from a previous version of Vivado tools.

    The Older Project Version pop-up opens. Automatically upgrade to the current version is selected by default.

    Although you can upgrade the design from a previous version by selecting the Automatically upgrade to the current version, it is highly recommended that you save your project with a different name before upgrading. To do so:

  3. Select Open project in read-only mode, as shown in the following figure, and click OK.

    The Project is Read-Only dialog box opens.

  4. Select Save Project As as shown in the following figure.

  5. When the Save Project As dialog box opens, as shown in the following figure, type the name of the project, and click OK.

    The Project Upgraded dialog box opens, as shown in the following figure, informing you that the IP used in the design could have changed and therefore need to be updated.

  6. Click Report IP Status.

    Alternatively, from the menu select Reports > Report IP Status.

  7. In the IP Status window, look at the different columns and familiarize yourself with the IP Status report. Expand the block design and look at the changes of IP cores in the block design.

  8. All the IP in the block design are selected by default for upgrade. The IP that cannot be opted out from upgrade and must be upgraded are checked and disabled as shown.

  9. Uncheck any IP that need not be upgraded.

  10. Click Upgrade Selected.
  11. The Upgrade IP dialog box opens to confirm that the checked IP in the IP Status window will be upgraded and provides a list of the unchecked IP that will not be upgraded.

  12. Click OK.

    If a Critical Messages dialog box opens when the upgrade process is complete, informing you about any critical issues to which you need to pay attention, review any critical warnings and other messages that could be flagged as a part of the upgrade.

  13. Click OK.
  14. If there are no Critical Warnings, the Upgrade IP dialog box informs you that the IP Upgrade completed successfully, click OK.

    When the IP are upgraded or locked, a couple of things are worth noticing. As highlighted in the messages from the Tcl Console, the IP that have been opted out of upgrade will have a special property called LOCK_UPGRADE set on them. The rest of the IP in the design are upgraded as in the normal flow.

    set_property LOCK_UPGRADE 1 [get_bd_cells /axi_ethernet_0]
    WARNING: [BD 41-2028] Locking axi_ethernet to version 7.1. If the latest driver for the IP is not backwards compatible, software flow will assign a generic driver or no driver for this IP
    INFO: [Vivado 12-5777] IP Instance 'config_mb_axi_ethernet_0_0' cannot be used in a module reference: The 'xilinx.com:ip:axi_ethernet:7.1' core does not support module reference.
    
    set_property LOCK_UPGRADE 1 [get_bd_cells /axi_ethernet_0_fifo]
    WARNING: [BD 41-2028] Locking axi_fifo_mm_s to version 4.1. If the latest driver for the IP is not backwards compatible, software flow will assign a generic driver or no driver for this IP
    INFO: [Vivado 12-5777] IP Instance 'config_mb_axi_ethernet_0_0' cannot be used in a module reference: The 'xilinx.com:ip:axi_ethernet:7.1' core does not support module reference.
    
    upgrade_ip [get_ips  {config_mb_axi_gpio_0_0 config_mb_axi_uartlite_0_0 config_mb_microblaze_0_axi_periph_0 config_mb_ddr4_0_0 config_mb_axi_gpio_1_0 config_mb_xlconstant_0_0 config_mb_microblaze_0_0 config_mb_axi_smc_0 
    config_mb_mdm_1_0}] -log ip_upgrade.log
    Upgrading 'C:/bash/2018.1/selective_upgrade/project_4/project_4.srcs/sources_1/bd/config_mb/c
    onfig_mb.bd'
    WARNING: [Vivado 12-3647] The given sub-design is not contained in the block fileset 'config_mb_axi_gpio_0_0'. Sub-design: Regenerating Output Products

    The property LOCK_UPGRADE can also be seen by selecting the cell in the block design canvas and then looking at the Properties window.



    This property can be toggled through the Properties window as well. When you toggle this property through the Properties window, the banner in the block design canvas prompts you to upgrade the design.

    Clicking on Show IP Status link will bring the IP Status window view. Click Rerun to refresh the status of IP in the IP Status window.

    The refreshed IP Status window shows that because you chose to toggle the LOCK_UPGRADE property in the Properties window for the axi_ethernet_0_fifo IP, that IP needs to be upgraded. The IP is checked for upgrade as shown below. Update the IP by clicking the Upgrade Selected button.



  15. The Generate Output Product dialog box opens. You can skip generation at this time by clicking Skip or click Generate to generate the block design.

  16. You can now synthesize, implement, and generate the bitstream for the design.