Hi Guest, 23 April 2021 Friday IST

About CUSAT | About Department | Alumni | Sitemap | Disclaimer  

  Home > Academic/Programmes > Programme Structure > CSE (2017)
Core/Elective: Core Semester: 1 Credits: 4
Course Description

This course will develop the skill required to program for embedded systems. ARM processors are used asthe platform due to their relevance in the current systems.

Course Objectives

To familiarize the programming methods and tools for embedded systems.
To develop skills for writing optimized programs.


1. History of ARM processors - ARM technology -ARM naming conventions - ARM architecture –ARM subsystems - ARM instruction set - ARM assembly language - Why learn assembly? - Assembly optimization - bit manipulation - sorting - optimization objectives - runtime profiling with performance counters -memory bandwidth - memory mapping

2. Multicore and data-level optimization - Amdahl's law - polynomial evaluation - multiple cores usingOpenMP- performance bounds - performance analysis - inline assembly using GCC - reducing instructions per Flop - reducing CPI - multiple Flops per instruction

3. Linux framebuffer - affine image transformations - bilinear interpolation -floating-point image transformation -floating-point performance - fixed-point arithmetic - fixed-point performance - real-time fractalgeneration

4. Stencil loops - mean filter - separable filters - memory access behavior of 2D filters - loop tiling - 2D filter implementation - capturing and converting video frames - Video4Linux driver and API

5. GPU microarchitecture - introduction to OpenCL - OpenCL programming model - OpenCL programming patterns - Kernel workload distribution - OpenCL implementation of Horner's method.


1. Jason D. Bakos, Embedded Systems: ARM Programming and Optimization, Morgan Kaufmann, 2015.
2. James A. Langbridge, Professional Embedded ARM Development, Wrox, 2014.
3. William Hohl, Christopher Hinds, ARM Assembly Language: Fundamentals and Techniques 2nd Edition,CRC Press, 2014.
4. Andrew Sloss et al. ARM System Developer's Guide Morgan Kaufmann, 2004.

Copyright © 2009-21 Department of Computer Science,CUSAT
Design,Hosted and Maintained by Department of Computer Science
Cochin University of Science & Technology
Cochin-682022, Kerala, India
E-mail: csdir@cusat.ac.in
Phone: +91-484-2577126
Fax: +91-484-2576368