Embedded Systems Software Design

En

Course Description

This two-day course introduces you to software design and development for the Xilinx Zynq™ All Programmable 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 and custom development and 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.

Additionally, this course covers developing software applications for a Xilinx embedded system based on a MicroBlaze processor.

Release Date

January 2018

Level

Embedded Software 3

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. This course is not for the hardware-only embedded designer.

Prerequisites

  • 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

Skills Gained

After completing this comprehensive training, you will be able to:

  • Implement an effective software design environment for a Xilinx embedded system using the Xilinx SDK tools
  • Write a basic user application (under Standalone or Linux) using the Xilinx Software Development Kit (SDK) and run it on an embedded system platform
  • 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

  • Overview of Embedded Software Development
  • Embedded UltraFast Design Methodology
  • Lab 1: Zynq7000 All-Programmable SoC Architecture Overview
  • Lab 2: MicroBlaze Processor Architecture Overview
  • Lab 3: Driving the SDK Tool
  • Lab 4: System Debugger
  • Lab 5: Standalone Software Platform Development
  • C Coding Support for Standalone
  • Lab 6: Memory File System (Standalone)
  • Lab 7: Using Linker Scripts
  • Introduction to Interrupts
  • Lab 8: Interrupts: Software Considerations

Day 2

  • Operating Systems: Introduction and Concepts
  • Linux: A High-Level Introduction
  • Lab 9: Linux Software Application Development Overview
  • Writing Code in the Xilinx Linux Environment
  • Lab 10: Booting Overview
  • Lab 11: Profiling Overview
  • Understanding Device Drivers
  • Lab 12: Custom Device Drivers

Lab Descriptions

Standalone

  • Lab 1: Exploring the Architecture of the Zynq-7000 All Programmable SoC – Begin with the Vivado IP integrator to create the hardware design for the Zynq All Programmable SoC and customize the processor.
  • Lab 2: Exploring the Architecture of the MicroBlaze Processor – Begin with Vivado IP integrator to create a basic MicroBlaze processor design and explore hardware/performance trade-offs.
  • Lab 3: Driving the SDK Tool – Explore the basic behavior of the Eclipse-based IDE tool that will be used in most of the software development labs.
  • Lab 4: Software Debugging – Launch the SDK debug perspective step through the various capabilities of the system debugger, including controlling the flow of execution and monitoring and modifying memory.
  • Lab 5: Application Development – Create a simple software application project with the provided source files. Verify proper BSP settings and linker script generation. Use API documentation to complete the software application. Verify proper operation in hardware.
  • Lab 6: 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.
  • Lab 7: Linker Script – Configure the linker script and observe increased performance when utilizing different memory sections.
  • Lab 8: Software Interrupts – Replace a software timing loop with an interrupt-driven timer. Add the timer software and implement an interrupt handler for the timer. Download into hardware and test the application.
  • Lab 9: Linux Application Development – Access the general-purpose input/output (GPIO) that is connected to the evaluation board.
  • Lab 10: Booting Loading from Flash Memory – Take a provided bitstream and application and construct your own bootable image.
  • Lab 11: Software Profiling – Profile a program, interpret reports, and verify the performance with multiple calls.
  • Lab 12: Writing a Device Driver – Create the skeleton driver framework and add a provided LCD device driver to the BSP.

Event Schedule

so-logic (top1) (Austria)
  • 28.01. - 29.01.2019 09:00-17:00 — € 1,500.00 excl. VAT Add to cart
  • 18.03. - 19.03.2019 09:00-17:00 — € 1,500.00 excl. VAT Add to cart
  • 29.04. - 30.04.2019 09:00-17:00 — € 1,500.00 excl. VAT Add to cart
  • 17.06. - 18.06.2019 09:00-17:00 — € 1,500.00 excl. VAT Add to cart
  • 05.08. - 06.08.2019 09:00-17:00 — € 1,500.00 excl. VAT Add to cart
  • 23.09. - 24.09.2019 09:00-17:00 — € 1,500.00 excl. VAT Add to cart
  • 11.11. - 12.11.2019 09:00-17:00 — € 1,500.00 excl. VAT Add to cart

Partner

Xilinx
Updated at: 2018-11-11 14:02to the top