Modern Embedded Computing: Designing Connected, Pervasive, Media-Rich Systems

Paperback (Print)
Buy New
Buy New from BN.com
$60.20
Used and New from Other Sellers
Used and New from Other Sellers
from $34.56
Usually ships in 1-2 business days
(Save 56%)
Other sellers (Paperback)
  • All (12) from $34.56   
  • New (8) from $41.30   
  • Used (4) from $34.56   

Overview

Develop today's embedded computing systems with examples featuring the Intel Atom processor

Modern Embedded Computing

Designing Connected, Pervasive, Media-Rich Systems

Peter Barry and Patrick Crowley

Unlike embedded microcontrollers that perform only limited functions for industrial applications, modern embedded systems are connected, media-rich, and utilize networking, graphic user interfaces, and integration with PCs. Modern Embedded Computing will teach you the platform architecture of today's embedded computing systems that drive pervasive, connected devices such as mobile phones, digital cameras, and home automation systems.

Examples feature the Intel Atom processor, widely used in devices such as e-readers, Internet-enabled TVs, tablets, and net books. Beginning with a discussion of embedded platform architecture and Intel Atom-specific architecture, modular chapters cover system boot-up, operating systems, power optimization, graphics and multi-media, connectivity, and platform tuning. Both an embedded computing textbook and a resource for professional system designers who need to update their skills, the book provides a comprehensive view of how to develop a framework for embedded systems-on-chips.

Features

  • Learn embedded systems design with the Intel Atom Processor, based on the dominant PC chip architecture. Examples use Atom and offer comparisons to other platforms
  • Design embedded processors for systems that support gaming, in-vehicle infotainment, medical records retrieval, point-of-sale purchasing, networking, digital storage, and many more retail, consumer and industrial applications
  • Explore companion lab materials online that offer hands-on embedded design experience
Read More Show Less

Editorial Reviews

From the Publisher
There is need for a good, comprehensive book on embedded design and the lab-based approach using the Intel Architecture is very good and practical.

- Tilman Wolf, Associate Professor, Department of Electrical and Computer Engineering, University of Massachusetts, Amherst

Read More Show Less

Product Details

  • ISBN-13: 9780123914903
  • Publisher: Elsevier Science
  • Publication date: 2/10/2012
  • Pages: 552
  • Sales rank: 540,741
  • Product dimensions: 7.48 (w) x 9.16 (h) x 1.02 (d)

Meet the Author

Peter Barry serves as principal engineer in the Intel Embedded & Communications Group. He has worked in the development of embedded systems for over twenty years in Intel, Basic Communications, Nortel Networks and Tellabs, working with processors from Z80, 68K, PowerPC, ARM, XScale and Intel architecture systems. He is an expert in embedded operating systems and embedded platforms, and has developed board support packages for proprietary RTOS, pSOS, VxWorks, WinCE and Linux. He has developed protocol stacks and applications primarily for data communications and telecommunications and industrial applications.

Patrick Crowley is an associate Professor in the Department of Computer Science & Engineering at Washington University in St. Louis, Missouri. His research interests are in computer and network systems architecture, with a current focus on the design of programmable embedded network systems and the invention of superior network monitoring and security techniques. He co-founded the ACM/IEEE Symposium on Architectures for Networking and Communications Systems, and co-edited the three-book series, Network Processor Design. He serves as Associate Editor of the IEEE/ACM Transactions on Networking. In 2007, Crowley was chosen to join the DARPA Computer Science Study Group.

Read More Show Less

Read an Excerpt

Modern Embedded Computing

Designing Connected, Pervasive, Media-Rich Systems
By Peter Barry Patrick Crowley

Morgan Kaufmann

Copyright © 2012 Elsevier Inc.
All right reserved.

ISBN: 978-0-12-394407-8


Chapter One

Embedded Systems Landscape

We are in the midst of an extraordinary technology transformation. Most classes of electronic devices will soon be Internet-accessible with software-defined feature sets—not just computers and mobile phones, but nearly all forms of electronics. In other words, most classes of electronics are becoming embedded computer systems, and the consequences of this transition will be substantial.

This trend can be seen plainly in current commercial offerings, across a wide range of product types, where most new product lines are built around processor-based integrated circuits that enable Internet connectivity. Consider the following examples.

• Consumer electronics. The most competitive and innovative categories of consumer electronics—examples include high-definition television sets, digital cameras, video game consoles, and media players—are all designed around processor-based systems-on-a-chip and rely on Internet connectivity.

• Telephony. From mobile handsets designed primarily to connect to cellular access networks, to VoIP phones that enable not only voice calls, but also instant messaging, video chat, and integration with social network contacts, most modern telephony platforms are designed to be extensible through software feature sets. Moreover, they are increasingly designed to connect opportunistically to a user's network of choice.

• In-vehicle information systems. Today's onboard automotive information systems provide compelling applications such as GPS navigation, rear/obstructed view cameras, voice communications, and audio/video playback in an integrated fashion.

For the embedded systems programmer, the consequences of this trend are considerable. Foremost, there will be a great many more embedded computer systems in the future than there have been in the past, so skilled designers and programmers have a future of stable employment ahead of them. From a technical perspective, the nature of embedded systems design is changing to reflect the large numbers of systems that are connected and have rich media interfaces. The vast majority of embedded developers have been trained with 8-bit microcontrollers in mind, and the world has clearly moved on.

In this book, you will explore the design of modern embedded computer systems and learn many of the principles and skills needed to develop and program them effectively.

Our goal in this chapter is to establish the appropriate context. The world of embedded systems is vast and changing rapidly, so we will begin by sharing our view on what modern embedded systems are all about, and why their importance and popularity have been increasing so dramatically.

WHAT IS AN EMBEDDED COMPUTER SYSTEM?

Embedded systems are computers with constraints. While the design of all engineered devices involves trade-offs to some degree, general-purpose computers have historically been designed with comparatively few constraints. Since general-purpose computers are the most widely understood class of computing systems, it is instructive to compare and contrast their constraints with those of embedded systems. Indeed, embedded computer systems are different, both from one another and from general-purpose systems, by virtue of the design trade-offs and constraints they embody.

In particular, embedded computer systems have distinctive constraints with respect to intended applications and form factors, power, system resources and features, and assumptions about user behavior.

Applications and Form Factors

Unlike general-purpose machines, embedded systems are typically designed for one target application, or class of target applications. The intended use of an embedded computer system drives many of its design constraints and tradeoffs.

The size and physical form factor are often a natural consequence of a system's intended use. For example, continuously tethered medical devices, worn by patients, have shape and weight constraints that follow from the human body and its movements. Mobile handsets, by convention, are sized to fit in a (sometimes large) pocket. And embedded networking devices, such as wireless access points, are typically larger than human-centric devices, but have size and shape constraints of their own.

A system's intended use defines its physical packaging constraints, and many other design constraints follow from these. Notably, embedded computer systems have required a higher degree of system-level integration—that is, the integration of system-wide functionality onto one or a small number of semiconductor devices—in order to meet tight size, cost, and power constraints.

Power

In embedded and general-purpose systems alike, power has become the predominant design constraint. In general-purpose systems, such as laptops and servers, power dissipation limits, expressed in terms of thermal design power (TDP), have ranged from tens to hundreds of watts, respectively. Relative to embedded systems, general-purpose platforms support a comparatively small number of ranges of TDP, which have evolved over time subject to the operational context of each particular platform. Laptop TDPs are largely a consequence of an expected battery life of between 4 and 8 hours; modern server TDPs are a consequence of the power density per unit volume that machine rooms and data centers are provisioned to dissipate (which were, in turn, based on the TDP of the previous generations of server equipment).

For the most part, embedded systems have considerably lower-power design points, ranging from a few watts to microwatts. While some high-performance contexts, such as network routers and telecommunications equipment, have power profiles more or less the same as servers, most embedded computer systems are designed to operate in smaller spaces, often on battery power, and without the benefit of mechanical heat dissipation mechanisms such as fans or other forms of active cooling.

As a result, embedded computer systems have historically been designed with comparatively aggressive dynamic power management mechanisms. In recent years, however, dynamic power management in general-purpose CPUs has become sophisticated, with the goal of switching between high-performance, high-power modes and low-performance, low-power modes without disturbing either user-perceived latency or system performance on marketing-oriented industry benchmarks.

Relative to the general-purpose scenarios, embedded computer systems exhibit a much more heterogeneous array of power design perspectives. As will be discussed in greater detail later, embedded computer systems span a wide range of use cases, from high-performance systems to battery-operated systems designed to operate in wireless sensor applications for years with a single battery.

As such, embedded computer systems rely on power management schemes and features that vary with the target application.

System Resources and Features

General-purpose and embedded computer systems differ most in the variability of system resources and features rather than in their quantity. Embedded computer systems are typically designed and deployed with a relatively static and predetermined set of system resources and features.

This fact simplifies systems software and certain system processes, such as booting the system or diagnosing problems. For example, the boot process for an IA-32-based general-purpose computer, and the design of the software that implements that process, must be organized to contend with an unpredictable set of memory and I/O resources when the system starts. This resource uncertainty is not present in most embedded computer systems; hence, embedded system boot processes are shorter and simpler.

User Assumptions

General-purpose computers enjoy generous assumptions about the behavior of users. In fact, few classes of electronics have a user profile more convenient than that of the computer user. Outside of microwave ovens and A/V remote controls, few electronics products place such a substantial burden on the user to work around system problems and inefficiencies. While the user experience has improved dramatically in recent years, the typical computer user is prepared to experience routine system failures, frequently reinstall or update software packages, experience compatibility problems following installations and updates, wait patiently for inexplicable hourglasses to disappear, and, generally speaking, learn a great deal about how to use the system and cope with its deficiencies.

On the other hand, most embedded systems have a much narrower range of assumptions about user behavior. Most embedded systems are parts of devices or infrastructure and are expected to function reliably and deterministically. Users expect devices such as media players and telephones to respond without any latency. Infrastructure and industrial equipment are often designed to reliably honor service-level agreements. These tighter usage requirements impact systems software and overall system feature selection, as we will discuss in detail in later chapters.

WHY IS THIS TRANSITION INEVITABLE?

Of course, in this day and age, it is easy for many to accept without argument that all electronics will be connected and software based. But why is this so? Does my light switch need an IP address? Isn't it hard to write bug-free software? So why pollute the everyday reliability of traditional electronics with unpredictable software bugs?

Perhaps the most persuasive explanation comes not from a technical perspective but from considering some of the business dynamics that influence electronic product development. Technological progress in the presence of genuine commercial competition demands that, over time, new products increase in value while maintaining, or reducing, the price for those products. In the computer business, for example, it is easy to see that average sales price points have been declining over time as performance has increased. New products must, quite literally, do more for less. (Why? Because if you do not offer new features at better prices, then your competitors will put you out of business.)

How is this economically sustainable? This trend—doing more for less—is only economically sustainable if new features can be developed and deployed profitably, that is, if new features can be developed and added at an aggregate cost that is less than the increase in revenue that results from the new features. In business terms, profitability is a synonym for economic sustainability.

How can new features be developed profitably in a context of declining prices? In a word: reuse! Reuse the results of prior development to lower or eliminate the cost of future development. And no technology enables reuse quite like software.

If past development investments can be amortized into the future, across future product generations, then marginal investments can fund feature development. This is precisely what software enables under ideal circumstances. A software-based, extensible product core enables past development effort to be amortized across future offerings, while enabling the cost-effective development of new features and services. Software-defined feature sets enable electronics of all kinds to exhibit qualitatively superior cost savings relative to hardware-based feature sets.

And what about deploying new features? This is an important aspect of Internet connectivity. As an example, consider that recent generations of set-top boxes and game consoles have demonstrated the dramatic effectiveness of being able to enable new features in deployed systems.

As of January 2010, all three of the major current-generation video game consoles provide access to the Netflix video streaming service via the Internet. However, none of these platforms initially shipped with this capability, nor, apparently, had any business arrangements between Netflix and the console vendors been made or discussed during the console design phases. With Internet connectivity and a software-based feature set, there is no need to work out all such arrangements in advance of the deployment of the hardware; such agreements can be made and enacted according to the flow of business, provided that the platform has a software-defined feature set with Internet connectivity.

(Continues...)



Excerpted from Modern Embedded Computing by Peter Barry Patrick Crowley Copyright © 2012 by Elsevier Inc.. Excerpted by permission of Morgan Kaufmann. All rights reserved. No part of this excerpt may be reproduced or reprinted without permission in writing from the publisher.
Excerpts are provided by Dial-A-Book Inc. solely for the personal use of visitors to this web site.

Read More Show Less

Table of Contents

PART 1 PRINCIPLES OF MODERN EMBEDDED SYSTEMS

1 Embedded Systems Landscape

2 Attributes of Embedded Systems

3 The Future of Embedded Systems

PART 2 EMBEDDED SYSTEMS ARCHITECTURE AND OPERATION

4 Embedded Platform Architecture

5 Embedded Processor Architecture

6 Embedded Platform Boot Sequence

7 Operating Systems Overview

8 Embedded Linux

9 Power Optimization

10 Embedded Graphics and Multimedia Acceleration

11 Digital Signal Processing Using General-Purpose Processors

12 Network Connectivity

13 Application Frameworks

14 Platform and Content Security

15 Advanced Topics: SMP, AMP, and Virtualization

PART 3 DEVELOPING AN EMBEDDED SYSTEM

16 Example Designs

17 Platform Debug

18 Performance Tuning

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)