Вы находитесь на странице: 1из 117

Universität Dortmund

Marek Perkowski’s
Productions present:

Lectures on Embedded Systems and


High Level Synthesis and CAD

Some slides come from various


sources, including Adam Postula,
Mark Schulz and U.C. Berkeley
Universität Dortmund

ECE 574
Embedded Systems, FPGAs and High Level
Synthesis

Dr Marek Perkowski
mperkows@ee.pdx.edu
http://www.ee.pdx.edu/~mperkows

•Introduction
•Grading
•What is this class about
Universität Dortmund

Elementary Project related class


•This class teaches about design of high-performance parallel digital systems
using FPGAs.
• Grading is based mostly on practical projects. It is not the old 574 as in the
PSU catalog.
• In past my students got several national awards for their projects. The best
projects of this class will be submitted to a competition .

Projects
Projects
Students select
1. software CAD project, (for those who know C/C++),
2. FPGA design project (for those with Verilog/VHDL knowledge),
3. conceptual design project (involves use of CAD tools for
analysis and performance comparison of designs)
Universität Dortmund
• Future of IT is characterized by the terms
This class has no prerequisite.
such as
 Post-PC era
It is open to all graduate
 Disappearing computer students
 Ubiquitous computing
 Pervasive computing Typical FPGA design projects:
 Ambient intelligence
1. Image processor based on spectral transforms.
 Embedded systems
2. Advanced controller for a robotic toy.
3. Cellular automaton controller for a robot.
4. Reconfigurable processor for Robot Vision
5. Radon Transform for medical applications
6. Image matching processor
7. Fractal Set Generator
Universität Dortmund
• Future of IT is characterized by the terms
This class has no prerequisite.
such as
 Post-PC era
It is open to all graduate
 Disappearing computer students
 Ubiquitous computing
 Pervasive computing
 Ambient intelligence Typical Theory Projects
 Embedded systems
1. Cellular logic for nanotechnology.
2. Cellular automata for test generation.
3. Advanced FSM decomposition for FPGAs.
4. Scheduling for low power
5. Constraint Satisfaction Computer
6. Oracle Based Computer
7. General Spectral Transform Computer
Universität Dortmund
BB
Typical software projects:
1. Use of SAT solver for logic synthesis
2. Logic synthesis with AND and EXOR
gates
3. Reversible Automaton synthesis
4. Cellular automaton synthesis
5. Asynchronous design software in
Matlab
6. Use of ABC system for low power
logic preprocessing

7. Testing reversible circuits


8. Design for test
Universität Dortmund
High-Level Synthesis and Design Automation – ECE 574/ECE674

If you have any


questions please
contact Dr. Marek
Perkowski
mperkows@ee.pdx.edu
Universität Dortmund

This is
Synthesi
Synthesi
Universität Dortmund

architectu
Universität Dortmund

Related PSU courses that I teach


ECE
ECE574.
574. ECE
ECE478.
478. Mobile
Mobileand
and ECE
ECE479.
479.
This
This Humanoid
Humanoid Robots
Robots Robot
Robot
class
class Perception
Perception

ECE ECE
ECE479.
479.
ECE572.
572. ECE
ECE 590.
590. Robots
Logic
Logic VHDL Robotsfor
for
VHDL Disabled
Disabled
Synthesis
Synthesis Design
Design

ECE
ECE573.
573.
Sequential
Sequential
Circuits
Circuits ECE
ECE 510.
510. ECE
ECE510.
510.
Quantum
Quantum Design
Design for
for
Computers
Computers Test
Test
Universität Dortmund

PSU sequence of classes

This is a complete sequence related to digital logic design automation.

Design with
ECE 171 ECE 271
VHDL/Verilog

Logic Sequential Spring


Synthesis Circuits
Formal
Fall Verification
Testing and Winter
and Design
Design for Test
Spring

Fall Quantum
Computing
Universität Dortmund

Do not take notes


You will get all slides
on my WWW, or they
are already there
If I am not using slides, please
take notes, this may be exam
material or project material
Universität Dortmund

I do not assume much background knowledge


from you
Basic graph theory concepts
Basic linear algebra concepts
Basic Boolean Logic and state machines

Basic knowledge of VHDL or Verilog is


welcome but not mandatory

Basic programming skills in


Basic, Java, Matlab, or C, C++
Universität Dortmund

The good news is that I will review much of this


background material

Also, there will be additional


meetings just to review the
material and solve problems.
Participation in those meetings is not mandatory,
and you can get an A without participating.
However, participating will help you in
homeworks and projects.

Usually Fridays
Universität Dortmund

Goals of this class


1. Many of you are using some CAD tools. Do you know what is
inside these tools? Here you will learn.

2. Do you want to design better algorithms and software for your


specific tasks? This class can help. I will teach both
fundamentals and applications.

3. Teach about relations between data structures, algorithms and


CAD tools.

4. Examples of my previous projects from US industry (companies


like GTE, Sharp, Intel and Cypress) and US government
(Wright Laboratories of Air Force) and Polish Government.
Universität Dortmund

Goals of this class

1. The algorithms and concepts presented in this class are very


general. They can be used in Machine Learning, Testing, Data
Mining, Pattern Recognition, and Robotics.

2. We will concentrate on basic algorithms and how to use them


for new problems that you may find in your research.

3. In the past students from this and other classes got several
awards from Design Automation Conference and ACM.

4. Would you be interested to submit your project to next year


competition. If accepted, you have a very good chance for travel
and other funds.
Universität Dortmund

Objective of Subject
1. Both theory and practical applications.

2. Students will learn modern EDA (Electronic Design


Automation) approaches and fundamentals of
building tools

3. Do not be scared of my English.

4. If I speak too quickly, please tell me. I will slow down.

5. I will give you some challenging research problems


that nobody solved or even formulated. You can work
on them and we can publish them, but it is not
mandatory, only for those who like a challenge.
Universität Dortmund

Objective of Subject
1. Students will learn about techniques of specifying sequential designs
and optimizing them on a Register Transfer Language Level

2. These techniques can be used to Computer, Digital Signal


Processing (DSP) and Image Processing architectures. You can
use your own examples.

3. At the end, some recent research and industrial papers from top
conferences and journals will be discussed to show the modern
research areas.

4. Modern realization technologies will be presented, FPGAs

5. Unified approach to many problems.

6. After completing the class students should be able to create new


applications and software for new EDA tools and use new CAD
tools for synthesis.
Universität Dortmund

What in coming weeks?

• Look to my WWW Page.


• Review and Introduction.
• Basic graph algorithms
• Representations of Functions, Relations
and State Machines.
• Overview of CAD systems
• Levels of modeling
• Basic high level synthesis methodologies
Homeworks
Universität Dortmund

• Homeworks will be to solve practical problems illustrating


the algorithms and data structures, such as set covering,
graph coloring, shortest path, satisfiability or scheduling.
• Some homeworks will be to optimize simple processors
using methods from the class.
• One homework will be to create an animated
PowerPoint presentation and present it in the class.
• You may exchange it for creating your WWW Page with
a problem solution.

Quality of your class presentations


and report is important
Universität Dortmund

Required Background
1. You are assumed to know, the material presented in ECE 171 and ECE 271
or equivalent

2. This material covered basic Boolean algebra, truth tables,


Karnaugh maps (K-maps), simple minimization techniques
using Karnaugh maps, and some basic design skills in Boolean
algebra.

3. Knowledge of programming in C, C++, Java, Basic, Lisp or


similar language is useful but not a must.
must

4. Everybody will create animated PowerPoint presentations and


his WWW Page with a new material and project descriptions.
Universität Dortmund

Review.
What this first part of the course covers.

Combinational Circuit Design


Review of Karnaugh Maps
Minimization of combinational logic
circuits using Karnaugh Maps
CAD Techniques of combinational
logic circuit minimization
Binary Decision Diagrams
Universität Dortmund

Review.
What this part of the course covers(cont).

• Combinational Circuit Design


1. Functional Decomposition
2. Graph Coloring and Set Covering
Techniques
3. MSI building blocks: multiplexers,
decoders, ROM’s and PLA’s
4. Arithmetic circuits
5. Introduction to data structures and
optimization
Universität Dortmund

Grading System
Homeworks = 40 %
Midterm 1 = 15 % On popular demand
Midterm 2 = 15 % no final this year in ECE 574
Project = 30 %

Midterm Examinations (open book, in class)


Homeworks, including student presentations, quality
of presentations
Project: - your choice --
programming assignments
theoretical work
literature study
processor designs using optimization methods from
the class
Universität Dortmund

MIDTERM EXAMS
Remember that both midterm exams are:

Remember that I emphasize in this class not only


hard work but also….
Universität Dortmund

Remember that I really want to help you to be


successful in this class and obtain a good
grade.
Do not be afraid to speak in English, it is better
to speak with mistakes than to avoid
communication
Universität Dortmund

TEXTBOOK
Strongly Recommended
Giovanni De Micheli, Synthesis and Optimization of Digital Circuits.
Mc Graw Hill International Editions, Electrical Engineering Series.
ISBN 0-07-113271-6.

This textbook is the most popular in USA and is used in top universities
It has many examples and its language is quite easy.
Even if you do not understand my English, you can learn from this textbook to
get a grade of A in this class. My examples and additional material that I
will teach is just to help to illustrate the ideas better. They will be NOT
required in homeworks and exams.
The material from the book will be on slides. All slides can be printed and used
to learn the material.

Background
Randy Katz, Contemporary Logic Design, Benjamin/Cummings, 1994. This
book is already used in KAIST.
Universität Dortmund

Additional Textbook

3 Styles:
 Original hardcover version,
Kluwer, 2003, >100 $/€
 Reprint, lighter cover borders,
thicker paper, same price/
content; Corrections available
on web site (see slides)
 2nd edition, Springer, "2006",
scheduled for end of October
2005, soft cover, with
corrections, 37€
Universität Dortmund

More TEXTBOOKS

Strongly Recommended
Gary Hachtel and Fabio Somenzi, Logic Synthesis and
Verification Algorithms, Kluwer Academic Publishers, 1996.
Randy Katz, Contemporary Logic Design,
Benjamin/Cummings, 1994
My lecture notes

Useful
Capilano Computing, LogicWorks 3, 1995 (includes 3.5”
diskette for Windows). This is a simulation program .
Universität Dortmund

Other Information
1. There is a WWW Home page for the class. I will keep updating it
every day, also to reflect a feedback from you.

2. All PowerPoint 4.0 slides you see here, plus a Postscript


printable version with 6 slides per page will be available.

3. Lectures will be available within 24 hours after the lecture is


given (mainly because I will be completing the lectures on
Sunday nights and Monday mornings prior to the lecture).

4. All sorts of other info will be there as well.

5. Much additional material is on my US webpage, but using it is


not mandatory.
Universität Dortmund

Other Information

• Class announcements will appear in the “class


schedule” pages of this class at the WWW page of
Marek Perkowski.

• Assignment: Find this page using Google


Engine. Type +Perkowski +Marek and next go to
“Classes that I teach”
Universität Dortmund

Other Information
1. Use Internet Explorer or other to view these
pages.
2. Send emails with questions.
3. If you are shy to ask in class or want to be
anonymous, please leave me a question on a
paper sheet before class on the desk.
4. I will post news for class students of this group. I
presume that it is read within 2 or 3 working days.
YOU ARE RESPONSIBLE FOR READING THE
NEWS IN CLASS SCHEDULE LINK!
Universität Dortmund

Other Information

Send emails with questions.


I will post news for class students of this group. I
presume that it is read within 2 or 3 working
days. YOU ARE RESPONSIBLE FOR
READING THE NEWS IN CLASS SCHEDULE
LINK!
Universität Dortmund

Any Other Administrative Details?

! Now is the time to ask


Universität Dortmund

For Advanced Students

• If it is too easy, do not worry.


– You can be challenged in the
project
• The class is for everybody.
– I will go fast through repetition
material.
– More advanced material will soon
appear.
Universität Dortmund

Embedded
Systems
Universität Dortmund

What is the Future of Information


Technology (IT)?

According
Accordingto
toforecasts
forecastscharac-
charac-
terized
terizedby
bythe
theterms
termssuch
suchas
as
 Post-PC
Post-PCera
era
 Disappearing
Disappearingcomputer
computer
 Ubiquitous
Ubiquitouscomputing
computing
 Pervasive
Pervasivecomputing
computing
 Ambient
Ambientintelligence
intelligence
 Embedded
Embeddedsystems
systems

preface
Universität Dortmund

What is an embedded system?


Universität Dortmund

Embedded Systems

Embedded systems (ES) = information processing


systems embedded into a larger product

Main reason for buying is not information processing


Universität Dortmund

Embedded systems
and ubiquitous computing
Ubiquitous
Ubiquitouscomputing:
computing: Information
Information anytime,
anytime, anywhere.
anywhere.
Embedded
Embeddedsystems
systemsprovide
providefundamental
fundamentaltechnology.
technology.

Ist.gif

UMTS,
Universität Dortmund

Application
Areas of
Embedded
Systems
Universität Dortmund

Application areas (1)

•• Automotive
Automotiveelectronics
electronics

•• Aircraft
Aircraft electronics
electronics

•• Trains
Trains

•• Telecommunication
Telecommunication

1.2 Application areas


Universität Dortmund

Application areas (2)

•• Medical
Medical systems
systems
e.g.
e.g. “artificial
“artificialeye”
eye”

[www.dobelle.com]
Universität Dortmund

Application areas (3)

•• Military
Military applications
applications

http://www.submarine.co.mp/wallpaper/submarine_640.jpg

•• Authentication
Authentication

Hot topic – antiterrorist


technologies
Universität Dortmund

Application areas (4)

•• Consumer
Consumer
electronics
electronics
Universität Dortmund

Application areas (5)

•• Fabrication
Fabricationequipment
equipment

•• Smart
Smart buildings
buildings

Show movie
http://www.date-conference.com/conference
/ 2003/keynotes/index.htm
Universität Dortmund

Application areas (6)

••Robotics
Robotics

„Pipe-climber“ Robot
„Johnnie“
(Courtesy
and ©:
H.Ulbrich, F.
Pfeiffer, TU
München)

Show movie of 2-legged robot(s)


Examples
Some embedded
systems from
real life
Smart Beer Glass
Information Technology

Capacitive sensor
for fluid level

8-bit, 8-pin
PIC processor
Contact less
transmission Inductive coil for RF
of power and ID activation &
readings power

CPU and reading coil in the


table. Reports the level of fluid in
the glass, alerts servers when
close to empty
© Jakob Engblom
Smart Beer Glass
Information Technology

 Typical embedded solution


 Integrates several technologies:
 Radiotransmissions
 Sensor technology

 Magnetic inductance for power

 Computer used for calibration

 Impossible without the computer


 Meaningless without the electronics

© Jakob Engblom
Pedometer
Information Technology

 Obvious computer work:


 Count steps
 Keep time
 Averages
 etc.
 Hard computer work:
 Actually identify when a
step is taken
 Sensor feels motion of
device, not of user feet

© Jakob Engblom
Mobile phones
Information Technology

 Multiprocessor
 8-bit/32-bit for user
interface
 DSP for signals

 32-bit in IR port

 32-bit in Bluetooth

 8-100 MB of memory
 All custom chips
 Power consumption & battery
life depends on software

© Jakob Engblom
Mobile base station
Information Technology

 Massive signal processing


 Several
processing tasks per
connected mobile phone
 Based on DSPs
 Standard or custom
 100s of processors

© Jakob Engblom
Telecom Switch
Information Technology

 Rack-based
 Control cards
 IO cards
 DSP cards
 ...
 Optical & copper
connections
 Digital & analog
signals

© Jakob Engblom
Smart Welding Machine
Information Technology

 Electronics control voltage


& speed of wire feed
 Adjusts to operator
 kHz sample rate
 1000s of decisions/second
 Perfect weld even for
quite clumsy operators
 Easier-to-use product, but
no obvious computer

© Jakob Engblom
Sewing Machine
Information Technology

 User interface
 Embroidery patterns
 Touch-screen control
 ”Smart”
 Sets pressure of “foot”
depending on task
 Raise foot when stopped
 New functions added by
upgrading the software

© Jakob Engblom
Forestry Machines
Information Technology

© Jakob Engblom
Forestry Machines
Information Technology

 Networked computer system


 Controlling arms & tools
 Navigating the forest

 Recording the trees harvested

 Crucial to efficient work

 Processors
 16-bit processors in a network

© Jakob Engblom
Operator Panel in this
machine
Information Technology

 Embedded PC
 Graphical display
 Touch panel
 Joystick
 Buttons
 Keyboard
 But tough enough
to be “out in the
woods”

© Jakob Engblom
Cars
Information Technology

 Multiple processors  Multiple networks


 Up to 100  Body, engine,
 Networked together telematics, media,
safety

© Jakob Engblom
Cars
Information Technology

 Functions by embedded processing:


 ABS: Anti-lock braking systems
 ESP: Electronic stability control

 Airbags

 Efficient automatic gearboxes

 Theft prevention with smart keys

 Blind-angle alert systems

 ... etc ...

© Jakob Engblom
Cars
Information Technology

 Large diversity in processor types:


 8-bit– door locks, lights, etc.
 16-bit – most functions

 32-bit – engine control, airbags

 Form follows function


 Processing where the action is
 Sensors and actuators distributed all
over the vehicle

© Jakob Engblom
Extremely Large
Embedded Systems
Information Technology

 Functions requiring
computers:
 Radar
 Weapons
 Damage control
 Navigation
 basically everything
 Computers:
 Large servers
 1000s of
processors
© Jakob Engblom
Inside your PC
Information Technology

 Custom processors
 Graphics, sound
 32-bit processors
 IR, Bluetooth
 Network, WLAN
 Harddisk
 RAID controllers
 8-bit processors
 USB
 Keyboard, mouse

© Jakob Engblom
If you want to play
Information Technology

 Lego mindstorms
robotics kit
 Standard controller
 8-bit processor
 64 kB of memory
 Electronics to
interface to motors
and sensors
 Good way to learn
embedded systems
We use new Lego NXT and Tetrix,
just introduced
© Jakob Engblom
Some of our ES Projects at WTU, UofM and PSU
1967 - 2004
 Ovulo-computer  Radon Transform
 PSUBOT – mobile robot with AI Processor
Information Technology

control for handicapped (award)


 Logic Design Machine (DAC
 Mandelbrot Set Fractal
Scholarship Award 1992) Processor 2008
 PLD programmer (national award)  Robot Controller for
 PID controller Image Processing
 CCM (paper and DAC Scholarship  Tracking System 2008
Award)
 Decomposition Machine (paper)
 ESOP minimizer
 SAT solver (paper)
(paper)
 FFT matcher  FPAA (patent 1999)
 Hough Transform (3 papers)  Teeth measurement
device (patent 1997)
Embedded systems
overview
Information Technology

Embedded computing systems


Computers are in here...

1. Computing systems embedded and here...

within electronic devices


and even here...
2. Hard to define. Nearly any
computing system other than a
desktop computer
3. Billions of units produced yearly,
versus millions of desktop units
4. Perhaps 50 per household and per Lots more of these,
though they cost a lot
automobile less each.

67
Anti-lock brakes
Auto-focus cameras
A “short list” of
Automatic teller machines
Automatic toll systems
Automatic transmission
embedded systems
Avionic systems
Modems
Battery chargers
Information Technology

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

68
And the list goes on and on
Education
Areas
Universität Dortmund

Concept of ES education at Dortmund

programming algorithms computer math electrical networks


organization education & digital circuits

Lego
first course lab
on embedded systems

control DSP machine real-time project applications …


systems vision systems group

 Can typically be taught in 4th or 5th term


 Provides motivation and context of other work in the area
 Mix of students and courses from CS and EE departments
Universität Dortmund

Structure of the CS curriculum at Dortmund


- current 4.5 year diploma program -
Term
1 Computer Programming & Math education
organization semantics
2 Circuits & OS Algorithms
communication
3 HW lab Networks SW lab
4 Databases …
5 Embedded systems Software …
fundamentals engineering
6 Advanced topic in ES … …

7 Project group … …
All dependences met
8 … …
9 Thesis
Universität Dortmund

Structure of the course by Marwedel

1.4 Structure
Universität Dortmund

Broad scope avoids problems with narrow perspectives


reported in ARTIST curriculum guidelines

“The lack of maturity of the domain results in a large variety


of industrial practices, often due to cultural habits”
“curricula … concentrate on one technique and do not
present a sufficiently wide perspective.”
“As a result, industry has difficulty finding adequately
trained engineers, fully aware of design choices.”

Source: ARTIST network of excellence:


Guidelines for a Graduate Curriculum on Embedded Software and
Systems,
http://www.artist-embedded.org /Education/Education.pdf, 2003
Universität Dortmund

Scope consistent with ARTIST guidelines

"The
"Thedevelopment
developmentof ofES
EScannot
cannotignore
ignore
the
theunderlying
underlyingHW HWcharacteristics.
characteristics.Timing,
Timing, ∫ P dt
memory
memoryusage,
usage,power
powerconsumption,
consumption,andand
physical
physicalfailures
failuresare
areimportant."
important."

"It
"Itseems
seemsthatthatfundamental
fundamentalbases
basesare are
really
reallydifficult
difficultto
toacquire
acquireduring
duringcontinuous
continuous
training
trainingififthey
theyhaven’t
haven’tbeen
beeninitially
initially
learned,
learned,andandwewemust
mustfocus
focuson
onthem."
them."
Universität Dortmund

Slides of Marwedel

Slides
Slidesareareavailable
availableat:at:
http://ls12-www.cs.uni-dortmund.de/~marwedel/
http://ls12-www.cs.uni-dortmund.de/~marwedel/
kluwer-es-book
kluwer-es-book
Master
Masterformat:
format: Powerpoint;
Powerpoint;
Derived
Derived formats:
formats: OpenOffice,
OpenOffice, PDF
PDF
Changes
Changes for for term
termof
of winter
winter2005/6:
2005/6:
--Additional
Additional"more
"more in-depth
in-depthsections".
sections".
--Selected
Selectedupdates.
updates.
--Improved
ImprovedB/W B/W printing.
printing.

Course announcements
Universität Dortmund

Importance of
Embedded
Systems
Universität Dortmund

Growing importance of embedded systems (1)

 Growing
Growingeconomical
economicalimportance
importanceofofembedded
embeddedsystems
systems
THE
THEgrowing
growingmarket
marketaccording
accordingtotoforecasts,
forecasts,e.g.:
e.g.:
•• Worldwide
Worldwidemobile
mobilephone
phonesales
salessurpassed
surpassed156.4
156.4mln
mln
units
unitsin
inQ2
Q22004,
2004,aa35%
35%increase
increasefrom
fromQ2
Q22003,
2003,
according
accordingtotoGartner
Gartner[www.itfacts.biz]
[www.itfacts.biz]

•• The
Theworldwide
worldwideportable
portableflash
flashplayer
playermarket
marketexploded
exploded
in
in2003
2003and
andisisexpected
expectedto togrow
growfrom
from12.5
12.5mln
mlnunits
unitsin
in
2003
2003to
toover
over5050mln
mlnunits
unitsinin2008
2008[www.itfacts.biz]
[www.itfacts.biz]

•• Global
Global3G3Gsubscribers
subscriberswill
willgrow
growfrom
froman
anestimated
estimated45
45
mln
mlnat
atthe
theend
endof
of2004
2004to
to85 85mln
mlnin
in2005,
2005,according
accordingto
to
Wireless
WirelessWorld
WorldForum.
Forum.[www.itfacts.biz]
[www.itfacts.biz]
1.3 … importance
Universität Dortmund

Growing importance of embedded systems (2)


••The
Thenumber
numberof
ofbroadband
broadbandlines
linesworldwide
worldwideincreased
increasedby
by
almost
almost55%
55%to
toover
over123
123mln
mlnin inthe
the12
12months
monthstotothe
theend
end
of
ofJune
June2004,
2004,according
accordingto
toPoint-Topic.
Point-Topic.[www.itfacts.biz]
[www.itfacts.biz]

••Today's
Today'sDVR
DVR(digital
(digitalvideo
videorecorders)
recorders)users
users--5%
5%of
of
households
households--will
willgrow
growto to41%
41%within
withinfive
fiveyears,
years,
according
accordingto
toForrester.
Forrester.[www.itfacts.biz]
[www.itfacts.biz]

••The
Theautomotive
automotivesector
sector… …ensures
ensuresthetheemployment
employmentof of
more
morethan
than44million
millionpeople
peopleininEurope
Europeonly.
only.
––Altogether,
Altogether,some
some88million
millionjobs
jobsin
intotal
totaldepend
dependon on
the
thefortunes
fortunesofofthe
thetransport
transportindustry
industryand
andrelated
related
sectors
sectors--representing
representingaround
around77perpercent
centof
ofthe
the
European
EuropeanUnion’s
Union’sGross
GrossNational
NationalProduct
Product(GNP)
(GNP)
[OMI
[OMIbulletin]
bulletin]
Universität Dortmund

Growing importance of embedded systems (3)

••....but
butembedded
embeddedchips chipsform
formthe
thebackbone
backboneof ofthe
the
electronics
electronicsdriven
drivenworld
worldin
inwhich
whichwe
welive
live...
...they
theyareare
part
partof ofalmost
almosteverything
everythingthat
thatruns
runson
onelectricity
electricity
[Mary
[MaryRyan,
Ryan,EEDesign,
EEDesign,1995]
1995]
••79%
79%of ofall
allhigh-end
high-endprocessors
processorsareareused
usedin inembedded
embedded
systems
systems
The
Thefuture
futureisisembedded,
embedded,Embedded
Embeddedisisthe thefuture!
future!
Foundation
Foundationfor forthe
the„post
„postPCPCera“
era“
ES
EShardly
hardlydiscussed
discussedin inother
otherCSCScourses
courses Importance
of
ES important for Technical University
ES important for Technical University education
Scope:
Scope:sets setscontext
contextfor
forspecialized
specializedcourses
courses

1.3 … importance
Universität Dortmund

Characteristics
of Embedded
Systems
Universität Dortmund

Characteristics of Embedded Systems (1)

 Must
Must bebedependable,
dependable,
••Reliability
Reliability R(t)
R(t) == probability
probabilityof of system
system working
working
correctly
correctlyprovided
providedthat
that isiswas
wasworking
workingat at t=0
t=0
••Maintainability
Maintainability M(d)
M(d) ==probability
probabilityofof system
system working
working
correctly
correctlyddtime
time units
unitsafter
after error
erroroccurred.
occurred.
••Availability
AvailabilityA(t):
A(t): probability
probabilityof of system
system working
workingat at time
time tt
••Safety:
Safety: nonoharm
harmto tobe
be caused
caused
••Security:
Security: confidential
confidentialand
and authentic
authenticcommunication
communication
Even
Evenperfectly
perfectly designed
designedsystems
systemscan canfail
failifif the
the
assumptions
assumptionsaboutabout the
theworkload
workloadand andpossible
possible errors
errorsturn
turn
out
out to
tobe
be wrong.
wrong.
Making
Makingthethesystem
systemdependable
dependablemust must not
not be
be an anafter-
after-
thought,
thought, itit must
must be
beconsidered
considered fromfromthethevery
verybeginning
beginning
1.1 terms and scope
Universität Dortmund

Characteristics of Embedded Systems (2)

 Must
Mustbebeefficient
efficient
–– Energy
Energyefficient
efficient
–– Code-size
Code-sizeefficient
efficient
(especially
(especiallyfor
forsystems
systemson onaachip)
chip)
–– Run-time
Run-timeefficient
efficient
–– Weight
Weightefficient
efficient
–– Cost
Costefficient
efficient
 Dedicated
Dedicatedtowards
towardsaacertain
certainapplication
application
Knowledge
Knowledgeaboutaboutbehavior
behaviorat atdesign
designtime
timecan
can be
beused
used
to
tominimize
minimizeresources
resourcesand andtotomaximize
maximizerobustness
robustness
 Dedicated
Dedicateduseruserinterface
interface
(no
(nomouse,
mouse,keyboard
keyboardand andscreen)
screen)
Universität Dortmund

Characteristics of Embedded Systems (3)

 Many
ManyES ESmust
mustmeet
meetreal-time
real-timeconstraints
constraints
–– AAreal-time
real-timesystem
systemmustmustreact
reactto
tostimuli
stimulifrom
fromthethe
controlled
controlledobject
object(or
(orthe
theoperator)
operator)within
withinthe
thetime
time
interval
intervaldictated
dictatedby bythe
theenvironment.
environment.
–– For
Forreal-time
real-timesystems,
systems,right
rightanswers
answersarriving
arrivingtootoolate
late
are
arewrong.
wrong.
–– „A
„Areal-time
real-timeconstraint
constraintis iscalled
calledhard,
hard,ififnot
not
meeting
meetingthat thatconstraint
constraintcould
couldresult
resultininaa
catastrophe“
catastrophe“[Kopetz,
[Kopetz,1997].
1997].
–– All
Allother
othertime-constraints
time-constraintsare arecalled
calledsoft.
soft.
–– AAguaranteed
guaranteedsystem
systemresponse
responsehas hasto
tobe
beexplained
explained
without
withoutstatistical
statisticalarguments
arguments
Real-Time Systems
Information Technology

 Embedded and Real-Time


 Synonymous?

embedded
 Most embedded
systems are embedded
real-time real-time

 Most real-time real-time


systems are
embedded
© Jakob Engblom
Universität Dortmund

Characteristics of Embedded Systems (4)

 Frequently
Frequentlyconnected
connectedto tophysical
physicalenvironment
environment
through
throughsensors
sensorsandandactuators,
actuators,
 Hybrid
Hybridsystems
systems
(analog
(analog++digital
digitalparts).
parts).
 Typically,
Typically,ES
ESare
arereactive
reactivesystems:
systems:
„A
„Areactive
reactivesystem
systemis isone
onewhich
whichis isin
incontinual
continual
interaction
interactionwith
withisisenvironment
environmentand andexecutes
executesatataa
pace
pacedetermined
determinedby bythat
thatenvironment“
environment“[Bergé,
[Bergé,1995]
1995]
Behavior
Behaviordepends
dependson oninput
inputand
andcurrent
currentstate.
state.
automata
automatamodel
modelappropriate,
appropriate,
model
modelofofcomputable
computablefunctions
functionsinappropriate.
inappropriate.
Universität Dortmund

Characteristics of Embedded Systems (5)

 ES
ESare
areunderrepresented
underrepresented in in teaching
teachingand
and
public
publicdiscussions:
discussions:
„Embedded
„Embeddedchips
chipsaren‘t
aren‘t hyped
hypedin inTV
TVand
and
magazine
magazineads
ads...
... [Mary
[MaryRyan,
Ryan, EEDesign,
EEDesign, 1995]
1995]

Not
Notevery
everyES
EShas
hasall
allof
ofthe
theabove
abovecharacteristics.
characteristics.
Def.:
Def.:Information
Informationprocessing
processingsystems
systemshaving
havingmost
mostof
ofthe
the
above
abovecharacteristics
characteristicsare
arecalled
calledembedded
embeddedsystems.
systems.
Course
Courseon
onembedded
embeddedsystems
systemsmakes
makessense
sensebecause
becauseof
ofthe
the
number
numberof
ofcommon
commoncharacteristics.
characteristics.
Universität Dortmund

Challenges of
Embedded
Systems
Universität Dortmund

Quite a number of challenges, e.g. dependability

Dependability?
Dependability?

 Non-real
Non-realtime
timeprotocols
protocolsused
usedfor
forreal-time
real-timeapplications
applications
(e.g.
(e.g.fire
firedepartments)
departments)

 Over-simplification
Over-simplificationofofmodels
models
(e.g.
(e.g.aircraft
aircraftanti-collision
anti-collisionsystem)
system)

 Using
Usingunsafe
unsafesystems
systemsforforsafety-critical
safety-criticalmissions
missions
(e.g.
(e.g.voice
voicecontrol
controlsystem
systemininLos
LosAngeles;
Angeles;~~800
800
planes
planeswithout
withoutvoice
voiceconnection
connectionto totower
towerfor
for>>33hrs
hrs
Universität Dortmund

Challenges for implementation in hardware

 Lack
Lackof
of flexibility
flexibility(changing
(changingstandards).
standards).
 Mask
Maskcost
cost for
for specialized
specializedHW
HW becomes
becomesvery
very expensive
expensive

Trend
towards
implementation
in Software

2010
[http://www.molecularimprints.com/Technology/
tech_articles/MII_COO_NIST_2001.PDF9]
Universität Dortmund

Importance of Embedded Software


and Embedded Processors

“... the New York Times has


estimated that the average The average
Most of the
American comes into contact American does
functionality will
with about 60 micro- notimplemented
be drive a
processors every day....” BMW!
in software
[Camposano, 1996]

Latest top-level BMWs


contain over 100 micro-
processors
[Marwedel, 2003]
Universität Dortmund

Challenges for implementation in software

If embedded systems will be


implemented mostly in software, then
why don‘t we just use what software
engineers have come up with?
Universität Dortmund

Software complexity is a challenge

 Exponential increase in software


complexity
 In some areas code size is
doubling every 9 months [ST
Microelectronics, Medea Workshop, Fall
2003]
 ... > 70% of the development cost
for complex systems such as Rob van Ommering, COPA Tutorial, as cited by: Gerrit Müller:
Opportunities and challenges in embedded systems,

automotive electronics and Eindhoven Embedded Systems Institute, 2004

communication systems are due


to software development
[A. Sangiovanni-Vincentelli, 1999]
Universität Dortmund

More challenges for embedded software

 Dynamic
Dynamicenvironments
environments
 Capture
Capture the
therequired
requiredbehaviour!
behaviour!
 Validate
Validate specifications
specifications
 Efficient
Efficient translation
translationof
of specifications
specifications
into
into implementations!
implementations!
 How
Howcan
can we
wecheck
check that
that we
we meet
meet real-
real-
time
timeconstraints?
constraints?
 How
Howdo dowewevalidate
validate embedded
embeddedreal-real-
time
timesoftware?
software? (large
(largevolumes
volumesof of data,
data,
testing
testingmay
maybebe safety-critical)
safety-critical)
Universität Dortmund

It is not sufficient to consider ES


just as a special case of software engineering

EE knowledge must be available,


Walls between EE and CS must be torn down

CS EE
Universität Dortmund

Summary of ES introduction

 Definition
Definitionofofembedded
embeddedsystems
systems
 Application
Applicationareas
areas
 Examples
Examples
 Curriculum
Curriculum
 Characteristics
Characteristics
-- Reliability
Reliability
 Growing
Growingimportance
importanceofofembedded
embeddedsystems
systems
 Challenges
Challengesin inembedded
embeddedsystem
systemdesign
design
Universität Dortmund

First Part of First Homework

Write a short essay

1.
1. Which
Which types
types of
of embedded
embedded systems
systems are
are most
most
interesting
interesting to
to you
you and
and why?
why?
2.
2. What
What kind
kind of
of project
project you
you are
are interested
interested in?
in?
3.
3. How
How can
can your
your project
project contribute
contribute to
to society?
society?
4.
4. Challenges
Challenges of of your
your project
project as
as part
part of
of
embedded
embedded system
system design
design challenges.
challenges.
Universität Dortmund

General Architecture of a Digital System

Input signals Output signals

Control Unit

Data Path

A/D D/A

Memory
Universität Dortmund

From ASIC to system on a chip


Universität Dortmund

NAND
Source gate drain
VDD

gate

W 
β n = µn Cox  
a  L

c  W
 0

source drain
 βn

2 
b ID =  2 (V GS − V L )
Tn DSV −V DS 
n  2  


 β


 2
n (V
GS
− V )
Tn 
2 1+ λ V
 (DS − V DS , )
sat



Universität Dortmund

Accumulator
Universität Dortmund

Multiplexer

ALU
Universität Dortmund

Memory

Register
Universität Dortmund
Universität Dortmund

Finite State Machines


A=0
S1, 00 S3, 10

A=0

A=1
A=1

S2, 01
S4, 11 VCC

A=1 A=0

A=0
U2A
U1D U1A 4
J? U1B PRE
11 2 3 5
CLK Q
8 13 5 1 2 6
D Q
15 12 4 3 1
CLR
7 6
14 SN7402 SN7402 SN74LS74A
6 SN7402
13
5
12
4
11 U2B
3 U1C 10
PRE
10 8 11 9
CLK Q
2 10 12 8
D Q
9 9 13
CLR
1
SN7402 SN7474
DB15
Universität Dortmund

Design PCB or realize in an FPGA/PLD

In our projects we will


use FPGA and GPU.
Boards exist. No PCB
design
Universität Dortmund

Short Review of AND/OR and AND/EXOR Logics

AA⊕ ⊕ AA==00 A(B ⊕ C) = AB ⊕ AC


AA⊕ ⊕ A’
A’== 11 A+B = A ⊕ B ⊕ AB
AA⊕ ⊕ 1=A’
1=A’ A+B = A ⊕ B when AB = 0
A’⊕
A’ ⊕ 1=A
1=A A ⊕ (B ⊕ C) = (A ⊕ B) ⊕ C
AA⊕ ⊕ 0=A
0=A (A B) C = A (B C)
AA⊕ B=BB ⊕
⊕ B= ⊕ AA A+B = A ⊕ B ⊕ AB = AND/EXOR
AA BB==BB AA A⊕ B(1 ⊕ A) = A ⊕ BA’

1. These rules are sufficient to minimize Exclusive Sum of Product


expression for small number of variables
2. We will use these rules in the class for all kinds of reversible,
quantum, optical, etc. logic.
3. Try to remember them or put them to your “creepsheet”.
Universität Dortmund

Natural number of the cell


YZ

W X 00 01 11 10

0 1 3 2

00 1 1 0 1
This ESOP 4 5 7 6

is :
01 0 0 1 0
W’X’⊕YZ 142 13 15 14

11 0 0 1 0
Learn how to 8 9 11 10
design graphically
such solutions 10 0 1 0
0
Universität Dortmund

Short Review of Exor Logic

AA⊕⊕ AA== 00 A(B ⊕ C) = AB ⊕ AC


AA⊕⊕ A’
A’== 11 A+B = A ⊕ B ⊕ AB
AA⊕⊕ 1=A’
1=A’ A+B = A ⊕ B when AB = 0
A’⊕
A’ ⊕ 1=A
1=A A ⊕ (B ⊕ C) = (A ⊕ B) ⊕ C
AA⊕⊕ 0=A
0=A (A B) C = A (B C)
AA⊕ B= BB⊕
⊕ B= ⊕ AA A+B = A ⊕ B ⊕ AB =
AABB==BB AA A⊕ B(1 ⊕ A) = A ⊕ BA’

These rules are sufficient to minimize Exclusive Sum of


Product expression for small number of variables
We will use these rules in the class for all kinds of
reversible, quantum, optical, etc. logic. Try to remember
them or put them to your “creepsheet”.
Universität Dortmund

Natural number of the cell


YZ

W X 00 01 11 10

0 1 3 2

00 1 1 0 1
This ESOP 4 5 7 6

is :
01 0 0 1 0
W’X’⊕YZ 142 13 15 14

11 0 0 1 0
Learn how to 8 9 11 10
design graphically
such solutions 10 0 1 0
0
Universität Dortmund

Karnaugh Map
YZ

W X 00 01 11 10

0 1 3 2

00 1 1 1
4 5 7 6

01 1 1 1
142 13 15 14

11 1
8 9 11 10

10 1 1
1
Universität Dortmund

Karnaugh Map for SOP


YZ

W X 00 01 11 10

0 1 3 2

00

4 5 7 6

AND/OR 01

142 13 15 14

11

8 9 11 10

10
Universität Dortmund
Universität Dortmund

Homework number 1 (Due Monday)


Second Part of First Homework

1.
1. Design
Design anan adder
adder ofof two
two 3-bit
3-bit numbers.
numbers.
2.
2. Synthesize
Synthesize as as an
an ESOP
ESOP or or factorized
factorized ESOP.
ESOP.
3.
3. Minimize
Minimize graphically,
graphically, algebraically,
algebraically, describe
describe
hierarchically
hierarchically or
or using
using VHDL/Verilog.
VHDL/Verilog.
4.
4. Draw
Draw the
the circuit.
circuit.
Universität Dortmund

Please review

1.
1. Karnaugh
KarnaughMapsMaps(Kmaps,
(Kmaps,forforshort)
short)for
for2,3,4
2,3,4and
and55
variables.
variables.
2.
2. The
Theadjacent
adjacentcells
cells--geometrically
geometricallyandandininthe
thesense
senseofof
Hamming
Hammingdistance.
distance.
3.
3. Enumeration
Enumerationof ofcells
cells(minterms)
(minterms)
4.
4. Don’t
Don’tcare
careminterms
mintermsand andhow
howto touse
usethem
them
5.
5. How
Howtotofind
findprime
primeimplicants
implicants
6.
6. How
Howtotofind
findSum-of-Products
Sum-of-Products(SOP)(SOP)Covers
Coversof ofsets
setsof
oftrue
true
minterms
mintermswith
withprime
primeimplicants.
implicants.
7.
7. What
Whatare
areessential
essentialprime
primeimplicants
implicantsandanddistinct
distinctvertices.
vertices.
1.
1. Distinct
Distinctvertices
verticesare
areminterms
mintermsthatthatare
arecovered
coveredby byonly
only
one
oneprime
prime
2.
2. Essential
Essentialprimes
primesareareprimes
primesthat
thatcover
coverdistinct
distinctvertices
vertices
Universität Dortmund

What else should you review for next time?

1. Please review the Kmap, implicants and covering from any


undergraduate textbook such as Roth or Katz
2. Review basic Boolean algebra, De Morgan rules, factorization
and flip-flops (D,T,JK).
3. You should be able to take arbitrary Kmap of 5 variables, truth
table, netlist or expression and convert it to a truth table or
Kmap.
4. Next you should be able to minimize it and draw a schematic
with gates such as EXOR, NAND, NOR, etc.
5. You should be able to reformulate problem expressed in
English as a Boolean minimization or decision problem.
6. SOP and ESOP logic and circuits.
7. These are the minimum information to start practical design
problems.
Universität Dortmund

Questions for Review and Exams

1. Give a definition of Embedded Systems


2. List your ideas about applications of Embedded Systems for:
1. Autistic children therapy and diagnosis
2. Alcoholics and addicts therapy and diagnosis
3. Mountaineers
4. Exercising equipment
5. Any other area of life where ES are not yet much used, think
about human benefit

3. What are real time systems?


4. Think about ES that are big state machines. List them
5. Think about sensors that may be used with ES? How much do they
cost?
6. Think about effectors that are used in ES? Their cost and where to get
them?
7. What are the biggest challenges of Embedded Systems reasearch?
8. What are the challenges of practical design of ES that takes
economics into account?
Universität Dortmund
Slides of Peter
Embedded Systems Marweded
andJakob
Engblom
are used

Graphics: © Alexandra Nolte, Gesine Marwedel, 2003


Some slides come from various sources, including Adam
Postula, Mark Schulz and U.C. Berkeley

Вам также может понравиться