Friday 7 August 2020

Developing & Delivering KnowHow

Home > Training > Embedded Design with PetaLinux Tools

Embedded Design with PetaLinux Tools

View dates and locations

Course Description

This intermediate-level, two-day course provides embedded systems developers with experience in creating an embedded Linux system targeting a Zynq® UltraScale+™ MPSoC processor development board using PetaLinux Tools.

The course provides experience with:

  • Building the environment and booting the system using a Zynq UltraScale+ MPSoC with PetaLinux Tools on the Arm® Cortex®-A53 processor
  • Using open-source embedded Linux components
  • Configuring the Linux environment and network components
  • Debugging embedded Linux platforms.

The primary focus is on embedded Linux development in conjunction with the Xilinx tool flow.

Training Duration

2 days

Who Should Attend?

Embedded software developers interested in customizing the PetaLinux kernel on an Arm processor design for a Xilinx Zynq UltraScale+ MPSoC.


Software Tools

  • Vivado® System Edition
  • Xilinx SDK Tool
  • PetaLinux Tools


  • Architecture: Zynq UltraScale+ SoC*
  • Demo board: Zynq UltraScale+ MPSoC ZCU10 / ZedBoard
*This course focuses on the Zynq UltraScale+ MPSoC. Check with Doulos for the specifics of the in-class lab board or other customizations.

Skills Gained

After completing this comprehensive training, you will have the necessary skills to:

  • Explain what an embedded Linux kernel is
  • Describe the Linux device driver architecture
  • Create a PetaLinux project to configure and build an image
  • Create a working Arm Cortex-A53 processor Linux system using the Vivado Design Suite and PetaLinux tools
  • List various hardware interfacing options available for the Arm Cortex-A53 processor
  • Build custom hardware cores and device drivers using the user space I/O (UIO) framework

Course Outline

Day 1

  • Introduction to Embedded Linux
    introduces embedded Linux, including a brief architectural overview, as well as some of the reasons for its rising popularity as an embedded OS. {Lecture}
  • Embedded Linux Components
    Describes the various components required for embedded Linux platforms and how the components affect the booting of Linux on these platforms. {Lecture, Lab}
  • Introduction to the PetaLinux Tools
    Describes the PetaLinux tools and their requirements. {Lecture}
  • PetaLinux Tools Workflow
    Provides a brief description of the PetaLinux tools workflow. {Lecture}
  • Basics of the PetaLinux Tools
    Describes in detail various PetaLinux commands and their example use cases.{Lecture, Lab}
  • Application Development and Debugging
    Introduces core concepts for developing, running, and debugging software applications in an embedded Linux environment. {Lecture, Lab}
  • Customizing rootfs
    Provides a brief description on customizing the rootfs for embedded Linux. {Lecture}
  • Networking and TCP/IP
    Discusses how the TCP/IP networking stack can be used to improve productivity during embedded product development. {Lecture, Lab}

Day 2

  • Linux Device Drivers Overview
    Provides a brief overview on Linux device drivers and how to use them for custom hardware. {Lecture}
  • User Space I/O and Loadable Kernel Modules
    Introduces two lightweight approaches for accessing the physical memory of devices from user space: direct access through the dev/memvirtual device and the user space I/O framework. {Lecture, Lab}
  • Board Bring Up with the Vivado Design Suite and PetaLinux Tools
    Describes the complete board bring-up process, which includes the hardware design as well as Linux image creation for the hardware {Lecture, Lab}
  • PetaLinux Image Booting Methods
    Describes how to boot the PetaLinux image via QEMU, SD card, JTAG, and TFTP. {Lecture}
  • Configuring the rootfs Type
    Reviews various rootfs types (INITRD, INITRAMFS, NFS, JFFS2, and SD card) and how to configure a PetaLinux project to boot the PetaLinux image with the selected rootfs. {Lecture}
  • Custom Hardware Development
    Describes the Package IP Wizard and how it can be used to create a variety of architectural options for interfacing a system with custom processing hardware. {Lecture, Lab}
  • Custom Driver Development
    Discusses device driver options to match custom hardware devices andhow to use the provided interfaces to read and write to the devices. {Lecture, Lab}

Looking for team-based training, or other locations?

Complete an on-line form and a Doulos representative will get back to you »

Back to top
Privacy Policy Site Map Contact Us