Embedded Software

Embedded Software

The Works

1st Edition - September 2, 2005

Write a review

  • Author: Colin Walls
  • eBook ISBN: 9780080461090

Purchase options

Purchase options
DRM-free (PDF)
Sales tax will be calculated at check-out

Institutional Subscription

Free Global Shipping
No minimum order


Embedded software needs have grown exponentially over the past quarter century. In 1975 writing 10,000 lines of assembly code was a considered a huge undertaking. Today, a cell phone can contain five million lines of C or C++! Embedded software developers must have a strong grasp of many complex topics in order to make faster, more efficient and more powerful microprocessors to meet the public’s growing demand. This practical guide, written by industry pioneer Colin Walls, helps embedded design engineers to rise to that challenge. The author offers expertise and insights from his quarter century of design experience, covering a plethora of major concerns in an easy-to-reference essay format that provides the reader with detailed tips and techniques, and rigorous explanations of technologies. Contributions from other well-known designers in the embedded systems field offer additional seasoned perspectives on everything from exotic memories to USB software. This one book has an amazing breadth of coverage, undertaking all the key subjects embedded engineers need to understand in order to succeed, including Design and Development, Programming, Languages including C/C++, and UML, Real Time Operating Systems Considerations, Networking, Programmable Logic and much more. For those in the field who are looking to broaden their professional skill-sets in order to advance, as well as those "newbies" just entering the field of embedded systems design, this comprehensive new reference is a must-have!The accompanying CD-ROM contains source code for the many real-world examples in the text, to save readers from needless re-typing. Also included are PowerPoint slides to create training seminars or classes from the text, and various product-related spec sheets.

Key Features

* Provides an amazing breadth of coverage by undertaking all the key subjects embedded engineers need to understand
* Author is a true pioneer in the field, with almost 30 years' experience
* Accompanying CD-ROM includes training materials and source code for the many real-world examples in the text


PRIMARY MARKET: Embedded Design Developers, Computer Engineers, Software Engineers, Electrical Engineers, System Engineers, System Architects

SECONDARY MARKET: Upper-level Undergrad and Post-graduate Computer Engineering Students

Table of Contents

  • Foreward
    What’s on the CD-ROM?
    1. Embedded Software
    1.1 What Makes an Embedded Application Tick?
    1.2 Memory in Embedded Systems
    1.3 Memory Architectures
    1.4 How Software Influences Hardware Design
    1.5 Migrating Your Software to a New Processor Architecture
    1.6 Testing Computers on Wheels
    1.7 Embedded Software for Transportation Applications
    1.8 How to Choose a CPU for Your System on Chip Design
    1.9 An Introduction to USB Software
    1.10 USB On-the-Go
    2. Design and Development
    2.1 Emerging Technology for Embedded Systems Software Development
    2.2 Making Development Tool Choices
    2.3 Eclipse – Bringing Embedded Tools Together
    2.4 A Development System that Crosses RTOS Boundaries
    2.5 Embedded Software and UML
    2.6 Model-Based Systems Development with xrUML
    3. Programming
    3.1 Programming for Exotic Memories
    3.2 Self-Testing in Embedded Systems
    3.3 A Command-Line Interpreter
    3.4 Traffic Lights: An Embedded Software Application
    3.5 PowerPC Assembler
    4. C Language
    4.1 C Common
    4.2 Using C Function Prototypes
    4.3 Interrupt Functions and ANSI Keywords
    4.4 Optimization for RISC Architectures
    4.5 Bit by Bit
    4.6 Programming Floating-Point Applications
    4.7 Looking at C-A Different Perspective
    4.8 Reducing Function Call Overhead
    4.9 Structure Layout – Become an Expert
    4.10 Memory and Programming in C
    4.11 Pointers and Arrays in C and C++
    5. C++
    5.1 C++ in Embedded Systems – A Management Perspective
    5.2 Why Convert from C to C++?
    5.3 Clearing the Path to C++
    5.4 C++ Templates – Benefits and Pitfalls
    5.5 Exception Handling in C++
    5.6 Looking at Code Size and Performance with C++
    5.7 Write-Only Ports in C++
    5.8 Using non-volatile RAM with C++
    6. Real Time
    6.1 Real-Time Systems
    6.2 Visualizing Program Models of Embedded Systems
    6.3 Event Handling in Embedded Systems
    6.4 Programming for Interrupts
    7. Real-Time Operating Systems
    7.1 Debugging Techniques with an RTOS
    7.2 A Debugging Solution for a Custom Real-Time Operating System
    7.3 Debugging – Stack Overflows
    7.4 Bring in the Pros – When to Consider a Commercial RTOS
    7.5 On the Move
    7.6 Introduction to RTOS Driver Development
    7.7 Scheduling Algorithms and Priority Inversion
    7.8 Time versus Priority Scheduling
    7.9 An Embedded File System
    7.10 OSEK – An RTOS Standard
    8. Networking
    8.1 What’s Wi-Fi?
    8.2 Who Needs a Web Server?
    8.3 Introduction to SNMP
    8.4 Ipv6 – The Next Generation Internet Protocol
    8.5 The Basics of DHCP
    8.6 NAT Explained
    8.7 PPP – Point-to-Point Protocol
    8.8 Introduction to SSL
    8.9 DHCP Debugging Tips
    8.10 IP Multicasting
    9 Embedded Systems and Programmable Logic
    9.1 FPGAs and Processor Cores: The Future of Embedded Systems?
    9.2 FPGA-Based Design Delivers Customized Embedded Solutions
    9.3 Xilinx MicroBlaze Soft Core Processor
    9.4 Real-Time Operating Systems for FPGA

Product details

  • No. of pages: 416
  • Language: English
  • Copyright: © Newnes 2005
  • Published: September 2, 2005
  • Imprint: Newnes
  • eBook ISBN: 9780080461090

About the Author

Colin Walls

Colin Walls has over forty years' experience in the electronics industry, largely involved with embedded software - very much a pioneer in this specialty. He has been a frequent presenter at conferences and seminars including: • Embedded Systems Conference, San Jose and Boston • Embedded World, Nuremberg • Arm Tech Con, California • Mentor events world-wide • Numerous partner events Colin has authored a great many technical articles and one of the first books on embedded software ["Programming Dedicated Microprocessors"; Macmillan Education, 1986]. His most recent publication is "Embedded Software: The Works" [2nd edition; Newnes, 2012], which addresses a wide range of embedded software topics. He is an embedded software technologist with Mentor, a Siemens business, and maintains a blog at http://blogs.mentor.com/colinwalls. Colin is based in the UK, where he lives with his family. Away from work, his main interests are photography, reading/writing, and food and drink.

Affiliations and Expertise

Mentor, a Siemens business, Newbury, UK

Ratings and Reviews

Write a review

There are currently no reviews for "Embedded Software"