
Embedded System Architecture
Explore architectural concepts, pragmatic design patterns, and best practices to produce robust systems
作品简介
Embedded systems are self-contained devices with a dedicated purpose. We come across a variety of fields of applications for embedded systems in industries such as automotive, telecommunications, healthcare and consumer electronics, just to name a few.
Embedded Systems Architecture begins with a bird's eye view of embedded development and how it differs from the other systems that you may be familiar with. You will first be guided to set up an optimal development environment, then move on to software tools and methodologies to improve the work flow. You will explore the boot-up mechanisms and the memory management strategies typical of a real-time embedded system. Through the analysis of the programming interface of the reference microcontroller, you'll look at the implementation of the features and the device drivers. Next, you'll learn about the techniques used to reduce power consumption. Then you will be introduced to the technologies, protocols and security aspects related to integrating the system into IoT solutions.
By the end of the book, you will have explored various aspects of embedded architecture, including task synchronization in a multi-threading environment, and the safety models adopted by modern real-time operating systems.
Daniele Lacamera is a software technologist and researcher with vast experience in software design and development on embedded systems for different industries, currently working as freelance software developer and trainer. He is a worldwide expert in TCP/IP and transport protocol design and optimization, with more than 20 academic publications on the topic. He supports free software by contributing to several projects, including the Linux kernel, and his involvement within a number of communities and organizations that promote the use of free and open source software in the IoT.
作品目录
Copyright and Credits
Packt Upsell
Why subscribe?
PacktPub.com
Contributors
About the author
About the reviewer
Packt is searching for authors like you
Preface
Who this book is for
What this book covers
To get the most out of this book
Get in touch
Embedded Systems – A Pragmatic Approach
Domain definition
RAM
Flash memory
Interfaces and peripherals
Connected systems
The reference platform
Summary
Work Environment and Workflow Optimization
Workflow overview
The GCC toolchain
Interacting with the target
Validation
Summary
Architectural Patterns
Configuration management
Source code organization
The life cycle of an embedded project
Summary
The Boot-Up Procedure
The interrupt vector table
Memory layout
Building and running the boot code
Multiple boot stages
Summary
Memory Management
Memory mapping
The execution stack
Heap management
The memory protection unit
Summary
General-Purpose Peripherals
The interrupt controller
System time
Generic timers
General-purpose I/O
The watchdog
Summary
Local Bus Interfaces
Introducing serial communication
UART-based asynchronous serial bus
SPI bus
I2C bus
Summary
Low-Power Optimizations
System configuration
Measuring power
Designing low-power embedded applications
Summary
Distributed Systems and IoT Architecture
Network interfaces
The Internet Protocols
Transport Layer Security
Application protocols
Summary
Parallel Tasks and Scheduling
Task management
Scheduler implementation
Synchronization
System resource separation
Summary
Embedded Operating Systems
Real-time application platforms
Low-power IoT systems
POSIX-compliant systems
The future of safe embedded systems
Summary
Other Books You May Enjoy
Leave a review - let other readers know what you think