11/26/13

12
11/26/13 Rochester Institute of Technology 1 P14251 Underwater Acoustic Communication CE Overview - Software Architecture - Control unit flowchart and pseudo- code - Error Detection/Correction - Framing Information - Data Rate Analysis

description

P14251 Underwater Acoustic Communication. CE Overview Software Architecture Control unit flowchart and pseudo-code Error Detection/Correction Framing Information Data Rate Analysis. 11/26/13. Rochester Institute of Technology. 1. P14251 Underwater Acoustic Communication. - PowerPoint PPT Presentation

Transcript of 11/26/13

Page 1: 11/26/13

11/26/13 Rochester Institute of Technology 1

P14251Underwater Acoustic Communication

CE Overview- Software Architecture- Control unit flowchart and pseudo-code- Error Detection/Correction- Framing Information- Data Rate Analysis

Page 2: 11/26/13

11/26/13 Rochester Institute of Technology 2

P14251Underwater Acoustic Communication

Software Architecture PC_Interface

+receiveMessage(): string+sendMessage(string msg)

Tx_PC

+transmit(string msg)

Rx_PC

- empty : boolean

+getMessage() : string

Rx_Signal

-channel_empty : boolean

+readFrame() : bit[]- dsp(bit[] bits)

Controller

-busy : boolean-waitingOn : string

+main() : int

Tx_Signal

+transmitFrame(bit[] frame)

Compressor

+compressMsg(string message) : bit[]+decompressMsg(bit[] data) : string

Encryptor

+encrypt(bit[]* data)+decrypt(bit[]* data)

DataPacker

+createFrame(bit[]* data) +getFrameType(bit[] frame) : string+isRepeatFrame(bit[] frame) : boolean+extractData(bit[] frame) : bit[]+createControlFrame(string type) : bit[]

ErrorHandler

+hasErrors(bit[] frame) : boolean+correctErrors(bit[]* frame)

Page 3: 11/26/13

11/26/13 Rochester Institute of Technology 3

P14251Underwater Acoustic Communication

Control Unit Pseudo-Code

Page 4: 11/26/13

11/26/13 Rochester Institute of Technology 4

P14251Underwater Acoustic Communication

Control Unit Pseudo-Code

Page 5: 11/26/13

11/26/13 Rochester Institute of Technology 5

P14251Underwater Acoustic Communication

Control Unit Pseudo-Code

Page 6: 11/26/13

11/26/13 Rochester Institute of Technology 6

P14251Underwater Acoustic Communication

Error Detection and Correction- Hybrid Scheme: ECC and ARQ- EEC Implementation: BCH vs. Reed Solomon- BCH is easier to implement, but requires a large

amount of redundancy- Reed-Solomon is more complex, but overall much

better and requires only 20% redundancy (to correct 10% of errors)

Page 7: 11/26/13

11/26/13 Rochester Institute of Technology 7

P14251Underwater Acoustic Communication

Error Detection and Correction- Encoding: LFSR based implementation is extremely

simple and fast. Will translate well to C

Page 8: 11/26/13

11/26/13 Rochester Institute of Technology 8

P14251Underwater Acoustic Communication

Error Detection and Correction- Decoding is more complex, but efficient algorithms

exist that will help significantly

Page 9: 11/26/13

11/26/13 Rochester Institute of Technology 9

P14251Underwater Acoustic Communication

Frame Sentinels- Sentinels are a unique pattern of bits that signify the

start and end of the framei.e. 01110 –data– 01110

- When preparing the frame for transmission, if the pattern appears anywhere in the data, bit stuffing is used to eliminate it (i.e. 01110 -> 011010)

- Commonly used sentinel which we’ll use is 01111110Frame Header- 1 bit to signify the type of frame: control or message- 1 bit that gets flipped each time a new frame is sent

Page 10: 11/26/13

11/26/13 Rochester Institute of Technology 10

P14251Underwater Acoustic Communication

Control frame formats- Since it’s especially important to interpret control

frames correctly, 4 bits are used to display the unique patterns

- 0000 – Request to Send (RTS)- 0110 – Clear to Send (CTS)- 1001 – Acknowledgement (ACK)- 1111 – Done (Signifies that all frames have been sent)

Page 11: 11/26/13

11/26/13 Rochester Institute of Technology 11

P14251Underwater Acoustic Communication

Frame Sizes- Control Frame: 18 (overhead) + 4 (type) = 22 bits- Message Frame: 18(overhead) + X (message) = 18+X bits

Propagation delay (20ms for 30m distance) limits the number of frames that can be sent.

For 15kb/s, the maximum number of message frames =9 frames, each containing 1k encoded information bits

Increase to ~1023 bits for RS(1023, 853)

Page 12: 11/26/13

11/26/13 Rochester Institute of Technology 12

P14251Underwater Acoustic Communication

Data Rate Analysis- (3 periods per 2 bits)- Frames that get transmitted for a message:

- Send RTS – 22 bits- Receive CTS – 22 bits- Send all message frames – 1042 bits/frame- Receive all acknowledgements – 22 bits/frame- Send Done – 22 bits- Receive Acknowledgement – 22 bits

- Total transferred bits = 9664 bits- Total transfer time = 0.831s (about 170ms left for code)