EmbeddedLinuxandSystemIntegrationforZynq

This two-day training course will give attendees hands-on experience in creating and customizing an embedded Linux® system for their custom target using Zynq®. Topics include:

Creating a reference design in Vivado and SDK

Software anatomy of a Zynq® system

Zynq build system

Building a custom Linux image for Zynq

Integrating user space device drivers in Simulink

Prerequisites

Programming Xilinx Zynq SoCs with MATLAB and Simulink

Course Outline

Day 1 of 2

Creating Reference Design in Vivado and SDKObjective: Create a Vivado® block diagram and SDK project to target PL and PS.Building a Vivado Block diagram to target PL Exporting hardware to SDK and creating board support packageCreating a software application for ARMAutomating build process through Tcl scripts

Software Anatomy of a Zynq SystemObjective: Understand various software components like FSBL, u-boot, kernel, user-space.Overview of embedded LinuxUnderstanding various components of boot image

Zynq Build SystemObjective: Understand various software components to form a system image and an automation process.Understanding system bootsGenerating various binary files, including .elf, .bit, and open source build with buildrootUnderstanding storage device layoutUsing a MathWorks build system to have easy hooks for customization of bitstream/FSBL, devicetree and Kernel configuration

Day 2 of 2

Zynq Build System (Continued)Objective: Create a custom linux image with device drivers for various PL and PS integrated peripherals.Updating devicetree to include new mappingsModifying kernel to turn on a driverCreating boot.bin and generating custom SD card image

Integrating User Space Device Drivers in SimulinkObjective: Integrate device driver C code for peripherals in Simulink to communicate with the custom Linux image.Overview of the generated C code main function, scheduler timing and POSIX threadsCreating a custom System object™Using coder.ceval and System objects for C code integrationInteracting with custom Linux images from SimulinkCreating a standalone application as part of boot image