Prabal Dutta
University of Michigan
Lecture 1: Introduction
September 7, 2010
1
What is an embedded system?
2
3
Embedded, everywhere
4
What is driving the embedded everywhere explosion?
5
Outline
Technology Trends
Design Questions
Course Administrivia
6
Bell’s Law of Computer Classes:
A new computing class roughly every decade
Mainframe
Minicomputer
Workstation
PC
Laptop
CPSD year
“Roughly every decade a new, lower priced computer class forms based on a new programming platform, network, and interface resulting in new usage and the establishment of a new industry.”
Number Crunching
Data Storage productivity interactive streaming information to/from physical world
Adapted from
D. Culler
7
Moore’s Law:
IC transistor count doubles every two years
Photo Credit: Intel
8
Flash memory scaling:
Rise of density & volumes; Fall (and rise) of prices
9
Hendy’s “Law”:
Pixels per dollar doubles annually
Credit: Barry Hendy/Wikipedia
10
MEMS Accelerometers:
Rapidly falling price and power
O(mA)
ADXL345
[Analog Devices, 2009]
25 µA @ 25 Hz
10 µA @ 10 Hz @ 6 bits
[ST Microelectronics, annc. 2009] 11
MEMS Gyroscope Chip
J. Seeger, X. Jiang, and B. Boser
12
Energy harvesting and storage:
Small doesn’t mean powerless…
RF [Intel]
Clare Solar Cell
Thin-film batteries
Piezoelectric
[Holst/IMEC]
Electrostatic Energy
Harvester [ICL]
Shock Energy Harvesting
CEDRAT Technologies
Thermoelectric Ambient
Energy Harvester [PNNL]
13
Bell’s Law, Take 2:
Corollary to the Laws of Scale
Photo credits: Intel, U. Michigan
UMich Phoenix Processor
Introduced 2008
Initial clock speed
106 kHz @ 0.5V Vdd
Number of transistors
92,499
Manufacturing technology
0.18 µ
14
Outline
Technology Trends
Design Questions
Course Administrivia
15
Learning happens when assumptions are challenged and invalidated, so…
16
Mobile phones: the most successful technology ever
17
What happened elsewhere now happens on the phone
18
What happens when you press the power switch on your mobile phone?
19
Mobile phone system architecture
20
What’s inside a DSL modem?
21
What’s inside a DSL Modem?
1. Telephone decoupling electronics (for ADSL).
2. Multicolor LED (displaying network status).
3. Single color LED (displaying USB status).
4. Main processor, a TNETD7300GDU, TI ARM7.
5. JTAG (Joint Test Action Group) port.
6. RAM, a single ESMT M12L64164A 8 MB chip.
7. Flash memory, obscured by sticker.
8. Power supply regulator.
9. Main power supply fuse.
10. Power connector.
11. Reset button.
12. Quartz crystal.
13. Ethernet port.
14. Ethernet transformer, Delta LF8505.
15. KS8721B Ethernet PHY.
16. USB port.
17. Telephone (RJ11) port.
18. Telephone connector fuses.
22
Why study 32-bit MCUs and FPGAs?
23
MCU-32 and PLDs are tied in embedded market share
24
Why study the ARM architecture
(and the Cortex-M3 in particular)?
25
Lots of manufacturers ship ARM products
26
What differentiates these products from one another?
27
The difference is…
Peripherals
Peripherals
Peripherals
28
A embedded systems design example:
Turning the mobile phone into an oscilloscope
29
Integrating power, data, and processing
1” x 1”
30
Outline
Technology Trends
Design Questions
Course Administrivia
31
Instructional Staff
(see homepage for contact info, office hours)
Prabal
Dutta
Thomas
Schmid
Matt
Smith
Ye-Sheng
“Sam” Kuo
32
Prerequisites
• EECS 270: Introduction to Logic Design
– Combinational and sequential logic design
– Logic minimization, propagation delays, timing
• EECS 280: Programming and Intro Data Structures
– C programming
– Algorithms (e.g. sort) and data structures (e.g. lists)
• EECS 370: Introduction to Computer Organization
– Basic computer architecture
– CPU control/datapath, memory, I/O
– Compiler, assembler
33
Course Syllabus (tentative)
• See course homepage:
– http://www.eecs.umich.edu/~prabal/teaching/eecs373-f10
• Roughly
– 50%: Lab-centric
– 50%: Project-centric
• Labs
– FPGA + Hardware Tools
– MCU + Software Tools
– Memory + Memory-Mapped I/O
– Interrupts
– Timers and Counters
– Serial Bus Interfacing
– Data Converters (e.g. ADCs/DACs)
– Wireless Communications
34
Labs
• Start TODAY!
• Tutorials to familiarize you ARM, Actel tools
• Should be fun
– Learn how to sensor/control physical world
– Build hardware (include PCBs)
• Should be instructive
– Program in Verilog
– Program in C, and assembly
– Learn debugging skills
– Learn how to interface peripherals to the CPU/MCU
• Are challenging and time-consuming - plan ahead
35
Open-ended Project
• Goal: learn how to build embedded systems
– By building an embedded system
– Work in teams
– Pick a problem of your own interest
– Meet with instructors to discuss other ideas
• Should be related to the class and emphasize topics
• Scope of project must grow with size of team
36
Exams
• Midterm (October 21, 2010)
– Emphasize problem solving fundamentals
• Final (Date TBD)
– Cumulative topics
• Minute Quizzes
– Short, Random
– Over previous day’s material
37
Grading
38
Questions?
Comments?
Discussion?
39