6.894 pervasive computing larry rudolph. 6.894 fall 2004: introduction larry rudolph course overview...

38
6.894 Pervasive Computing Larry Rudolph

Upload: alvin-phillips

Post on 30-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

6.894Pervasive

ComputingLarry Rudolph

6.894 Fall 2004: Introduction Larry Rudolph

Course Overview

Two sets of students -- MIT and SMA

Two parts to class

Individual technologies (PS & Quiz)

Group projects

Materials

iPaq & backpaq, Cricket, Nokia 6600

Slides, handouts, notes (raw)

Readings

TA’s -- filter for your questionsChris @ MIT, ???@ SMA

6.894 Fall 2004: Introduction Larry Rudolph

Tentative Schedule(Check Website for real one)

6.894 Fall 2004: Introduction Larry Rudolph

What is pervasive computing?

Post PC -- PC not the center

Digital devices all around us

Ubiquitous Computing

Mark Weisner -- Calm Computing

Oxygen Vision

To bring an abundance of computation & communication within easy reach of humansthrough natural perceptual interfaces of speech and visionso computation blends into peoples’ lives enabling them to easily do tasks they want to do:

collaborate, access knowledge, automate routine tasks

6.894 Fall 2004: Introduction Larry Rudolph

Pervasive, Human-Centric ComputingWhat do these words mean?

Computers are already pervasive

even in Boston and Singapore

Computers are already human-centric

are they for the birds?

It’s not really about computing

we already know how to do that

6.894 Fall 2004: Introduction Larry Rudolph

So, what do we mean?

Pervasive

Should be where we need themnot have to go to them or set them up

Human-centric

Computers should adapt to humanscomputation enters our world/environment

Computing

Computer-mediated functiondigital media

6.894 Fall 2004: Introduction Larry Rudolph

Look back to see ahead

Monolithic Programs & Hardware

Decompose into interactive pieces

Compose to build large thing

Continue decomposing into autonomous, interacting components

6.894 Fall 2004: Introduction Larry Rudolph

Finding and naming stuff

Few items

Use list

Many items

Use heirarchy

Very many items

Use multi-index

6.894 Fall 2004: Introduction Larry Rudolph

Organization of material

Top-down

would be nice to start writing apps

but we are not there yet

Bottom-up

Build on what is knownKeyboard, mouse, pen

Location, Speech, Multimodal

Integrative Technologies

6.894 Fall 2004: Introduction Larry Rudolph

H21 componentsHardware

iPAQ

Backpaq

Wireless Communication

Location sensing

Software– Linux

– Landcam

– Galaxy Audio Interface

– Cricket Location Reporting

6.894 Fall 2004: Introduction Larry Rudolph

iPAQ 38703870 iPAQ

– 206 MHz Strong Arm

– 64 Mbytes SDRAM

– 32 Mbytes flash storage

– Bluetooth

– SD/MMC card slot

– 16 bit color display

5500 iPAQ– 400 MHz Xscale

– 128 Mbytes SDRAM

–48 Mbytes flash storage

– Bluetooth & WiFi

– SD/MMC card slot

– 16 bit color display

6.894 Fall 2004: Introduction Larry Rudolph

Linux on H21

Why Linux?

Linux allows full access to all software

Common development with desktop

Can use open source code from many sources

Porting Linux to a handheld device

More difficult than standard PC or LaptopNon-standard interfaces (screen, control FPGAs, touch screen, …)

Requires rewritable Flash ROMs

For iPaq, port done by HP’s Cambridge Research Lab

6.894 Fall 2004: Introduction Larry Rudolph

H21 BackpaqRedesigned BackPaq (Version 3)

Philips imager (640x480 CMOS color imager UPA1022)

Larger FPGA (Xilinx Virtex 300E)

256k x 16 SRAM

Lower power

3-axis accelerometer in camera housing

2-axis accelerometer in Backpaq

Dual PCMCIA slots

Audio input/output codec and headset jack

32 MBytes Flash in Backpaq

LVDS Connector from FPGA pins

Lion Battery

6.894 Fall 2004: Introduction Larry Rudolph

V3 Backpaq Block Diagram

CricketListener

Xilinx

Cool Runner

CPLD

iPAQ

32M

Flash

Xilinx

300E

FPGA

PCMCIA Slot 0

PCMCIA Slot 1

Camera

Accel

Accel

SRAM

256kx16

Audio

LVDS

Connector

Accel

6.894 Fall 2004: Introduction Larry Rudolph

Philips ImagerPhilips UPA1022 Imager

640x480 CMOS

Improved image processing

9 bits/pixel/color

Fixed focus optics

6.894 Fall 2004: Introduction Larry Rudolph

Additional Accelerometers

Three Accelerometers:

One on Backpaq PCB

One perpendicular

One in camera plane

6.894 Fall 2004: Introduction Larry Rudolph

Accelerometer Linux Devices

2-Axis accelerometer (on main PCB)

/dev/backpaq/accel

Each read returns X and Y acceleration values

2-Axis accelerometer (on camera PCB)

/dev/backpaq/cam_accel

Each read returns X and Y acceleration values

3-Axis accelerometer (in camera housing)

/dev/backpaq/cam_accel_xyz

Created from 2 perpendicular 2-axis accelerometers

Each read returns X, Y and Z acceleration values

6.894 Fall 2004: Introduction Larry Rudolph

Reading the Accelerometers

Linux character device

Open the device:fd = open(“/dev/backpaq/accel”,O_RDONLY | O_NOCTTY);

Read from the devicestruct h3600_backpaq_accel_data accel_buffer;

read(fd,&accel_buffer,sizeof(accel_buffer));

The structure returned:struct h3600_backpaq_accel_data {

short x_acceleration;

short y_acceleration;

From:http://cvs.handhelds.org/cgi-bin/viewcvs.cgi/apps/backpaq/oneko/

6.894 Fall 2004: Introduction Larry Rudolph

Audio Headset Jack

Mono-input / Mono-output

Same codec as iPAQ

Driver and FPGA code under development now

Cell phone headset connector (2.5mm)

6.894 Fall 2004: Introduction Larry Rudolph

SRAM

64K 16-bit words

Cypress CY7C1021BV-33-10BAC

10ns Asynchronous SRAM

Connected to FPGA

Planned for use in image processing on FPGA

6.894 Fall 2004: Introduction Larry Rudolph

PCMCIA SlotsDual PCMCIA Slots

16-bit cards (Not CardBus) supported today

Pins driven directly from the FPGA

Hardware supports CardBus cards

Could implement CardBus controller in FPGA

6.894 Fall 2004: Introduction Larry Rudolph

LVDS Connector

Low Voltage Differential Signaling

10 differential signal pairsor 20 single signals

Driven from Xilinx 300E FPGA

5 Power and 5 ground pins

30 pin flex cable ZIF connector

6.894 Fall 2004: Introduction Larry Rudolph

Backpaq FPGAControls Backpaq functionality:

Camera

Accelerometers

PCMCIA Slots

Audio

LVDS Connector

SRAM

Reprogramablecat fpga.bin > /dev/backpaq/fpga

Automatically loaded from (/etc/fpga.bin) on each power cycle

Open source VHDL (8K lines)

http://cvs.handhelds.org/cgi-bin/viewcvs.cgi/mercury/backpaq/fpga_fifo_test/

6.894 Fall 2004: Introduction Larry Rudolph

Xilinx XCV300EPackage XCV300E-FG456

Wire-bond Fine-pitch BGA (1.0 mm ball spacing)

23mm x 23mm

312 pins

1.8V

0.18 m six layer metal process

Logic412K System gates (20-30% used as RAM)

32 x 48 CLB Array (3072 slices)

6912 Cells (4-input LUT + Register)

6144 Flip-flops

128K ram bits in 32 blocks + max 96k distributed memory

6.894 Fall 2004: Introduction Larry Rudolph

Nokia 6600a personal comuter? Series 60 Developer Platform 2.0

Operating System: Symbian OS 7.0s

Java Technology: CLDC 1.0 MIDP 2.0

Nokia UI API Wireless Messaging API (JSR-120)

Mobile Media API (JSR-135)

Bluetooth API (JSR-82 No OBEX)

Browser: WAP 2.0 XHTML over TCP/IP

Messaging: SMS MMS+SMIL

Digital Rights Management: OMA DRM forward lock

Video Support: 3GPP formats (H.263) MPEG-4 RealVideo

Sound Formats: MIDI tones (poly 24) True Tones (WB-AMR)

Band Functionality: GSM; 900 / 1800 / 1900

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

6.894 Fall 2004: Introduction Larry Rudolph

Nokia 6600a personal comuter?

Screen Display: 65536 Colors (16 bit) Res: 176 x 208

Physical Measurements: Dim: 109 x 58 x 24 mm Weight: 125g

Memory:Heap size: 3 MB Shared Memory for Storage: 6 MB + MMC Max JAR Size: Memory allocated dynamically

Keypad Descriptions: Grid key mat 2 labeled soft keys 5-way scrolling

Local Connectivity: Infrared Bluetooth

Network Data Support: CSD HSCSD GPRS

Extra Features: VGA camera w/ 2x zoom Video recorder SMTP/POP3/IMAP4 email RealOne Player

Wallet SyncML Themes MMC

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

6.894 Fall 2004: Introduction Larry Rudolph

ReferencesOxygen Overview

http://oxygen.lcs.mit.edu

Linux on handheld devices

http://handhelds.org

http://oxy.lcs.mit.edu

Example Source Code

http://cvs.handhelds.org/cgibin/viewcvs.cgi/apps/backpaq/oneko/

VHDL for FPGAhttp://cvs.handhelds.org/cgi-bin/viewcvs.cgi/mercury/backpaq/fpga_fifo_test/

6.894 Fall 2004: Introduction Larry Rudolph

Oxygen Integration Scenario

Demonstration

Video Conference Migration

6.894 Fall 2004: Introduction Larry Rudolph

Location Aware Computing

Computer:

Knows where it is

Uses the best available resources

Automatically transitions between resources

6.894 Fall 2004: Introduction Larry Rudolph

Mobile Video Conference

QuickTime™ and aYUV420 codec decompressor

are needed to see this picture.

6.894 Fall 2004: Introduction Larry Rudolph

Best Available ResourcesOutside

– Cell modem

– Audio conferencing on H21

In E21– Video projector

– High quality microphone

– Higher frame rate camera

– Wired network connection

– Higher quality compression using faster CPU

Inside– 802.11b wireless network

– Video conferencing with H21 camera

– Audio conferencing on H21

6.894 Fall 2004: Introduction Larry Rudolph

Location AwarenessGoal: Automatically determine location

Technology:

Cricket Location System

Detect transition into the building

Detect transition into the E21

Accelerometers in H21

Detect H21 being placed on the table

Future:

Network monitoring

6.894 Fall 2004: Introduction Larry Rudolph

Switch Between Network Resources

Goal: Seamless network transitions

Cell modem outside

802.11b wireless inside

Technology:

Migrate

6.894 Fall 2004: Introduction Larry Rudolph

Switch Between Physical Resources

Goal: Transition to best available equipment automatically

iPAQ: camera, microphone, speaker, screen

E21: camera, microphone, speaker, projector

Technology:

MetaGlue

6.894 Fall 2004: Introduction Larry Rudolph

Location Aware Computing

Computer:

Knows where it is

Uses the best available resources

Automatically transitions between resources

Move around in the real world

6.894 Fall 2004: Introduction Larry Rudolph

One More Time

QuickTime™ and aYUV420 codec decompressor

are needed to see this picture.

6.894 Fall 2004: Introduction Larry Rudolph

Future Mobility Technology

Goal: Self-mobile computing

Status: Testing on inanimate objects

Technology: Teleportation