COMPANY PROFILE PRODUCTS SERVICES TRAINING SUPPORT CAREERS DOWNLOADS
 
VLSI Design DSP Design Matlab Embedded Systems RF& Wireless Design High Speed Data Acquisition Registration Online
 
TRAINING Embedded Design

1.C Programming

15 to 20 Hrs C and Advanced C programming(provide the syllabus by requesting)

2.8051 Architecture and Programming

MCS-51 Architecture, Memory Organization, Hardware and Electrical
Characteristics
Addressing Modes and Instruction Set
Introduction to Keil IDE and its usage
Embedded C on Keil IDE
I/O Port Construction and Programming, Timer/Counter Programming
Serial Communication
Interrupt and Services
Interfacing of memory devices such as flash, RAM
Interfacing of LED, LCD, and Graphical LCD
Interfacing of Keypad
Interfacing of ADC, DAC, Sensors
Interfacing of Stepper motor
Serial protocols such as RS-232, RS-485, I2C, SPI, CAN, LIN
I2C implementation with RTC,
SPI implementation on Serial EEPROM
Firmware Implementation on 89c51RD2\ED2 board
BSP Concepts on 89c51RD2\ED2 board

3.PIC Architecture and Programming

PIC Architecture, Memory Organization, Oscillator configurations
Instruction set
I/O port programming, Timer Programming
Interrupt Programming
Capture/Compare/PWM module
SSP module Programming
WatchDog Timer, Device Configuration, ADC, ICSP
Introduction to MPLAB IDE and its Usage
Writing C Programs and Assembly programs on MPLAB IDE
Interfacing of LED, LCD, and Graphical LCD
Interfacing of Stepper motor
Serial protocols such as RS-232, RS-485, I2C, SPI, CAN, LIN
I2C Implementation on PIC 16F87X
SPI Implementation on PIC 16F87X
Firmware Implementation on PIC 16F87X board
BSP Concepts on PIC 16F87X board

4.ARM Architecture and Programming

Introduction to ARM Architecture, Programmer’s Model
ARM Instruction Set, ARM addressing mode
Thumb Instructions set
ARM code sequences, System control Co-Processors
Memory Organization, MMU, Caches and write buffers
AMBA architecture
Introduction to ARM Developer suite, Generating C, C++, Assembly Projects
Building the Projects, Debugging Simulations
Specifying the type of Target, Target Board Configuration
Interworking C, C++ and assembly,
Exception Handling,
Writing Code for ROM based Target boards, Debug Communication Channel.
Interworking ARM & THUMB program, Inline Assembly in C / C++ Program,
Mixing Assembly, C, C++ programs

5.Linux Internals and Device Driver Programming

Linux Kernel, types of Kernel, Kernel Architecture
Boot Process, BIOS, and setup functions
Kernel Recompilation
Modules and Modular Programming, static and dynamic modules, Module structure
Exporting symbols from modules
Modules Parameter and description
System calls, system call table, implementing a new system call
File systems, Virtual file system, data structures such as super_block, inode, file, dentry
Process management
Inter process communication
Sockets and Socket Programming
Interrupts, Operating system services, Atomic functions, Bit operations, semaphores
Time intervals in the kernel, kernel Timers, tasklets, task queues
Memory Management
Introduction to Device drivers, Character device driver, Block device driver, Network device driver

6.VxWorks

Introduction to RTOS, Real Time system concepts, Operating system concepts

Introduction to Tornado Developer Kit 2.2.1, Features of IDE (Editor, Project Management Facility, C/C++, Cross Compiler, Crosswind, Browser, Wind View, Wind Sh, VxSim, Host-Target communication interface).

Creating Bootable and downloadable project, Vxworks terminologies like Workspace, Tornado Registry, Target Server, Target Agent, Writing a simple application program, downloading and executing the application developed.

Task Management, Thread Creation, Thread Creation at a user memory, Thread scheduling using priority based Preemptive Scheduling, First-in -First-out scheduling, Round Robin Scheduling, Dynamic Rescheduling, Defining a safe region for a thread, defining a non preempt able region for a thread, accessing TCB of a thread.

Using shared Memory for inter task Communication, Using pipes for Inter Task Communication, Differentiating between pipes and Message Queues, Using Message Queues for Inter task communication. Using shell commands to access information’s of pipes and message queues.

semaphore ,Need of semaphore in application development, Types of semaphores supported by VxWorks, Using Binary Semaphore for thread synchronization and mutual exclusion, Using Counting Semaphore for guarding multiple instances of resources, Using Mutex Semaphore for solving problems like priority Inversion, Recursive access to semaphore etc.

Ram Disk , Need of Ram Disk in Embedded System Development, Using Ram Disk in Vxworks, file System’s supported by Vxworks, Features of DOSFS, RT11FS, RAWFS, TapeFS, CDFS. Mounting and Unmounting disks in Vxworks with read only or read/write mode, Performing I/O operations on the disks.

Configuring the target hardware, Testing the Connection, Host Target Connection, Configuring and starting the Target Server, Booting Vxworks with default boot parameters, Booting Vxworks with new boot parameters, Configuring the Build Specification, Configuring and Building Vxworks Boot program.

7.Advanced Features and Techniques of Embedded Systems Development

Course Description
This course provides embedded systems developers the necessary skills to develop complex embedded systems and enables them to improve their designs by using the tools available in the Embedded Development Kit (EDK). This course also helps developers understand and utilize advanced components of embedded systems design for architecting a complex system.
This course builds on the skills gained in the Embedded System Development course. Labs provide hands-on experience with the development, verification, debugging, and simulation of an embedded system. All labs use a hardware board, connected to a server, to which designs are downloaded and verified.

Level
- Advanced

Duration
- 3 days

Why this training pays huge dividends
After completing this training, you will be able to:

  • Assemble and architect a complete embedded system
  • Identify the steps involved in integrating user IP in a system
  • Use a Board Support Package (BSP) to target multiple operating systems
  • Apply advanced debugging techniques
  • Design a flash memory-based system and boot load from flash
  • Apply various techniques to improve performance

Software Tools

  • Xilinx ISE™ 9.1 SP3
  • Mentor Graphics ModelSim PE 6.2f
  • EDK 9.1 SP1

Who Must Attend
FPGA design engineers, system architects, and system engineers who are interested in Xilinx embedded systems development flow

Prerequisites

  • Experience in C programming
  • Embedded Systems Development course or experience with embedded systems design
  • Some HDL modeling experience
  • Basic microprocessor experience and understanding of PowerPC and MicroBlaze systems

Course Outline

  • Embedded Systems Development Review
  • Lab 1: Building a Complete Embedded System
  • External Memory Controllers and File Systems
  • Lab 2: External Memory Controllers and File Systems
  • Debugging Using the ChipScope Pro Analyzer
  • Lab 3: Debugging Using the ChipScope Pro Analyzer
  • OCM Bus
  • Software Performance Improvement
  • Accelerating Performance in Hardware
  • Lab 4: Performance Tuning
  • Bus Functional Modeling Simulation
  • Lab 5: BFM Simulation
  • Interrupts
  • Board Support Packages (BSPs)
  • Lab 6: XilKernel and Interrupts
  • Boot Loader
  • Lab 7: Boot Loading from Flash Memory

LAB DESCRIPTIONS

  • Lab 1: Building a Complete Embedded System – Develop hardware that incorporates IP cores to interface to push buttons, switches, LEDs, an LCD display, and serial communication. Develop an application that interacts with switches, push buttons, an LCD display, and serial communication. Generate and download a bitstream onto a hardware board connected to a server.
  • Lab 2: External Memory Controllers and File Systems – Design a system that includes an On-Chip Peripheral Bus (OPB) DDR IP core. Develop an application that performs file-related tasks on external memory.
  • Lab 3: Debugging Using the ChipScope Pro Analyzer – Perform simultaneous hardware and software debugging on stack-related errors with the ChipScope™ Pro Analyzer, GDB, and XMD.
  • Lab 4: Performance Tuning – Profile a simple piece of code, using the SDK profile tool, running on a processor and go through iterative steps of refinement
    to improve the performance by using caching and porting a repetitive function to hardware.
  • Lab 5: BFM Simulation – Create an EDK system that includes IBM CoreConnect bus architecture Bus Functional Models (BFM) and Bus Functional Language (BFL) constructs for an OPB IP. Simulate the OPB bus-based design to verify IP functionality.
  • Lab 6: XilKernel and Interrupts – Set up software settings to use the XilKernel operating system. Generate and use a BSP for XilKernel with an application that illustrates multithreading functionality and an interrupt handler.
  • Lab 7: Boot Loading from Flash Memory – Develop an application that performs desired tasks. Due to application size and resource limitations, store it in flash, load it through a boot loader program, and execute from external memory.

8.Embedded Open-Source Linux Development

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.

Duration
2 days

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 Linux command-line shell for common file operations

Why this training pays huge dividends
After completing this training, you will be able to:

  • Build a Linux development environment from pretested tool components.
  • Describe 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
  • Analyze system requirements for memory management and apply them to the system
  • Develop and add Linux 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.

9.Embedded Systems Development

Course Description
Xilinx Field Programmable Gate Array (FPGA) provides a new level of system design capabilities through its MicroBlaze™ soft processor and hard core PowerPC® processor as well as silicon-efficient architectural resources. This course brings experienced FPGA designers up to speed on developing embedded systems using the Embedded Development Kit (EDK). The basic features and capabilities of the Xilinx MicroBlaze soft processor and the PowerPC processor are also included in the lectures and labs. These hands-on labs are plentiful and provide personal experience with the development, debugging, and simulation of an embedded system.

Level
- Intermediate

Why this training pays huge dividends
After completing this training, you will be able to:

  • Effectively develop, debug, and simulate an embedded system
  • Identify tools used in the Embedded Development Kit
  • Use the hardware, software, and debugging flows provided in the Embedded Development Kit
  • Identify IP included in the Embedded Development Kit and where to get additional information
  • Identify the hardware and software simulation environments
  • Integrate custom IP into the Embedded Development Kit
    Software Tools
  • Xilinx ISE 9.1 SP3
  • Mentor Graphics ModelSim PE 6.2f
  • EDK 9.1 SP1

Course Outline

  • EDK Overview
  • Lab 1: Hardware Construction with the Base System Builder
  • System Buses
  • Hardware Design
  • Hardware Design Using EDK
  • Lab 2: Adding IP to a Hardware Design
  • Adding Your Own IP to Your Embedded System
  • Lab 3: Adding Custom IP to an Embedded System
  • Software Development
  • Drivers, Interrupts, and Booting
  • Address Management
  • Lab 4: Writing Basic Software Applications
  • Software Development and Debugging Using SDK
  • Lab 5: Advanced Software Writing Using SDK
  • System Simulation
  • Lab 6: Performing System Simulation
  • Lab 7: Performing Hardware Download

LAB DESCRIPTIONS

Lab 1: Hardware Construction with the Base System Builder – Create an XPS project by using the Base System Builder to develop a basic hardware system for a target board.

Lab 2: Adding IP to a Hardware Design – Learn to add IP, such as bridges, OPB peripherals, OPB buses, and others, to the basic hardware design.

Lab 3: Adding Custom IP to an Embedded System – Explore adding a custom IP to your design by using the Create and Import Peripheral wizard.

Lab 4: Writing Basic Software Applications – Write a basic C application that utilizes the UART and GPIO.

Lab 5: Advanced Software Writing Using SDK – Use the OPB timer and interrupt controller and develop an interrupt service routine by using the Software Development Kit (SDK).

Lab 6: Performing System Simulation – Generate simulation scripts with XPS and perform behavioral simulation.

Lab 7: Performing Hardware Download – Implement the design and update the software bitstream before downloading to the hardware demo board

Who Must Attend
FPGA design engineers, system architects, and system engineers who are interested in Xilinx embedded systems development flow.

Prerequisites

  • FPGA design experience
  • Completion of Fundamentals of FPGA Design course or equivalent knowledge of Xilinx ISE

implementation tools

  • Basic understanding of C programming
  • Basic microprocessor experience, understanding of PowerPC and MicroBlaze systems

10.Embedded Systems Expert

Course Description
This 6-days course is a combination of “Embedded Systems Development” and “Advanced Embedded Systems Development”. After a comprehensive introduction to the MicroBlaze and PowerPC controllers as well as the XILINX EDK design flow, you will learn to develop embedded systems. In particular, this workshop includes numerous practical exercises and is aimed at developers who already have basic experience of the XILINX design system.

Embedded Systems Development brings experienced FPGA designers up to speed on developing embedded systems using the Embedded Development Kit (EDK). The basic features and capabilities of the Xilinx MicroBlaze soft processor and the PowerPC processor are also included in the lectures and labs. These hands-on labs are plentiful and provide personal experience with the development, debugging, and simulation of an embedded system.

Advanced Features and Techniques of Embedded Systems Development provides embedded systems developers the necessary skills to develop complex embedded systems and enables them to improve their designs by using the tools available in the Embedded Development Kit (EDK). This course also helps developers understand and utilize advanced components of embedded systems design for architecting a complex system. This course builds on the skills gained in the Embedded Systems Development course. Labs provide hands-on experience with the development, verification, debugging, and simulation of an embedded system. All labs use a hardware board, connected to a server, to which designs are downloaded and verified.

Why this training pays huge dividends
After completing this training, you will be able to:

  • Effectively develop, debug, and simulate an embedded system
  • Identify tools used in the Embedded Development Kit
  • Use the hardware, software, and debugging flows provided in the Embedded Development Kit
  • Identify IP included in the Embedded Development Kit and where to get additional information
  • Identify the hardware and software simulation environments
  • Integrate custom IP into the Embedded Development Kit
  • Assemble and architect a complete embedded system
  • Identify the steps involved in integrating user IP in a system
  • Use a Board Support Package (BSP) to target multiple operating systems
  • Apply advanced debugging techniques
  • Design a flash memory-based system and boot load from flash
  • Apply various techniques to improve performance

Course Outline
Module 1:
Embedded Systems Development

  • EDK Overview
  • Lab 1: Hardware Construction with the Base System Builder
  • System Buses
  • Hardware Design
  • Hardware Design Using EDK
  • Lab 2: Adding IP to a Hardware Design
  • Adding Your Own IP to Your Embedded System
  • Lab 3: Adding Custom IP to an Embedded System
  • Software Development
  • Drivers, Interrupts, and Booting
  • Address Management
  • Lab 4: Writing Basic Software Applications
  • Software Development and Debugging Using SDK
  • Lab 5: Advanced Software Writing Using SDK
  • System Simulation
  • Lab 6: Performing System Simulation
  • Lab 7: Performing Hardware Download

Module 2: Advanced Embedded Systems Development

  • Embedded Systems Development Review
  • Lab 1: Building a Complete Embedded System
  • External Memory Controllers and File Systems
  • Lab 2: External Memory Controllers and File Systems
  • Debugging Using the ChipScope Pro Analyzer
  • Lab 3: Debugging Using the ChipScope Pro Analyzer
  • OCM Bus
  • Software Performance Improvement
  • Accelerating Performance in Hardware
  • Lab 4: Performance Tuning
  • Bus Functional Modeling Simulation
  • Lab 5: BFM Simulation
  • Interrupts
  • Board Support Packages (BSPs)
  • Lab 6: XilKernel and Interrupts
  • Boot Loader
  • Lab 7: Boot Loading from Flash Memory

Who Must Attend
FPGA design engineers, system architects, and system engineers who are interested in Xilinx embedded systems development flow.

Prerequisites

  • FPGA design experience
  • Completion of Fundamentals of FPGA Design course or equivalent knowledge of Xilinx ISE implementation tools
  • Basic understanding of C programming
  • Basic microprocessor experience, understanding of PowerPC and MicroBlaze systems
 
 

© 2007 RAMP PLUS TECHNOLOGIESTM
#1588, "Sri Ranga Vaibhava:, Attiguppe Main Road, Chandra Layout, Bangalore - 560040, TELEFAX:+91 - 080 - 23217306
E-mail:info@rampplus.com Website: http://www.rampplus.com

POWERED BY BUSINESS ONLINE, BANGALORE