Thursday 9 July 2020

Developing & Delivering KnowHow

Home > Training > Xilinx - Embedded Systems

Embedded Systems Training

Embedded Systems Hardware and Software Design is conveniently offered by Doulos as a single 3 day course, which combines the Embedded Systems Design, and Embedded Systems Software Design training.

View full course details, dates and locations for Embedded Systems training

Embedded Systems Software Design

Course Description

This two-day course introduces you to software design and development for the Xilinx Zynq® System on a Chip (SoC) using the Xilinx Software Development Kit (SDK). You will learn the concepts, tools, and techniques required for the software phase of the design cycle.
Topics are comprehensive, covering the design and implementation of the board support package (BSP) for resource access and management of the Xilinx Standalone library. Major topics include device driver use, user application debugging and integration. Practical implementation tips and best practices are also provided throughout to enable you to make good design decisions and keep your design cycles to a minimum. You will have enough practical information to start developing software applications for the Arm® Cortex™-A9 and MicroBlaze™ processors.

Please note, hardware design concepts and procedures are not covered in this course, so Doulos recommends Embedded Systems Hardware and Software Design which combines appropriate Hardware and Software Design training in a 3 day course.

Training Duration

2 days

Who Should Attend?

Software design engineers interested in system design and implementation and software application development and debugging using the Xilinx Standalone library.


  • C or C++ programming experience, including general debugging techniques
  • Conceptual understanding of embedded processing systems including device drivers, interrupt routines writing / modifying scripts, user applications, and boot loader operation

Software Tools

  • Xilinx ISE® Design Suite: Embedded or System Edition 2018.3


  • Architecture: Zynq-7000 SoC and 7 Series FPGAs*
  • Demo board: Zynq-7000 SoC ZC702 board*
* This course focuses on the Zynq-7000 SoC and 7 series architectures. Please contact Doulos for the specifics of the in-class lab board, other customizations or 6 series based architecture.

Developing for 6 Series FPGAs?

The content of this course can also be accessed by FPGA designers looking to develop embedded systems using the Xilinx MicroBlaze soft processor in a 6 Series FPGAs (such as Spartan-6 or Virtex-6). Please contact Doulos for the specifics of your requirements before booking.

Skills Gained

After completing this comprehensive training, you will know how to:
  • Implement an effective software design environment for a Xilinx embedded system using the Xilinx SDK tools
  • Write a basic user application using the Xilinx Software Development Kit (SDK) and run it on the embedded system.
  • Use Xilinx debugger tools to troubleshoot user applications
  • Apply software techniques to improve operability
  • Maintain and update software projects with changing hardware

Course Outline

Day 1

  • Procesors, Peripherals, and Tools
  • Standalone Software Platform Development
  • Linux Software Application Development
  • Lab 1: Basic System Implementation
  • Software Development Using SDK
  • Writing Code in the Xilinx Standalone Environment
  • Writing Code in the Xilinx Linux Environment
  • Lab 2: Application Development
  • Address Management
  • Interrupts
  • Lab 3: Software Interrupts

Day 2

  • Software Platform Download and Boot
  • Application Debugging
  • Lab 4: Debugging
  • Application Profiling
  • Lab 5: SDK Profiling
  • Writing a Custom Device Driver
  • Advanced Services and Operating Systems
  • Project Management with the Xilinx Design Tools
  • Lab 6: File Systems

Lab Descriptions

  • Lab 1: Basic System Implementation – Construct the hardware and software platforms used for the labs in this course. Begin with the Processing System Configuration Wizard to create the hardware design. Specify a basic software platform and add a software application to the system.
  • Lab 2: Application Development – Create a simple software application project from provided source files for a software loop-based stopwatch. Research hardware and software documentation to complete the application; then download it to hardware.
  • Lab 3: Software Interrupts – Replace a software timing loop with an interrupt-driven timer. Add the timer software and write an interrupt handler for the timer. Configure the FPGA, download, and test the application.
  • Lab 4: Debugging – Set up the SDK debug perspective and the previous lab’s stopwatch application for debugging, setting breakpoints, calculating interrupt latency, and stepping through the program’s operation.
  • Lab 5: SDK Profiling –Profile a program, interpret reports, then enable cache and modify code to archive optimal performance.
  • Lab 7: File Systems – Implement a standalone software platform that incorporates the XilMFS memory file system. Develop an application that performs file-related tasks on external memory.

Find out more...

View details, dates and locations for Embedded Systems training

Or contact your local Doulos team to discuss your requirements.

Back to top
Privacy Policy Site Map Contact Us