Claims
- 1. A system to detect and correct errors in a flash memory having an extra storage area, comprising:
at least three error detection circuits corresponding to three selectable error detection modes, the error detection circuits being adapted to detect an error based on a selected mode of error detection and correction; and a processor coupled to the three error detection circuits, the processor adapted to correct the error by executing error correction software based on the selected mode.
- 2. The system of claim 1, wherein the flash memory comprises an extra storage area and wherein the three modes of error detection and correction further comprises a first mode to correct one error, a second mode to correct two errors including errors in the extra storage area, and a third mode to correct three errors including errors in the extra storage area.
- 3. The system of claim 1, wherein the first mode protects against any one symbol error.
- 4. The system of claim 1, wherein the second mode protects against any two symbol errors, including those in the extra storage area.
- 5. The system of claim 1, wherein the third mode protects against any three symbol errors, including those in the extra storage area.
- 6. The system of claim 1, wherein the first mode comprises a Smart Media compatible mode.
- 7. The system of claim 1, wherein the second mode further comprises a Reed-Solomon 52 (RS-52) mode.
- 8. The system of claim 1, wherein the third mode further comprises an RS-73 mode.
- 9. The system of claim 8, wherein the third mode utilizes the last eight bytes of the page as parity.
- 10. The system of claim 8, wherein the third mode utilizes byte 520 through byte 527 as parity.
- 11. A method to detect and correct errors in a flash memory, comprising:
detecting in hardware an error based on one of three selectable mode of error detection and correction; and correcting the error by executing error correction software corresponding to the selected mode of error detection and correction.
- 12. The method of claim 11, wherein the flash memory comprises an extra storage area and wherein the three modes of error detection and correction further comprises a first mode to correct one error, a second mode to correct two errors including errors in the extra storage area, and a third mode to correct three errors including errors in the extra storage area.
- 13. The method of claim 11, wherein the first mode protects against any one symbol error.
- 14. The method of claim 11, wherein the second mode protects against any two symbol errors, including those in the extra storage area.
- 15. The method of claim 11, wherein the third mode protects against any three symbol errors, including those in the extra storage area.
- 16. The method of claim 11, wherein the first mode comprises a Smart Media compatible mode.
- 17. The method of claim 11, wherein the second mode further comprises a Reed-Solomon 52 (RS-52) mode.
- 18. The method of claim 11, wherein the third mode further comprises an RS-73 mode.
- 19. The method of claim 18, wherein the third mode utilizes the last eight bytes of the page as parity.
- 20. The method of claim 18, wherein the third mode utilizes byte 520 through byte 527 as parity.
CROSS REFERENCE TO OTHER APPLICATIONS
[0001] This application is related to co-pending, commonly owned application Ser. No. _/_____ entitled “ERROR CORRECTION CACHE FOR FLASH MEMORY,” filed concurrently herewith, the content of which is incorporated-by-reference.