A platform is a fully contained image that defines both the hardware (XSA) as well as the software (bare metal, Linux, or both). The XSA contains the hardware description of the platform, which is defined in the Vivado Design Suite, and the software is defined with the use of a bare-metal setup, or a Linux image defined through PetaLinux.
Types of Platforms
There are two types of platforms: base platform, or custom platform.
A base platform is one that is provided by Xilinx (for example, the xilinx_vck190_base_202020_1
),
and a custom platform is one that you create. Determining which platform is best to
use is based upon the design, so it is always best to start with a base platform and
develop the custom platform in parallel.
Custom Platforms
When the base platform does not contain the features needed for a design, you can create a platform. Creating a platform allows you to provide your own IP or subsystems to meet your needs. The process to create a platform can be found in Vitis Unified Software Platform Documentation: Application Acceleration Development (UG1393).
Platform Clocking
Platforms have a variety of clocking: processor, programmable logic (PL), and AI Engine clocking. The following table explains the clocking for each.
Clock | Description |
---|---|
AI Engine | Can be configured in the platform in the AI Engine IP. |
Processor | Can be configured in the platform in the CIPS IP. |
Programmable Logic | Can have multiple clocks and can be configured in the platform. |
NoC | Device dependent and can be configured in the platform in the CIPS and NoC IP. |
|
For more information related to platform clocking, see Vitis Unified Software Platform Documentation: Application Acceleration Development (UG1393). For information on Versal device clocks, see Versal AI Core Series Data Sheet: DC and AC Switching Characteristics (DS957).