A “short list” of embedded systems

Download Report

Transcript A “short list” of embedded systems

Μικροελεγκτές και Ενσωματωμένα Συστήματα
(Microcontrollers and Embedded Systems)
Εισαγωγή
1
Πληροφορίες
• Ώρες διδασκαλίας: Αίθουσα ZB03
Εαρινό:Τετάρτη 12-14, Παρασκευή 11-12
Χειμερινό:Τρίτη 12-13, Παρασκευή 12-14
. Εργαστήριο: Αίθουσα ZB112 Παρασκευή 18-20
• Καθηγητής: Π. Παπαγέωργας
• Γραφείο: Κτήριο Ηλεκτρονικής, 1ος όροφος, ZB115
• Τηλέφωνο: 210-5381405
• E-mail:[email protected]
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
2
Βιβλιογραφία
• Συγγράμματα:
• Προγραμματίζοντας τον Μικροελεγκτή AVR, Dhananjay V. Gadre, Εκδόσεις
ΤΖΙΟΛΑ, 2001
• MSP430 Microcontroller Basics, John H. Davies, 2008, Elsevier Ltd.
• Εισαγωγή στον προγραμματισμό με την C, Ν. Μισυρλής,Τμήμα Πληροφορικής
Πανεπιστήμιο Αθηνών 2005
• Embedded System Design by PeterMarwedel, 2003,KluwerAcademic Publishers,
• Embedded Systems Design Using The Ti Msp430, Chris Nagy, Newness, 2003.
• Analog and Digital Circuits for Electronic Control System Applications Using the
TI MSP430 Microcontroller, Jerry Luecke,2005
• Embedded Systems Design, a unified hardware/software introduction, F.Vahid,
T.Givargis, J. Wiley & Sons, 2002
• The C programming Language, Brian W. Kernighan Dennis M. Ritchie, Second
Edition Prentice Hall Software Series
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
3
Επισκόπηση Ενσωματωμένων Συστημάτων
• Μικρού μεγέθους υπολογιστικές διατάξεις
ενσωματωμένες σε ηλεκτρονικά συστήματα
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
4
Επισκόπηση Ενσωματωμένων Συστημάτων
• Τα Υπολογιστικά συστήματα είναι παντού
• Οι περισσότεροι αναφερόμαστε με τον όρο αυτό σε
επιτραπέζιους υπολογιστές
–
–
–
–
PC’s
Laptops
Κεντρικά Υπολογιστικά Συστήματα
Εξυπηρέτες (Servers)
• Αλλά υπάρχει και ακόμη ένας τύπος υπολογιστικού
συστήματος
– Πιο συνηθισμένος...
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
5
Επισκόπηση Ενσωματωμένων Συστημάτων
• Ενσωματωμένα Υπολογιστικά συστήματα
– Υπολογιστικά συστήματα ενσωματωμένα σε
ηλεκτρονικές διατάξεις συνήθως μικρών
διαστάσεων
– Δύσκολο να ορισθούν. Κάθε υπολογιστικό
σύστημα που δεν είναι γενικής χρήσης
υπολογιστής (όπως PC)
– Δισεκατομμύρια μονάδες παράγονται κάθε
χρόνο, συγκριτικά με εκατομμύρια μονάδες
προσωπικών υπολογιστών
– Περίπου 50 Ενσωματωμένα Συστήματα σε κάθε
σπίτι και κάθε αυτοκίνητο.
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
Ενσωματωμένα
υπάρχουν εδώ...
και εδώ...
ακόμη και εδώ...
Περισσότερα από τα PCs
αν και κοστίζουν πολύ
λιγότερο το καθένα.
6
Μια “σύντομη λίστα” ενσωματωμένων
συστημάτων
Anti-lock brakes
Auto-focus cameras
Automatic teller machines
Automatic toll systems
Automatic transmission
Avionic systems
Battery chargers
Camcorders
Cell phones
Cell-phone base stations
Cordless phones
Cruise control
Curbside check-in systems
Digital cameras
Disk drives
Electronic card readers
Electronic instruments
Electronic toys/games
Factory control
Fax machines
Fingerprint identifiers
Home security systems
Life-support systems
Medical testing systems
Modems
MPEG decoders
Network cards
Network switches/routers
On-board navigation
Pagers
Photocopiers
Point-of-sale systems
Portable video games
Printers
Satellite phones
Scanners
Smart ovens/dishwashers
Speech recognizers
Stereo systems
Teleconferencing systems
Televisions
Temperature controllers
Theft tracking systems
TV set-top boxes
VCR’s, DVD players
Video game consoles
Video phones
Washers and dryers
Και η λίστα συνεχίζεται…..
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
7
Wireless Body Area Network
E
C
G&
Z
ig
B
e
eo
r
cu
sto
mwire
le
ss
tilt se
n
so
r
P
P
G&
m
o
ve
m
e
n
t se
n
so
r
W
ire
le
ss g
a
te
wa
y&
te
m
p
e
ra
tu
re
/
h
u
m
id
ityse
n
so
r
Bo
dy
Are
a
N
e
tw
o
rk
M
o
ve
m
e
n
t
Embedded Systems Design: A Unified
se
n
so
rs
Hardware/Software Introduction,
(c)
2000 Vahid/Givargis
GP
R
S
8
Τεχνολογίες Υλοποίησης
•
Τεχνολογίες υλοποίησης ενσωματωμένων
συστημάτων :
– Μικροελεγκτές (Microcontrollers)
– DSPs (Digital Signal Processors)
– SOC(Systems on Chip), ASIC (Application Specific
Integrated Circuits)
και φυσικά λογισμικό…..(C,C#,C++,JAVA..,RTOS..)
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
9
Μικροελεγκτές (1)
• =2a_ELE2MDD Lect 06 - Introduction to Microprocessors_gr.ppt
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
10
Computing History
Eniac, 1946
PlayStation Portable (PSP)
(first stored-program computer)
Occupied 50x30 feet room,
weighted 30 tonnes,
contained 18000 electronic valves,
consumed 25KW of electrical power;
capable to perform 100K calc. per second
Approx. 170 mm (L) x 74 mm (W) x 23 mm (D)
Weight: Approx. 260 g (including battery)
CPU: PSP CPU (clock frequency 1~333MHz)
Main Memory: 32MB
Embedded DRAM: 4MB
Profile: PSP Game, UMD Audio, UMD Video
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
11
A Typical Small Embedded System –
Digital Thermometer
Todd D. Morton
Embedded Microcontrollers
Copyright ©2001 by Prentice-Hall Inc.
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
12
A Microcontroller-Based System
Todd D. Morton
Embedded Microcontrollers
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
Copyright ©2001 by Prentice-Hall Inc.
13
Κάποια κοινά χαρακτηριστικά των
ενσωματωμένων συστημάτων
• Μοναδικής λειτουργικότητας Single-functioned
– Εκτελεί ένα μοναδικό πρόγραμμα επαναλαμβανόμενα
• Αυστηροί περιορισμοί Tightly-constrained
– Low cost, low power, small, fast, etc.
• Αντίδραση και Πραγματικός χρόνος Reactive and realtime
– Continually reacts to changes in the system’s environment
– Must compute certain results in real-time without delay
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
14
An embedded system example -- a digital
camera
Digital camera chip
CCD
CCD preprocessor
Pixel coprocessor
D2A
A2D
lens
JPEG codec
Microcontroller
Multiplier/Accum
DMA controller
Memory controller
•
•
•
Display ctrl
ISA bus interface
UART
LCD ctrl
Single-functioned -- always a digital camera
Tightly-constrained -- Low cost, low power, small, fast
Reactive and real-time -- only to a small extent
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
15
Σχεδιαστική Πρόκληση – βελτιστοποιώντας τις
μετρικές σχεδιασμού (design metrics)
• Προφανής στόχος σχεδιασμού:
– Η κατασκευή μιας υλοποίησης με την επιθυμητή
λειτουργικότητα
• Πρόκληση σχεδιασμού:
– Η ταυτόχρονη βελτιστοποίηση πολυάριθμων μετρικών
σχεδιασμού
• Μετρική σχεδιασμού- Design metric
– Ένα μετρήσιμο χαρακτηριστικό της υλοποίησης του
συστήματος
– Optimizing design metrics is a key challenge
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
16
Σχεδιαστική Πρόκληση – βελτιστοποιώντας τις
μετρικές σχεδιασμού (design metrics)
• Common metrics
– Unit cost: the monetary cost of manufacturing each copy of the system,
excluding NRE cost
– NRE cost (Non-Recurring Engineering cost): The one-time
monetary cost of designing the system
–
–
–
–
Size: the physical space required by the system
Performance: the execution time or throughput of the system
Power: the amount of power consumed by the system
Flexibility: the ability to change the functionality of the system without
incurring heavy NRE cost
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
17
Σχεδιαστική Πρόκληση – βελτιστοποιώντας τις
μετρικές σχεδιασμού (design metrics)
• Common metrics (continued)
– Time-to-prototype: the time needed to build a working version of the
system
– Time-to-market: the time required to develop a system to the point that it
can be released and sold to customers
– Maintainability: the ability to modify the system after its initial release
– Correctness, safety, many more
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
18
Ανταγωνισμός στην μετρική σχεδιασμού – η
βελτίωση του ενός μπορεί να χειροτερεύει άλλα
• Expertise with both software
and hardware is needed to
optimize design metrics
Power
Performance
Size
NRE cost
CCD
Digital camera chip
A2D
CCD preprocessor
Pixel coprocessor
D2A
lens
JPEG codec
Microcontroller
Multiplier/Accum
DMA controller
Memory controller
Display ctrl
ISA bus interface
– Not just a hardware or
software expert, as is common
– A designer must be
comfortable with various
technologies in order to choose
the best for a given application
and constraints
UART
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
LCD ctrl
Hardware
Software
19
Time-to-market: a demanding design metric
Revenues ($)
• Time required to develop a
product to the point it can be
sold to customers
• Market window
– Period during which the
product would have highest
sales
Time (months)
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
• Average time-to-market
constraint is about 8 months
• Delays can be costly
20
NRE and unit cost metrics
• Costs:
– Unit cost: the monetary cost of manufacturing each copy of the system,
excluding NRE cost
– Μη επαναλαμβανόμενο κόστος σχεδιασμού NRE cost (Non-Recurring
Engineering cost): The one-time monetary cost of designing the system
– total cost = NRE cost + unit cost * # of units
– per-product cost
= total cost / # of units
= (NRE cost / # of units) + unit cost
• Example
– NRE=$2000, unit=$100
– For 10 units
– total cost = $2000 + 10*$100 = $3000
– per-product cost = $2000/10 + $100 = $300
Amortizing NRE cost over the units results in an
additional $200 per unit
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
21
NRE and unit cost metrics
• Compare technologies by costs -- best depends on quantity
– Technology A: NRE=$2,000, unit=$100
– Technology B: NRE=$30,000, unit=$30
– Technology C: NRE=$100,000, unit=$2
$200,000
B
C
$120,000
$80,000
$0
$0
1600
2400
C
$80
$40
800
B
$120
$40,000
0
A
$160
p er p rod uc t c ost
$160,000
tota l c ost (x1000)
$200
A
0
Numb er of units (volume)
800
1600
2400
Numb er of units (volume)
• But, must also consider time-to-market
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
22
Η μετρική της επίδοσης σχεδιασμού
• Widely-used measure of system, widely-abused
– Clock frequency, instructions per second – not good measures
– Digital camera example – a user cares about how fast it processes images, not
clock speed or instructions per second
• Καθυστέρηση Latency (response time)
– Time between task start and end
– e.g., Camera’s A and B process images in 0.25 seconds
• Παραγωγή έργου Throughput
– Tasks per second, e.g. Camera A processes 4 images per second
– Throughput can be more than latency seems to imply due to concurrency, e.g.
Camera B may process 8 images per second (by capturing a new image while
previous image is being stored).
• Speedup of B over S = B’s performance / A’s performance
– Throughput speedup = 8/4 = 2
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
23
Τρεις τεχνολογίες κλειδιά για ενσωματωμένα
συστήματα
• Τεχνολογίες
– Οι επιστημονικές και τεχνικές γνώσεις και μεθοδολογίες για
την επίτευξη ενός στόχου
• Τρείς τεχνολογίες κλειδιά για ενσωματωμένα
συστήματα
– Τεχνολογία Επεξεργαστών
– Τεχνολογία IC technology
– Τεχνολογία σχεδιασμού
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
24
Processor technology
• The architecture of the computation engine used to implement a
system’s desired functionality
• Processor does not have to be programmable
– “Processor” not equal to general-purpose processor
Controller
Datapath
Controller
Datapath
Controller
Datapath
Control
logic and
State register
Control logic
and State
register
Registers
Control
logic
index
Register
file
IR
PC
General
ALU
IR
Custom
ALU
Data
memory
total = 0
for i =1 to …
General-purpose (“software”)
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
+
PC
Data
memory
Program
memory
Assembly code
for:
State
register
total
Data
memory
Program memory
Assembly code
for:
total = 0
for i =1 to …
Application-specific
Single-purpose (“hardware”)
25
Processor technology
• Processors vary in their customization for the problem at hand
Desired
functionality
General-purpose
processor
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
total = 0
for i = 1 to N loop
total += M[i]
end loop
Application-specific
processor
Single-purpose
processor
26
General-purpose processors
• Programmable device used in a variety of
applications
– Also known as “microprocessor”
• Features
– Program memory
– General datapath with large register file and
general ALU
• User benefits
– Low time-to-market and NRE costs
– High flexibility
• “Pentium” the most well-known, but
there are hundreds of others
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
Controller
Datapath
Control
logic and
State register
Register
file
IR
PC
Program
memory
General
ALU
Data
memory
Assembly code
for:
total = 0
for i =1 to …
27
Single-purpose processors
• Digital circuit designed to execute exactly
one program
– a.k.a. coprocessor, accelerator or peripheral
• Features
– Contains only the components needed to
execute a single program
– No program memory
Controller
Datapath
Control
logic
index
total
State
register
+
Data
memory
• Benefits
– Fast
– Low power
– Small size
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
28
Application-specific processors
• Programmable processor optimized for a
particular class of applications having
common characteristics
– Compromise between general-purpose and
single-purpose processors
Controller
Datapath
Control
logic and
State register
Registers
Custom
ALU
IR
PC
• Features
– Program memory
– Optimized datapath
– Special functional units
• Benefits
Program
memory
Data
memory
Assembly code
for:
total = 0
for i =1 to …
– Some flexibility, good performance, size and
power
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
29
IC technology
• The manner in which a digital (gate-level)
implementation is mapped onto an IC
– IC: Integrated circuit, or “chip”
– IC technologies differ in their customization to a design
– IC’s consist of numerous layers (perhaps 10 or more)
• IC technologies differ with respect to who builds each layer and
when
IC package
IC
source
gate
oxide
channel
drain
Silicon substrate
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
30
IC technology
• Three types of IC technologies
– Full-custom/VLSI
– Semi-custom ASIC (gate array and standard cell)
– PLD (Programmable Logic Device)
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
31
Full-custom/VLSI
• All layers are optimized for an embedded system’s
particular digital implementation
– Placing transistors
– Sizing transistors
– Routing wires
• Benefits
– Excellent performance, small size, low power
• Drawbacks
– High NRE cost (e.g., $300k), long time-to-market
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
32
Semi-custom
• Lower layers are fully or partially built
– Designers are left with routing of wires and maybe placing
some blocks
• Benefits
– Good performance, good size, less NRE cost than a fullcustom implementation (perhaps $10k to $100k)
• Drawbacks
– Still require weeks to months to develop
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
33
PLD (Programmable Logic Device)
• All layers already exist
– Designers can purchase an IC
– Connections on the IC are either created or destroyed to
implement desired functionality
– Field-Programmable Gate Array (FPGA) very popular
• Benefits
– Low NRE costs, almost instant IC availability
• Drawbacks
– Bigger, expensive (perhaps $30 per unit), power hungry,
slower
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
34
Intel: First 30+ Years
• Intel 4004
– November 15, 1971
– 4-bit ALU, 108 KHz, 2,300 transistors,
10-micron technology
 Intel Pentium 4
 August 27, 2001
 32-bit architecture, 1.4
GHz (now 3.08), 42M
transistors (now 55+M),
0.18-micron technology
(now 0.09)
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
35
Moore’s law
• The most important trend in embedded systems
– Predicted in 1965 by Intel co-founder Gordon Moore
IC transistor capacity has doubled roughly every 18 months
for the past several decades
10,000
1,000
Logic transistors
per chip
(in millions)
100
10
1
0.1
Note:
logarithmic scale
0.01
0.001
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
36
Moore’s law
• Wow
– This growth rate is hard to imagine, most people
underestimate
– How many ancestors do you have from 20 generations ago
• i.e., roughly how many people alive in the 1500’s did it take to make
you?
• 220 = more than 1 million people
– (This underestimation is the key to pyramid schemes!)
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
37
Graphical illustration of Moore’s law
1981
1984
1987
1990
1993
1996
1999
2002
10,000
transistors
150,000,000
transistors
Leading edge
chip in 1981
Leading edge
chip in 2002
• Something that doubles frequently grows more quickly
than most people realize!
– A 2002 chip can hold about 15,000 1981 chips inside itself
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
38
Transistor Count Growth Rate
100,000,000

Transistors
10,000,000




R10000





 Pentium



















i80386

i80286 
  R3000


R2000

1,000,000
100,000
P4
i8086
10,000


 i8080
 i8008
i4004
1,000
1970
1980
1990
2000
1975
1985
1995
2005
Moore’s Law
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
39
General Technology Trends
•
•
•
•
Microprocessor performance increases 50%-100% per year
Transistor count doubles every 3 years
DRAM size quadruples every 3 years
Huge investment per generation is carried by huge
commodity market
180
160
140
120
100
80
60
40
20
0
Integer
FP
Sun 4
260
MIPS
M/120
HP 9000
750
MIPS
M2000
DEC
Alpha
IBM
RS6000
540
1987 1988 1989 1990 1991 1992
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
40
Design productivity exponential increase
100,000
1,000
100
10
1
Productivity
(K) Trans./Staff – Mo.
10,000
2009
0.01
2007
2005
2003
2001
1999
1997
1995
1993
1991
1989
1987
1985
1983
0.1
• Exponential increase over the past few decades
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
41
The co-design ladder
• In the past:
– Hardware and software
design technologies were
very different
– Recent maturation of
synthesis enables a unified
view of hardware and
software
• Hardware/software
“codesign”
Sequential program code (e.g., C, VHDL)
Behavioral synthesis
(1990's)
Compilers
(1960's,1970's)
Register transfers
Assembly instructions
RT synthesis
(1980's, 1990's)
Assemblers, linkers
(1950's, 1960's)
Logic equations / FSM's
Machine instructions
Logic synthesis
(1970's, 1980's)
Logic gates
Microprocessor plus
program bits: “software”
Implementation
VLSI, ASIC, or PLD
implementation: “hardware”
The choice of hardware versus software for a particular function is simply a tradeoff among various
design metrics, like performance, power, size, NRE cost, and especially flexibility; there is no
fundamental difference between what hardware or software can implement.
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
42
Independence of processor and IC
technologies
• Basic tradeoff
– General vs. custom
– With respect to processor technology or IC technology
– The two technologies are independent
General,
providing improved:
Generalpurpose
processor
ASIP
Singlepurpose
processor
Flexibility
Maintainability
NRE cost
Time- to-prototype
Time-to-market
Cost (low volume)
Customized,
providing improved:
Power efficiency
Performance
Size
Cost (high volume)
PLD
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
Semi-custom
Full-custom
43
Design productivity gap
• While designer productivity has grown at an impressive rate
over the past decades, the rate of improvement has not kept
pace with chip capacity
Logic transistors
per chip
(in millions)
10,000
100,000
1,000
10,000
100
10
1000
Gap
IC capacity
1
10
0.1
0.01
0.001
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
100
Productivity
(K) Trans./Staff-Mo.
1
productivity
0.1
0.01
44
Design productivity gap
• 1981 leading edge chip required 100 designer months
– 10,000 transistors / 100 transistors/month
• 2002 leading edge chip requires 30,000 designer months
– 150,000,000 / 5000 transistors/month
• Designer cost increase from $1M to $300M
Logic transistors
per chip
(in millions)
10,000
100,000
1,000
10,000
100
10
Gap
IC capacity
1
0.1
0.01
0.001
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
productivity
1000
100
10
1
Productivity
(K) Trans./Staff-Mo.
0.1
0.01
45
The mythical man-month
• The situation is even worse than the productivity gap indicates
•
•
In theory, adding designers to team reduces project completion time
In reality, productivity per designer decreases due to complexities of team management
and communication
In the software community, known as “the mythical man-month” (Brooks 1975)
At some point, can actually lengthen project completion time! (“Too many cooks”)
•
•
•
•
•
1M transistors, 1
designer=5000 trans/month
Each additional designer
reduces for 100 trans/month
So 2 designers produce 4900
trans/month each
60000
50000
40000
30000
20000
10000
16
16
19
18
23
24
Months until completion
43
Individual
0
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
Team
15
10
20
30
Number of designers
40
46
Summary
• Embedded systems are everywhere
• Key challenge: optimization of design metrics
– Design metrics compete with one another
• A unified view of hardware and software is necessary to
improve productivity
• Three key technologies
– Processor: general-purpose, application-specific, single-purpose
– IC: Full-custom, semi-custom, PLD
– Design: Compilation/synthesis, libraries/IP, test/verification
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
47