>> Higher Diploma courses

  >> Short Term Training Courses

 

 
   
Embedded Open-Source Linux Development using Xilinx FPGA (S-HT OS XFPGA)
 

 

Course Description

This intermediate-level, two-day course provides embedded systems developers with experience in creating an embedded open-source Linux operating system on a Xilinx development board. The course offers students hands-on experience from building the environment to booting the system using a basic, single-processor System on Chip (SoC) design with Linux 2.6 from the Xilinx kernel tree.

This course introduces embedded Linux components, use of open-source components, environment configurations, network components, and debugging/profiling options for embedded Linux platforms. The primary focus is on embedded Linux development in conjunction with the Xilinx tool flow.

Level

Intermediate

Training Duration

2 days

Who Should Attend?

Embedded software developers interested in customizing an open-source Linux kernel for a Xilinx embedded processor system

Prerequisites

  • Experience in C or C++ programming
  • Basic understanding of VHDL or Verilog design
  • Basic microprocessor design experience and understanding of MicroBlaze™ or PowerPC® processor architecture
  • Knowledge of operating system architecture
  • Experience using a Linux command-line shell for common file operations

Software Tools

  • ISE® Foundation™ design tools 10.1 (v9.1i also included)
  • Embedded Development Kit 10.1

Skills Gained

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

  • Build a Linux development environment from pretested tool components
  • Identify the basic concepts of an embedded Linux operating system
  • Configure a Xilinx FPGA for a Linux operating system
  • Determine scheduling requirements for an embedded Linux operating system and apply them to the FPGA configuration
  • Analyze system requirements for interprocess communication and configure the FPGA
  • Determine system requirements for memory management
  • Develop and add Linux device drivers to the system

Course Outline

Day 1

  • Course Agenda and Introduction
  • Building the Environment
  • Lab 1: Building the Environment
  • Basic Linux System
  • Lab 2: Basic Linux System

Day 2

  • Booting and Debugging
  • Lab 3: Boot Loader
  • Peripherals and Drivers
  • Lab 4: Peripherals and Drivers
  • Embedded Linux Memory Manager
  • Processes, Scheduling, and Timing

Lab Descriptions

  • Lab 1: Building the Environment – On a virtual machine environment, download and build a Linux development system that integrates Xilinx tools and open-source components. Includes the use of build scripts.
  • Lab 2: Basic Linux System – Configure the kernel; build the kernel without a root file system; download and start the kernel with xmd; try basic debugging techniques; build a minimal rootfs, rebuild Linux with a minimal rootfs; and boot Linux and login.
  • Lab 3: Boot Loader – Analyze the starting point of the kernel; analyze the boot messages; add the first-stage boot loader; add U-Boot, boot Linux with U-Boot; and boot Linux with an NFS rootfs.
  • Lab 4: Peripherals and Drivers – Program a Hello World kernel module; compile external kernel modules; and create a simple gpio driver.

 

    Back