processes and operating systems

18
© 2000 Morgan Kaufman Overheads for Computers as Components Processes and operating systems Telephone answering machine.

Upload: lenore

Post on 05-Jan-2016

37 views

Category:

Documents


1 download

DESCRIPTION

Processes and operating systems. Telephone answering machine. Theory of operation. Compress audio using adaptive differential pulse code modulation ( ADPCM ). analog. time. ADPCM. 3. 2. 1. -1. -2. -3. time. ADPCM coding. Coded in a small alphabet with positive and negative values. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Processes and operating systems

Telephone answering machine.

Page 2: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Theory of operation

Compress audio using adaptive differential pulse code modulation (ADPCM).

time

time

analog

ADPCM 3 2 1 -1 -2 -3

Page 3: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

ADPCM coding

Coded in a small alphabet with positive and negative values. {-3,-2,-1,1,2,3}

Minimize error between predicted value and actual signal value.

Page 4: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

ADPCM compression system

quantizer

integratorinverse

quantizer

encoder

inverse quantizer

integrator

decoder

samples

Page 5: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Telephone system terms

Subscriber line: line to phone.Central office: telephone switching

system.Off-hook: phone active.On-hook: phone inactive.

Page 6: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Real and simulated subscriber line

Real subscriber line: 90V RMS ringing signal; companded analog signals; lightning protection, etc.

Simulated subscriber line: microphone input; speaker output; switches for ring, off-hook, etc.

Page 7: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

RequirementsInputs Telephone: voice samples, ring.

User interface: microphone, playmessages button, record OGM button.

Outputs Telephone: voice samples, on-hook/off-hook command.User interface: speaker, # messagesindicator, message light.

Functions Default mode: detects ring, signals off-hook, pays OGM, records ICMPlayback: play all messages, wait 5seconds for new playback.OGM editing: OGM up to 10 sec.

Performance About 30 minutes voice (@ 8kHz).

Manufacturing cost Consumer product range ($50)

Power AC plugPhysicalsize/weight

Comparable to desk phone.

Page 8: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Comments on analysis

DRAM requirement influenced by DRAM price.

Details of user interface protocol could be tested on a PC-based prototype.

Page 9: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Answering machine class diagram

Microphone*

Line-in*

Line-out*

Buttons*

Speaker*

Lights

Playback

Controls Record Outgoing-message

Incoming-message

1

1

1

1

1

1

1

11 1 1

11

1

1

1

1

*

*

*

*

Page 10: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Physical interface classes

Line-out*

sample()pick-up()

Microphone*

sample()

Line-in*

sample()ring-indicator()

Speaker*

sample()

Buttons*

record-OGMplay

Lights*

messagesnum-messages

Page 11: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Message classes

Message

lengthstart-adrsnext-msgsamples

Incoming-message

msg-time

Outgoing-message

length=30 sec

Page 12: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Operational classes

Controls

operate()

Record

record-msg()

Playback

playback-msg()

Page 13: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Software components

Front panel module.Speaker module.Telephone line module.Telephone input and output

modules.Compression module.Decompression module.

Page 14: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Controls activate behavior

Compute buttons, line activations

Activations?

Play OGM Record OGM Play ICM Erase Answer

Wait for timeout

Erase

Play OGM

Allocate ICM

Record ICM

Page 15: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Record-msg/playback-msg behaviors

nextadrs = 0

msg.samples[nextadrs] =sample(source)

End(source)F

T

record-msg

nextadrs = 0

speaker.samples() =msg.samples[nextadrs];

nextadrs++

nextadrs=msg.lengthF

T

playback-msg

Page 16: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Hardware platform

CPU.Memory.Front panel.2 A/Ds:

subscriber line, microphone.2 D/A:

subscriber line, speaker.

Page 17: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

Component design and testing

Must test performance as well as testing. Compression time shouldn’t dominate

other tasks.Test for error conditions:

memory overflow; try to delete empty message set, etc.

Page 18: Processes and operating systems

© 2000 Morgan Kaufman

Overheads for Computers as Components

System integration and testing

Can test partial integration on host platform; full testing requires integration on target platform.

Simulate phone line for tests: it’s legal; easier to produce test conditions.