Home
  • About Us
    • History
    • Mission
    • Team
    • Partners & Memberships
    • Customer Stories
  • Applications
    • Video
    • Automotive
    • Aerospace & Defense
    • Industrial
    • Telecommunications
  • News
    • Press Releases
    • Blog
    • Events
  • Careers
  • Contact
  • LinkedIn
  • Twitter
Xilinx & Verification Training Courses
Quality training delivered by industry experts
Back to
Course scheduleCourse list

Accelerating Applications with the Vitis Unified Software Environment

Xilinx Vitis training course designed to help you accelerate your software applications using Xilinx FPGAs, SoCs, and Versal ACAPs.

Learn how to develop, debug, and profile new or existing C/C++ and RTL applications in the Vitis™ unified software environment targeting both data center (DC) and embedded applications.

The emphasis of this course is on:
  • Building a software application using the OpenCL™ API to run hardware kernels on Alveo™ accelerator cards
  • Building a software application using the OpenCL API and the Linux-based Xilinx runtime (XRT) to schedule the hardware kernels and control data movement on an embedded processor platform
  • Demonstrating the Vitis environment GUI flow and makefile flow for both DC and embedded applications
  • Describing the Vitis platform execution model and XRT
  • Describing kernel development using C/C++ and RTL
  • Utilizing the Vitis analyzer tool to analyze reports
  • Explaining the design methodology to optimize a design

Release date

December 2019

Level

AI 3

Training duration

2 days

Price

USD 1800 or 18 Training Credits

Course Part Number

AI-ACCEL

Who Should Attend?

Anyone who needs to accelerate their software applications using FPGAs, SoCs (such as Zynq®-7000 SoCs, Zynq UltraScale+™ MPSoCs), and Versal™ ACAPs

Prerequisites

  • Basic knowledge of Xilinx FPGA architecture
  • Comfort with the C/C++ programming language
  • Software development flow

Software Tools

  • Vitis unified software environment 2020.2

Hardware

  • Architecture: Xilinx Alveo accelerator cards, SoCs, and ACAPs
  • Demo boards: Zynq UltraScale+ MPSoC ZCU104 board

Skills gained

After completing this comprehensive training, you will have the necessary skills to:
  • Describe how the FPGA architecture lends itself to parallel computing
  • Explain how the Vitis unified software environment helps software developers to focus on applications
  • Describe the Vitis (OpenCL API) execution model
  • Analyze the OpenCL API memory model
  • Create kernels from C, C++, or RTL IP using the RTL Kernel Wizard
  • Apply host code optimization and kernel optimization techniques
  • Move data efficiently between kernel and global memory
  • Profile the design using the Vitis analyzer tool

Course Outline

  • Vitis Tool Flow
    • Introduction to the Vitis Unified Software Platform - Explains how software/hardware engineers and application developers can benefit from the Vitis unified software environment and OpenCL framework. {Lecture}
    • Vitis IDE Tool Overview - Describes the elements of the development flow, such as software emulation, hardware emulation, and system run as well as debugging support for the host code and kernel code. {Lecture, Lab}
    • Vitis Command Line Flow Introduces the Vitis environment makefile flow where the user manages the compilation of host code and kernels. {Lecture, Lab}
  • Basics of Hardware Acceleration
    • Introduction to Hardware Acceleration - Outlines the fundamental aspects of FPGAs, SoCs, and ACAPs that are required to guide the Vitis tool to the best computational architecture for any algorithm. {Lecture}
  • Alveo Data Center Accelerator Cards
    • Alveo Data Center Accelerator Cards Overview - Describes the Alveo Data Center accelerator cards and lists the advantages of these cards and the available software solutions stack. {Lecture}
    • Alveo Accelerator Card Ecosystem Partner Solutions (Optional) - Outlines the partner solutions available in the cloud and on premises for Alveo Data Center accelerator cards. {Lecture}
    • Getting Started with Alveo Data Center Accelerator Cards - Describes the hardware and software installation procedures for the Alveo Data Center accelerator cards. {Lecture}
    • Xilinx Real-Time Video Server Appliance (Optional) - Describes the Xilinx Real-Time Video Server appliance reference architectures, the optimized software solution stack for video applications, and various features offered by Alveo card live transcoding. {Lecture}
  • Vitis Execution Model and XRT
    • Vitis Execution Model and XRT - Describes the XRT and the OpenCL APIs used for setting up the platform, executing the target device and post-processing. {Lecture, Lab}
    • Synchronization - Describes OpenCL synchronization techniques such as events, barriers, blocking write/read, and the benefit of using out-of-order execution. {Lecture, Lab}
    • Xilinx Card Utilities - Describes the various tool utilities available with the Xilinx Runtime (XRT), such as the Xilinx board, board management, and xclbin utilities. The various commands and usage of these utilities are also covered. {Lecture}
  • NDRange (Optional)
    • Introduction to NDRanges - Explains the basics of NDRange (N dimensional range) and the OpenCL execution model that defines how kernels execute with the NDRange definition. {Lecture}
    • Working with NDRanges - Outlines the host code and kernel code changes with respect to NDRange. Also explains how NDRange works and the best way to represent the work-group size for the FPGA architecture. {Lecture}
  • Design Analysis
    • Profiling - Describes the different reports generated by the tool and how to view the reports that help to optimize data transfer and kernel optimization using the Vitis analyzer tool. {Lecture}
    • Debugging - Explains the support for debugging host code and kernel code as well as tips to debug the system. {Lecture}
  • Kernel Development
    • Introduction to C/C++ based Kernels - Describes the trade-offs between C/C++, OpenCL, and RTL applications and the benefits of C-based kernels. {Lecture, Lab}
    • Using the RTL Kernel Wizard to Reuse Existing IP as Accelerators - Describes how the Vitis unified software development provides RTL kernel developers with a framework to integrate their hardware functions into an application running on a host PC connected to an FPGA via a PCIe® interface. {Lecture, Lab}
  • Optimization Methodology Guide
    • Optimization Methodology - Describes the recommended flow for optimizing an application in the Vitis unified software development environment. {Lecture}
    • C/C++ based Kernel Optimization - Reviews different techniques such as loop unrolling, pipelining, and DATAFLOW. {Lecture}
    • Host Code Optimization - Describes various optimization techniques such as reducing the overhead of kernel enqueing, and optimizing the data transfer between kernels and global memory. {Lecture}
    • Optimizing the Performance of the Design - Illustrates various optimization techniques, such as optimizing the host code, and data transfer between kernels and global memory, to improve kernel performance. {Lab}
  • Libraries
    • Vitis Accelerated Libraries - Describes the Vitis accelerated libraries that are available for domain-specific and common libraries. These libraries are open-source, performance-optimized libraries that offer out-of-the-box acceleration. {Lecture}
  • Platform Creation
    • Creating a Vitis Embedded Acceleration Platform (Edge) - Describes the Vitis embedded acceleration platform, which provides product developers an environment for creating embedded software and accelerated applications on heterogeneous platforms based on FPGAs, Zynq SoCs, and Alveo data center cards. {Lecture}

Please download the respective PDF of your course: *

  • Accelerating_Applications_with_the_Vitis_Platform_ai-accel_2020-2_ilt_H.pdf

Related Courses

High-Level Synthesis with the Vitis HLS Tool

View course
Contact HardentContact me
Your Trainer, Rick
Have a question about the course?

Course Schedule

  • May 19–20, 2021
    Live E-Learning
    Register
  • Jul 12–13, 2021
    Live E-Learning
    Register
Wondering Which Course to Take?

Download our learning path guide to find the right course level and topic for the next step in your career development.

Training Funding

From Xilinx training credits to government funding, there are several options available to help you cover training costs.

See our list of resources
Upcoming Sessions
Apr 26–29
Introduction to UVM
Register
Apr 27–28
Designing with Xilinx Serial Transceivers
Register
May 03–04
Designing with Versal AI Engine 2: Graph Programming with AI Engine Kernels
Register
May 05–06
Designing with the Versal ACAP: Embedded Processor Architecture and Methodology
Register
Complete Course Schedule
Latest News
Contact Us
Mixel, Rambus and Hardent Collaborate to Deliver State-of-the-Art Integrated MIPI Display Subsystem Solution
Mixel, Rambus and Hardent collaborate to offer a complete display IP subsystem solution.
More
Hardent Announces Availability of New Xilinx Versal ACAP Training Courses
New Xilinx Versal ACAP training courses will cover all aspects of designing with the latest Xilinx device category.
More
Hardent Announces Expansion of Xilinx Training in the USA
Hardent selected by Xilinx to be the new Xilinx training provider in four U.S. states.
More
Upcoming Sessions
Apr 26–29
Introduction to UVM
Register
Apr 27–28
Designing with Xilinx Serial Transceivers
Register
May 03–04
Designing with Versal AI Engine 2: Graph Programming with AI Engine Kernels
Register
May 05–06
Designing with the Versal ACAP: Embedded Processor Architecture and Methodology
Register
Complete Course Schedule
Contact Hardent
Your Trainer, Rick
Have a question about the course?
HardentMontreal
450 rue Saint-Pierre, suite 300
Montreal
,
QC
H2Y 2M9
Canada
T +1 (514) 284-5252
F +1 (514) 284-5052
Tick to hear more from Hardent by email. This includes our newsletter, details about offers, new courses, and events. You can opt out at any time. For further information, please refer to our privacy policy.

I’ve worked with Hardent for many years and have recommended them a few times in the past. Hardent has always been extremely successful with their clients. They have many flexible ways of working with a client and will negotiate a mutually beneficial solution.

In our case, they just log into our servers and we are in constant contact via IM, email, phone, etc., but they have all their own design tools as well, so they can work either way. Being in the same time zone makes working with them easy. I am sure you will be happy with the outcome of their work. They’ll hit the ground running much faster than a single contractor would.

Marshall Johnson
Sr. Director Global ASIC/FPGA/IP Development
ADVA Optical Networking
More testimonials
Training Partners
WHDL logo
Hardent © 2002-2021.
All rights reserved.
  • Privacy Policy