0% found this document useful (0 votes)
19 views79 pages

1-Introducao 2022

PSE 2022 Módulo 1
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views79 pages

1-Introducao 2022

PSE 2022 Módulo 1
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 79

EEE026 - Projeto de Sistemas Embutidos

Introdução

Diógenes C. da Silva Jr.


DEE/UFMG
[email protected]

EEE026 – PSE – UFMG 2022


Sistemas Embutidos

• Sistemas de computação que realizam uma única


função e utiliza interfaces bem definidas.

Sistema Embutido
Variáveis Variáveis
Software
de entrada de saída
Hardware

EEE026 – PSE – UFMG 2022 2


Sistemas Embutidos

• HW: microprocessador e periféricos em um único


chip.
• SW: linguagens de alto nível e sistemas de
desenvolvimento.
• Tempo de resposta:
- Tempo real: TR-Hard ou TR-Soft
• Interconexão.
• Confiabilidade.
• Mercado.

EEE026 – PSE – UFMG 2022 3


História

• 1° SE: AGC – Apollo Guidance Computer

4,100 3-input RTL NOR gates, 4 KB of


magnetic core RAM, 32 KB of core rope
ROM, 2.048 MHz clock, four 16-bit
central registers, 11 instructions, 5
vectored interrupt sources, one 20-register
timer-counter, a real-time clock module,
low-power standby mode (85 % power
reduction)
© 2014 by M. Jiménez, R. Palomera, & I. Couvertier

EEE026 – PSE – UFMG 2022 4


Componentes de HW

© 2014 by M. Jiménez, R.
Palomera, & I. Couvertier

EEE026 – PSE – UFMG 2022 5


Componentes de SW

© 2014 by M. Jiménez, R.
Palomera, & I. Couvertier

EEE026 – PSE – UFMG 2022 6


Ciclo de projeto usando COTS

© 2014 by M. Jiménez, R.
EEE026 – PSE – UFMG 2022 Palomera, & I. Couvertier 7
Tipos de SE

© 2014 by M. Jiménez, R.
Palomera, & I. Couvertier

EEE026 – PSE – UFMG 2022 8


Projeto de SE

• HW
- Simplificado
- Família de microcontroladores
- Poucos periféricos não padronizados
• SW
- Específico para cada aplicação
- Linguagens de alto nível
- Sistemas de desenvolvimento
• Emuladores
• Simuladores

9
EEE026 – PSE – UFMG 2022
Integração HW/SW

• HW
• CPU
• Memória
• Interfaces Analógicas
• E/S Serial e Paralela
- RS232, I2C, LCD, motores, óptica.
• SW
• Assembly e Linguagens de alto nível
• Tempo real e Sistemas Operacionais

10
EEE026 – PSE – UFMG 2022
Aplicações

• Sistemas
- Embarcados
• Motor, freios, janelas, air-bags, faroletes, alarme
- Interconexão
• Internet, WEB, WiFi, USB, RFID
- Vestíveis
- Biomédicos
- Automação Industrial e Domiciliar

11
EEE026 – PSE – UFMG 2022
SE Embarcados

12
EEE026 – PSE – UFMG 2022
Principais Desafios e Soluções

• Design challenge – optimizing design metrics


• Technologies
- Processor technologies
- IC technologies
- Design technologies

EEE026 – PSE – UFMG 2022 13


Embedded systems overview

• Embedded computing systems


Computers are in here...
- Computing systems embedded within
electronic devices and here...

- Hard to define. Nearly any computing and even here...


system other than a desktop computer
- Billions of units produced yearly, versus
millions of desktop units
- Perhaps 50 per household and per
automobile Lots more of these,
though they cost a lot
less each.

EEE026 – PSE – UFMG 2022 14


A “short list” of embedded systems
Anti-lock brakes Modems
Auto-focus cameras MPEG decoders
Automatic teller machines Network cards
Automatic toll systems Network switches/routers
Automatic transmission On-board navigation
Avionic systems Pagers
Battery chargers Photocopiers
Camcorders Point-of-sale systems
Cell phones Portable video games
Cell-phone base stations Printers
Cordless phones Satellite phones
Cruise control Scanners
Curbside check-in systems Smart ovens/dishwashers
Digital cameras Speech recognizers
Disk drives Stereo systems
Electronic card readers Teleconferencing systems
Electronic instruments Televisions
Electronic toys/games Temperature controllers
Factory control Theft tracking systems
Fax machines TV set-top boxes
Fingerprint identifiers VCR’s, DVD players
Home security systems Video game consoles
Life-support systems Video phones
Medical testing systems Washers and dryers

And the list goes on and on


Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 15


Some common characteristics of embedded
systems
• Single-functioned
- Executes a single program, repeatedly
• Tightly-constrained
- Low cost, low power, small, fast, etc.
• Reactive and real-time
- Continually reacts to changes in the system’s environment
- Must compute certain results in real-time without delay

EEE026 – PSE – UFMG 2022 16


Plataformas para SE

https://www.instructables.com/id/A-Beginners-Guide-to-Microcontrollers/?utm_source=newsletter&utm_medium=email
https://en.wikipedia.org/wiki/ESP32 e .../ESP8266
EEE026 – PSE – UFMG 2022 17
Sistemas Embutidos

• Um Sistema Embutido é um sistema de computação


baseado em microcontroladores, definido por SW,
confiável, com resposta em tempo real, autônomo,
interconectado, operando com diversas variáveis
físicas e em ambientes diversos, vendido em um
mercado competitivo.

• Microprocessadores x Microcontroladores

18
EEE026 – PSE – UFMG 2022
Final da parte 1

EEE026 – PSE – UFMG 2022 19


IoT

EEE026 – PSE – UFMG 2022 20


Cyber-Physical Systems

Cyber-Physical Systems (CPS) are integrations of computation, networking, and physical


processes. Embedded computers and networks monitor and control the physical
processes, with feedback loops where physical processes affect computations and vice
versa. [https://ptolemy.berkeley.edu/projects/cps/]

A cyber-physical (also styled cyberphysical) system (CPS) is a mechanism that is


controlled or monitored by computer-based algorithms, tightly integrated with the
Internet and its users. In cyber-physical systems, physical and software components are
deeply intertwined, each operating on different spatial and temporal scales, exhibiting
multiple and distinct behavioral modalities, and interacting with each other in a lot of
ways that change with context. Examples of CPS include smart grid, autonomous
automobile systems, medical monitoring, process control systems, robotics systems, and
automatic pilot avionics. [Wikipedia]

EEE026 – PSE – UFMG 2022


EEE026 – PSE – UFMG 2022
IoT

EEE026 – PSE – UFMG 2022


Crescimento estimado

EEE026 – PSE – UFMG 2022 24


Dispositivos conectados

EEE026 – PSE – UFMG 2022


Ecossistema

EEE026 – PSE – UFMG 2022


Alternative Power Sources in the IoT. White paper. Diodes Inc. 2020.

EEE026 – PSE – UFMG 2022 27


Mercado para MCU

EEE026 – PSE – UFMG 2022


Aplicações de IoT

EEE026 – PSE – UFMG 2022


IoT - Arquitetura

EEE026 – PSE – UFMG 2022


EEE026 – PSE – UFMG 2022 31
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 Display ctrl

Memory controller 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

EEE026 – PSE – UFMG 2022 32


Design challenge – optimizing design metrics

• Obvious design goal:


- Construct an implementation with desired functionality
• Key design challenge:
- Simultaneously optimize numerous design metrics
• Design metric
- A measurable feature of a system’s implementation
- Optimizing design metrics is a key challenge

Embedded Systems Design: A Unified


Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 33


Design challenge – optimizing 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

EEE026 – PSE – UFMG 2022 34


Design challenge – optimizing 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

EEE026 – PSE – UFMG 2022 35


Design metric competition -- improving one
may worsen others
Power • Expertise with both software
and hardware is needed to
Performance Size
optimize design metrics
- Not just a hardware or
software expert, as is common
NRE cost - A designer must be
comfortable with various
Digital camera chip technologies in order to choose
CCD
A2D
CCD preprocessor Pixel coprocessor D2A the best for a given application
lens and constraints
JPEG codec Microcontroller Multiplier/Accum

DMA controller Display ctrl Hardware

Memory controller ISA bus interface UART LCD ctrl


Software
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 36


Final da parte 2

EEE026 – PSE – UFMG 2022 37


Ciclo de Vida

© 2014 by M. Jiménez, R.
Palomera, & I. Couvertier
EEE026 – PSE – UFMG 2022 38
Time-to-market: a demanding design metric

l Time required to develop a product


to the point it can be sold to
customers
l Market window

Revenues ($)
- Period during which the product would
have highest sales
l Average time-to-market constraint is
about 8 months
Time (months)
l Delays can be costly

Embedded Systems Design: A Unified


Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 39


© 2014 by M. Jiménez, R. Palomera, & I. Couvertier

EEE026 – PSE – UFMG 2022 40


Losses due to delayed market entry

• Simplified revenue model


Peak revenue
- Product life = 2W, peak at W
Peak revenue from
- Time of market entry defines a
Revenues ($)

delayed entry
On-time triangle, representing market
Market rise Market fall penetration
Delayed - Triangle area equals revenue
• Loss
D W 2W - The difference between the on-
On-time Delayed Time time and delayed triangle areas
entry entry

Embedded Systems Design: A Unified


Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 41


Losses due to delayed market entry (cont.)

• Area = 1/2 * base * height


Peak revenue - On-time = 1/2 * 2W * W
- Delayed = 1/2 * (W-D+W)*(W-D)
Peak revenue from
Revenues ($)

On-time
delayed entry
• Percentage revenue loss =
Market rise Market fall (D(3W-D)/2W2)*100%
Delayed • Try some examples
- Lifetime 2W=52 wks,
D W 2W - delay D= 4 wks = 22%
On-time Delayed Time - delay D=10 wks = 50%
entry entry - Delays are costly!

Embedded Systems Design: A Unified


Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 42


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
EEE026 – PSE – UFMG 2022 43
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 $200
A A
B B
$160,000 $160
C C
tota l c ost (x1000)

p er p rod uc t c ost
$120,000 $120

$80,000 $80

$40,000 $40

$0 $0
0 800 1600 2400 0 800 1600 2400
Numb er of units (volume) Numb er of units (volume)

• But, must also consider time-to-market


Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 44


The performance design metric

• 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

EEE026 – PSE – UFMG 2022 45


Three key embedded system technologies

• Technology
- A manner of accomplishing a task, especially using technical
processes, methods, or knowledge
• Three key technologies for embedded systems
- Processor technology
- IC technology
- Design technology

Embedded Systems Design: A Unified


Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 46


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 index
Control Register Control logic Registers
logic
logic and file and State total
State register register Custom State +
ALU register
General
IR PC ALU IR PC
Data Data
memory memory
Program Data Program memory
memory memory
Assembly code Assembly code
for: for:

total = 0 total = 0
for i =1 to … for i =1 to …
General-purpose (“software”) Application-specific Single-purpose (“hardware”)
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
EEE026 – PSE – UFMG 2022 47
Processor technology

• Processors vary in their customization for the problem at hand

total = 0
for i = 1 to N loop
total += M[i]
end loop
Desired
functionality

General-purpose Application-specific Single-purpose


processor processor processor

EEE026 – PSE – UFMG 2022 48


General-purpose processors
• Programmable device used in a variety of
Controller Datapath
applications
Control
- Also known as “microprocessor” logic and
Register
file
• Features State register

- Program memory General


- General datapath with large register file and IR PC ALU
general ALU
• User benefits Program Data
memory memory
- Low time-to-market and NRE costs
- High flexibility Assembly code
for:
• “Pentium” the most well-known, but total = 0
there are hundreds of others for i =1 to …

Embedded Systems Design: A Unified


Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 49


Single-purpose processors

• Digital circuit designed to execute exactly Controller Datapath


one program Control index
- a.k.a. coprocessor, accelerator or peripheral logic
total
• Features State
register +
- Contains only the components needed to
execute a single program
Data
- No program memory memory

• Benefits
- Fast
- Low power
- Small size

Embedded Systems Design: A Unified


Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 50


Application-specific processors

• Programmable processor optimized for a Controller Datapath

particular class of applications having Control Registers


logic and
common characteristics State register
- Compromise between general-purpose and Custom
ALU
single-purpose processors IR PC

• Features Data
memory
- Program memory Program
memory
- Optimized datapath
Assembly code
- Special functional units for:

• Benefits 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

EEE026 – PSE – UFMG 2022 51


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

gate
IC package IC oxide
source channel drain
Silicon substrate

Embedded Systems Design: A Unified


Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 52


IC technology

• Three types of IC technologies


- Full-custom/VLSI
- Semi-custom ASIC (standard cell)
- PLD - Programmable Logic Devices (FPGA)

Embedded Systems Design: A Unified


Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 53


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

EEE026 – PSE – UFMG 2022 54


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 full-
custom 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

EEE026 – PSE – UFMG 2022 55


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

EEE026 – PSE – UFMG 2022 56


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 100


per chip 10
(in millions) 1
0.1
Note:
0.01
logarithmic scale
0.001
1981

1983

1985

1987

1989

1991

1993

1995

1997

1999

2001

2003

2005

2007

2009
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 57


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

EEE026 – PSE – UFMG 2022 58


Graphical illustration of Moore’s law

1981 1984 1987 1990 1993 1996 1999 2002

10,000 150,000,000
transistors transistors

Leading edge Leading edge


chip in 1981 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

EEE026 – PSE – UFMG 2022 59


Computadores Apple

l Apple II l Macbook Air


- 1977 - 2020

- 8 bits - 64 bits

- 1 MHz - 3 GHz

- 4 KB RAM - Até 64 GB RAM


- MacOS
- Integer Basic (ROM)
- 5 milhões unidades

EEE026 – PSE – UFMG 2022


Computadores Apple

l Apple II l Macbook Air


l MOS Tec 6502 l Apple M1
- 1975 - 2020
- 8 bits - 64 bits

- 1 MHz - 3,2 GHz

- 3.510 Tr - 16.000.000.000 Tr
- 10,99 x 10,96 mm
- 3,9 x 4,3 mm
- 120,45 mm2
- 16,6 mm2

EEE026 – PSE – UFMG 2022


Microprocessadores Apple

MOS 6502

3,9 x 4,3 mm
16,6 mm2
3.510 Tr
nMOS
8µm
1975

Apple M1

10,99 x 10,96 mm
120,45 mm2
16 bilhões Tr
CMOS
5nm
EEE026 – PSE – UFMG 2022 2020
MOS Tec. 6502

l ALU 8 bits
l Enderaçamento de 64KB
l 1 MHz
l 3 registradores

EEE026 – PSE – UFMG 2022


MOS 6502 die

l ALU 8 bits
l Enderaçamento de 64KB Decoder

l 1 MHz
Control Logic
l 3 registradores

ALU Registers

EEE026 – PSE – UFMG 2022


Familia Mx de processadores Apple

EEE026 – PSE – UFMG 2022


M1

l 4x Perf. Cores 64 bits 3,2 GHz

l 4x Eff. Cores 64 bits 2,06 GHz

l 8x GPU Cores (1024 EU) 1,27 GHz

l 32x NE Cores

l Endereçamento de 16GB (128-bit)

EEE026 – PSE – UFMG 2022


M1 x M1 Pro x M1 Max

EEE026 – PSE – UFMG 2022


M1 x M1 Pro x M1 Max

EEE026 – PSE – UFMG 2022


M1 Ultra

l 16x Perf. Cores 64 bits 3,23 GHz

l 4x Eff. Cores 64 bits 2,06 GHz

l 64x GPU Cores (1024 EU) 1,27 GHz

l 32x NE Cores

l Endereçamento de 128GB (512-bit)

l 114 bi Tr

l 840 mm2

l SiP (System in Package)

EEE026 – PSE – UFMG 2022


M1 Ultra

l CoWoS
l Chip on Wafer on Substrate

EEE026 – PSE – UFMG 2022


Final da parte 3

EEE026 – PSE – UFMG 2022 71


Design Technology

• The manner in which we convert our concept of


desired system functionality into an implementation
Compilation/ Libraries/ Test/
Synthesis IP Verification

System System Hw/Sw/ Model simulat./


Compilation/Synthesis: specification synthesis OS checkers
Automates exploration and
insertion of implementation
details for lower level.
Behavioral Behavior Cores Hw-Sw
specification synthesis cosimulators
Libraries/IP: Incorporates pre-
designed implementation from
lower abstraction level into
higher level. RT RT RT HDL simulators
specification synthesis components

Test/Verification: Ensures correct


functionality at each level, thus
reducing costly iterations Logic Logic Gates/ Gate
between levels. specification synthesis Cells simulators

To final implementation
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 72


Design productivity exponential increase
100,000

10,000

(K) Trans./Staff – Mo.


1,000

Productivity
100

10

0.1

0.01
1993

2005
1983

1987

2001

2003
1985

1991
1981

1989

1999
1997
1995

2007

2009
• Exponential increase over the past few decades
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 73


The co-design ladder

• In the past: Sequential program code (e.g., C, VHDL)

- Hardware and software Compilers


Behavioral synthesis
(1990's)
(1960's,1970's)
design technologies were
Register transfers
very different Assembly instructions RT synthesis
- Recent maturation of (1980's, 1990's)
Assemblers, linkers
synthesis enables a unified (1950's, 1960's) Logic equations / FSM's

view of hardware and Logic synthesis


(1970's, 1980's)
Machine instructions
software Logic gates

• Hardware/software
“codesign” 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
EEE026 – PSE – UFMG 2022 74
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- Single-
purpose ASIP purpose
General, Customized,
processor processor
providing improved: providing improved:

Flexibility Power efficiency


Maintainability Performance
NRE cost Size
Time- to-prototype Cost (high volume)
Time-to-market
Cost (low volume)

PLD Semi-custom Full-custom


Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis
EEE026 – PSE – UFMG 2022 75
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
10,000 100,000
1,000 10,000

Logic transistors 100 1000


Gap Productivity
per chip 10 100
IC capacity (K) Trans./Staff-Mo.
(in millions) 1 10
0.1 1
productivity
0.01 0.1
0.001 0.01
1981

1983

1985

1987

1989

1991

1993

1995

1997

1999

2001

2003

2005

2007

2009
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 76


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
10,000 100,000
1,000 10,000
Logic transistors 100 1000
10 Gap 100 Productivity
per chip IC capacity
(in millions) 1 10 (K) Trans./Staff-Mo.
0.1 1
productivity
0.01 0.1
0.001 0.01
1981

1983

1985

1987

1989

1991

1993

1995

1997

1999

2001

2003

2005

2007

2009
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 77


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”)
Team
60000 15
• 1M transistors, 1 16 16
50000 19 18
designer=5000 trans/month
40000 23
• Each additional designer 24
reduces for 100 trans/month 30000
Months until completion
20000 43
• So 2 designers produce 4900 Individual
trans/month each 10000

0 10 20 30 40
Number of designers
Embedded Systems Design: A Unified
Hardware/Software Introduction, (c) 2000 Vahid/Givargis

EEE026 – PSE – UFMG 2022 78


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

EEE026 – PSE – UFMG 2022 79

You might also like