Thursday, 13 June 2013

ASYNCHRONOUS DATA ERROR DETECTION ( PARITY BIT)




Asynchronous communication means the communication between two units operating independently. In this form of data transmission, information is sent one character at a time, with variable time intervals between characters.
       Because asynchronous does not reply on a shared timer that would enable the sending and receiving units to separate characters by specific time periods, each transmitted character consists of a number of data bits ( the character itself) preceded by a " begin character" signal, called start bit and ending in an optional parity bit followed by a stop bit.

" Parity bit is an added error-detection bit included with each character of the asynchronous data stream. Thus, it adds an additional bit to be transmitted with each character, reducing the efficiency of the data transfer because it takes more time to transmit a data character with a parity bit than to send one without a parity bit."



Parity has been used for detecting errors in asynchronous data streams where brust-type problems either do not exist or are extremely rare. Both the Telex and Teletype networks employ this method.
                   To correct error's detected using parity, the receiving station can only request that the message containing the error be re-transmitted. A system that is set to request re-transmission automatically in response to detecting an error includes Automatic Repeat Request (ARQ) processing within its communications software.
                    Not all systems using parity have ARQ. Some systems cause a parity error flag to be set in a status register, which, when read using applicable software, causes a message to be sent to a terminal to inform the user that a data error has occurred. It is then up to the user to request a message to be re-sent or not. The advantage of doing this is that some errors are less crucial. A user can easily figure what  the correct character should have been. For example, if the word "today" has an error in the last character, so that  the word read as "todaz", it can be readily understood and corrected without the need to re-transmit the message containing the word as it is obvious that the word is "today".


Data Correction Using Parity




An error correction process used with asynchronous data stream called Longitudinal Redundancy Check (LRC), makes use of the parity process. A method to detect the parity error to create the LRC character. This character is formed by summing the character bits and discarding the framing. Carries produced by the additions are ignored.
                 For example, suppose we have sent the word Help! For this we use the addition of the bits ignoring the last bit and the carry overs as seen 

below:
                           0001001 H
                           1010011 e
                           0011011 l
                           0000111 p
                           1000010 !
                       _____________
                           0000100 LRC

         The LRC error character is framed with start and stop bits and a parity bit is generated for it. It is then appended to the end of the message and sent to the receiver as (00000100111). The last two bits are as stop bits. The other bit is for parity.
         The receiver shifts each character and checking for parity errors, detects the error in the middle character. The receiver then computers the LRC for the received message and compares the two characters. The bit position that does not compare is the one that is incorrect  in the bad character. For example, if the said message is received as follows:

                        0001001 H
                        1010011 e
                        0001011 h
                        0000111 p
                        1000010 !
                     _____________
                        0010100   Receiver generated LRC
                        0000100   received LRC with message
                    _____________
                       0010000  comparison results because a 1 indicates the bad bit position.

     The detection of a bad parity bit in the "l" character designated the location of an error in that character. As a result of the comparison of the LRC, bit 3 of that character is detected as incorrect  and would be inverted  to yield the corrected character.




         Another method to show the detection of the bad bit is by using a matrix is shown in Figure. This is the matrix for the example word Help!. The character codes are arranged so that they are stacked vertically. Each individual parity bit is shown on the right of each character. These are not used as these are the redundancy bits. Longitudinal redundancy bits are shown at bottom of the matrix. Note that the longitudinal parity bits from the LCR character, which includes its own parity (VCR) bit. In part (b) of the Figure, the matrix is shown with the error. The comparison of the LCR bits from the transmitter and receiver is accomplished by adding the LRC character received to the entire message (including transmitted LRC). This works because adding binary numbers and comparing them is the same process of using exclusive ORs. Note that the circled parity (VCR) and LRC bits point to the bad bit.
     These methods of error correction are known as Forward Error Correction (FEC) because errors are corrected as the message is received.

" A brust type of interference destroying several bits and cannot be corrected by any of these methods." 




No comments:

Post a Comment