C Language Programming with SDK

EMBD 1 | EMBD12000-13-ILT (v1.0)

Course Description

This course is broken into a day of C language review, including variable naming, usage, and modifiers as well as an introduction to the Software Development Kit (SDK) environment, an explanation of the use of the preprocessors, program control, and proper use of functions. The second day consists of common issues and techniques employed by embedded programmers in the Xilinx SDK environment. This comprehensive course equally balances lecture modules with practical hands-on lab work.

Level: EMBD 1
Course Duration: 2 days
Price: $1600 or 16 Xilinx Training Credits
Course Part Number: EMBD12000-13-ILT
Who Should Attend?: Programmers and software engineers looking to reinforce their C skills for the embedded environment and hardware engineers interested in software engineering basics
Registration: Register online in our secure store

Prerequisites

  • Basic familiarity with embedded systems
  • Basic background in programming

Software Tools

  • Xilinx ISE Design Suite: Logic or System Edition 13.1

Hardware

  • Architecture: N/A*
  • Demo board: Spartan®-6 FPGA SP605 or Virtex®-6 FPGA ML605 board or Avnet LX9 microboard*

*This course does not focus on any particular architecture. Contact us for the specifics of the in-class lab board or other customizations.

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

  • Recognize C language symbology
  • Design an effective C language program for the embedded environment
  • Identify the nuances between functions and macros
  • Effectively utilize numeric techniques
  • Debug software using the GNU debugging tool in the SDK software environment

Course Outline

Day 1

  • The C Language
  • SDK Environment
  • Lab 1: SDK Environment
  • C Preprocessor
  • Variables
  • Control Structures
  • Lab 2: Writing a Simple Program
  • Functions and Libraries

Day 2

  • Program Design
  • Common Errors
  • Debugging Strategies
  • Dynamic Memory
  • Lab 3: Debugging Dynamic Memory
  • The Stack
  • Lab 4: Debugging Stack Issues
  • Numeric Techniques
  • The Xilinx Embedded Environment
  • Lab 5: Driving Xilinx Hardware

Lab Descriptions

  • Lab 1: SDK Environment – Walks you through the process of configuring the hardware through SDK, building a simple application, and verifying that it works.
  • Lab 2: Writing a Simple Program – Examine a piece of existing code, then complete the program using the skills developed in the previous lecture modules.
  • Lab 3: Debugging Dynamic Memory – Guides you through the phases of debugging a program with memory leaks.
  • Lab 4: Debugging Stack Issues – Debug stack issues, another common problem.
  • Lab 5: Driving Xilinx Hardware – Combine the abstraction of programming with actual hardware to drive the LEDs on the demo board.

PDF version of this page.

Enroll Now.

Scheduled Embedded Courses

Designing FPGAs Using the Vivado Design Suite 3
April 16 - April 17: 09:00 am - 05:00 pm
This course demonstrated timing closure techniques, such are baselining, pipelining,synchronization...

(Workshop) Embedded & Accelerating Applications w/Vitis Unified Software
April 24 : 09:00 am - 05:00 pm
After completing this comprehensive training, you will have thenecessary skills to: ▪ Implement...

Accelerating Applications with the Vitis Unified Software Environment
April 28 - April 29: 09:00 am - 05:00 pm
Learn how to develop, debug, and profile new or existing C/C++ and RTL applications in the Vitis™...

Zynq UltraScale+MPSoC-Software Developer
April 30 - May 01: 09:00 am - 05:00 pm
This two-day course is structured to provide software designers with a catalog of OS implementation...

Embedded Design with PetaLinux Tools
May 07 - May 08: 09:00 am - 05:00 pm
v2017.3 This intermediate-level, two-day course provides embedded systems developers with...

Zynq UltraScale+MPSoC-System Architect
May 21 - May 22: 09:00 am - 05:00 pm
* This course focuses on the Zynq UltraScale+ MPSoC architecture. Check with your local Authorized...

Zynq SoC System Architecture 2018.1
June 01 - June 02: 09:00 am - 05:00 pm
* This course focuses on the Zynq-7000 SoC. Check with your local Authorized Training Provider for...

Migrating to Vitis Embedded Software Development IDE
June 10 : 09:00 am - 05:00 pm
After completing this comprehensive training, you will have thenecessary skills to:▪ Develop and...

Migrating to Vitis Embedded Software Development IDE
June 22 : 09:00 am - 05:00 pm
After completing this comprehensive training, you will have thenecessary skills to:▪ Develop and...

Zynq UltraScale+MPSoC-System Architect
June 25 - June 26: 09:00 am - 05:00 pm
This two-day online course is structured to provide system architects with an overview of the...

Alternative Dates and Locations

Faster Technology is able to deliver both private classes at client sites and also public classes at alternate locations and dates.  If there are no currently scheduled classes listed above or if none of the classes are convenient, please tell us what dates and locations will meet your needs.  No obligation necessary.