Smart Home and Embedded System Design

advertisement
Smart Home and
Embedded System Design
Class: International graduate student
Instructor: Dr.-Ing. Wei, Chao-Huang (魏兆煌)
Office: S706-3
E-Mail: drwei@mail.stust.edu.tw
Mobile Phone: 0930-937-932
Skype: drwei06
Self Introduction
I was born in Hsin-Chu Taiwan 1951, graduated from National
Taiwan University with BS degree of Physics, then went to
Germany for further study, and received Diplom Informatik
degree from Institute of Informatik / Technical University Berlin
Germany and Ph.D degree from Institute of Microelectronics in
the year 1989. After that I returned to Taiwan and serviced
several IT industry companies for about 10 years. Now I’m
teacher at department of electrical engineering of Southern
Taiwan University of Science and Technology.
In recent 6 years I have applied 42 patents and won 44
international invention awards.
Smart Home
Smart Home
Smart Home
Smart Home
Smart Home
Powerline Node 2
(for Lamp)
Powerline Node 1
(for DVD)
Web
Controller
Course Schedule






Hardware Design (VHDL & Schematic Entry)
Software Design (Microprocessor & C)
HW & SW Co-design
Small Real Time Operating System
Ethernet Network
Final Project
Content






What are embedded systems
History and development of embedded systems
Composition of embedded systems
Characteristic of embedded systems
Embedded system hardware development
Embedded system software development
What are embedded systems?

Definition:

Embedded system : any device that includes a
programmable computer but is not itself a generalpurpose computer.

Data processing systems except PCs and mainframe
computers.

Embedded systems are application dedicated
computing system.
A More Detailed Definition

Embedded system are application oriented devices,
which should be optimized with hardware and software
resources. A special computing system with demand of
functionality, reliability, cost, size, and power
consumption.

Generally, an embedded system consists of 4 parts -embedded
microprocessor,
peripheral
hardware
equipment, embedded operating system and user's
application program,used for realizing the functions ,
such as control on other equipment , monitoring or
management.
Characteristics (1/3)

Single-functioned



Executes a single program, repeatedly
Ex: RFID Reader
Tightly-constrained




Low cost
Low power
Small
Ex: MP3 Player
Characteristics (2/3)

Low cost



Low power


Tens of thousands to millions of units
Using a (relatively) suitable processor and
small memory size
Ex: Calculator
Slow speed

Fulfilling the requirement is OK
Characteristics (3/3)

Reactive and real-time




Continually reacts to changes in the system’s
environment
Must compute certain results in real-time
without delay
Ex: Microwave Oven
Firmware

Software embedded in hardware devices
Characteristic of embedded systems

Dedicate for special application



Soft-/Hardware, computing and
network communication
integration
Constrain of real-time


The embedded system is a specialpurpose system, while the PC is
for general applications.
Technology integration






Use RTOS commonly
Constrain of power
consumption

Usually no difference of
system software and
application software,
Software in ROM.
Small system kernel
High reliability
Resources much less then PC
Requirement of special
development tools
Not market monopoly
History and development of embedded
systems


First microprocessors was presented in 1971, it
marks the beginning of the embedded system.
View history of embedded systems from 4 respects:
 Hardware
 Software
 Products
 System architecture
History of embedded hardware





1971: Intel 4004, 4-bit microprocessor
TI, TMS1000, 4-bit microcontroller
 ROM, RAM, CPU + I/O port
1980: Intel MCS-51, 8microcontroller
16-bit, 32-bit microprocessor …
1990’s, DSP
 TMS320C30
History of embedded software


Procedure control and monitoring
Operating system
 1981, Embedded real time kernel VTRX32
 1990’s, QNX-4
 pSOS, VxWorks, Palm OS, WinCE, Embedded
Linux, LynxOS, uCOS, Nucleus…
 Win Mobile, iOS, Android
Architecture develops of
embedded system

Hardware system
 Software system
 4-bit single chip
 Real-time control/
monitoring procedure
 8-bit/ 16-bit single chip
 Dedicate system
 32-bit special purpose
microprocessor
 General purpose
system
 32-bit DSP
 SoC
 SoPC
General structure of an embedded system
Software
Input
I/O
Processor
Storage
I/O
Output
Embedding a computer
Example: Digital camera
Digital camera chip
Central processor
CCD
CCD preprocessor
Pixel coprocessor
D2A
A2D
lens
Input interface
JPEG codec
Microcontroller
Multiplier/Accum
Digital signal processor
DMA controller
Memory controller
Display ctrl
ISA bus interface
UART
LCD ctrl
Output display
Typical embedded system hardware
architecture
Chip Board Circuit
Power
Supply
CPU Core
Interrupt
Controler
Prescaler
Oscillation
Circuit
Timer
Reset
Circuit
CPU
BCU
DMA
Ports
I/O Port
A/D
Connecting
SRAM
Connecting
DRAM
Connecting
Flash
Connecting
ROM
Connection for Debugging
External Devices
USB
LCD
Pen
Keyboard
IRDA
Others
PDA: Handspring Visor

Hardware Specs:

Operating System: Palm OS version
3.5.2H
Processor: 33 MHz Motorola Dragonball
VZ (16-bit)
Memory: 8 MB RAM, 2M ROM
Display: 160x160 pixel, High-Res B&W,
4-bit (16 shades of gray) . Touch Panel
Battery: 2 AAA batteries
PC Connection : USB, IrDA, UART
Expansion Slot: PCMCIA






High-End Embedded System
Examples







Personal digital assistant (PDA).
Printer.
Cell phone.
Automobile: engine, brakes, air condition, etc.
Audio Video Recorder/Player.
Household appliances.
PC Keyboard/Mouse.
Software Architecture
Application Software
Hardware
Typical embedded system
software architecture (VxWorks)
Hardware Independent Software
Software tools, application programs
TCP/IP
VxWorks Libraries
I/O System
Wind kernel
File System
Hardware dependent Software
BSP
Network Driver
SCSI Driver
Hardware
Ethernet
Controller
Serial
Controller
Clock
Timer
SCSI
Controller
Embedded Operating System

Where to use

Multi-Task

Convenient user's interface

Network function
Upgrade and advance development


Basic functions of operating system



Scheduling of multi-task
Memory management
Hardware resource management
Real-time operation


Must finish operations by deadlines.
 Hard real time: missing deadline causes failure.
 Soft
real time: missing deadline results in
degraded performance.
Many systems are multi-rate: must handle operations
at widely varying rates.
Fundamental hardware
software elements
Hardware




Embedded processor
Memory/Storage
Circuits and power
supply
Interface controller
and connector
and
Software
 Real time operating
system (RTOS)
 Board Support
Package(BSP)
 Device Driver
 Protocol Stack
 Application programs
Experiment board for the course
DE2 Applications
Quartus II Design Software for
Hardware Circuits
Embedded system software development

Programming Languages


Assemble, C, Java…
Cross compiler

A kind program, which compiles the execution code
of target machine on another host machine.
Development of Graphic User Interface
Embedded system software development

Programming Languages


Assemble, C, Java…
Cross compiler

A kind program, which compiles the execution code
of target machine on another host machine.
Procedure of software development
C/Assemble
Source Code
.obj File
Library
Cross Compiler
Linker
Debug
System Image
File
Reset &
Download
OS kernel
Device Driver
Target Board
Download and debugging of
execution code
Development
Platform
Download execution code
Return debug
information
Target
Platform
Summary of Embedded System (1/3)

An "embedded system" is any computer
system or computing device that performs a
dedicated function or is designed for use with
a specific embedded software application.

Embedded systems may use a ROM-based
operating system or they may use a disk-based
system, like a PC. But an embedded system is
not usable as a commercially viable substitute
for general purpose computers or devices.
Summary of Embedded System (2/3)

A specialized computer system that is part of a larger
system or machine. Typically, an embedded system is
housed on a single microprocessor board with the
programs stored in ROM. Virtually all appliances that
have a digital interface -- watches, microwaves,
VCRs, cars -- utilize embedded systems. Some
embedded systems include an operating system, but
many are so specialized that the entire logic can be
implemented as a single program.
Summary of Embedded System (3/3)

The embedded system can be divided into chip,
board, and system level.



System on chip - Processor including the procedure
or the algorithm in one chip.
System on board - board contains some core module.
System on system - in main computing system.
Download