20
1 Lecture 1 Embedded Systems Overview RTOS/EOS Design Concept RTOS/EOS Case Study

Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

1

Lecture 1

• Embedded Systems Overview• RTOS/EOS Design Concept• RTOS/EOS Case Study

Page 2: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

2

Products with Embedded Systems?

• Of 4 billions microprocessors/microcontrollers sold (2002), 95% are for embedded products:– VCRs, DVD players– Cell phone– Microwave– Washer– Camera– Cars– Printers, copiers– ….

Page 3: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

3

Why are Embedded Systems Different?

• Dedicated to a specific task or tasks• Rich variety of microprocessors (over 300 types)• Designs are cost-sensitive• May have real-time performance constraints• Often used with Real-Time Operating Systems (RTOS)• Software failure can be life-threatening• May have constraints on power consumption • Operate over a wide-range of environmental conditions• Fewer system resources than a desktop system• All code might be stored in ROM• Require specialized design tools• May need on-chip debugging resources

Page 4: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

4

What is an Embedded System?

• Questions for considerations– Is a PDA an embedded system?– Is a cell phone an embedded system?– Is a PC inside of an industrial robot an embedded system?

• Typical textbook definition:– “A computer that is a component in a larger system, and is not

visible as a computer to a user of that system.”

• But - An embedded system may:– Look and function like a traditional computer,– Have a typical computer User Interface, or– Not contain a traditional CPU at all!

Page 5: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

5

What is an Embedded System?

• Our definition:– “A programmable component of subsystem providing some intelligence

functions to the system of which it is a part.”

• This can include:– Any device, or collection of devices, that contain one or more dedicated

computers, microprocessors, or microcontrollers. – Microprocessor chips– Programmable logic elements (FPGA, ASIC etc.)– Device(s) may be local - Printer, automobile, etc.– Devices may be distributed - Aircraft, ship, internet appliance.– A PC or workstation may be an embedded system.

• Key point:– Embedded computing devices have rigidly defined operational bounds.– Not general purpose computers (PC, Unix workstation).

Page 6: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

6

Characteristics of Embedded Systems• No Architectural Link to Standard Platforms

– PC(Win9X/NT/XP, Linux), MAC, Sun are considered as standard platforms. – Almost every embedded design (hardware and software ) is unique– The h/w and s/w are highly integrated and interdependent, such as ASICs.

• Real-time Constraints– Real time means the system must be able to respond to outside world.– Typically, embedded systems have moderate to severe real-time constraints– Time sensitive

• If a task or operation does not complete in the specified amount of time, the embedded device will perform below design requirements

• Example: A laser printer prints 8 pagers per minute instead of 10 ppm• Device continues to work

– Time critical• If a task or operation does not complete in the specified amount of time, the

embedded device will fail • Example: Flight control system on a fly-by-wire aircraft.• Device will not operate

Page 7: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

7

Characteristics of Embedded Systems

• May or May Not have OS services available

• Power Constraints– They are most likely to have power

constraints.• Low Fault Tolerance

– Fault tolerance is 1000X (or more ) lower in embedded systems than in desktop computers. May be life-threatening consequences if system fails

– Often engineered for the highest possible performance at the lowest cost

– Performance may not be an important consideration

Page 8: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

8

Let’s Define Some Terms -1

• Microprocessor– An integrated circuit which forms the central processing unit for a

computer or embedded controller, but required additional support circuitry to function

– MC68000, 80486, Pentium, K6, MicroChip PIC, etc.

• Microcontroller– A microprocessor plus additional peripheral support devices

integrated into a single package– Peripheral support devices may include:– Serial ports (COM ), Parallel (Ports ), Ethernet ports, A/D&D/A– Interval timers, watchdog timers, event counter/timers, real time

clock (RTC )– Other local processors (DSP, numeric coprocessor, peripheral

controller )

Page 9: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

9

Where it all started!

See: http://www.intel.com/intel/museum/25anniv/index.htm

Page 10: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

10

What Made E.S. Possible?

• Small and Cheap– 1971: Intel 4004, first

microprocessor (4bits), initially for a calculator.

– 1981: IBM chooses Intel 8088 for the first PC.

– Microprocessors get so cheap that microprocessor-based control system become the rule.

– Only limit: processing time.

Page 11: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

11

Microprocessor Microcontroller

Page 12: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

12

A “Typical” Embedded System

NMI

Page 13: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

13

Recent Developments

• Moore¡¦s Law: the complexity of integrated circuits will double every 18 months

• Process technology able to put more and more functionality on the same chip as the cpu

• Buzz Word: System on a Chip (SOC), or System on Silicon

Page 14: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

14

Another example: Intel PXA250

Page 15: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

15

Trends in Embedded Systems

20 million gates = 300, 68k microprocessor on one chip

Page 16: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

16

Let’s Define Some Terms -2

• Target system– The embedded system under development

• Host computer– The standard platform being used to develop the software and

link to the target system for debugging

• Cross-development– Using host-based tools to create a code image running on a

different instruction set architecture

Development Computer Target System

Page 17: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

17

Development Environment

Compiler

Linker

C File C File Asm. File

Binary File

Binary File

Binary File

Exec. File

Assembler

Library

Host System

Loader

Execution

Sender

Target System

Debugger

OS and App

Debugger

Sender

Exec. File

Exec. File

Debugger

Execution

Debugger

Page 18: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

18

Development Environment

• Where to store executable image on target system ?– ROM or FLASH

• Good for final product– Hold the bits permanently after power is turned off

• Impractical during the development stage– Reprogramming the ROM or the FLASH memory is time

consuming– RAM

• Cannot used in final product– Lose data almost immediately after power is turned off

• Good in development stage– Processor writes to memory simply and quickly

Page 19: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

19

Development Environment

• How to transfer the image onto the target?– Image Download

• To transfer an executable image from host onto the target system.

– Possible Approaches• Download the image through either a JTAG or BDM interface• Downloading the image over a serial (RS-232) or network

connection• Use special equipment to program the image into EEPROM or

Flash.

Page 20: Lecture 1 - National Chiao Tung Universitywjtsai/EmbeddedSystem...– 1971: Intel 4004, first microprocessor (4bits), initially for a calculator. – 1981: IBM chooses Intel 8088 for

20

Development Lifecycle