Download - Processes and operating systems
![Page 1: Processes and operating systems](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/1.jpg)
© 2000 Morgan Kaufman
Overheads for Computers as Components
Processes and operating systems
Telephone answering machine.
![Page 2: Processes and operating systems](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/2.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/3.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/4.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/5.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/6.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/7.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/8.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/9.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/10.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/11.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/12.jpg)
© 2000 Morgan Kaufman
Overheads for Computers as Components
Operational classes
Controls
operate()
Record
record-msg()
Playback
playback-msg()
![Page 13: Processes and operating systems](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/13.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/14.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/15.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/16.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/17.jpg)
© 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](https://reader035.vdocuments.us/reader035/viewer/2022081816/56813a33550346895da21d2a/html5/thumbnails/18.jpg)
© 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.