Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 13

BIRLA INSTITUTE OF TECHNOLOGY & SCIENCE, PILANI

WORK INTEGRATED LEARNING PROGRAMMES


Digital
Part A: Content Design

Course Title Software for Embedded Systems

Course No(s) ES ZC424/IS ZC424/ SS ZC427

Credit Units 3

Credit Model

Content Authors SHIVRAJ DHARNE

Course Objectives

No

CO1 To introduce appropriate methodologies the can be used to develop software for modern
embedded systems, to the students.

CO2 To introduce the software components used in modern embedded systems, to the students
and teach the technology behind them.

CO3 To help the student to learn how to design and develop end-to-end software for modern
embedded systems.

Text Book(s)

T1 Douglass, Bruce Powel., Real-Time UML, Pearson Education, 3rd Edition, 2004

T2 Peter Barry & Patrick Crowley, Modern Embedded Computing, Designing Connected,
Pervasive, Media-Rich Systems, Morgan Kaufmann, 1st Edition, 2012

Reference Book(s) & other resources

R1 Douglass, Bruce Powel., Real-Time UML Workshop for Embedded Systems, Elsevier, 1 st
Edition, 2011

R3 Peckol James K., Embedded Systems – A Contemporary Design Tool, Wiley, 1st Edition,
R4 Raghavan, Lad, Neelakandan, Embedded Linux System Design And Development, Auerbach
Publications, First Edition, 2006

R5 Robert Love, Linux Kernel Development, Pearson Education, 3rd Edition

R6 Professional Android 4 Application Development, by Reto Meier, WROX Press, Wiley


Publishing.

Content Structure

Part I: Introduction

1. Introduction to the World of Real Time and Embedded Systems


1.1. Introduction to real time systems
1.2. Time, Performance and Quality of Service
1.3. Hard and Soft Real Time Systems

Part II: Embedded Software Components

2. Operating Systems Overview


2.1. Process & Threads
2.2. Scheduling
2.3. Inter-task synchronization
2.4. Memory Management
2.5. Storage File Systems
2.6. Boot Sequence
3. Embedded Linux
3.1. Tool Chain
3.2. Anatomy of Embedded Linux
3.3. Building a Kernel
3.4. Boot loader
3.5. Memory Management
3.6. Inter-task synchronization
3.7. POSIX Threads
4. Embedded Graphics and Multimedia
4.1. Screen Display
4.2. Graphics Stack
4.3. Media Decode & Media Frameworks
5. Networks for Embedded Systems
5.1. Networking Basics
5.2. Ethernet & TCP/IP Networking
5.3. Wi-Fi and Bluetooth

6. Application Frameworks: Android


6.1. Android Framework Architecture
6.2. Android Application Architecture
6.3. Android Development Environment
6.4. Android UI Components

Part III: Embedded Software Development Methods

7. Object Orientation with UML – Structural Aspects


7.1. Object Orientation with UML
7.2. Objects, Classes, and Interfaces
7.3. Relations
7.3.1. Associations
7.3.2. Aggregation
7.3.3. Composition
7.3.4. Generalization
7.3.5. Dependency
7.4. Packages, components and subsystems
8. Object Orientation with UML 2.0 – Dynamic Aspects
8.1. Behavior and the UML
8.2. Types of Behavior
8.3. Behavior Primitives: Activities and Actions
8.4. Behavior and the single object
8.4.1. Statechart diagrams
8.4.2. Activity Diagrams
8.5. Interactions
8.5.1. Sequence diagrams
8.5.2. Timing Diagrams
9. Requirements Analysis of Real Time Systems
9.1. Requirements
9.2. Use case diagrams
9.3. Detailing the use cases
10. Architectural Design
10.1. Overview of Design
10.2. What is Architectural Design?

Learning Outcomes:

No Learning Outcomes

LO1 To learn appropriate methodologies that can be used to develop software for modern
embedded systems.

LO2 To learn about the software components used in modern embedded systems and the
technology behind them.

LO3 To get a big picture of modern embedded system software and to learn how to go about
designing and developing such a software.
Part B: Learning Plan

Academic Term FIRST SEMESTER 2024-2025

Course Title SOFTWARE FOR EMBEDDED SYSTEMS

Course No ES ZC424/IS ZC424/ SS ZC427

Lead Instructor Shivraj Dharne

Contact Hour 1

Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 1 Introduction to the world of real


CH time and embedded systems

Contact Hour 2

Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 1 Time, Performance and Quality of


CH Service
Hard and Soft Real-Time Systems

Contact Hour 3

Type Content Ref. Topic Title Study/HW Resource Reference

During T2 Ch 7 Operating Systems Overview


CH  Process & Threads
 Scheduling

Contact Hour 4

Type Content Ref. Topic Title Study/HW Resource Reference

During T2 Ch 7 Operating Systems Overview


CH  Inter-task synchronization
 Memory Management
 Storage File Systems

Contact Hour 5

Type Content Ref. Topic Title Study/HW Resource Reference

During T2 Ch 7 Operating Systems Overview


CH  Boot Sequence

Contact Hour 6

Type Content Ref. Topic Title Study/HW Resource Reference

During T2 Ch 8 Embedded Linux


CH  Anatomy of Embedded
Linux

Contact Hour 7

Type Content Ref. Topic Title Study/HW Resource Reference

During T2 Ch 8 Embedded Linux


CH  Tool Chain
 Building a Kernel

Contact Hour 8

Type Content Ref. Topic Title Study/HW Resource Reference

During T2 Ch 8 Embedded Linux


CH  Boot loader
T2 Ch 6
 Memory Management
 Inter-task synchronization

Contact Hour 9

Type Content Ref. Topic Title Study/HW Resource Reference


During T2 Ch 8 Embedded Linux
CH  POSIX Threads

Lab Write a program to demonstrate ‘Lab Session 2’ in the Lab Sheet

 POSIX thread creation and


making the threads
joinable

 Use of mutex to share


resources between POSIX
threads

Contact Hour 10

Type Content Ref. Topic Title Study/HW Resource Reference

During T2 Ch 8 Embedded Linux


CH  POSIX Threads

Lab Write a program to demonstrate ‘Lab Session 3’ in the Lab Sheet


the use of semaphores to
synchronize between POSIX
threads.

Contact Hour 11

Type Content Ref. Topic Title Study/HW Resource Reference

During T2 Ch 2, R6 Application Frameworks: Android


CH  Android Framework
Architecture

Lab Setup Android Application ‘Lab Session 6’ in the Lab Sheet


Development Environment

Contact Hour 12

Type Content Ref. Topic Title Study/HW Resource Reference


During T2 Ch 2, R6 Application Frameworks: Android
CH  Android Application
Architecture
 Android Development
Environment

Lab R6 Development of any Android ‘Lab Session 7’ in the Lab Sheet


Application (e.g. Hello World
program) using Android Studio
and testing it on Simulator.

Contact Hour 13

Type Content Ref. Topic Title Study/HW Resource Reference

During T2 Ch 3, R6 Android Activity and Activity Life


CH Cycle

Contact Hour 14 & 15

Type Content Ref. Topic Title Study/HW Resource Reference

During T2 Ch 3, R6 Android UI Components: Views


CH

Lab R6 Development of Android ‘Lab Session 8’ in the Lab Sheet


Application involving views and
buttons.

Contact Hour 16

Type Content Ref. Topic Title Study/HW Resource Reference

During T2 Ch 10 Embedded Graphics and


CH Multimedia
 Screen Display
 Graphics Stack
 Media Decode
 Media Frameworks
Contact Hour 17

Type Content Ref. Topic Title Study/HW Resource Reference

During T2 Ch 12 Networks for Embedded Systems


CH  Networking Basics
 Ethernet
 TCP/IP Networking

Contact Hour 18

Type Content Ref. Topic Title Study/HW Resource Reference

During T2 Ch 12 Networks for Embedded Systems


CH  Wi-Fi
 Bluetooth

Contact Hour 19

Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 2 Object Orientation with UML –


CH Structural Aspects
 Objects, Classes, and
Interfaces

Contact Hour 20

Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 2 Relations:
CH  Associations
 Aggregation
 Composition
 Generalization
 Dependency
 Structural Diagram

Contact Hour 21

Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 2 Packages, components and


CH subsystems

Contact Hour 22

Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 3 Object Orientation with UML 2.0 –


CH Dynamic Aspects
 Types of Behavior

 Behavior Primitives

Contact Hour 23

Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 3 Object Orientation with UML 2.0 –


CH Dynamic Aspects
 Behavior and the single
object: Statechart diagrams

Contact Hour 24

Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 3 Object Orientation with UML 2.0 –


CH Dynamic Aspects
 Behavior and the single
object: Activity diagrams

Contact Hour 25
Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 3 Object Orientation with UML 2.0 –


CH Dynamic Aspects
 Sequence Diagram

Contact Hour 26

Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 3 Object Orientation with UML 2.0 –


CH Dynamic Aspects
 Timing Diagram

Contact Hour 27

Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 5 Requirements Analysis of Real


CH Time Systems
 Requirements
 Use case diagrams

Contact Hour 28

Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 5 Requirements Analysis of Real


CH Time Systems
 Detailing the use cases

Contact Hour 29

Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 8 Architectural Design


CH  Overview of Design
 What is Architectural
Design?
o Logical
Architecture
o Physical
architecture

Contact Hour 30

Type Content Ref. Topic Title Study/HW Resource Reference

During T1 Ch 8 Architectural Design


CH  Subsystem and component
view
 Concurrency and Resource
view
 Distribution View
 Safety and Reliability view
 Deployment view

Contact Hour 31 & 32

Type Content Ref. Topic Title Study/HW Resource Reference

During Review/Buffer
CH

Laboratory Details (Tools Required):

1. Any Desktop Linux can be used for POSIX Thread related lab exercises. You can also use any virtual
environment and install Linux there to perform these exercises. One of such free virtual environment is Oracle
Virtual Box. You can download it from https://www.virtualbox.org/ and install in your machine. Then you can
download Ubuntu Linux from https://ubuntu.com/download/desktop and install it in the virtual machine
created.

2. Android studio can be downloaded from https://developer.android.com/studio. It is required for Android based
lab exercises.

3. GStreamer is required to be installed for GStreamer based lab exercises. Detailed instructions related to
installing GStreamer is available at http://docs.gstreamer.com/display/GstSDK/Installing+on+Linux
Evaluation Scheme:
Legend: EC = Evaluation Component; AN = After Noon Session; FN = Fore Noon Session
No Name Type Duration Weight Day, Date, Session, Time
EC-1 Quiz-I Online - 10% September 1-10, 2024
Quiz-II Online - 10% October 10-20, 2024
Assignment - 10% November 1-10, 2024
EC-2 Mid-Semester Test Closed Book 2 hours 30% Saturday, 21/09/2024 (FN)
EC-3 Comprehensive Exam Open Book 2½ 40%
Saturday, 30/11/2024 (FN)
hours

Note: If Assignment kindly remove Quiz-I, II, III


Syllabus for Mid-Semester Test (Closed Book): Topics in Session Nos. 16
Syllabus for Comprehensive Exam (Open Book): All topics (Session Nos. 1 to 32)
Important links and information:
Elearn portal: https://elearn.bits-pilani.ac.in
Students are expected to visit the Elearn portal on a regular basis and stay up to date with the latest announcements and
deadlines.
Contact sessions: Students should attend the online lectures as per the schedule provided on the Elearn portal.
Evaluation Guidelines:
1. EC-1 consists of two Quizzes and one Assignment. Students will attempt them through the course pages on the
Elearn portal. Announcements will be made on the portal, in a timely manner.
2. For Closed Book tests: No books or reference material of any kind will be permitted.
3. For Open Book exams: Use of books and any printed / written reference material (filed or bound) is permitted.
However, loose sheets of paper will not be allowed. Use of calculators is permitted in all exams. Laptops/Mobiles
of any kind are not allowed. Exchange of any material is not allowed.
4. If a student is unable to appear for the Regular Test/Exam due to genuine exigencies, the student should follow the
procedure to apply for the Make-Up Test/Exam which will be made available on the Elearn portal. The Make-Up
Test/Exam will be conducted only at selected exam centres on the dates to be announced later.
It shall be the responsibility of the individual student to be regular in maintaining the self study schedule as given in the
course handout, attend the online lectures, and take all the prescribed evaluation components such as Assignment/Quiz,
Mid-Semester Test and Comprehensive Exam according to the evaluation scheme provided in the handout.

You might also like