1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of...

58
1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University [email protected] http://resl.icu.ac.kr

Transcript of 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of...

Page 1: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

1

Lecture 1 - Introduction

ICE 1222-2342 Microprocessor + Lab.

2008 Fall

Daeyoung Kim

School of EngineeringInformation & Communications University

[email protected]://resl.icu.ac.kr

Page 2: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

2

Course Introduction - I ICE 1222 / 2342 – Microprocessor + Lab.

Undergraduate course for CSE & ECE students ARM Microprocessors – Regular Class

ARM Architecture, Assembly Language Programming

Instruction Set, ARM Processor/CPU Cores Memory Hierarchy Architectural Support for

High-level languages, System Development, Operating Systems

Embedded Systems Development

ARM based Embedded Systems and Software - Laboratory

Page 3: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

3

Course Introduction - II

Instructor Daeyoung Kim

Phone) 866-6157 E-mail) [email protected]

Office : T329

TA

Seonghoon Kim Office: T326 E-mail: [email protected]

Jong-uk Lee Office: T326 E-mail: [email protected]

Page 4: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

4

Course Introduction - III

Course Materials Required Textbook :

ARM System-on-Chip Architecture (2nd Edition). by Stephen B. Furber

Reference Materials :

ARM Architecture Reference Manual (2nd Edition) by Dave Jagger, David Seal (Editor)

EMPOS II Manual/Teaching Material – Hanback Electronics

Page 5: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

5

Course Introduction - IV Course Homepage

http://resl.icu.ac.kr/~kimd/class/ice1222-2342-2008f/ICE1222-2342.htm

Time and Place Class

Mon 14:30-15:45 at L301 Fri 09:00-10:15 at L301

Laboratory Wed 7:00PM-9:00PM (Lab.) – L508

Academic Integrity Cheating homework, project -> zero score for both parties

Late policy No late submission except for emergency situation

Basic grading policy A : 50%, B : 30%, C : 20%

Page 6: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

6

PDA Reference Platform – EMPOS-II

Page 7: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

7

Lab Scheule

Week Topic

1 Course Introduction

2 Development Environment setup

3 Bootloader

4 Linux Kernel

5 File system

6 Write Embedded Linux Application

7 (2008/10/13) Midterm exam period

8 Web server porting

9 Device Driver

10 QT/E Environment

11 QTOPIA

12 Project

13 (2008/12/8) Final exam period

Page 8: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

8

Embedded Systems & Microprocessors

Page 9: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

9

Embedded Systems

Page 10: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

10

Definition of Embedded Systems

An embedded system is a device that includes a programmable computer but is not itself a general-purpose computer.

An embedded system is usually only designed for one single purposecan be highly optimizedAll unneeded features are a disadvantage (cost, power)

Source: Wolf 2000,© 2000 Morgan Kaufman

Page 11: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

11

Typical Embedded System

Page 12: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

12

Embedded Systems – Play Station 3

• 7 Cell processors 3.2 GHz each [originally spec = 9]

• Graphics: Nvidia RSX 550 Mhz GPU 1.8 TFlops – 100 billion shader ops/sec – 300 million transitors – 51 billion dot products/sec – Full HD – 1080p

• Total 2.18 Tflops

• 512MB RAM – split between CPU and graphics – 25.6GB/s

• 512KB L2 cache

• 7 AltiVec vector processing units

• Blu-ray DVD [25GB]

Page 13: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

13

Embedded Systems – Nintendo Wii

- CPUPowerPC based "Broadway" processor (729Mhz)- GPUATI "Hollywood" processor (243Mhz)- Memory88mb main memory, 64mb ext. RAM- Ports1..4 Wiimotes (BT), SD card slot, 2x USB 2.0,4x GCN, 2x GCN MC, WiFi 802.11b/g- Storage512mb built-in flash memory, supports 2gbSD, GCN MC, slot-loading disc- VideoUp to 480p (PAL/NTSC) or 576i (PAL/SECAM),Component, Scart, S-Video, Composite, 16:9- AudioStereo – Dolby Pro Logic II-capable, built-inspeaker in Wiimote

Page 14: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

14

IBM Power Architecture

Page 15: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

15

IBM Power Processor usages

Page 16: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

16

IBM Power Architecture

Page 17: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

17

Embedded Systems -- Examples

Page 18: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

18

NASA Pathfinder

(mission to MAR 1997)

Embedded Systems -- Examples

Page 19: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

19

How to design embedded systems?

Page 20: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

20

Abstraction Levels

Page 21: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

21

Abstraction Levels

Page 22: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

22

Abstraction Levels

Page 23: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

23

Abstraction Levels

Page 24: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

24

Embedded System & Embedded Linux

Embedded System - information processing is embedded in a larger system in which information processing is not visible to the user through PC-like interfaces

Features:

reliable, safe, and secure, efficientmostly fixed set of applications systems frequently reading, processing and controlling physical quantities

Embedded Linux Linux kernel runs on a particular CPU and board which will be

put into an embedded device

Real-Time System - must guarantee real-time constraints

Page 25: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

25

Real-Time Systems - 1 Often used in a dedicated application such as aircraft

avionics systems, automobile control, weapon systems, medical systems, industrial control systems, and etc.

Well-defined timing constraints. Timing correctness as well as functional correctness

Real-Time systems may be either hard or soft real-time.

Page 26: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

26

Real-Time Systems - 2

Hard real-time: Missing timing constraints -> catastrophic result Secondary storage limited or absent, data stored in short

term memory, or read-only memory (ROM) Conflicts with time-sharing systems, not supported by

general-purpose operating systems.

Soft real-time Missing timing constraints -> inconvenience, performance

degradation (best effort to meet timing constraint) Useful in applications (multimedia, virtual reality)

Page 27: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

27

Reasons for large processor variety - 1

• Processors inserted into the veins of the human body to compute averaged time series of sensor values: low performance requirements, must be power- and area-efficient.

• Processors in automobile electronics: must be able to sustain high voltages (100+ volts) and must be cheap.

• Processors in portable phones: must be very power efficient.

Large variety of applications

Page 28: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

28

Reasons for large processor variety - 2

Embedded processors exhibit features making them efficient for certain applications or application domains

Large variety of processors inembedded systems

• ... due to focus on efficiency• ... due to application domain• ... no need for code compatibility• ... in order to protect company IP• ... in order to reduce power consumption

Page 29: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

29

Architectural features of embedded processors

General rules (with exceptions):

1. Designed for efficiency (vs. ease of programming)2. Huge variety of processors (resulting from 1.)3. Harvard architecture4. Heterogeneous register sets5. Limited instruction-level parallelism or VLIW ISA6. Different operation modes (saturating arithmetic, fixed point)7. Specialised microcontroller & DSP instructions (bit-field addressing, multiply/accumulate, bit-reversal, modulo addressing)8. Multiple memory banks9. No “fat” (MMU, caches, memory protection, target buffers, complex pipeline logic, ...)

These features have to be known to the compiler!

Page 30: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

30

Harvard architecture

CPU

PCdata memory

program memory

address

data

address

data

Page 31: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

31

von Neumann vs. Harvard

Harvard can’t use self-modifying code.

Harvard allows two simultaneous memory fetches.

Most DSPs use Harvard architecture for streaming data: greater memory bandwidth; more predictable bandwidth.

Page 32: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

32

Popular Microprocessors

Page 33: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

33

Microcontrollers

Microcontroller including a CPU, memory,

a clock oscillator, and I/O

on a single IC.

Microprocessor Some elements such as

memory, or I/O are missing

Page 34: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

34

ATMEL ATMEGA 128(L) Microcontroller

Page 35: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

35

ATMEL ATMEGA 128(L)

Page 36: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

36

TI MSP430 Microcontrollers

Page 37: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

37

TI MSP430 Microcontrollers

Page 38: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

38

Freescale(Motorola) – 8-bit Microcontrollers roadmap - 1

Page 39: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

39

Freescale(Motorola) – 8-bit Microcontrollers roadmap - 2

Page 40: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

40

Freescale(Motorola) – 8-bit Microcontrollers roadmap - 3

Page 41: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

41

Freescale(Motorola) – 16-bit Microcontrollers roadmap

Page 42: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

42

Page 43: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

43

ARM Architecture Roadmap - 1

Page 44: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

44

ARM Architecture Roadmap - 2

Page 45: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

45

Why ARM?

Page 46: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

46

ARM Core Selection Guide - 1

Page 47: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

47

ARM Core Selection Guide - 2

Page 48: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

48

Compaq iPAQ H3600

SA-1110

Page 49: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

49

SA-1110 Block DiagramARM+DEC -> Intel

                                                                                                     

                                                                             

                                                                                                     

                                                                                   

Page 50: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

50

SA-1111 Block Diagram

                                                                                                     

                                                                             

Page 51: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

51

SA-1110/SA-1111 System Example

                                                                                                     

                                                                             

                                                                                                  

                                                                                

Page 52: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

52

Intel Xscale – PXA255

                                                                                                     

                                                                             

                                                                                                  

                                                                                

Page 53: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

53

Intel Xscale – PXA270 for Embedded Computing

                                                                                                     

                                                                             

Page 54: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

54

Modem Chip Evolution for Cellular Phone

Page 55: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

55

Mobile Station HW - Base band

Page 56: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

56

Mobile Station SW Architecture

Applications (GVM, Wavelet, M-Commerce, LBS..)

Applications (GVM, Wavelet, M-Commerce, LBS..)

Radio Telephony Device Control (CDMA/GSM/GPRS/WCDMA)

Radio Telephony Device Control (CDMA/GSM/GPRS/WCDMA)

APP ManagerAPP Manager ProtocolStack

ProtocolStack

Radio Comm. Interface

Radio Comm. Interface

I/O Device Driver(HW Abstraction Layer)

I/O Device Driver(HW Abstraction Layer)

Embedded OS (REX, VxWorks, Symbian)Embedded OS (REX, VxWorks, Symbian)

Mobile PlatformMobile Platform T-APIsT-APIsG-APIsG-APIs

WAPBrowser

WAPBrowser

Embedded HWEmbedded HW

Page 57: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

57

I/O Device Drivers

Keypad Touchpad Voice Recognition LCD Sound Speech Synthesis Light IrDA USB UART Bluetooth

Page 58: 1 Lecture 1 - Introduction ICE 1222-2342 Microprocessor + Lab. 2008 Fall Daeyoung Kim School of Engineering Information & Communications University kimd@icu.ac.kr.

58

Embedded SystemsDevelopment Environment