A simple parity value calculated on columns of data rather than rows, were each successive set of data bit is XOR'd with the prior set to form a new set of parity values.
LRC = LRC ^ dataByte;or
movf dataByte,w xorwf LRC
LRC's by themselves, can only detect errors, but have a slight advantage over standard parity bits in that they are less sensitive to burst errors in serially transmitted data. For example with a drop-out burst error of 3 bits starting after the first bit of the first byte:
10110001 even parity = 0 10000001 even parity = 0 (still) 11011011 even parity = 1 11011011 even parity = 1 -------- -------- 01101010 = LRC 01011010 = LRC
Note that if the data were being transmitted in parallel, the advantage reverts to simple parity, as the LRC becomes sensitive to burst errors.
An 8-bit LRC such as this is equivalent to a CRC using the polynomial x8+1
| file: /techref/method/error/lrc.htm, 1KB, , updated: 2009/1/23 15:20, local time: 2009/11/21 17:21,
38.107.191.101:LOG IN
|
| ©2009 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions? Please DO link to this page! Digg it! <A HREF="http://piclist.com/techref/method/error/lrc.htm"> Longitudinal Redundancy Check Data Link Error Detection / Correction Method </A> |
| Did you find what you needed? |
|
|
SX MASTERS: Eric Smith and Richard Ottosen's SERVID is an intellegent RS232 video terminal (4x20 character display) in one chip. See the write up here.. |
.