To decode the received data, the parity is calculated over the received data and compared to
the received parity. If the calculated parity is equal to the received parity, the user data
are received correctly. Otherwise, an XOR-operation of calculated and received parity gives
information about the error position.
Table 2-3. DecodingPcalc ⊕ Prec | Data to Correct | Comment |
---|
0 | — | Data correct |
1 | P1 | Parity bit error |
2 | P2 | Parity bit error |
3 | d7 | Data bit error |
4 | P4 | Parity bit error |
5 | d6 | Data bit error |
6 | d5 | Data bit error |
7 | d4 | Data bit error |
8 | P8 | Parity bit error |
9 | d3 | Data bit error |
10 | d2 | Data bit error |
11 | d1 | Data bit error |
12 | d0 | Data bit error |
13 | — | Uncorrectable error |
14 | — | Uncorrectable error |
15 | — | Uncorrectable error |
Example:- Received data = 0x574 (d1
swapped)
- Prec = 0x4
- Pcalc = 0xF (For
more details, refer to Encoding for parity
calculation)
- Pcalc ⊕
Prec = 0xB (data bit d1 swapped)
- Corrected user data = 0x55
|