Introduction ECE 455/555 Embedded System Design Wei Gao

advertisement
ECE 455/555
Embedded System Design
Introduction
Wei Gao
ECE 455/555 Embedded System Design
1
Course Information
 Class time: 2:30pm – 3:20pm MWF
 Instructor: Wei Gao, weigao@utk.edu
 Office: Min Kao 353
 Office hour: 3:30pm – 4:00pm MWF
 TA: Dong Zhong, dzhong@vols.utk.edu
 TA office: Min Kao 431
 TA Office hour: 10am – 11am TTR
 Slides, schedule, announcement posted at
http://web.eecs.utk.edu/~weigao/ece455/fall2015/s
chedule.html
ECE 455/555 Embedded System Design
2
Examples of Embedded Systems









Cellphone, Personal Digital Assistant (PDA)
Printer.
GPS.
Automobile: engine, brakes, dash, etc.
Digital camera.
iPod.
Household appliances: microwave, air conditioning
Wrist watch.
and a lot more …
 Fact: > 95% of all microprocessors are used for
embedded systems.
ECE 455/555 Embedded System Design
3
Definition
 Embedded system: any device that includes a
computer but is not itself a general-purpose
computer.
 Application specific
 The design is specialized and optimized for specific
application
 Don’t need all the general-purpose bells and whistles.
ECE 455/555 Embedded System Design
4
Embedding a Computer
 Microcontroller (or MCU): a computer-on-a-chip
 a type of microprocessor emphasizing self-sufficiency and cost-
effectiveness
 has CPU, input/output, RAM, ROM, clock and etc on a single chip
output
analog
analog
actuators
CPU
input
analog
analog
sensors
embedded
computer
mem
ECE 455/555 Embedded System Design
5
Early history
 Automobiles used microprocessor-based engine
controllers starting in 1970’s.
 Control fuel/air mixture, engine timing, etc.
 Multiple modes of operation: warm-up, cruise, hill
climbing, etc.
 Provides lower emissions, better fuel efficiency.
ECE 455/555 Embedded System Design
6
Anti-Lock Brake System
 Pumps brakes to reduce skidding.
 Real-time and safety
sensor
sensor
brake
brake
ABS
hydraulic
pump
brake
brake
sensor
sensor
ECE 455/555 Embedded System Design
7
Automotive Systems
 A high-end car may have 100 microprocessors:
 4-bit microcontroller checks seat belt;
 microcontrollers run dashboard devices;
 16/32-bit microprocessor controls engine;
 Navigation;
 Entertainment: DVD, audio, satellite radio…
 Future
 Cars may drive by themselves??
 Control your car by speaking out, or even your mind
ECE 455/555 Embedded System Design
8
Other examples
 Simple control
 Front panel of microwave oven
 Digital control of air conditioning
 Canon EOS 3 has three microprocessors.
 32-bit RISC CPU runs autofocus and eye
control systems.
 Sony BRAVIA LCD TV has a standalone
microprocessor for image processing
 BRAVIA Engine 2
 Full 1080p video streaming: high
throughput required
ECE 455/555 Embedded System Design
9
Smartphones
 Specialized microprocessor
 Somehow much more powerful
Samsung Galaxy S5
iPhone 5S
2.1GHz Cortex-A15
1.3GHz dual-Core Cortex-A9
 Controls radio, sensors, display, speaker, …
 Multimedia contents and applications
ECE 455/555 Embedded System Design
10
Goal of This Course
 The common principles of embedded systems design
 Instead of a specific type of microcontroller
 Emphasize aspects that are distinct to embedded systems
 Textbook:
 Computers as Components: Principles of Embedded Computing System
Design, 3rd edition
 Marilyn Wolf, Georgia Tech
 Morgan Kaufmann Publishers, 2012
 Experimentation platform: Current
hot topic of embedded systems
 Wireless sensor networks
 Smartphone-based mobile systems
ECE 455/555 Embedded System Design
11
Goal of This Course
 References
 Introduction to Embedded Systems: A Cyber-Physical
System Approach
• Ashford Lee and Sanjit Seshia
• http://leeseshia.org/releases/LeeSeshia_DigitalV1_06.pdf
 Embedded Systems: A Contemporary Design Tool
• James Peckol
• Wiley, 2011
ECE 455/555 Embedded System Design
12
MEMSIC TelosB


Wireless sensor module for
building applications
Standards Based





Low Power



USB
IEEE 802.15.4/Zigbee
TinyOS
Expansion to other sensors:
temperature, light, humidity
Hardware designed from software
principles for low power operation
Isolation, buffering, fast wakeup
from sleep
Low Cost



Integrated design
20-30m range indoors
75-100m range outdoors

IEEE 802.15.4
 New wireless standard for low
power communication
 250kbps
 2.4GHz ISM band
 Zigbee-compatible
ECE 455/555 Embedded System Design
13
Typical Applications of Sensor Networks
1. Smart sensors massively
Structural Health
Monitoring
Fire Monitoring
distributed and
embedded in
environments
2. Self-organized wireless
network by
communicating with each
other
Health Care
Habitat Monitoring
3. Real-time environment
monitoring and control
Modified from Deborah Estrin, SIGMETRICS keynote,
http://lecs.cs.ucla.edu/~estrin/talks/Sigmetrics-June02.ppt
ECE 455/555 Embedded System Design
14
Acceleration (mg)
Structural Health Monitoring
15
Time plot, vertical sensors at L1-L5
V2
V4
V13
V7
V9
10
5
0
-5
-10
-150
50
100
150
Time (sec)
200
250
Source: David Culler’s MobiHoc’05 Keynote
ECE 455/555 Embedded System Design
15
Smartphone
 3G/4G connectivity
 Multimedia content/applications
 Varieties of onboard sensors
ECE 455/555 Embedded System Design
16
Typical Applications using Smartphones
1. Sensing capabilities of
smartphones
•
Sensing human behaviors
Demo from Dartmouth
Mobile sensing
2. Mobile Internet access
and user interaction
•
Mobile social
media
Mobile social networks
Yelp on smartphones
3. Location-based
services
ECE 455/555 Embedded System Design
17
Mobile Social Media
 Socializing with your friends
 Online chatting
 Facebook check-in
 Photo upload
 Gaming
 Mobile data access
 iCloud
 Mobile video streaming
ECE 455/555 Embedded System Design
18
Location-based Service
 Know where you are
 Know what is available near you
 Know who is available near you
ECE 455/555 Embedded System Design
19
Why are those systems special?
 Application specific
 Specialize and optimize the design for specific application
 Not a general-purpose computer.
• Don’t need all the bells and whistles, e.g., hard drive, monitor, keyboard…
 Have to worry about both hardware and software
 Have to worry about non-functional constraints
 Real-time
 Memory footprint
 Power
 Reliability and safety
 Cost
Just functionally working is NOT enough!
ECE 455/555 Embedded System Design
20
What will you learn from this course?
 Hardware
 Microprocessors, I/O, caches, memory, bus
 Programming and optimization for
 Optimal performance
 Low power
 Small memory footprint
 Software
 Real-Time Operating Systems (RTOS)
 Real-Time Scheduling Analysis
 Hardware/software co-design
 Practical system programming
 Sensor motes: TinyOS
 Smartphones: Android
ECE 455/555 Embedded System Design
21
What will you NOT learn from this course?
 Chip design
 ECE 451: Computer System Architecture
 Wireless/mobile networking
 ECE 453: Computer Communication Networks
 ECE 556: Wireless Sensor Networks
 Mobile application development
 Fancy UI, graphics optimization, user experience…
ECE 455/555 Embedded System Design
22
Grading
 Midterm exam 15%
 Final exam 20%
 Group project 45%





Proposal presentation 5%
Midterm presentation/demo 10%
Final presentation/demo 15%
Final report 15%
Normally 3 students/group (2 may be acceptable)
 Labs (3) 15%
 Lab hours?
 Doodle poll: http://doodle.com/9b5zakhqpbv26xmq
 Enter your time availability before next Wed 8/26
 Participation 5%
ECE 455/555 Embedded System Design
23
Course policy
 Academic integrity
 Must be your OWN work
 No collaboration for homework/lab assignment
 Lab policy
 Results must be checked by TA
 Printed copy of source code needs to be submitted
 Exam policy
 Closed-book, No discussion, No make-up exams
 Project policy
 Clearly identify the contribution of each group member
 Class policy
 No laptops in class
 Attend each lecture
ECE 455/555 Embedded System Design
24
Poll
 Are you a junior? a senior? a graduate student?
 Do you know C? C++? Assembly?
 Do you know RISC architecture?
 Will briefly review needed architecture concepts
 Do you know operating systems?
 Will review needed OS concepts
 Are you prefer more technical contents or
programming details?
ECE 455/555 Embedded System Design
25
Next Class
 Introduction of course projects
 Have a look at the sample student projects in the
past at the course website
 http://web.eecs.utk.edu/~weigao/ece455/fall2014/ece455
-fa14.html
 http://web.eecs.utk.edu/~weigao/ece455/fall2013/ece455
-fa13.html
 http://web.eecs.utk.edu/~weigao/ece455/fall2012/ece455
-fa12.html
ECE 455/555 Embedded System Design
26
Download