Presentation is loading. Please wait.

Presentation is loading. Please wait.

© 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Processes and operating systems Telephone answering machine. 1.

Similar presentations


Presentation on theme: "© 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Processes and operating systems Telephone answering machine. 1."— Presentation transcript:

1 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Processes and operating systems Telephone answering machine. 1

2 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Theory of operation Compress audio using adaptive differential pulse code modulation (ADPCM). time analog ADPCM

3 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. 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. 3

4 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. ADPCM compression system quantizer integrator inverse quantizer  encoder inverse quantizer integrator decoder samples 4

5 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Telephone system terms Subscriber line: line to phone. Central office: telephone switching system. Off-hook: phone active. On-hook: phone inactive. 5

6 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. 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. 6

7 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Requirements 7

8 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Comments on analysis DRAM requirement influenced by DRAM price. Details of user interface protocol could be tested on a PC-based prototype. 8

9 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Answering machine class diagram Microphone* Line-in* Line-out* Buttons* Speaker* Lights Playback ControlsRecord Outgoing- message Incoming- message * * * * 9

10 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Physical interface classes Line-out* sample() pick-up() Microphone* sample() Line-in* sample() ring-indicator() Speaker* sample() Buttons* record-OGM play Lights* messages num-messages 10

11 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Message classes Message length start-adrs next-msg samples Incoming-message msg-time Outgoing-message length=30 sec 11

12 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Operational classes Controls operate() Record record-msg() Playback playback-msg() 12

13 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Software components Front panel module. Speaker module. Telephone line module. Telephone input and output modules. Compression module. Decompression module. 13

14 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Controls activate behavior Compute buttons, line activations Activations? Play OGMRecord OGMPlay ICMEraseAnswer Wait for timeout Erase Play OGM Allocate ICM Record ICM 14

15 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. 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.length F T playback-msg 15

16 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Hardware platform CPU. Memory. Front panel. 2 A/Ds: subscriber line, microphone. 2 D/A: subscriber line, speaker. 16

17 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. 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. 17

18 © 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. 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. 18


Download ppt "© 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Processes and operating systems Telephone answering machine. 1."

Similar presentations


Ads by Google