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

Post on 30-Dec-2015

212 views 0 download

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

1

Lecture 1 - Introduction

ICE 1222-2342 Microprocessor + Lab.

2008 Fall

Daeyoung Kim

School of EngineeringInformation & Communications University

kimd@icu.ac.krhttp://resl.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

3

Course Introduction - II

Instructor Daeyoung Kim

Phone) 866-6157 E-mail) kimd@icu.ac.kr

Office : T329

TA

Seonghoon Kim Office: T326 E-mail: shkim1980@icu.ac.kr

Jong-uk Lee Office: T326 E-mail: scinfuture@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

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%

6

PDA Reference Platform – EMPOS-II

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

8

Embedded Systems & Microprocessors

9

Embedded Systems

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

11

Typical Embedded System

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]

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

14

IBM Power Architecture

15

IBM Power Processor usages

16

IBM Power Architecture

17

Embedded Systems -- Examples

18

NASA Pathfinder

(mission to MAR 1997)

Embedded Systems -- Examples

19

How to design embedded systems?

20

Abstraction Levels

21

Abstraction Levels

22

Abstraction Levels

23

Abstraction Levels

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

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.

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)

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

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

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!

30

Harvard architecture

CPU

PCdata memory

program memory

address

data

address

data

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.

32

Popular Microprocessors

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

34

ATMEL ATMEGA 128(L) Microcontroller

35

ATMEL ATMEGA 128(L)

36

TI MSP430 Microcontrollers

37

TI MSP430 Microcontrollers

38

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

39

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

40

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

41

Freescale(Motorola) – 16-bit Microcontrollers roadmap

42

43

ARM Architecture Roadmap - 1

44

ARM Architecture Roadmap - 2

45

Why ARM?

46

ARM Core Selection Guide - 1

47

ARM Core Selection Guide - 2

48

Compaq iPAQ H3600

SA-1110

49

SA-1110 Block DiagramARM+DEC -> Intel

                                                                                                     

                                                                             

                                                                                                     

                                                                                   

50

SA-1111 Block Diagram

                                                                                                     

                                                                             

51

SA-1110/SA-1111 System Example

                                                                                                     

                                                                             

                                                                                                  

                                                                                

52

Intel Xscale – PXA255

                                                                                                     

                                                                             

                                                                                                  

                                                                                

53

Intel Xscale – PXA270 for Embedded Computing

                                                                                                     

                                                                             

54

Modem Chip Evolution for Cellular Phone

55

Mobile Station HW - Base band

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

57

I/O Device Drivers

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

58

Embedded SystemsDevelopment Environment