• Transforming

    Student To
    Employable Engineer

    ARM & RTOS | Linux Internals | Kernel Programming

Home

Training

Industrial Trainings Offered

We at Transiot understand that though individuals have a great urge to learn Embedded Technology, there are unique challenges to make it possible, which is primarily attributed to their availability of time. Additionally, those who come to us at times have varied intentions to do so. Therefore keeping the productivity and career objectives in mind, we have shaped our entire curriculum into various formats. Such as

  • Embedded System Beginner
  • Embedded System Engineer
  • Embedded System Professional
  • Embedded System Expert
  • VLSI Beginner
  • VLSI Engineer

Embedded System Beginner

 

This course is designed to give engineering students an in-depth knowledge of microcontroller programming, designing of embedded system applications. This course is designed keeping in mind the challenging industrial standards and the need for practical learning for engineering students. This program will introduce the participants to various aspects of embedded programming, application development and implementation.

The design methodology for software and hardware applications will be developed through the labs and design projects. Microcontrollers used for beginner level training will be 8bit Microcontrollers such as 8051/PIC/AVR/Arduino.

Syllabus At a glance:

      INTRODUCTION OF EMBEDDED C

      Architecture of Microcontroller

      Programming Microcontroller peripherals such as

  • Digital Input and Output Module
  • 7-seg and LCD Module
  • Analog to Digital Converter Module
  • Timers and Counters Module
  • PWM Module
  • Serial Communication Module
  • External Interrupts
  • Interfacing various sensors
  • Interfacing wireless modules

Embedded System Engineer

 

Keeping in mind the real need for a multidisciplinary approach, this course prepares trainees with in-depth and comprehensive knowledge of the underlined technologies involved in embedded systems. The program is focused on both theoretical and hands-on practical aspects. The course covers all hardware, software and control issues of Embedded Systems within an integrated system based perspective.

The training kick starts with C basics then climbing to Data structure. C programming is the basic building block for any software development and hence also for embedded systems, which contains hardware, oriented C programming. First level of this course concentrates on C programming. Once C foundation is done, engineer then starts studying about the Hardware and Architecture of the processor as well as programming its peripherals. ARM is the best and current industrial recommended processor for most of the applications. Next level is learning RTOS programming and its features, when and where it is used. It will make engineers understand what all are the differences and difficulties; they will be facing in programming peripherals with and without RTOS.

Syllabus At a glance:

      Linux Basics

 

  • Basic Architecture of Unix/Linux system, Kernel, Shell
  • How to access files in Linux, storage files, Linux standard directories,
      C Programming in Linux Environment

 

  • Pre-processors
  • Arrays
  • Pointers
  • Signed Representations in Memory
  • Operators
  • Standard I/O Library
      Data Structures

 

  • Data-type Conversion Rules
  • Storage Classes
  • Functions & Pointers
  • File Handling Concepts
  • Development Tools & utilities in Linux
      Introduction to Embedded C using 8 Bit Micro-Controller.

 

  • Introduction to Embedded C
  • Register level programming
  • Peripheral Programming
    32 Bit ARM Architecture and Programming its peripherals
  • Digital Input and Output
  • Timers & PWM
  • Interrupts
  • Analog to Digital Converter
  • Digital to Analog Converter
  • UART,I2C,SPI
  • Real Time Clock
    RTOS Fundamentals & Programming
  • Introduction to RTOS
  • Directories and Files in RTOS
  • Task Management
  • Scheduling - Pre-emptive and Round Robin Scheduling
  • Context Switching
  • Resource Management
  • Creating Applications and deploying in hardware.

Embedded System Professional

 

Developing as an embedded professional requires bottom to top learning, awareness and experience in designing embedded system. This course offers all essentials for an embedded system professional. The training kick starts with C basics then climbing to Data structure. C programming is the basic building block for any software development and hence also for embedded systems, which contains hardware oriented C programming. First level of this course concentrates on C programming. Once C foundation is done, engineer then starts studying about the Hardware and Architecture of the processor as well as programming its peripherals. ARM is the best and current industrial recommended processor for most of the applications. Next level is learning RTOS programming and its features, when and where it is used. It will make engineers understand what all are the differences and difficulties; they will be facing in programming peripherals with and without RTOS.

At this level basic requirement for an Embedded Engineer comes to a pause. But people who are looking to become embedded professional and aiming heights should go ahead with the current industrial requirements, and therefore the next level is Embedded Linux and programming. Till this point professionals will be learning how to program on a Bare-Metal based system. At this level they will start to learn how to access the peripherals from the top of an OS layer. This course will cover Linux internals and customizing the Linux for an embedded hardware platform.

Syllabus At a glance:

      Linux Basics

 

  • Basic Architecture of Unix/Linux system, Kernel, Shell
  • How to access files in Linux, storage files
  • Linux standard directories and commands
      C Programming in Linux Environment

 

  • Pre-processors
  • Arrays
  • Pointers
  • Signed Representations in Memory
  • Operators
  • Standard I/O Library
      Data Structures

 

    • Data-type Conversion Rules
    • Storage Classes
    • Functions & Pointers
    • File Handling Concepts
    • Development Tools & utilities in Linux
      • Introduction to Embedded C using 8 Bit Micro-Controller.

 

      • Introduction to Embedded C
      • Register level programming
      • Peripheral Programming
        32 Bit ARM Architecture and Programming its peripherals

 

      • Digital Input and Output
      • Timers & PWM
      • Interrupts
      • Analog to Digital Converter
      • Digital to Analog Converter
      • UART,I2C,SPI
      • Real Time Clock
        RTOS Fundamentals & Programming

 

      • Introduction to RTOS
      • Directories and Files in RTOS
      • Task Management
      • Scheduling - Pre-emptive and Round Robin Scheduling
      • Context Switching
      • Resource Management
      • Creating Applications and deploying in hardware
        Linux Internals

 

      • Introduction to Linux
      • Introduction to Kernel
      • Shell Commands & Shell Scriptingv
      • The Boot Process
      • The File System
      • Process management
      • Memory Management
      • Multi Thread Programmingv
      • Inter Process Communication
      • Programming & Debugging Tools
        Building Embedded Linux and Board bring-up

 

    • Introduction to Embedded Linux and SBC based on ARM Cortex A8.
    • Boot loader Architecture
    • Building a cross-compiling Tool chain
    • Boot loaders: U-boot
    • Configuring, (cross)compiling and booting a Linux kernel
    • Downloading pre-compiled Linux kernel images on Target board.
    • Linux Kernel Architecture.
    • Root file system.
    • Creating a simple, Busy Box based root file system
    • Block file systems
    • Flash file systems - Manipulating flash partitions
    • Cross-compiling libraries and applications
    • Embedded system building tools
    • Developing and debugging applications for the embedded system

Embedded System Expert

 

According to a 2012 survey of embedded engineers by both VDC Research and UBM Electronics, the use of Linux in embedded projects is increasing at a fast rate. UBM reported that some 35 percent of embedded developers are working on Linux projects and that number increases to 48 percent when Android is included.

Our course on Embedded Expert is provided and suggested for working professionals who are looking to upgrade their system development skills on Linux, people who need to work in projects on Linux Internals , Building Embedded Linux and Kernel programming, Device Drivers or other core system development requirements, professionals and programmers who are looking to upgrade their system development skills on Linux and Embedded Systems and finally Microcontroller based embedded developers who are willing to upgrade their skills and enhance their career positions.

Thus this course will make you an expert in embedded systems and enhance your skills and take you to the next level of your career.

Syllabus At a glance:

      Linux Internals

 

  • Introduction to Linux
  • Introduction to Kernel
  • Shell Commands & Shell Scripting
  • The Boot Process
  • The File System
  • Process management
  • Memory Management
  • Multi Thread Programming
  • Inter Process Communication
  • Programming & Debugging Tools
      Building Embedded Linux and Board bring-up

 

  • Introduction to Embedded Linux and SBC based on ARM Cortex A8.
  • Boot loader Architecture
  • Building a cross-compiling Tool chain
  • Boot loaders: U-boot
  • Configuring, (cross)compiling and booting a Linux kernel
  • Downloading pre-compiled Linux kernel images on Target board.
  • Linux Kernel Architecture.
  • Root file system.
  • Creating a simple, Busy Box based root file system
  • Block file systems
  • Flash file systems - Manipulating flash partitions
  • Cross-compiling libraries and applications
  • Embedded system building tools
  • Developing and debugging applications for the embedded system
      Embedded Linux Kernel and device driver development

 

  • Introduction to the Linux kernel
  • Configuring, compiling and booting the kernel
  • Linux kernel modules
  • Processes, scheduling,
  • Waiting for resources and interrupt management
  • Locking
  • Kernel debugging techniques
  • Mmap
  • An introduction to device drivers
  • Kernel architecture for device drivers
  • Module Basics
  • The proc file system
  • Character Device Drivers
  • Hardware and Interrupt Handling
  • Block Device Drivers
  • Network Drivers

VLSI Beginner

 

Syllabus At a glance:

      Applied Network Analysis

 

  • Electrical Network Elements - Independent and Dependent Sources, Passive Elements
  • Network Analysis Techniques - Review Review of Time and Frequency Domain responses of RC networks
      Devices and Circuits for Microelectronics

 

  • MOSFET Characteristics, MOSFET Capacitances
  • CMOS Inverter - Conceptualizing the Inverter using Network Elements, Inverter VTC, Transient Response
  • CMOS Gate Design
  • PN Junction, BJT Device Characteristics and Applications Review OPAMP Applications - Review
      Digital System Design

 

  • Quality Metrics of a Digital System
  • Review of Number Systems , Combinational Logic Design
  • Interpreting the Logic gate Data Sheets
  • Designing with Mux, Demux, Decoders, Encoders
  • Sequential Elements and Sequential Logic Design- D Latch, D Flop Design of Sequential Systems - Registers and Counters
      Basic C Programming

 

  • Introduction to C Programming - Structure of a C program, The C compilation process
  • Types and Operators - C base types, Precedence & associativity, - Arithmetic operations
  • Functions -The Function as a logical program unit, Parameter passing, Memory segments Control Flow -Logical expressions and operations, Decision Making, Loops, Introduction to Pointers
      Review of Micro Processors/ Microcontrollers

 

  • Introduction to a Generic Microprocessor
  • Instruction Execution Cycles, Single, Multi Cycle, Pipelined Data Paths
  • Interrupts, Memory Mapping and Peripheral Interfaces Introduction to Bus Architecture overview - APB, AXI

VLSI Engineer

 

Syllabus At a glance:

      Advanced Digital System Design

 

  • Synchronous Finite State Machine Design
  • Data-path elements - Arithmetic Structures
  • Introduction to and Programmable Platforms
  • Design Capture and Simulation
  • Practical Digital System Design Examples
      Chip Design Methodology - I

 

  • Driver for VLSI: Moore's law
  • Evolution of Design Approaches (leading upto HDLs),
  • Simulator and Synthesizers Specification formation to Micro - architecture
      Digital System Design with Verilog

 

  • Hardware Modeling Overview,
  • Verilog language concepts
  • Modules and Ports
  • Dataflow Modeling
  • Introduction to Test benches
  • Operators
  • Procedural Statements
  • Controlled Operation Statements
  • Coding for Finite State Machines
  • Coding For Synthesis
  • Tasks and Functions Advanced Verilog Test benches
      Functional Verification

 

  • Introduction to Verification
  • Introduction to Verification Plan
  • Verification Tools
  • Stimulus and Response
  • Introduction to Bus Function Models Verification environment and its components
      Chip Design Methodology - II

 

  • Advanced Simulation and Synthesis
  • Introduction to Design Verification RTL design, synthesis, verification, regression
      Verification using System Verilog

 

  • System Verilog Basics - Introduction to System Verilog, Enhancement Made in System Verilog over Verilog, Interface and Modports
  • System Verilog for Verification - System Verilog Event Ordering,
  • Clocking block and Program block,OOP's Concept of System Verilog - Parameterized classe, Virtual interface, Constrained Randomization techniques, Functional Coverage (Coverage Driven Verification) System Verilog Assertions - Introduction to Assertion, Properties, Sequences, Checkers, Assertions in design, Verification (for Coverage Analysis)
      Digital System Design using FPGAs

 

  • FPGA Architecture - Basic Components of FPGA (LUT, CLB, Switch Matrix, IOB), FPGA Architecture
  • Optimal FPGA Design - HDL Coding Techniques for FPG, FPGA Design Techniques Synthesis Techniques, Implementation, Options - Overview, Achieving Timing Closure, Path Specific Constraints, Introduction to Advanced IO Timing
  • FPGA Design Flow - Xilinx tool Flow, Reading Reports, Implementing IP cores, Pin Planning using Plan Ahead, Global Timing Constraints, Debugging Using Chipscope Pro
  • Static Timing Analysis - Introduction Reset Techniques, Clock Domain Crossing, Multiple Clock Domains, Dual Synchronization
      Chip Design Methodology - III

 

  • Design and Verification Guidelines
  • SoC Verification Methodology Physical Design, Manufacturing, Silicon validation

Contact Us

Address:Door No. 37/3005,
SBT Junction, Alwaye Road,
Edappally, Kochi, Kerala.
+91 484 4055665
info@transiot.com

Business Enquiry