http://www.cs.nmsu.edu/~pfeiffer/cla...notes/ecc.html
I hope it's not too complicated...
Otherwise, there is some (simpler) info here : http://en.wikipedia.org/wiki/Error_d...and_correction
USB uses a CRC-5 type.
http://www.cs.nmsu.edu/~pfeiffer/cla...notes/ecc.html
I hope it's not too complicated...
Otherwise, there is some (simpler) info here : http://en.wikipedia.org/wiki/Error_d...and_correction
USB uses a CRC-5 type.
Dimitri.
In a time of deceit telling the truth is a revolutionary act.
George Orwell
Location: Moved to frozen north, beyond Inverness
Posts: 2,602
I'm Dave.
I think I'm sticking with what I wrote earlier. If you want to do forward error correction then a code such as a Reed-Solomon code is needed. I don't think the CRC-5 coding is going to work for correction, and I'm unaware that USB uses any really complex codes to support FEC. It would be possible to use a k out of n block erasure code, with the CRC used on each block to decide whether to accept it or not, but isn't that too complex for the particular application? If the error rate is not excessively high, it should be possible to implement an FEC above the USB level, but that would require (probably) device specific code. My contention is that USB does not do this.
Dave