Govt. of Karnataka, Department of Technical Education
Diploma in Computer Science
Sixth Semester
Subject: Embedded and Real-Time Systems
Contact Hrs / week: 4 Total hrs: 64
Table of Contents
Slno | Chapters | Hours | Marks |
1 | Introduction to Embedded Systems | 4 | 10 |
2 | Architecture of Embedded Systems | 10 | 25 |
3 | Programming for Embedded Systems | 10 | 25 |
4 | Hardware Platforms | 4 | 10 |
5 | Communication Interfaces | 8 | 20 |
6 | Embedded / RTOS Concepts | 8 | 20 |
7 | Overview of Embedded / Real-Time Operating Systems | 6 | 15 |
8 | Representative Embedded Systems | 4 | 10 |
9 | Future Trends | 2 | 5 |
Seminar, Guest Lectures and Industry Innovation | 5 | ||
Tests | 3 | ||
64 | 140 + 5 Objectives |
Details of Contents
1 | Introduction to Embedded Systems | ||
1.1 | What is an Embedded System? | ||
1.2 | Application Areas | ||
1.3 | Categories of Embedded Systems | ||
1.3.1 | Standalone Embedded Systems | ||
1.3.2 | Real-Time Systems | ||
1.3.3 | Networked Information Appliances | ||
1.3.4 | Mobile Devices | ||
1.4 | Overview of Embedded System Architecture | ||
1.5 | Specialties of Embedded Systems | ||
1.5.1 | Reliability | ||
1.5.2 | Performance | ||
1.5.3 | Power Consumption | ||
1.5.4 | Cost | ||
1.5.5 | Size | ||
1.5.6 | Limited User Interface | ||
1.5.7 | Software Upgradation capability | ||
1.6 | Recent trends in Embedded Systems | ||
1.6.1 | Processor Power | ||
1.6.2 | Memory | ||
1.6.3 | Operating System | ||
1.6.4 | Communication Interfaces and Networking Capability | ||
1.6.5 | Programming Languages | ||
1.6.6 | Development Tools | ||
1.6.7 | Programmable Hardware | ||
2 | Architecture of Embedded Systems | ||
2.1 | Hardware Architecture | ||
2.1.1 | Central Processing Unit | ||
2.1.2 | Memory | ||
2.1.3 | Clock Circuitary | ||
2.1.4 | Watch Dog Timer / Reset Circuitry | ||
2.1.5 | Chip Select | ||
2.1.6 | Input / Output Devices | ||
2.1.7 | Debugg Port | ||
2.1.8 | Communication Interfaces | ||
2.1.9 | Power Supply Unit | ||
2.2 | Software Architecture | ||
2.2.1 | Services Provided by an OS | ||
2.2.2 | Architecture of an Embedded OS | ||
2.2.3 | Categories of Embedded OS | ||
2.3 | Application Software | ||
2.4 | Communication Software | ||
2.4.1 | TCP/IP Protocol Suite | ||
2.5 | Process of Generating Executable Image | ||
2.5.1 | Cross Platform Development | ||
2.5.2 | Boot Sequence | ||
2.6 | Development / Testing Tools | ||
2.6.1 | Hardware Development Testing Tools | ||
2.6.2 | Software Development Testing Tools | ||
3 | Programming for Embedded Systems | ||
3.1 | Overview of ANSI C | ||
3.2 | GNU Development Tools | ||
3.3 | Bit Manipulation Using C | ||
3.2.1 | Calculation of CRC | ||
3.4 | Memory Management | ||
3.5 | Timing of Programmes | ||
3.6 | Device Drivers | ||
3.6.1 | Tools for Device Driver Development | ||
3.7 | Productivity Tools | ||
3.7.1 | Make file | ||
3.7.2 | Debugger | ||
3.7.3 | Profiler | ||
3.7.4 | Indenting | ||
3.7.5 | Revision Control | ||
3.8 | Code Optimization | ||
3.9 | C Coding Guidelines | ||
3.10 | Programming in C++ | ||
3.11 | Programming in Java | ||
3.11.1 | Java 2 Micro Edition (J2ME) | ||
3.11.2 | Server Side Programming | ||
3.11.3 | Java Development Tool | ||
4 | Hardware Platforms | ||
4.1 | Types of Hardware Platforms | ||
4.1.1 | Single Board Computer | ||
4.1.2 | PC Add On Cards | ||
4.1.3 | Custom Built Hardware Platform | ||
4.2 | 89C51 Microcontroller Development Board | ||
4.2.1 | Development Board Features | ||
4.2.2 | Hardware Description | ||
5 | Communication Interfaces | ||
5.1 | Need for Communication Interfaces | ||
5.2 | RS232/UART | ||
5.2.1 | RS232 Communication Parameters | ||
5.2.2 | RS232 Connector Configurations | ||
5.2.3 | UART | ||
5.2.4 | NULL Modem Cable Connection | ||
5.3 | RS422/RS485 | ||
5.4 | USB | ||
5.4.1 | USB Physical Interface | ||
5.4.2 | Features of USB | ||
5.5 | Infrared | ||
5.6 | IEEE 1394 Fire wire | ||
5.7 | Ethernet | ||
5.8 | IEEE 802.11 | ||
5.9 | Bluetooth | ||
5.9.1 | Bluetooth System java Specification | ||
5.9.2 | Bluetooth Protocol Architecture | ||
6 | Embedded / RTOS Concepts | ||
6.1 | Architecture of Kernel | ||
6.2 | Tasks and task Schedulers | ||
6.2.1 | Task States | ||
6.2.2 | Context Switching | ||
6.2.3 | Scheduling Algorithm | ||
6.2.4 | Rate Monotonic Analysis | ||
6.2.5 | Task management Function Calls | ||
6.3 | Interrupt service Routines | ||
6.4 | Semaphores | ||
6.4.1 | Semaphore Management Function Calls | ||
6.5 | Mutex | ||
6.5.1 | Mutex Management Function Calls | ||
6.6 | Mail Boxes | ||
6.6.1 | Mail Box Management Function Calls | ||
6.7 | Message Queues | ||
6.7.1 | Message Queue Management Function Calls | ||
6.8 | Event registers | ||
6.8.1 | Event Register Management Function Calls | ||
6.9 | Pipes | ||
6.9.1 | Pipe Management Function Calls | ||
6.10 | Signals | ||
6.10.1 | Signal Management Function Calls | ||
6.11 | Timers | ||
6.11.1 | Timer Management Function Calls | ||
6.12 | Memory Management | ||
6.13 | Priority Inversion Problem | ||
6.13.1 | Priority Inheritance | ||
6.13.2 | Pathfinder Problem Revisted | ||
7 | Overview of Embedded / ROT System | ||
7.1 | Off-the-Shell Operating Systems | ||
7.1.1 | Commonalities of the OS | ||
7.1.2 | Portable Operating System Interface (POSIX) | ||
7.1.3 | Difference in OS | ||
7.2 | Embedded OS | ||
7.2.1 | Embedded NT | ||
7.2.2 | Windows XP Embedded | ||
7.2.3 | Embedded Linux | ||
7.3 | RTOS | ||
7.3.1 | QNX Neutrino | ||
7.3.2 | VxWorks | ||
7.3.3 | MicroC/OS_II | ||
7.3.4 | RTLinux | ||
7.4 | Handheld OSs | ||
7.4.1 | Palm OS | ||
7.4.2 | Symbian OS | ||
7.4.3 | Windows CE | ||
7.4.4 | Windows CE.NET | ||
8 | Representative embedded Systems | ||
8.1 | Digital Thermometer | ||
8.2 | Handheld Computer | ||
8.3 | Navigation System | ||
8.4 | IP Phone | ||
8.5 | Software-defined Radio | ||
8.6 | Smart Cards | ||
8.7 | RF Tags | ||
9 | Future Trends | ||
9.1 | Emerging Technologies | ||
9.1.1 | Pervasive / Ubiquitous | ||
9.1.2 | Java for Embedded Systems | ||
9.1.3 | Security of Embedded systems | ||
9.1.4 | Embedding Intelligence | ||
9.2 | Emerging Applications | ||
9.3 | The greatest songs are still unsung | ||
Text book:
- Embedded / Real-Time Systems : Concepts, Design And Programming, Black Book , Dr. K V K K Prasad , DreamTech Press, ISBN: 9788177224610
Reference
- Embedded System Design , Frank Vahid / Tony Givargis, Wiley, ISBN: 9788126508372
General Objectives:
- To know the important features, specialties and simple architecture of ES
- An overview of the S/W architecture and the tools required for development of systems
- To Understand the H/w platforms and communication interfaces for embed systems
- To understand the concepts of Embedded / RTOS.
- To know the architectures of representative embedded systems
Specific Objectives:
1 | Introduction to Embedded System |
Understand what is an embedded systems | |
List the various application areas in which embedded system are used | |
Categorize embedded system | |
Gain knowledge of the architecture of the embedded systems | |
Understand the requirements of embedded systems | |
Learn about the recent trends in embedded system development | |
2 | Architecture of Embedded Systems |
Learn the hardware architecture of an Embedded system | |
Gain knowledge of the software architecture of an embedded system | |
Get an overview of the TCP/IP protocol architecture | |
Understand the process of creating an executable image for the embedded system | |
Grasp the details of Cross platform development | |
Know the various tools required for Hardware/software development | |
3 | Programming for Embedded Systems |
Understand the important features of ANSI standard for C language | |
Learn the intricacies of C programming for Embedded Systems through examples in bit manipulations | |
Learn Function calls for FILE I/O & memory management | |
Understand the importance of code Optimization | |
Gain knowledge of coding guidelines | |
Appreciate the importance of C++ & JAVA programming languages for Embedded software development | |
4 | Hardware Platforms |
Gain knowledge of different types of hardware platforms | |
Learn in brief about a simple 89C51 based development board | |
5. | Communication Interfaces |
Appreciate the need for communication interface | |
Understand the Ethernet & Wireless LAN interfaces | |
Grasp the details of IEEE 1394 Interface | |
Gain knowledge of Infrared & Bluetooth wireless interfaces | |
6 | Embedded /RTOS Concepts |
Understand the architecture of the Kernel of an OS | |
Learn the details of Task scheduling algorithm | |
Gain knowledge of inter-task communication | |
Understand the details of Kernel objects such as tasks, task scheduler, ISR, Semaphores, Mutexes, Mail Boxes, Message Queues, Event Registers, Pipes, Signals & timers | |
7 | Overview of Embedded / Real Time Operating Systems |
Understand the commonalities & differences in the operating systems available off – the – shelf | |
Get a good understanding of commercial & open source OS used in embedded / real time systems as well as hand held/ mobile devices | |
8 | Representative Embedded System |
Understand the architecture of Representative Embedded systems viz., digital thermometer, hand held computer, navigation system, IP Phone and software- defined Radio | |
9 | Future trends |
Gain & understanding of the emerging Technologies | |
Learn about new applications of these Technologies | |