120 likes | 244 Views
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.
E N D
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 Software Architecture 11/26/13 Rochester Institute of Technology 2
P14251 Underwater Acoustic Communication Control Unit Pseudo-Code 11/26/13 Rochester Institute of Technology 3
P14251 Underwater Acoustic Communication Control Unit Pseudo-Code 11/26/13 Rochester Institute of Technology 4
P14251 Underwater Acoustic Communication Control Unit Pseudo-Code 11/26/13 Rochester Institute of Technology 5
P14251 Underwater 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) 11/26/13 Rochester Institute of Technology 6
P14251 Underwater Acoustic Communication Error Detection and Correction • Encoding: LFSR based implementation is extremely simple and fast. Will translate well to C 11/26/13 Rochester Institute of Technology 7
P14251 Underwater Acoustic Communication Error Detection and Correction • Decoding is more complex, but efficient algorithms exist that will help significantly 11/26/13 Rochester Institute of Technology 8
P14251 Underwater 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 01111110 • Frame Header • 1 bit to signify the type of frame: control or message • 1 bit that gets flipped each time a new frame is sent 11/26/13 Rochester Institute of Technology 9
P14251 Underwater 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) 11/26/13 Rochester Institute of Technology 10
P14251 Underwater 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) 11/26/13 Rochester Institute of Technology 11
P14251 Underwater 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) 11/26/13 Rochester Institute of Technology 12