3
0018-9162/07/$25.00 © 2007 IEEE October 2007 29 Published by the IEEE Computer Society G U E S T E D I T O R S I N T R O D U C T I O N Real-time computing doesn’t just mean that you have to buy a really expensive PC to make the application run fast enough—it means meeting deadlines. Traditional desktop applications like word processing don’t have to meet hard deadlines; they can slow down when they per- form some complex tasks or if other jobs are running on the same machine. Automobiles, digital still cameras, and other embedded systems must finish certain tasks in a fixed amount of time. In the case of a camera, the picture may be ruined if the embedded system doesn’t meet its deadlines; in the case of cars, a catastrophic acci- dent could be the result of a missed deadline. Low-power computing is of interest everywhere, but it is particularly challenging for battery-operated embed- ded devices. Cell phones, for example, must operate for hours on subwatt batteries. These devices must deliver server-level performance at two to three orders of mag- nitude less power consumption. Traditional computing E mbedded computing is all too often associated with simple controllers in low-end products. While important—billions of 8-bit microcon- trollers are sold every year—small microcon- trollers certainly aren’t the whole story. High- performance microprocessors are used singly and in networks in all sorts of applications. What do we mean by high performance? Generally speaking, giga-ops of computing power. For example, next-generation cell phones that use software-radio tech- niques will need to deliver at least 10 billion operations per second. Multimedia applications similarly require huge performance levels, and they require that perfor- mance continuously, not just in bursts. However, what makes high-performance embedded computing so difficult is not just the performance levels but achieving that performance in the face of two major requirements: real time and low power. What makes high-performance embedded computing so difficult is not just the performance levels but achieving that performance in the face of two major requirements: real time and low power. Wayne Wolf Georgia Institute of Technology The Embedded Systems Landscape

The Embedded Systems Landscape - PUCRS

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

0018-9162/07/$25.00 © 2007 IEEE October 2007 29P u b l i s h e d b y t h e I E E E C o m p u t e r S o c i e t y

G U E S T E D I T O R ’ S I N T R O D U C T I O N

Real-time computing doesn’t just mean that you haveto buy a really expensive PC to make the application runfast enough—it means meeting deadlines. Traditionaldesktop applications like word processing don’t have tomeet hard deadlines; they can slow down when they per-form some complex tasks or if other jobs are runningon the same machine. Automobiles, digital still cameras,and other embedded systems must finish certain tasksin a fixed amount of time. In the case of a camera, thepicture may be ruined if the embedded system doesn’tmeet its deadlines; in the case of cars, a catastrophic acci-dent could be the result of a missed deadline.

Low-power computing is of interest everywhere, butit is particularly challenging for battery-operated embed-ded devices. Cell phones, for example, must operate forhours on subwatt batteries. These devices must deliverserver-level performance at two to three orders of mag-nitude less power consumption. Traditional computing

E mbedded computing is all too often associatedwith simple controllers in low-end products.While important—billions of 8-bit microcon-trollers are sold every year—small microcon-trollers certainly aren’t the whole story. High-

performance microprocessors are used singly and innetworks in all sorts of applications.

What do we mean by high performance? Generallyspeaking, giga-ops of computing power. For example,next-generation cell phones that use software-radio tech-niques will need to deliver at least 10 billion operationsper second. Multimedia applications similarly requirehuge performance levels, and they require that perfor-mance continuously, not just in bursts.

However, what makes high-performance embeddedcomputing so difficult is not just the performance levelsbut achieving that performance in the face of two majorrequirements: real time and low power.

What makes high-performance embedded computing so difficult is not just the

performance levels but achieving that performance in the face of two major

requirements: real time and low power.

Wayne Wolf Georgia Institute of Technology

TheEmbeddedSystemsLandscape

30 Computer

platforms are several orders of magnitude too inefficientto be useful in these applications.

Embedded computing is critical to many products thatare mainstays of modern society. Automotive costs arenow approaching the proportions long held by aircraft:the cost of an automobile is now about one-third frame,one-third power plant, and one-third electronics.Automobiles couldn’t meet the fuel efficiency and pol-lution targets set by law without sophisticated embed-ded controllers. First-generation cell phones used analogtransmission with simple microcontrollers to handlebasic tasks, but modern cell phones rely on micro-processors for core tasks like voice compression andbaseband signal processing, not to mention additionalfeatures like phone books and multimedia.

The tough challenges imposed by applications likeautomotive, multimedia, and cellular telephony meanthat embedded computing needs tointroduce new hardware and soft-ware concepts—tweaks on tradi-tional techniques aren’t enough.

First, we need new computer archi-tectures—and almost certainly morethan one. The desktop architectureisn’t the answer to all of the world’sproblems—desktop computing isitself an application with a particularset of goals and requirements.

High-performance embedded plat-forms used to be derived from desktop processors.However, given the large volumes at which some embed-ded platforms, such as cell phones, are produced, wemight start to see designs flow the other way, with desk-top and other systems based on cell phone platforms.

Multiprocessor systems-on-chips have emerged aspowerful platforms for embedded systems—see Com-puter’s July 2005 issue for several articles on MPSoCs.MPSoCs combine programmable processors, special-ized function units, and on-chip memory to create truesingle-chip multiprocessors. MPSoCs predate chip mul-tiprocessors and multicore processors by five years ormore; these chips provide specialized features that allowthem to meet the stringent low-power and real-timerequirements of high-end embedded systems.

We also need new software architectures. We still haveall the traditional software engineering problems inembedded computing systems, including software archi-tecture, maintainability, and so on. Embedded systemsoften have astonishing amounts of code. For example, STMicroelectronics estimates that supporting all of the majoraudio standards requires 1 to 2 million lines of code. Butembedded software must meet other requirements as well.Real-time software requires accurate performance andpower estimation at several levels of abstraction so thatwe can refine software designs that satisfy timing andpower properties as well as functionality.

IN THIS ISSUEThe first feature article in this special issue outlines the

educational, industrial, and policy changes that willenable manufacturers and, more importantly, the publicto capitalize on the huge potential that emerging hard-ware and communications technologies offer. The otherthree articles describe state-of-the-art technologies inmajor embedded systems—automotive, consumer, andcellular telephony—that shape our daily lives.

“The Discipline of Embedded Systems Design” byThomas A. Henzinger and Joseph Sifakis points out thegap between our current understanding of computer sci-ence and the requirements of embedded systems.Embedded systems design is peripheral to both com-puter science and electrical engineering curricula. Muchof the cultural wall between the two fields can be tracedto differences between the discrete mathematics of com-

puter science and the continuousmathematics of traditional engi-neering. The authors argue thatindustry desperately needs engineerswho feel equally at home in bothworlds and that embedded systemsdesign has the potential to producesuch integrated talent. Defining itsscientific foundation, however, willtake a concerted, coordinated efforton the part of research, academia,industry, and policy makers.

In “Embedded System Design for AutomotiveApplications,” Alberto Sangiovanni-Vincentelli andMarco Di Natale delve into automotive electronics. Aseach car receives an ever-increasing number of electroniccontrol units, software complexity escalates to the pointthat current development processes and tools can nolonger ensure sufficiently reliable systems at affordablecost. Novel system-level analysis, modeling methods,and tools are needed not only for predictability and com-posability, but to support the designer in the criticalarchitecture-evaluation process that profoundly affectsa vehicle’s cost, performance, and quality. To make auto-motive electronics systems a relatively inexpensive plug-and-play subsystem to which OEMs can add novel andcompelling functionality, the essential technical prob-lem for this vision is the establishment of standards forinteroperability among IPs—both software and hard-ware—and tools. AUTOSAR, a worldwide consortiumof most of the players in the automotive electronics sup-ply chain, has this goal clearly in mind.

“Using DaVinci Technology for Digital VideoDevices” by Deepu Talla and Jeremiah Golston describesprocessors for digital media. Developing innovative andcost-efficient digital video products requires systems thatencompass open and flexible system-on-chip processors,software, and development tools. For the past decade,SoC technology has been the primary answer for the DV

MPSoCs combine

programmable processors,

specialized function units,

and on-chip memory to

create true single-chip

multiprocessors.

October 2007 31

market. However, increasingly complex DV applicationsrequire design flexibility for greater customization andadvanced feature updates. It’s not practical for one SoC to fit all equipment and meet today’s aggressive per-formance, power, and cost targets. The DaVinci inte-grated processor portfolio offers software, tools, andsupport for developing a broad spectrum of optimizedDV equipment.

Finally, in “Software-Defined Radio Prospects forMultistandard Mobile Phones,” Ulrich Ramacherreviews next-generation processors for cell phones.Multiple standards have become the norm in the high-end mobile phone market. This multitude of existingand evolving standards, coupled with the need to reactquickly to market requirements, is radically changingthe system architect’s task. Software-defined radioscould well provide multistandard solutions on the RFbaseband and transceiver side, but they also represent a

new stage in complexity. Semiconductor vendors, soft-ware houses, and major handset manufacturers mustcooperate closely to support the various use cases, withthe required levels of flexibility, while simultaneouslyachieving high enough volumes to justify the return onthe huge investment needed. ■

Wayne Wolf is the Rhesa “Ray” S. Farmer Jr. DistinguishedChair in Embedded Computer Systems and GRA EminentScholar at the Georgia Institute of Technology’s School ofElectrical and Computer Engineering. His research inter-ests include embedded computing, multimedia systems, andVLSI CAD. Wolf received a PhD in electrical engineeringfrom Stanford University. He is a member of the IEEEComputer Society and serves as an area editor on Com-puter’s editorial board. Contact him at [email protected].

By Susan K. LandNorthrop Grumman

Software process definition, documentation, and improvementare integral parts of a software engineering organization. This ReadyNote gives engineers practical support for such work by analyzing the specific documentation requirements that support the CMMI Project Planning process area. $19 www.computer.org/ReadyNotes

IEEEReadyNotes

IEEE Software Engineering Standards Support for the CMMI Project Planning Process Area