Develop your design in the Vivado tools or Vitis environment. Ensure your design fits within the constraints of your power delivery and thermal solution. These constraints are typically based on early power estimation as determined by the Power Design Manager (PDM) tool. Properly constraining your design is extremely important. Changes to your power delivery and thermal solution can be costly.
AMD recommends applying the total power budget, maximum process, and worst-case junction temperature to create a worst-case power analysis. Perform this using the following XDC constraints:
set_operating_conditions -design_power_budget <Power in Watts>
set_operating_conditions -process maximum
set_operating_conditions -junction_temp <Max Tj based on Temp Grade>
ΘJa = (Tj – Ta)/ Pd. Units are Celsius per
watt (°C/W).You can achieve the most accurate power estimation after you know the Theta Ja
of the thermal design. You can apply the Theta Ja and the maximum supported ambient
temperature (Ta) of the application to report_power
using the following constraints to replace the junction temperature setting. Using these
constraints allows report_power to estimate the
junction temperature more accurately and therefore, give a more accurate static power
estimation.
set_operating_conditions -design_power_budget <Power in Watts>
set_operating_conditions -process maximum
set_operating_conditions -ambient_temp <Max Supported by Application>
set_operating_conditions -thetaja <Increase in Tj for every W dissipated C/W>
In addition, you can specify the power delivery design using XDC constraints.
Using this approach allows report_power to report the
margin on the total power. It checks the power estimation on the power rails. It reports
the margin based on the specified estimation and power rail consolidation. For more
information on these constraints, refer to the
Vivado
Design Suite User Guide: Power Analysis and Optimization
(UG907).
create_power_rail <power rail name> -power_sources {supply1, supply2 ,..}
add_to_power_rail <power rail name> -power_sources {supply1, supply2, ..}
set_operating_conditions -supply_current_budget {<supply rail name> <current budget in Amp>} -voltage {<supply rail name> <voltage>}