Computer Organization and Embedded Systems
The sixth edition of this book covers the key topics in computer organization and embedded systems. It presents hardware design principles and shows how hardware design is influenced by the requirements of software. The book carefully explains the main principles supported by examples drawn from commercially available processors.
The book is suitable for undergraduate electrical and computer engineering majors and computer science specialists. It is intended for a first course in computer organization and embedded systems.
Why Read This Book
You should read this book if you want a balanced, example-driven introduction to how hardware and software shape each other in real systems; you will learn core computer-organization principles and see them applied to commercially available processors. The text pairs clear explanations of digital design and microarchitecture with embedded-system perspectives, making it practical for engineers building firmware and low-level system software.
Who Will Benefit
Undergraduate electrical/computer engineering or computer science students and early-career embedded engineers who need a solid foundation in CPU design, memory, I/O, and how those topics affect firmware and embedded-system design.
Level: Intermediate — Prerequisites: Basic programming (preferably C or equivalent), elementary digital logic (gates, binary arithmetic), and familiarity with algebra and discrete math fundamentals.
Key Takeaways
- Explain the relationship between instruction set architecture and microarchitecture and how design choices affect software.
- Analyze and design basic CPU datapaths and control logic, including sequential and combinational components.
- Evaluate memory systems, caches, and virtual memory trade-offs and their impact on performance.
- Design and interface common I/O and interrupt mechanisms and understand peripheral interaction with processors.
- Write and read simple assembly language programs for representative architectures and map high-level constructs to machine operations.
- Apply embedded-system design principles that balance hardware constraints with firmware requirements using commercial processor examples.
Topics Covered
- Introduction to Computer Organization and Embedded Systems
- Number Systems, Boolean Algebra, and Digital Logic
- Combinational and Sequential Logic Circuits
- Data Representation and Arithmetic Units
- Instruction Set Architecture and Machine Language
- CPU Datapath and Control Design
- Microarchitecture: Pipelining and Hazards
- Memory Systems: SRAM, DRAM, Caches, and Virtual Memory
- Input/Output Organization, Buses, and Interrupts
- Microcontrollers and Embedded-System Design
- Assembly Language Programming and System Software Interfaces
- Performance Measurement and Design Trade-offs
- Hardware/Software Co-Design Examples from Commercial Processors
- Case Studies and Project Examples
Languages, Platforms & Tools
How It Compares
Covers similar ground to Patterson & Hennessy's Computer Organization texts but places more emphasis on digital-logic foundations and embedded-system perspectives; for lighter embedded-ARM focus, Valvano's ARM Cortex-M texts are more hands-on.













