Preface to the Second Edition
1. Introduction to Embedded Systems
1.1 Embedded Systems
1.2 Processor Embedded into a System
1.3 Embedded Hardware Units and Devices in a System
1.4 Embedded Software in a System
1.5 Examples of Embedded Systems
1.6 Embedded System-on-chip (Soc) and Use of VLSI Circuit Design Technology
1.7 Complex Systems Design and Processors
1.8 Design Process in Embedded System
1.9 Formalization of System Design
1.10 Design Process and Design Examples
1.11 Classification of Embedded Systems
1. 12 Skills Required for an Embedded System Designer
2. 8051 and Advanced Processor Architectures, Memory Organization alld Real-world lllterfacing
2.1 8051 Architecture
2.2 Real WOrld interfacing
2.3 Introduction to Advanced Architectures
2.4 Processor and Memory Organization
2.5 Instttiction-Level Parallelism
2.6 Performance Metrics
2.7 Memory-Types, Memory-Maps and Addresses
2.8 Processor Selection
2.9 Memory Selection
3. Devices and Commullicatioll Buses for Devices Network
3.1 IO Types and Examples
3.2 Serial Communication Devices
3.3 Parallel Device Ports
3.4 Sophisticated interfacing Features in Device Ports
3.5 Wireless Devices
3.6 Timer and Counting Devices
3.7 Watchdog Timer
3.8 Real Time Clock
3.9 Networked Embedded Systems
3.10 Serial Bus Communication Protocols
3.11 Parallel Bus Device Protocols-Parallel Communication Network Using ISA, PCI, PCI-X and Advanced Buses
3.12 Internet Enabled Systems-NetWork Protocols
3.13 Wireless and Mobile System Protocols
4. Device Drivers and interrupts Service Mechanism
4.1 Programmed-I/O Busy-wait APproach without interrupt Service Mechanism
4.2 ISR Concept
4.3 Interrupt Sources
4.4 Interrupt Servicing (Handling) Mechanism
4.5 Multiple interrupts
4.6 Context and the Periods for Context Switching, Intemipt Latency and Deadline
4.7 Classification of Processors interrupt Service Mechanism from Context-Saving Angle
4.8 Direct Memory Access
4.9 Device Driver Programming
5. Programming Concepts alld Embedded Programming in C, C++ and Java
5.1 Software Programming in Assembly Language (ALP) and in High-Level Language 'C'
5.2 C Program Elements: Header and Source Files and Preprocessor Directives
5.3 Program Elements' Macros and Functions
5.4 Program Elements: Data Types, Data Stfuctures, Modifiers, Statements, Loops and Pointers
5.5 Object-Oriented Programming
5.6 Embedded Programming in C++
5.7 Embedded Programming in Java
6. Program Modeling Concepts
6.1 Program Models
6.2 DFG Models
6.3 State Machine Programming Models for Event-controlled Program Flow
6.4 Modeling of Multiprocessor Systems
6.5 UML Modelling
7. Interprocess Communication and Synchronization of Processes, Threads alld Tasks
7.1 Multiple Processes in an Application
7.2 Multiple Threads in an APplication
7.3 Tasks
7.4 Task States
7.5 Task and Data
7.6 Clear-cut Distinction between Functions, ISRS and Tasks by their Characteristics
7.7 Concept of Semaphores
7.8 Shared Data
7.9 Interprocess Communication
7.10 Signal Function
7.11 Semaphore Functions
7.12 Message Queue Functions
7.13 Mailbox Functions
7.14 Pipe Functions
7.15 Socket Functions
7.16 RPC Functions
8. Real-Time Operating Systems
8.1 OS Services
8.2 Process Management
8.3 Timer Functions
8.4 Event Functions
8.5 Memory Management
……
9. Real-time Operating System Programming-I: Microc/OS-II and VxWOrks
10. Real-time Operating System Programmillg-n: Willdows CE, OSEK alld Real-time Linux Functions
12. Design Examples and Case Studies of Program Modelillg and Programming with RTOS-2
13. Embedded Software Development Process and TOols
14. Testing, Simulatioll alld Debugging Techniques and TOols
APPendix 1: Roadmapfor Various Course Studies
APPendix 2:Select Bibliography