• No results found

Prototyping of embedded systems : an analysis of industrial approaches aimed at reducing time-to-market

N/A
N/A
Protected

Academic year: 2021

Share "Prototyping of embedded systems : an analysis of industrial approaches aimed at reducing time-to-market"

Copied!
133
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

Prototyping of embedded systems : an analysis of industrial

approaches aimed at reducing time-to-market

Citation for published version (APA):

Rensink, A. M. (2000). Prototyping of embedded systems : an analysis of industrial approaches aimed at reducing time-to-market. Technische Universiteit Eindhoven. https://doi.org/10.6100/IR538632

DOI:

10.6100/IR538632

Document status and date: Published: 01/01/2000

Document Version:

Publisher’s PDF, also known as Version of Record (includes final page, issue and volume numbers)

Please check the document version of this publication:

• A submitted manuscript is the version of the article upon submission and before peer-review. There can be important differences between the submitted version and the official published version of record. People interested in the research are advised to contact the author for the final version of the publication, or visit the DOI to the publisher's website.

• The final author version and the galley proof are versions of the publication after peer review.

• The final published version features the final layout of the paper including the volume, issue and page numbers.

Link to publication

General rights

Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain

• You may freely distribute the URL identifying the publication in the public portal.

If the publication is distributed under the terms of Article 25fa of the Dutch Copyright Act, indicated by the “Taverne” license above, please follow below link for the End User Agreement:

www.tue.nl/taverne Take down policy

If you believe that this document breaches copyright please contact us at: openaccess@tue.nl

providing details and we will investigate your claim.

(2)

ototypin

(3)

Prototyping of Embedded Systems

An Analysis of Industrial Approaches Aimed

(4)

Prototyping of Embedded Systems

An Analysis of Industrial Approaches Aimed

at Reducing Time-to-Market

PROEFSCHRIFT

ter verkrijging van de graad van doctor aan de Technische Universiteit Eindhoven, op gezag van de Rector Magnificus, prof. dr. M. Rem, voor een commissie aangewezen door het College voor Promoties in het openbaar te verdedigen op maandag 4 december 2000 om 16.00 uur

door

Alexander Michael Rensink

(5)

Dit proefschrift is goedgekeurd door de promotoren:

prof. Dr.-Ing. J.A.G. Jess en

prof. ir. M.P.J. Stevens

©Copyright 2000 A.M. Rensink, 's-Hertogenbosch

All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written consent of the copyright owner.

Druk: Drukkerij Elka B.V., Tilburg

CIP-DATA LIBRARY TECHNISCHE UNIVERSITEIT EINDHOVEN

Rensink, Alexander M.

Prototyping of embedded systems : an analysis of industrial approaches aimed at reducing time-to-market I by Alexander M. Rensink. -Eindhoven:

Technische Universiteit Eindhoven, 2000. Proefschrift. - ISBN 90-3 86-1780-1 NUGI 832

Trefw.: ingebedde systemen I software-ontwikkeling; prototypes I programmeerbare logische schakelingen I grote geintegreerde schakelingen ; CAD I produktontwikkeling.

Subject headings: embedded systems I rapid prototyping industrial I programmable logic devices I hardware-software codesign I CAD I product development.

Chapter

I

Chapter 2

Contents

List of Figures v List of Tables ix Abstract xiii Samenvatting xv Acknowledgments xvii Introduction 1

1.1 Electronic Design in Retrospect ... 2

1.2 Prototyping of Embedded Systems ... .4

1.2.1 Characteristics of Embedded Systems ... .4

1.2.2 Difficulties in Designing Embedded Systems ... 5

1.2.3 Properties of a Prototype ... 6

1.2.4 Prototyping: Extension Instead of Substitute ... 10

1.3 Research Motivation and Approach ... 11

1.3 .1 Scientific Motivation ... 11

1.3.2 Industrial Motivation ... 12

1.3 .3 Research Approach ... 13

1.4 Outline and Conventions of the Thesis ... 14

1.4.1 Thesis Outline ... 14

1.4 .2 Thesis Conventions ... 16

Background 21 2.1 Complexity of Embedded Systems: Fast-Paced Evolution ... 22

2.2 Fundamentals of Embedded System Design ... 26

2.2.1 Overview ... 26

2.2.2 The Need for Early Feedback in Modem Time-Driven Product Development Processes ... 28

2.2.3 Requirements Analysis ... 30

2.2.4 Architecture Definition ... 30

2.2.5 Module Development ... 33

(6)

11 Contents Contents llJ

2.2.7 Product Engineering ... 38

Chapter 5

Industrial Cases, Part Ill:

2.3 Fundamentals of Prototype Design ... 39 Alternative Prototyping Approaches 147

2.3.1 Overview ... 39

2.3.2 Benefits of Prototyping ... .41

2.3.3 Programmability, enabler for flexibility, observability and time-to-implementation-availability ... .43

2.3.4 Mapping and Remapping Methodologies ... .45

2.4 Programmable Logic Devices ... 50

2.4.1 PLD Technology ... 50

2.4.2 PLD Complexity Growth ... 51

2.4.3 Partitioning into PLDs ... 55

5.1 Development of a 100 Hz TV Feature Box ... 148

5.1.1 PrinciplesoflOOHzTV ... 148 5 .1.2 System Architecture and Characteristics ... 151

5 .1.3 Architecture and Characteristics of the Prototyped Module 152 5 .1.4 Design Flows and Prototyping Method ... 156

5.1.5 Development Results ... 163

5 .1.6 Discussion ... 168 5.2 Development of an MPEG-2 Video Encoder for Consumer Applications ... 174 5.2. l Principles ofMPEG-2 Video Encoding ... 175

Chapter 3

Industrial Cases, Part I: Development of a DVB Integrated Receiver Decoder 59 5.2.2 System Architecture and Characteristics ... 177

5.2.3 Architecture and Characteristics of the Prototyped Module 178 5.2.4 Design Flows and Prototyping Method ... 180

3.1 Principles of Digital Video Broadcasting ... 60 5.2.5 Development Results .................................. 187 3.2 System Architecture and Characteristics ... 64 5.2.6 Discussion ............................ 190

3.3 Architecture and Characteristics of the Prototyped Modules ... 69

3.3.1 Descrambler ... 69

3.3.2 Demultiplexer ... 71

Chapter 6

Conclusions 195 3 .4 Design Flows and Prototyping Method ... 73

3.4.1 Overview of the Design Process ... 74

3 .4.2 Incentives for Prototyping ... 77

Bibliography 205 3.4.3 Module Development ... 78

3 .4.4 Prototype Development ... 81 Glossary 219 3.5 Development Results ... 85

3.6 Discussion ... 96 Curriculum Vitae 225 Index 227

Chapter 4

Industrial Cases, Part II: Development of a DVD-Video Player 103 4.1 Principles of Digital Versatile Disk ... 104

4.2 System Architecture and Characteristics ... 106

4.3 Architecture and Characteristics of the Prototyped Modules ... 111

4.3.1 DVD Stream Manager (DSM) ... 112

4.3.2 DVD Video Post-Processor (DVP) ... 114

4.4 Design Flows and Prototyping Method ... 117

4.4.1 Overview of the Design Process ... 117

4.4.2 Incentives for Prototyping ... 119

4.4.3 Module Development ... 121

4.4.4 Prototype Development ... 124

4. 5 Development Results ... 129

(7)

IV Contents v

List of Figures

Figure 1.1 Properties in comparison: simulation (acceleration) of design description

vs. prototype implementation vs. target implementation ... 7

Figure 1.2 Basic design methodology: ideal (left) and actual ... 17

Figure 2.1 Transistor density and memory size of DRAM devices ... 23

Figure 2.2 Transistor density oflntel microprocessors ... 24

Figure 2.3 Design phases for embedded systems design ... 27

Figure 2.4 Architecture definition phase (example) ... 31

Figure 2.5 Design phases for module development ... 33

Figure 2.6 The concept of hierarchical design ... 34

Figure 2.7 Software module interconnection architecture ... 37

Figure 2.8 Design phases for prototype development of a hardware module ... 39

Figure 2.9 Benefits of prototyping over traditional design ... .42

Figure 2.10 Mapping methodologies for prototype development ... 46

Figure 2.11 Example of a prototype remapping methodology: design reuse of a prototype implementation through network remapping ... .49

Figure 2.12 Logic and memory capacity of Altera PLDs ... 54

Figure 3.1 First generation DVB integrated receiver decoder (Philips) ... 59

Figure 3.2 Sequence of encoding operations in a DVB transmitter ... 62

Figure 3.3 Functional decomposition of the DVB integrated receiver decoder ... 65

Figure 3.4 DVB integrated receiver decoder hardware architecture ... 67

Figure 3.5 Top-level architecture of the Descrambler [ 107] ... 70

Figure 3.6 Top-level architecture ofthe Demultiplexer [108] ... 72

Figure 3.7 Design flow for module development of the Descrambler and Demultiplexer ... 79

(8)

VI List of Figures List of Figures VII

Figure 3.8 Design flow for prototype development of the Figure 5.9 Top-level architecture of the prototype implementation

Descrambler and Demultiplexer ... 82 of the MPEG-2 Video Encoder [144] ... 179

Figure 3.9 Photograph of the Demultiplexer prototype ... 88 Figure 5 .10 Design flow for module development of the MPEG-2 Video Encoder ... 181

Figure 3. I 0 Utilization of PLD resources within the Descrambler prototype ... 92 Figure 5.11 Design flow for prototype development of the MPEG-2 Video Encoder ... 182

Figure 3.11 Utilization of PLD resources within the Demultiplexer prototype ... 92 Figure 5.12 Progress of prototype and module development Figure 3.12 Progress of module and prototype development for the for the MPEG-2 Video Encoder ... 189

Descrambler and Demultiplexer ... 95

Figure 4.1 DVD-Video player (Philips) ... 103

Figure 4.2 Functional decomposition of the DVD-Video player ... I 07 Figure 4.3 DVD-Video player hardware architecture ... 109

Figure 4.4 Top-level architecture of the DSM [122] ... 112

Figure 4.5 Top-level architecture of the DVP [123] ... 115

Figure 4.6 Design flow for module development of the DSM and DVP ... 122

Figure 4.7 Design flow for prototype development of the DSM and DVP ... 125

Figure 4.8 Photograph of the DSM (left) and DVP prototypes ... 133

Figure 4.9 Utilization of PLD resources within the DSM prototype (based on first silicon) ... 137

Figure 4.10 Utilization of PLD resources within the DVP prototype (based on first silicon) ... 137

Figure 4.11 Progress of module and prototype development for the DSM and DVP .... 139

Figure 5 .1 Straightforward field repetition adversely affects motion portrayal [ 136]. .. 149

Figure 5 .2 Fifth-generation 100 Hz feature box hardware architecture ... 151

Figure 5.3 Top-level architecture of the PICNIC [138] ... 153

Figure 5.4 Design flow for module development of the PICNIC ... 158

Figure 5.5 Design flow for prototype development of the PICNIC ... 162

Figure 5 .6 Progress of module and prototype development for the PICNIC ... 167

Figure 5.7 Relationships between the three MPEG-2 picture types ... 177

(9)

VIII List of Figures

IX

List of Tables

Table 1.1 Two examples illustrating the concepts of methodology, flow and tool. ... 16

Table 1.2 Glossary of symbols ... 19

Table 2.1 Characteristics of Altera PLDs from 1984 till 1999 ... 52

Table 3.1 Status of the DVB integrated receiver decoder hardware modules at project start-up ... 76

Table 3.2 Design phases for module development of the Descrambler and Demultiplexer ... 80

Table 3.3 Design descriptions for module development of the Descrambler and Demultiplexer ... 81

Table 3.4 Design phases for prototype development of the Descrambler and Demultiplexer ... 84

Table 3.5 Design descriptions for prototype development of the Descrambler and Demultiplexer ... 85

Table 3.6 Characteristics of the Descrambler and Demultiplexer ASIC implementations ... 86

Table 3. 7 Characteristics of the Descrambler and Demultiplexer prototypes ... 87

Table 3.8 PLD implementation results of the Descrambler prototype ... 89

Table 3 .9 PLD implementation results of the Demultiplexer prototype ... 90

Table 3 .10 Characteristics of the PLDs used for prototyping of the Descrambler and Demultiplexer ... 91

Table 3.11 Approximate development effort of the individual phases of the Descrambler and Demultiplexer ... 94

Table 4.1 Characteristics of (read-only) CD and DVD ... 105

Table 4.2 Global overview of DVD coding formats and information types ... 106 Table 4.3 Status of the DVD-Video player hardware modules at project start-up ... 118

(10)

x

-Table 4.5 Table 4.6 Table 4.7 Table 4.8 Table 4.9 Table 4.10 Table 4.11 Table 4.12 Table4.13 Table 4.14 Table 5.1 Table 5.2 Table 5.3 Table 5.4 Table 5.5 Table 5.6 Table 5.7 Table 5.8 Table 5.9 Table 5.10 Table 6.1 Table 6.2 Table 6.3 List of Tables

Design descriptions for module development of the DSM and DVP ... 124

Design phases for prototype development of the DSM and DVP ... 126

Design descriptions for prototype development of the DSM and DVP ... 128

Characteristics of the DSM and DVP ASIC implementation ... 130

Characteristics of the DSM and DVP prototypes ... 132

PLD implementation results of the DSM prototype representing first silicon ... 134

PLD implementation results of the DVP prototype representing first silicon ... 135

Characteristics of the PLDs used for prototyping of the DSM and DVP ... 136

Approximate development effort of the individual phases of the DSM and DVP ... 138

Maturity of the ASIC versions containing the DSM and DVP ... 140

Design phases for module development of the PICNIC ... 159

Design descriptions for module development of the PICNIC ... 161

Design phases for prototype development of the PICNIC ... 163

Characteristics of the PICNIC ASIC implementation ... 164

Characteristics of the PICNIC prototype ASICs ... 165

Approximate development effort of the prototype and module development activities for the PICNIC ... 167

Design phases for prototype development of the MPEG-2 Video Encoder .184 Design descriptions for prototype development of the MPEG-2 Video Encoder ... 186

Characteristics of the MPEG-2 Video Encoder prototype ASIC ... 188

Approximate development effort of the prototype development activities for the MPEG-2 Video Encoder.. ... 189

Annual Growth Rate of Device Complexity ... 195

Summary of the characteristics of the applied prototyping methodologies . 197 Performance of the prototypes with respect to the four key properties ... 198

I

I

list of Tables Table 6.4 Table 6.5 XI Summary of quantitative analysis ... 199

(11)

Xll List of Tables

Abstract

Today, the enotmous complexity of embedded systems is the primary obstacle for the design of these systems. The newly defined ASIC hardware modules of an embedded system cannot be verified adequately anymore by means of techniques that are based on simulation. Simulation runs require vast amounts of time, while a high test coverage cannot feasibly be obtained. In addition, the extensive hardware/software interaction is hard to model and its execution spans long periods of time. As a result, embedded systems design often has to cope with a so-called 'hardware availability gap' as well as disjoint hardware and software design flows, ultimately leading to undesirable ASIC redesigns and to a loss of precious time- to-market.

These design difficulties can be overcome by means of prototyping the newly defined hardware modules of an embedded system. Prototyping facilitates a quick implementation which possesses, in comparison with the target implementation of the hardware module, a higher level of flexibility and observability. On the other hand, the execution speed is much higher than those common to techniques based on simulation (acceleration). Real-time performance may even be feasible. When prototyping is applied concurrently with the 'regular' activities of the embedded design process, these properties allow for a reduced ASIC design risk, hardware/software co-verification, and an early system integration. In this way, the incorporation of prototyping during embedded systems design facilitates a cut in development time.

The research that has been carried out as part of this thesis has assessed the effectiveness of prototyping on the time-to-market of embedded systems. With a cut in development time as leitmotiv in mind, prototyping has been incorporated in four real-life industrial development projects which dealt with the design of embedded systems for state-of-the-art consumer electronics products: a first generation DVB integrated receiver decoder, a first generation DVD-Video player, a fifth generation I OOHz TV feature box, and a first generation single chip MPEG-2 video encoder. For each of these industrial cases, the effects of prototyping have been analyzed in terms of both time and effort.

It has been shown that prototyping can reduce the development time by several months and thus increases speed-to-market. As such, prototyping provides an answer to the growing paradox of ever higher product complexity versus market pressures demanding a shorter time-to-market. Especially, the industrial projects that deployed highly-programmable prototypes were effective in reducing the overall time-to-market of the embedded system. Furthermore, the design effort that was associated with prototyping specific activities represented only a small part of the entire hardware design process. The ongoing unsurpassed complexity growth of programmable logic devices implies that prototyping will become even more valuable for future designs.

(12)

XIV Abstract

Samenvatting

Tegenwoordig vormt de zeer grote complexiteit van elektronische ingebedde systemen het grootste obstakel voor hun ontwerp. De nieuw gedefinieerde en nog te ontwikkelen applicatie-specifieke gelntegreerde schakelingen van ingebedde systemen kunnen niet meer adequaat geverifieerd worden met behulp van simulatie-technieken. De simulaties nemen zeer veel tijd in beslag. Voor het testen is daarom een hoge dekkingsgraad niet praktisch haalbaar.

Bovendien is de intensieve interactie tussen de hardware en de software moeilijk te modelleren en de geassocieerde rekenprocessen beslaan lange tijdsperioden. Hierdoor krijgt men gedurende het ontwerp van ingebedde systemen vaak te maken met niet onderling gekoppelde ontwikkelprocessen voor de hardware en de software, alsmede een late beschikbaarheid van de nieuwe hardware. Als gevolg hiervan wordt de kans op een fout in het ontwerpproces vergroot en gaat kostbare tijd verloren.

Door het prototyperen van de nieuw gedefinieerde hardware modules kunnen deze klassieke moeilijkheden overnonnen worden. In vergelijking met de uiteindelijke hardware implementatie beschikt het prototype over een hoge mate van flexibiliteit en is het beter observeerbaar. Voorts kan het prototype sneller beschikbaar zijn. Ten opzichte van simulatie-technieken is het prototype in staat om sneller data te verwerken, waarbij 'rea l-time' tot de mogelijkheden behoort.

Van deze eigenschappen kan handig gebruik gemaakt worden door het prototype gelijktijdig

te ontwikkelen met de uiteindelijke implementatie. Hierdoor kan de kans op een fout in het

ontwerpproces van de hardware aanzienlijk verkleind worden. Tevens kunnen de hardware

en de software in een vroegtijdig stadium gezamenlijk getest worden en kan eerder tot

systeemintegratie overgegaan worden. Dit alles zorgt ervoor <lat het hanteren van

prototypering kan leiden tot een reductie van de ontwikkeltijd.

Het onderzoek <lat ten grondslag ligt aan <lit proefschrift analyseert de effectiviteit van

prototypering voor wat betreft de tijd die nodig is om ingebedde systemen op de markt te

brengen. Prototypering is binnen vier industriele ontwikkelprojecten voor geavanceerde

consumentenelektronica toegepast met als belangrijkste doelstelling een verkorting van de

ontwikkeltijd. Het betrof hier de ontwikkeling van een eerste generatie DVB set-top box,

een eerste generatie DVD-Video speler, een vijfde generatie lOOHz TV module en een

eerste generatie gelntegreerde MPEG-2 video encoder. De gevolgen van de toepassing van

prototypering zijn voor elk van deze projecten geanalyseerd inzake doorlooptijd alsmede

manuren.

(13)

XVI Samenvatting

Het resultaat van dit onderzoek toont aan dat prototypering de ontwikkeling van ingebedde systemen met enkele maanden kan versnellen. Met behulp van deze methode kan de paradox

van een steeds hogere complexiteit binnen kortere ontwikkeltijd ondervangen worden. Met name prototypes die in hoge mate programmeerbaar zijn, blijken effectief in termen van

tijdswinst en inspanning. Tenslotte wordt geconcludeerd dat in de toekomst betere resultaten

verwacht kunnen worden gezien het feit dat de complexiteitstoename van programmeerbare

logica onovertroffen is.

Acknowledgments

To a large extent, the research of this thesis was based upon various development projects at Royal Philips Electronics. From a scientific point of view, the work was supervised by the

Eindhoven University of Technology. Therefore I thank all the people of these two

organizations who have enabled and supported this research.

I am especially grateful to professor Jess for giving me the opportunity to perform this Ph.D.

thesis in his group, and for providing guidance throughout the entire project. To Wim

Crooijmans, who initially created this project at Philips and who also provided support

during the first two years, I am particularly grateful. During the remaining period of another

two years, Ton Biemans provided a great contribution. For his dedication to this endeavour,

and the many constructive discussions we had, I owe him special thanks. Besides these

people, I thank many of my colleagues at various departments within Philips for their

fantastic assistance and the vast amount of time that they allowed me to consume for the

sake of this piece of research.

Special thanks goes to Ruud Eland, who generously scrutinized this entire thesis by

carefully proofreading the manuscript. In addition, he acted as a great sounding board for my

thoughts. Also, many thanks to my family for their everlasting support. And last but

definitely not least, I particularly thank Danielle for her invaluable contribution and the

motivation she gave me in pursuing this opportunity. The fact that, among others, a large

number of our joint weekends had to be sacrificed to create this thesis will neither be

forgotten by her nor by me.

(14)

XVlll Acknowledgments

In

troduction

This new electronic device consists of a block of germanium (excess semi-conductor) with two point electrodes, < 0.025 cm apart, and one low resistance base electrode. Each point contact has rectifying properties. One (the "emit-ter") is biased positively with respect to the base; the other (the "collector") is biased negatively, until the two currents are almost equal. Small changes in the emitter current then give rise to amplified changes in collector current. The device can also be used as an oscillator. Power gains up to 20 db have been obtained. The operation of the transistor is thought to depend on the existence of a thin surface film of Ge which is a deficit semi-conductor, i.e. different in electrical character from the bulk of the material.

Chapter I

The above quotation is part of "The transistor, a semi-conductor triode" [1], an article published by John Bardeen (1908 - 1991) and Walter Brattain (1902 - 1987) in Physical Review about their historical discovery at Bell Telephone Laboratories. On December 23 in 1947 these two Bell physicists performed an experiment in which two closely spaced gold-wire probes were pressed into the surface of a germanium crystal. For the first time, amplifi-cation within a solid had been observed. Ergo, the solid-state amplifier in the form of the point-contact transistor (a contraction of the words transfer and resistor) was born, a device that characterized a major turning point in the development of electronics. Shortly after the discovery of the transistor effect [2], fellow Bell scientist William Shockley (1910 - 1989) proposed the bipolar junction transistor [3], a better performing device without the need for point-contacts. In July 1951, Bell Telephone Laboratories announced its creation, and soon transistors were produced commercially.

The invention of the transistor would initiate a new era of fast-paced technology revolution with broad effects at a scale hitherto unknown to mankind. Only a mere four years before Bardeen's and Brattain's experiment, Thomas Watson (1874 - 1956), who was Chairman of IBM at that time, said "I think there is a world market for maybe jive computers". Ignorant of the advent of transistor, his forecast that there would never be a mass market for computers was based on the assumption that vacuum tubes would become and remain the enabling technology for computers. Today, it is stating the obvious that forecasting the future of technology is difficult, and that Watson's prediction was entirely wrong: modern society accommodates many hundreds of millions of computers.

The ancestor of the transistor, the vacuum tube [4], was introduced in 1904 with Sir John Amrose Fleming's (1849 - 1945) invention of the vacuum diode, a valve capable of controlling or rectifying alternating current. In spite of subsequent improvements, power

(15)

2 Chapter 1 - Introduction

consumption and heat production of vacuum tubes have remained high. As a result of the high dissipation the filaments bum out easily, requiring frequent tube replacement. In conjunction with a high tube price, building and maintaining a vacuum tube-based computer is expensive, while reliability is poor. These characteristics probably led Watson to his prediction. Besides serving as an economical as well as reliable replacement of the vacuum tube, transistors allowed for more efficient ways of electronic circuit fabrication. By combining transistors, capacitors and resistors in a single layer of semiconductor material, which is called the substrate, an entire circuit may be formed on a common wafer. The first circuits created using this miniaturization technique were announced by Jack Kilby of Texas Instruments in 1959 which he called solid circuits [ 5]. Later this type of circuit was renamed the integrated circuit or simply IC, as opposed to the discrete transistor. The trend toward miniaturization has continued ever since, permitting the integration of an ever-increasing number of transistors into a single IC.

By 1961, integrated circuit technology had been improved to such an extent that ICs were produced commercially. Another 10 years of ongoing device integration resulted in the first IC that embedded all building blocks required to design a computer (e.g. central processing unit, memory, controller, buffers). This device, i.e. the Intel 4004 microprocessor, packed 2,300 transistors on a silicon area smaller than a thumbnail, consumed about 1 I 1,000,000 of the power and did cost 1 I 2,500 of the price of the ENIAC, the first all-electronic computer based on the usage of 17,468 vacuum tubes. Yet, this "computer on a chip" delivered as much computing power as the 30,000 kilograms, ballroom-sized ENIAC from the year 1946. As a result of a persisting rapid increase in device complexity, high-performance computers packing millions of transistors have eventually become an affordable commodity good. Watson could not have imagined the genesis of these so-called personal computers (PCs). In addition to the origin of the computer industry, the phenomenal advances in semiconductor fabrication have led to the growth of other major businesses such as the consumer electronics and telecommunications industries. Consumer products like the television (TV) set and radio receiver have also evolved via vacuum tubes and transistors to ever more complex ICs, giving these products a large functionality at an affordable price. At present, semiconductor integration levels allow for a wide variety of entirely new consumer applications such as mobile telephony, digital pay-TV, and various multi-media products. Moreover, there are currently no signs that the rapid complexity increase will soon come to an end [6], which will open up the gateway to new future applications.

I. I Electronic Design in Retrospect

Throughout the years, the design of increasingly complex ICs as well as the design of electronic systems applying these ICs have required a continuous revision of the design

meth-odologies, design flows and design tools that constitute the design process. Only by means of revising the design process, the design productivity can be increased to such an extent that the design complexity can be mastered in an economically sound manner. Without the various improvements of electronic design that took place since the introduction of the integrated

1.1 Electronic Design in Retrospect

circuit, designing a current state-of-the-art electronic system (holding millions of transistors in a large number of ICs closely mounted and interconnected on several multi-layer printed circuit boards (PCBs)) would be a mission impossible. Moreover, further improvements remain necessary to design the electronic systems of the future in a remunerative way. Hence, evolution of system complexity and the design process go hand in hand.

Initially, pencil and paper have made way for computer-aided design (CAD) tools providing more efficient design entry of ICs and PCBs, and stimulating design re-use. In a second phase, various CAD analysis tools for behavioral simulation (e.g. the SPICE simulator for analog circuits [7]) and timing verification [8] have become an integral part of design flows. Over time, digital hardware design has increasingly employed formal specifications using language-based design descriptions as opposed to schematic entry via graphical symbols. Higher levels of abstraction for these formal design descriptions that model the design have facilitated hierarchical top-down design methods [9] [IO] reducing the amount of design data at the top, so that the design remains tractable for the design team. Moreover, higher level design descriptions reduce the speed problem of simulation, as they allow for faster execution. Yet, a complete test coverage cannot be achieved for complex designs by means of a simulation-based design methodology. In practice, the actual test coverage is unknown, which is a fundamental drawback of simulation.

In turn, hierarchical design methods have eventually been accompanied by various automated synthesis tools for physical design (i.e. layout synthesis) [11], logical design (i.e. logic synthesis) [ 12], and architectural design (i.e. high-level synthesis) [13] [ 14] of digital circuits. By means of automated synthesis a design description is automatically translated into a lower level design description through adding more detailed implementation information to the nascent design. Besides reducing design time, automated synthesis permits fast exploration of different design alternatives, in the search for the optimal trade-off between the relevant implementation parameters. Some synthesis tools are even capable of optimizing towards timing, (chip I board) area, or power dissipation. Although the advent of automated synthesis tools has implied a substantial improvement of the design productivity [ 15], they appear to be error-prone in practice [ 16]. Consequently, (logic) simulation remained the primary means to verify the initial description as well as the result of automated synthesis [17].

In an attempt to alleviate the problems of simulation-based design verification of digital circuits, formal verification has been introduced [ 16]. The first commercial CAD tools incor-porating these formal methods have recently become available. In some cases, they can be used for checking the equivalence of two design descriptions. Others allow for the assessment of certain system properties. Yet, the practical applicability of formal verification is still fairly limited and restricted to a specific class of verification problems.

Similar to the design of hardware, modern embedded software engineering techniques have adopted hierarchical design methods (using several levels of design abstraction), automated synthesis (which is referred to as programming language compilation), and simulation [18] [19]. To manage both the rapid increase in the amount of embedded software and the intensifying hardware/software interaction within modem electronic systems, a generic design methodology called hardware/software co-design [20] [21] [22] has been put forward

(16)

4 Chapter 1 - Introduction

in the nineties. In addition to embedded software, other aspects of the design, such as testability (23] (24], reliability [25] (26], manufacturability (27] and electromagnetic compat-ibility (EMC) (28], must be addressed within current engineering practice.

Along with higher technical requirements resulting from the increase in complexity, the commercial constraints that apply for the design of electronic systems are tightening. Within e.g. the consumer electronics market, fierce competition has induced a heavy price erosion and shorter product life-cycles. As a result, the players that are competing in this marketplace are forced to shorten the time-to-market (primarily) through a reduction of the critical path through their product creation process. For this purpose, concurrent engineering has been devised (29] (30]. Via short phases that are executed in parallel, concurrent engineering techniques (31] (32] (33] should lead to a sho1i time-to-market, while optimizing the utilization of resources.

In spite of the aforementioned advances in electronic design, recent development projects have often exceeded time and cost budgets, and the design process has remained error-prone. Consequently, there exists a legitimate reason to research, develop and apply new design methodologies, flows, and tools. With the ongoing fast-paced increase of IC and system complexity, revisions of the design process are of paramount importance for future competi-tiveness of companies involved in the development of electronic products. In the quest for continuous improvement of design productivity and time-to-market, prototyping is one of the approaches put forward within the field of electronic design. In literature prototyping is often referred to as rapid prototyping or emulation, albeit in a narrower sense and only applicable to digital circuits. This thesis analyzes several industrial cases that applied various prototyping methodologies as a way to try to deal with the paradox of a shorter time-to-market for more complex consumer electronics products.

1.2 Prototyping of Embedded Systems

Originally, the word prototype is derived from the Greek word protos-typos which means 'first model'. Webster's dictionary defines a prototype as "an original model or pattern from which subsequent copies are made, or improved specimens developed". Throughout modem history, people have frequently built a physical (scale) model before constructing the 'real thing'. Since a model permits cheap and fast construction, the respective concept or design can be analyzed, demonstrated and tested without having to build the final object. Furthermore, changes can be incorporated quickly and at a low cost. By means of these properties, prototyping (i.e. building and analyzing a prototype) provides a means to exclude errors and misunderstandings with respect to the final object. Consequently, prototyping can reduce and even eliminate expensive and time consuming rework on the final object.

1.2.1 Characteristics of Embedded Systems

This old reasoning is still valid for the design of modem electronic systems. Within the context of electronic design, a prototype provides a functional equivalent of (a part of) the final product, i.e. the prototype behaves in the same manner as the target implementation. By

1.2 Prototyping of Embedded Systems

means of this behavioral equivalence, which explains the aforementioned term "emulation", the functionality of an electronic system can be assessed in an early stage of the design. Addi-tionally, the functionality can be changed rapidly due to the programmable nature of most prototype implementations. In addition to an early availability and a flexible implementation, the observability of a prototype implementation is in general superior to the target implemen-tation whereas the functionality can be assessed much quicker than by means of simulation. Especially to the design of so-called embedded systems, these properties offer several distinct advantages (Section 1.2.2).

Although there exists no single and widely accepted definition of what an embedded system exactly is, it is generally characterized by a heterogeneous implementation technology comprising various hardware and software components, which perfom1 dedicated functions in a larger 'host system'. For instance, such a hybrid implementation structure may encompass several application specific integrated circuits (ASICs), a digital signal processor (DSP), various memory chips, a microcontroller, a power supply unit, and various discrete analog components. Since embedded systems have become increasingly digital, components that interact with the analog environment, such as analog-to-digital and digital-to-analog convertors (ADCs and DACs), are often included. In general, this versatile set of hardware components is interconnected and mounted on a PCB or multi-chip-module (MCM), although a 'system-on-a-chip' is also referred to as an embedded system. In addition to the hardware, modem embedded systems include a substantial amount of software that controls, possibly assisted by a real-time operating system, the programmable hardware components of the embedded system, e.g. DSPs and microcontrollers.

At present, embedded systems are pervasive in consumer as well as professional products. A wide variety of products 'hosts' an embedded system, e.g. consumer electronics, automotive vehicles, household appliances, aeroplanes, and communication systems. The attribute 'embedded' is meant to distinguish them from more general purpose systems that are not part of a larger product, such as standard PCs, workstations, and mainframes. Moreover, embedded systems are characterized by a complex interaction with the environment they operate in. Frequently real-time constraints apply to this interaction. During the design of an embedded system, the interaction with the environment must therefore be carefully considered.

1.2.2

Difficulties in Designing Embedded Systems

For consumer electronics, the development of an embedded system mostly involves the design of several newly defined modules and their subsequent integration with already existing components. The newly defined modules are a mixture of hardware and software. They include, for instance, one or more complex AS I Cs and a substantial amount of software which executes on a (few) programmable core(s) such as general purpose processors that are available off-the-shelf and application specific processors. The ASICs perform several new functions which are best implemented in hardware, whereas e.g. the software for the

(17)

6 Chapter 1 - Introduction

programmable core(s) performs a large variety of tasks best implemented in software including system control and user interface handling, and possibly some signal processing functions. In general, the interaction between the hardware and the software is extensive. The aforementioned characteristics of embedded systems impose several difficulties on their design process. First of all, the interaction of the newly defined hardware modules with the rest of the embedded system as well as the environment is extremely hard to model. Yet, this interaction should be described for a substantial period in time and cover many different

situations to allow for the design of a properly working system. Secondly, the high complexity of modern hardware implies that even a single second of real-time system operation translates into many hours of simulation time. For example, a paper about emulation of the Motorola 68060 processor [34] reports that booting the UNIX operating system takes 100 seconds of real-time operation, whereas this requires 13 years of simulation time. Furthermore, the hardware/software interaction must be taken into account to properly evaluate the hardware as well as the software. This interaction unfortunately spans substantial periods in time.

As a consequence, hardware and software are mostly developed using disjoint design flows, which increases the risk of errors in both hardware and software. Especially, ASIC hardware bugs jeopardize the development schedule as a result of a long design turnaround-time. Redesigning an ASIC and a new fabrication run in general takes a considerable number of months during which period software testing has to wait upon the availability of the new hardware. This may lead to an iterative process in which hardware and software redesigns alternately succeed each other. Although hardware/software co-simulation as part of a

general hardware/software co-design strategy tries to address the issue of disjoint hardware and software development, the limited execution performance remains a fundamental problem to thoroughly check the hardware as well as the software.

1.2.3 Properties of a Prototype

Prototyping of the newly defined and yet to be implemented ASICs allows for a substantial reduction of the aforementioned design difficulties that are characteristic for embedded systems. For this class of systems, the use of hardware prototyping during product development significantly improves the execution performance as compared with simulation-based strategies, while achieving in less time a more flexible and better observable implemen-tation in comparison with the design of the target ASIC implemenimplemen-tation. With respect to these principal and relevant properties, Figure 1.1 compares prototyping with both simulation of the design description and the design of the corresponding target implementation. The figure portrays the possible range for each technique with respect to a certain property. This indicative range, which is displayed by the slope at the top of a shaded area, originates from the fact that Figure 1.1 portrays a gathering of possible applications and ways to perform the

respective design technique by means of various design flows and tools.

Simulation is characterized by a very poor execution performance, even when the design

description that models the design is at a high level of abstraction. Although a technique

which is known as simulation acceleration [35] may improve the performance of

logic-1. 2 Prototyping of Embedded Systems

simulation up to approximately two orders of magnitude, the resulting performance is under all circumstances far from real-time (Figure 1.1). In addition, such an improvement can only be achieved for lower level design descriptions. In comparison with the execution speed of high level design descriptions, the improvement is much less or not present at all.

Execution Performance

- - - - real-time - - -

-Flexibility, Observability,

(Time-to-lmplementation-Availabilityr 1

simulation (acceleration)

D

prototype

D

target

Figure I. I Properties in comparison: simulation (acceleration) of design description vs. prototype implementation vs. target implementation

Only by means of a so-called hardware modeler, higher speeds may be achieved. This technique, which uses the actual component, is however restricted to already existing components and therefore not applicable to newly defined functions. More general techniques for simulation acceleration deliver much less performance. They are based upon parallel data processing and may be one of the following types:

a cluster of workstations, providing a maximum speed-up factor of about 4 [35] dedicated processor arrays contained in a so-called hardware accelerator [36], providing speed-up factors up to two orders of magnitude in comparison with simulation of low level design descriptions

In comparison with non-accelerated simulation, the performance within these acceleration systems with respect to the properties of the lower part of Figure 1.1, i.e flexibility, observ-ability and time-to-implementation-availobserv-ability, is in general equally good or slightly worse.

(18)

8 Chapter 1 - introduction

Within the context of this thesis, a prototype is defined as an implementation, different from the target implementation, yet with an identical fimctional behavior, which offers a considerable improvement of the execution speed as compared with simulation (accelera-tion). This speed-up is achieved by implementing the design in special hardware, such as various types of programmable components. Depending on, among others, the chosen imple-mentation technology of the prototype, the maximum execution speed ranges from several orders of magnitude slower than real-time up to real-time (i.e. the execution performance of the target implementation (Figure 1.1 )).

In contrast to simulation as well as simulation acceleration, test stimuli and test results are not necessarily (directly) supplied by and stored in the standard computer system, e.g. a workstation, used during the design of the respective device(s). Instead, a prototype also allows for system integration, which is referred to as in-circuit emulation or the emulation mode of the prototype, as opposed to the simulation mode [35]. Due to a high execution speed and readily available high-speed input and output interfaces, the prototyped modules of the embedded system can be physically integrated with the yet existing components. In this way, an entire embedded system can be built before implementation and fabrication of the newly defined modules in the target technology. By means of in-circuit emulation, these newly defined modules as well as the entire system can be assessed in the final operating environment at an early stage of the design. Because the prototyped modules are integrated in their final physical environment, modeling of the interaction with existing components, software as well as the external environment is not required within this design approach. The increase in execution performance comes at a price however. As a result of the use of special hardware components, the useful properties of simulation (acceleration), i.e. high flexibility, high observability and a short time-to-implementation-availability, are partially .sacrificed. For instance, if programmable components are used to prototype the design, programming these components takes in general more time (and effort) than straightforward compilation and subsequent execution on a workstation of the design description that models the design. Likewise, the incorporation of design modifications requires more time (and effort) or possibly a complete revision of the chosen prototype architecture. Furthermore, the observability of the prototype implementation is for many prototyping techniques less in comparison with a simulation run in which all nodes of the design may be observed without notable additional effort.

On the other hand, with respect to the compound of the three previously mentioned figures of merit, the prototype implementation clearly outperforms the target implementation. Within this thesis, this characteristic is considered as a prerequisite for prototyping. Otherwise, developing a prototype is of no use for a time-to-market reduction of the embedded system. The use of for instance programmable components provides the prototype with additional flexibility and observability over the rigid and difficult to debug target implementation in an integrated circuit, e.g. an ASIC. Additionally, the use of prefabricated components allows for a shorter time-to-implementation-availability than the time required to implement and

1. 2 Prototyping of Embedded Systems

fabricate the target ASIC. As is the case with the simulation and prototyping, the performance of the target implementation with respect to these properties depends upon, among others, the design flow, the design tools, the application and the target technology.

The performance of a prototype implementation with respect to the aforementioned properties depends on, among others, the chosen prototyping methodology as well as the target implementation. In principal, all combinations with respect these properties may occur within the distinguished ranges of Figure 1.1. The team of engineers which is responsible for the design of the embedded system should aim to achieve the highest possible execution speed while maximizing flexibility and observability, and minimizing design time and effort. Unfortunately, flexibility and observability are in general inversely proportional to execution speed. When making the decision whether or not to prototype (some of) the newly defined modules that are part of an embedded system, among others, the expected abilities of the prototype should be carefully considered for the possible candidate prototyping techniques. In conclusion, it can be said that prototyping of newly defined hardware modules, as far as the aforementioned properties are concerned, fills the gap that exists between simulation (acceleration) and the target (e.g. ASIC) implementation. In this way, prototyping may provide a means to comply with the (conflicting) requirements of successfully designing more complex embedded systems and a reduction of the time-to-market. This thesis, named "Prototyping of Embedded Systems: an Analysis of Industrial Approaches Aimed at Reducing Time-to-Market" tries to assess the effects of the incorporation of ASIC prototyping within the industrial development of several embedded systems.

In addition to hardware prototyping, (rapid) prototyping of software is possible as well. For instance, several design methodologies exist that allow for a rapid implementation of the basic user interface, so that the interaction with a future user can be tested in an early stage of the design. As this helps to overcome the communications barrier between the users and the development team, rapid prototyping can be an effective approach to specify the requirements of an interactive system. In literature [37] [38] [39] [ 40] these and other meth-odologies are extensively discussed. This thesis focuses however entirely on prototyping of hardware modules of embedded systems. Rapid prototyping of software is therefore not addressed.

Although this thesis addresses a reduction of the time-to-market, also hardware prototyping techniques may be deployed for other reasons than shortening the development time. Since a prototype has in general a short time-to-implementation-availability, companies can use it as a demonstrator during trade shows, exhibitions, and meetings with dealers and retailers. The feedback from these events is a valuable source of information to determine product strategy and planning. Also by means of field trials with end-users, a prototype can be used to obtain feedback about a future product. The flexibility of the prototype implementation allows to perform this in an iterative way. By adapting the functional behavior of the prototype based upon the feedback of the user group, the product can be tuned towards the needs of the consumers.

(19)

10 Chapter 1 -introduction

As such, sequential development of a prototype and the final product provides a means to obtain better (functional) specifications leading to better quality products. In the case of such a sequential development approach, the prototype can furthermore serve as a proof-of-concept to convince the own organization of the feasibility of a particular application or technology. Likewise, it can be used to attract for instance external investors. Within this

thesis, the use of prototyping is however only targeted at a reduction of the time-to-market.

Instead of sequential development, it therefore mainly discusses the parallel development of prototype and corresponding product.

1.2.4 Prototyping: Extension Instead of Substitute

It should be noted that the incorporation of prototyping does not make simulation of the

design obsolete. Due to the fact that the time-to-implementation-availability, observability and flexibility of a prototype are not optimal, prototyping generally does not serve as a replacement of simulation. The latter technique remains necessary to analyze the behavior in

the early phases of the design where many design modifications need to be carried out. The superior flexibility and observability of simulation can be usefully exploited to mature the design by executing smaller parts of the design description and subsequent integration runs

of the total description during a limited period of real-time. Next, the prototype can be implemented and thoroughly analyzed, often integrated with the rest of the embedded system including its software.

Possibly, simulation of the design description and analysis of the corresponding prototype may coexist. The superior flexibility and observability of simulation can be usefully

combined with the high execution speed of the prototype implementation. For instance, upon

error detection by means of the prototype, simulation can be used for precise error localiza-tion. The very high observability may allow for more rapid debugging. Likewise, the superior flexibility, i.e. shorter design turnaround-times, facilitates quick incorporation of design

modifications. Here, the resulting functional changes are analyzed first by means of simulation before extensive (in-circuit) evaluation with the prototype.

In summary, prototyping is not a substitute for simulation. Instead, it is an extension and the

two design analysis techniques may even coexist for a certain period during the design. As soon as sufficient confidence in the embedded system has been achieved through simulation and prototyping, the target implementation may eventually be finalized and subsequently fabricated and analyzed. Hence, the order of design techniques is simulation (acceleration), prototyping, and target implementation. Although prototyping offers a number of distinct

benefits, it is not a 'must' when designing an embedded system. Ifit is clear beforehand that

the added value of its application does not outweigh the time, effort and costs associated with its implementation and fabrication, prototyping should certainly be omitted. In that case, only simulation (acceleration) precedes the implementation and fabrication of the target device.

1.3 Research Motivation and Approach

1.3

Research

Motivation

and Approach

The research part of this thesis tries to assess the benefits of several prototyping approaches

m a qualitative and quantitative fashion. Since there is a clear lack of publications about the

industrial added value of prototyping, this research objective is of scientific as well as

industri_al rele~ance. The research approach that has been followed is based upon an analysis

of the mdustnal development of four embedded systems meant for consumer electronic

products. Each of these 'industrial cases' relies upon a different prototyping methodology.

1.3.1

Scientific Motivation

I~ literature [20] _[34] [41] [42] [43] [44] [45] the benefits of(rapid) prototyping are widely discussed m qualitative terms. In summary, prototyping of e.g. newly defined AS/Cs, that are part of an embedded system under construction, can lead to three primary design benefits:

I. reduction of (AS)IC design risk

2. early system integration

3. improved parallel development of hardware and software

Prototyping aUows for a reduction of ASIC design risk, as it facilitates an early and thorough

functional venfication and validation of newly defined hardware via high-speed execution of a well observable prototype implementation that accurately represents the newly defined fun.ctionality. The design risk may be further reduced as in-circuit emulation of the prototype

fac1htates true hardware/software co-verification. In this way, functional flaws can be

detected and localized in an early stage of the design process. As the costs of an engineering

chan~e increases rapidly when an error is detected in a later phase of phase of the product

creat10n process, early detection is also critically important to development costs, besides development ~ime. Moreover, as a result of the high flexibility of the prototype, subsequent

design mod1f1cations may be rapidly incorporated. As such, the design can be properly

analyzed and improved before committing it to silicon integration, which possibly results in

a redu~tion or elimination of redesigns. In tum, this may lead to a shorter development time,

reduction of development costs, and even improved product quality as the performance can be properly assessed, and easily adapted, early in the design process.

The other two benefits basically allow for a speed-up of the design process by means of

concurrent en~ineering. By using the prototype, system integration can be carried out during

A_SIC design mstead of after ASIC fabrication, leading to a reduction of the critical path.

L1kew1_se, software testing does not have to wait upon availability of the 'first silicon'

imple-mentation of the target ASIC. The prototype allows to test the execution of software programs

on programmable hardware, thus retaining the ability of changing the hardware and software

implementation concurrently [20]. This technique is referred to as hardware/software co-emulation. It also allows to evaluate the trade-offs which have been made during the design

(such as hardware/software partitioning) before sending the ASIC to a foundry.

In contrast to this qualitative view on the usage of prototyping, which is discussed quite

extensively in academia, literature does not quantify the effects of various prototyping

meth-odologies for the industrial development of embedded systems. Similar to the publications on 11

(20)

12 Chapter 1 - Introduction

software prototyping (e.g. [ 46]), the scarce quantitative literature about prototyping of

hardware functionality is limited to prototyping productivity (e.g. [ 4 7]), i.e. the design effort required to develop a prototype, or the time-to-implementation-availability of the prototype (e.g. [ 48]). Yet, the consequences for the development schedule, and those for the design

effort of the entire embedded system, are in general not addressed. Due to the lack of a

cost-benefit analysis and relevant background information with respect to the design flow and design complexity, the added value of prototyping cannot be derived.

To summarize, there is few public information available with respect to the amount of time

and effort required to prototype an IC. Especially the effects of prototyping are unknown in

academia as far as the important parameters of time-to-market, costs and product quality of the entire embedded system are concerned. The quantitative analysis which is performed within this thesis therefore provides new insights in the lessons that can be learned from the

usage of various prototyping approaches as part of embedded systems design. Among others,

this may indicate the direction in which academic as well as industrial research on

prototyping methodologies, flows and tools should evolve.

1.3.2

Industrial Motivation

In order to obtain a competitive advantage over others, high-tech electronics companies must

apply a state-of-the-art design process that gives them a short time-to-market, efficient

development, and competitive high-quality products. Within this context, prototyping may be

a powerful approach as it allows for improvements of these three important business

parameters. Yet, considering both the main benefits offered by prototyping and the costs that are associated with the development of a prototype, the design methodology's greatest asset

is most likely not a reduction of development costs or an improvement of product quality.

Instead, prototyping is especially suited to cut development time.

This links up particularly well with modem industrial practices, in which time-to-market

pre-dominantly seems to affect economic success. Studies on the effects of time-to-market have

been done by McKinsey & Company and others. "According to a study released in January

1990 by United Research Co. of Morristown, N.J., six out often chief executive officers listed

shorter product development cycles as vital to their company." [49] Likewise, the McKinsey

& Company survey [50] [51] [52], which was the first study to quantify the value of

development speed, identifies time-to-market as a key business parameter for profitability. It reports that, on average, a company will lose a massive 33% of after-tax profit when it ships a product, which is characterized by a five year life-cycle and 12% annual price erosion, six months late in a market with a 20% growth rate. The same study states that coming out on time, while exceeding the product development budget by 50%, only cuts profits by 3.5%. Based on this survey, one could conclude that increasing the development budget by

allocating more people to the project is an economic method to secure the desired

time-to-market. However, people and time are in general not interchangeable. Adding more people to

a project is not a guarantee for meeting the deadline. It might even delay the project further

1.3 Research Motivation and Approach

due to communication overhead and additional training. If a project can be completed in one

year by 6 people, it does not mean 72 people can do it in one month (Brooks' Law, [53]). To

reduce time-to-market, companies therefore need to improve their development process.

Considering this from the viewpoint of the semiconductor as well as consumer electronics

industry, a clear motivation exists to research the added value of prototyping. Since over half

of the new ASIC designs do not operate correctly in the system [ 42], design methodologies

leading to an improvement of this efficiency are attractive. Furthermore, as a large part of the

design time and effort is spent on design verification and validation, the analysis capabilities

belonging to prototyping are useful for both hardware and software design. Within this

context it is illustrative to mention that verification and validation of complex (software) designs currently requires 30% to 80% of the total design time [54].

The software content of today's embedded systems has become very high. The analyst firm

Embedded Systems Research estimates that as much as 70% of the total development cost for

the average 1994 embedded system is attributable to software. Although the actual software

load will heavily depend on the amount of newly defined hardware functionality, this

estimate is supported by others: according to literature [55] software typically accounts for

80% of total project costs. Given this fact, sequential execution of hardware and software

development implies additional cycle time in which software testing has to wait upon a usable

ASIC implementation. By means of prototyping, however, software testing can be done with

the prototype instead of the target ASIC, thus allowing for parallel execution of hardware and

software development. Since testing consumes the aforementioned 30% to 80% of the total

design time, this may imply a significant reduction of the time-to-market.

Given these facts, the industrial importance of prototyping is evident, which strengthens the

case for an assessment of its effectiveness. Research on the actual effectiveness of various prototyping methodologies can therefore reveal valuable information. Among others, this

may assist future development projects in making the cost-benefit analysis of prototyping that

leads to the decision whether or not to incorporate prototyping in the design process. The

research may also assist in constituting the desired design flow. Furthermore, the research

results can be used to improve design methodologies, flows and tools for prototyping,

ultimately leading to a faster time-to-market.

1.3.3

Research Approach

In order to assess the added value of prototyping for the development of embedded systems,

empirical research must be performed. The research which is described within this thesis analyzes four major development projects that have been carried out by Royal Philips Electronics. Within each development project, a novel embedded system for a specific consumer electronics product has been designed. In each of these industrial cases a specific prototyping approach has been applied, primarily to enable rapid development, so that the applicable time-to-market constraints of the product could be met. For each of the industrial cases, a design flow for prototype development has been devised, exercised and subsequently applied to the development of a prototype implementation of one or more newly defined

ASICs that were part of the embedded system.

Referenties

GERELATEERDE DOCUMENTEN

to which cultural boundaries are permeable. Knowing more about this issue means knowing more about the essence of language. For many languages, there are estimates about

The key elements contain collaboration between a variety of local organizations, support for the approach on the strategic, tactical and operational level, communication

To show how model building and simulations can help set and understand design specifications, first step implementation and reduce the time to design and test

Voor circa 2.000 kilometer beeksysteem zijn in de komende 15 jaar herstelmaatregelen gepland, mede in het kader van de Kader richtlijn Water (KrW), Waterbeheer 21e eeuw (WB21)

The causes of abuse of disabled children are generally the same as for able-bodied children, but the risk is increased by the fact that the child‟s needs often increase the

7 128 zandleem natuurlijke depressie grof licht bruinig grijs met kleïge donkerbruine vlekken langwerpig 3 m breed organisch, bodem, gn arch vondst 7 129 kleïge zandleem

The raw microarray data are images, which have to be transformed into gene expression matrices, tables where rows represent genes, columns represent various samples such as tissues

Op boog BC neemt men een overigens willekeurig punt D, op het verlengde van AD ligt een overigens.. willekeurig punt E en op het verlengde van CD ligt een overigens willekeurig