Debugging embedded and real-time systems: the art, science, technology, and tools of real-time system debugging
Gespeichert in:
Bibliographische Detailangaben
1. Verfasser: Berger, Arnold S. (VerfasserIn)
Format: Elektronisch E-Book
Sprache:English
Veröffentlicht: Kidlington, Oxford, United Kingdom ; Cambridge, MA, United States Newnes, an imprint of Elsevier [2020]
Online-Zugang:DE-91
DE-706
Volltext
Beschreibung:Intro -- Debugging Embedded and Real-Time Systems: The Art, Science, Technology, and Tools of Real-Time System Debugging -- Copyright -- Contents -- Preface -- Reference -- Chapter 1: Whats the problem? -- References -- Chapter 2: A systematic approach to debugging -- The six stages of debugging -- Whos at fault here? -- A bug of my own -- Tests to perform: -- References -- Chapter 3: Best practices for debugging embedded software -- Introduction -- What makes embedded systems different? -- Embedded systems are dedicated to specific tasks while PCs are generic computing platforms -- The implication of software failure is much more severe in embedded systems than in desktop systems -- Embedded systems have real-time constraints -- Embedded systems are supported by a wide array of processors and processor architectures -- Embedded systems are typically extremely cost-sensitive -- Embedded systems have power constraints -- Embedded systems must operate under extreme environmental conditions -- Embedded systems have far fewer system resources than desktop systems -- Embedded microprocessors often have dedicated debugging circuitry -- If an embedded system is using an operating system at all, it is most likely using a real-time operating system -- What are the best practices for debugging an embedded system? -- Avoiding the need to debug in the first place -- Partitioning -- Assertions -- Use lint -- Take compiler warnings seriously -- Avoid software timing loops -- Global variables -- Naming and style conventions -- Code defensively -- Peopleware -- Best practices for software in general -- Develop a process -- Best practices for debugging embedded software in particular -- Memory leaks -- Jitter -- Priority inversion -- Stack overflow -- Wrapping-up -- Additional resources -- References -- Chapter 4: Best practices for debugging embedded hardware
Introduction -- The debug process for hardware -- Design reviews -- Test plan -- Design for testability -- Have a process -- Know your tools -- Microprocessor design best practices -- Introduction -- Design for testability -- Consider PCB issues -- Wrapping up -- Additional resources -- References -- Chapter 5: An overview of the tools for embedded design and debug -- Introduction -- Debugger -- HW/SW coverification -- ROM emulator -- Logic analyzer -- Logic analyzer benefits -- Logic analyzer issues -- In-circuit emulator -- Additional resources -- References -- Chapter 6: The hardware/software integration phase -- Introduction -- The HW/SW integration diagram -- The case of the nonstandard hard disk drive interface -- The last gasp of the vector display -- Underpowered emulator card cage -- Feature creep and the big customer -- References -- Chapter 7: On-chip debugging resources -- Introduction -- Background debug mode -- JTAG -- MIPS EJTAG -- Final remarks -- References -- Chapter 8: Systems on a chip -- Introduction -- Field-programmable gate arrays -- Virtualization -- Conclusion -- Additional resources -- References -- Chapter 9: Testing methods for isolating defects -- Introduction -- Barriers to finding problems -- Quick and dirty -- Asking for help -- Fault isolation -- Know your tools -- Understanding your design -- Performance-related faults -- Reproducible faults -- Intermittent faults -- Compliance faults -- Spread spectrum oscillators -- Thermal faults -- Mechanical issues -- Power supply-related faults -- Final thoughts -- References -- Chapter 10: Debugging real-time operating systems (RTOS) -- Introduction -- Defect issues in RTOS systems -- Synchronization problems -- Memory corruption -- Interrupt-related problems -- Unintended compiler optimizations -- Exceptions -- RTOS-aware tools: An example -- References
Chapter 11: Serial communication systems -- Introduction -- RS-232 -- Wrong COM port assignment -- Improper cable pinout -- Wrong baud rate (clock frequency) -- Improper flow control -- I2C and SMBus protocols -- SPI protocol -- Tools -- Controller area network (CAN-bus) -- Closing remarks -- Additional resources -- References -- Chapter 12: Memory systems -- Introduction -- General testing strategies -- Static RAM -- Dynamic RAM -- Soft errors -- Jitter -- Software-based memory errors -- Concluding remarks -- References -- Index
Beschreibung:1 Online-Ressource Illustrationen
ISBN:9780128178126
DOI:10.1016/C2018-0-02641-9

Es ist kein Print-Exemplar vorhanden.

Fernleihe Bestellen Achtung: Nicht im THWS-Bestand! Volltext öffnen