
Embedded Systems Architecture
A Comprehensive Guide for Engineers and Programmers
- 3rd Edition - November 3, 2025
- Imprint: Academic Press
- Author: Tammy Noergaard
- Language: English
- Paperback ISBN:9 7 8 - 0 - 4 4 3 - 2 7 3 3 8 - 4
- eBook ISBN:9 7 8 - 0 - 4 4 3 - 2 7 3 3 9 - 1
Embedded Systems Architecture: A Comprehensive Guide for Engineers and Programmers, Third Edition is a practical and technical guide for understanding the components that make u… Read more

Purchase options

Institutional subscription on ScienceDirect
Request a sales quoteEmbedded Systems Architecture: A Comprehensive Guide for Engineers and Programmers, Third Edition is a practical and technical guide for understanding the components that make up an embedded system’s architecture. This book is perfect for those starting out as technical professionals such as engineers, programmers, and designers of embedded systems but is also great for students of computer science, computer engineering, and electrical engineering. Users will find a much-needed ‘big picture’ for recently graduated engineers grappling with understanding the design of real-world systems. In addition, the book provides professionals with a systems-level picture of the key elements that can go into embedded design.
- Offers a framework by which the reader can understand and process embedded systems concepts of today, as well as in the future
- Explains the complexities of a wide variety of embedded systems hardware, software, processes, and fundamental design concepts
- Refers to real-world hardware and software protocols and provides references to technical specifications and books
- Includes an integrated lab book to guide students step-by-step through creating, bringing up, and running a variety of software components on real-world, embedded hardware reference platforms or simulators
Upper division undergraduate and graduate students in computer science, computer engineering, electrical engineering, bioengineering, and mechanical engineering; professional engineers who require a detailed technical understanding of the overall concepts and components of the types of software and hardware that can be implemented in an embedded system
Section I: Introduction to Embedded Systems
1: A Systems Engineering Approach to Embedded Systems Design
1.1 What Is an Embedded System?
1.2 Embedded Systems Design
1.3 An Introduction to Embedded Systems Architecture
1.4 Why Is the Architecture of an Embedded System Important?
1.5 The Embedded Systems Model
1.6 Summary Chapter 1 Problems
2: Know Your Standards
2.1 An Overview of Programming Languages and Examples of Their Standards
2.2 Standards and Networking
2.3 Multiple Standards-Based Device Example: Digital Television (DTV)
2.4 Summary Chapter 2 Problems
Section II: Embedded Hardware
3: Embedded Hardware Building Blocks and the Embedded Board
3.1 Lesson One on Hardware: Learn to Read a Schematic!
3.2 The Embedded Board and the von Neumann Model
3.3 Powering the Hardware
3.4 Basic Hardware Materials: Conductors, Insulators, and Semiconductors
3.5 Common Passive Components on Boards and in Chips: Resistors, Capacitors, and Inductors
3.6 Semiconductors and the Active Building Blocks of Processors and Memory
3.7 Putting It All Together: The Integrated Circuit (IC) 3.8 Summary Chapter 3 Problems
4: Embedded Processors
4.1 ISA Architecture Models
4.2 Internal Processor Design
4.3 Processor Performance
4.4 Reading a Processor’s Datasheet
4.5 Summary Chapter 4 Problems
5: Board Memory
5.1 Read-Only Memory (ROM)
5.2 Random-Access Memory (RAM)
5.3 Auxiliary Memory 5.4 Memory Management of External Memory
5.5 Board Memory and Performance
5.6 Summary Chapter 5 Problems
6: Board I/O (Input/Output)
6.1 Managing Data: Serial vs. Parallel I/O
6.2 Interfacing the I/O Components
6.3 I/O and Performance
6.4 Summary Chapter 6 Problems
7: Board Buses
7.1 Bus Arbitration and Timing
7.2 Integrating the Bus with Other Board Components
7.3 Bus Performance
7.4 Summary Chapter 7 Problems
Section III: Embedded Software Introduction
8: Device Drivers
8.1 Example 1: Device Drivers for Interrupt-Handling
8.2 Example 2: Memory Device Drivers
8.3 Example 3: On-board Bus Device Drivers
8.4 Board I/O Driver Examples
8.5 Summary Chapter 8 Problems
9: Embedded Operating Systems
9.1 What Is a Process?
9.2 Multitasking and Process Management
9.3 Memory Management
9.4 I/O and File System Management
9.5 OS Standards Example: POSIX (Portable Operating System Interface)
9.6 OS Performance Guidelines
9.7 OSes and Board Support Packages (BSPs)
9.8 Summary Chapter 9 Problems
10: Demystifying the Middleware Layer
10.1 What Is Middleware?
10.2 Different Types of Middleware Software in Embedded Systems
10.3 Middleware Examples
10.4 Implementing artificial intelligence (AI) and ROS2 Middleware into a Design
10.5 Summary Chapter 10 Problems
11: Application Software
11.1 What Is an Application?
11.2 Application Layer Software Examples
11.3 Summary Chapter 11 Problems
Section IV: Putting It All Together: Design and Development
12: Defining the System—Creating the Architecture and Documenting the Design
12.1 Creating an Embedded System Architecture
Stage 1: Have a Solid Technical Foundation
Stage 2: Know the ABCs (Architecture Business Cycles) of Embedded Systems
Stage 3: Define the Architectural Patterns and Reference Models
Stage 4: Define the Architectural Structures
Stage 5: Document the Architecture
Stage 6: Analyse and Evaluate the Architecture
12.2 Summary Chapter 12 Problems
13: The Final Phases of Embedded Design: Implementation and Testing
13.1 Implementing the Design
13.1.1 The Main Software Utility Tool: Writing Code in an Editor or IDE
13.1.2 Computer-Aided Design (CAD) and the Hardware
13.1.3 Translation Tools—Preprocessors, Interpreters, Compilers, and Linkers
13.1.4 Debugging Tools
13.1.5 System Boot-Up
13.2 Quality Assurance and Testing of the Design
13.3 Conclusion: Maintaining the Embedded System and Beyond Chapter 13 Problems
Appendix A: Projects and Exercises
Section I Projects
Section II Projects
Section III Projects
Section IV Projects
Appendix B: Schematic Symbols
Appendix C: Acronyms and Abbreviations
Appendix D: Glossary
1: A Systems Engineering Approach to Embedded Systems Design
1.1 What Is an Embedded System?
1.2 Embedded Systems Design
1.3 An Introduction to Embedded Systems Architecture
1.4 Why Is the Architecture of an Embedded System Important?
1.5 The Embedded Systems Model
1.6 Summary Chapter 1 Problems
2: Know Your Standards
2.1 An Overview of Programming Languages and Examples of Their Standards
2.2 Standards and Networking
2.3 Multiple Standards-Based Device Example: Digital Television (DTV)
2.4 Summary Chapter 2 Problems
Section II: Embedded Hardware
3: Embedded Hardware Building Blocks and the Embedded Board
3.1 Lesson One on Hardware: Learn to Read a Schematic!
3.2 The Embedded Board and the von Neumann Model
3.3 Powering the Hardware
3.4 Basic Hardware Materials: Conductors, Insulators, and Semiconductors
3.5 Common Passive Components on Boards and in Chips: Resistors, Capacitors, and Inductors
3.6 Semiconductors and the Active Building Blocks of Processors and Memory
3.7 Putting It All Together: The Integrated Circuit (IC) 3.8 Summary Chapter 3 Problems
4: Embedded Processors
4.1 ISA Architecture Models
4.2 Internal Processor Design
4.3 Processor Performance
4.4 Reading a Processor’s Datasheet
4.5 Summary Chapter 4 Problems
5: Board Memory
5.1 Read-Only Memory (ROM)
5.2 Random-Access Memory (RAM)
5.3 Auxiliary Memory 5.4 Memory Management of External Memory
5.5 Board Memory and Performance
5.6 Summary Chapter 5 Problems
6: Board I/O (Input/Output)
6.1 Managing Data: Serial vs. Parallel I/O
6.2 Interfacing the I/O Components
6.3 I/O and Performance
6.4 Summary Chapter 6 Problems
7: Board Buses
7.1 Bus Arbitration and Timing
7.2 Integrating the Bus with Other Board Components
7.3 Bus Performance
7.4 Summary Chapter 7 Problems
Section III: Embedded Software Introduction
8: Device Drivers
8.1 Example 1: Device Drivers for Interrupt-Handling
8.2 Example 2: Memory Device Drivers
8.3 Example 3: On-board Bus Device Drivers
8.4 Board I/O Driver Examples
8.5 Summary Chapter 8 Problems
9: Embedded Operating Systems
9.1 What Is a Process?
9.2 Multitasking and Process Management
9.3 Memory Management
9.4 I/O and File System Management
9.5 OS Standards Example: POSIX (Portable Operating System Interface)
9.6 OS Performance Guidelines
9.7 OSes and Board Support Packages (BSPs)
9.8 Summary Chapter 9 Problems
10: Demystifying the Middleware Layer
10.1 What Is Middleware?
10.2 Different Types of Middleware Software in Embedded Systems
10.3 Middleware Examples
10.4 Implementing artificial intelligence (AI) and ROS2 Middleware into a Design
10.5 Summary Chapter 10 Problems
11: Application Software
11.1 What Is an Application?
11.2 Application Layer Software Examples
11.3 Summary Chapter 11 Problems
Section IV: Putting It All Together: Design and Development
12: Defining the System—Creating the Architecture and Documenting the Design
12.1 Creating an Embedded System Architecture
Stage 1: Have a Solid Technical Foundation
Stage 2: Know the ABCs (Architecture Business Cycles) of Embedded Systems
Stage 3: Define the Architectural Patterns and Reference Models
Stage 4: Define the Architectural Structures
Stage 5: Document the Architecture
Stage 6: Analyse and Evaluate the Architecture
12.2 Summary Chapter 12 Problems
13: The Final Phases of Embedded Design: Implementation and Testing
13.1 Implementing the Design
13.1.1 The Main Software Utility Tool: Writing Code in an Editor or IDE
13.1.2 Computer-Aided Design (CAD) and the Hardware
13.1.3 Translation Tools—Preprocessors, Interpreters, Compilers, and Linkers
13.1.4 Debugging Tools
13.1.5 System Boot-Up
13.2 Quality Assurance and Testing of the Design
13.3 Conclusion: Maintaining the Embedded System and Beyond Chapter 13 Problems
Appendix A: Projects and Exercises
Section I Projects
Section II Projects
Section III Projects
Section IV Projects
Appendix B: Schematic Symbols
Appendix C: Acronyms and Abbreviations
Appendix D: Glossary
- Edition: 3
- Published: November 3, 2025
- Imprint: Academic Press
- No. of pages: 680
- Language: English
- Paperback ISBN: 9780443273384
- eBook ISBN: 9780443273391
TN
Tammy Noergaard
Tammy Noergaard has many years of professional experience including as a robotics Staff Engineer to Embedded Engineering Director in developing Class III medical devices, Chief Specialist in embedded systems at Terma, as well as independent consultancy in software, systems and field engineering for a few European and California-based corporations. She has also worked as a software engineer with Sony Electronics and Hyundai. Tammy is also an author and co-author of embedded systems books published by Elsevier, including "Embedded Systems Architecture" and "Demystifying Embedded Systems Middleware".
Affiliations and expertise
Chief Specialist, Embedded Systems, Terma, Denmark