From operating our cars, to controlling the elevators we ride, to doing our laundry or cooking our dinner, the special computers we call embedded systems are quietly and unobtrusively doing their jobs. Embedded systems give us the ability to put increasingly large amounts of capability into ever–smaller devices. Embedded Systems: A Contemporary Design Tool introduces you to the theoretical and software foundations of these systems, and shows you how to apply embedded systems concepts to design practical applications that solve real–world challenges.
Taking the user’s problem and needs as your starting point, you’ll delve into each of the key theoretical and practical aspects to consider when designing an application. Author James Peckol walks you through the formal hardware and software development process, covering:
- How to break the problem down into major functional blocks
- Planning the digital and software architecture of the system
- Designing the physical world interface to external analog and digital signals
- Debugging and testing throughout the development cycle
- Improving performance
Stressing the importance of safety and reliability in the design and development of embedded systems and providing a balance treatment of both the hardware and software aspects of embedded systems, Embedded Systems gives you the right tools for developing safe, reliable, and robust solutions in a wide range of embedded applications.
Chapter 0. Introduction to Embedded Systems.
Chapter 1. The Hardware Side – Part 1. An Introduction.
Chapter 2. The Hardware Side – Part 2. Combinational Logic – A Practical View.
Chapter 3. The Hardware Side – Part 3. Storage Elements and Finite State Machines – A Practical View.
Chapter 4. Memories and the Memory Subsystem.
Chapter 5. An Introduction to Software Modeling.
Chapter 6. The Software Side – Part 1. The C Program.
Chapter 7. The Software Side – Part 2. Pointers and Functions.
Chapter 8. Safety, Reliability, and Robust Design.
Chapter 9. Embedded Systems Design and Development.
Chapter 10. Hardware Test and Debug.
Chapter 11. Real–Time Kernels and Operating Systems.
Chapter 12. Tasks and Task Management.
Chapter 13. Deadlocks.
Chapter 14. Performance Analysis and Optimization.
Chapter 15. Working Outside of the Processor I. A Model of Interprocess Communication.
Chapter 16. Working Outside of the Processor I. Refining the Model of Interprocess Communication.
Chapter 17 Working Outside of the Processor II. Interfacing to Local Devices.
Chapter 18 Working Outside of the Processor III. Interfacing to Remote Devices.
Chapter 19 Programmable Logic Devices.
Appendix A. Verilog Overview. The Verilog Hardware Description Language.
Chapter B. Laboratory Projects.