At 07:15 PM 9/27/2005 -0500, you wrote: >Hi all, > >I'm storing data (3 bytes per data-set) into EEPROM, and I need some way to >later validate that none of the bytes are corrupt. So I'm investigating >checksums, raid, etc. > >Haven't found much info on checksum algorithms that would be useful for this >simple application, or more importantly how to develop a good checksum >application for just 3 bytes. > >But I've got quite a bit of EEPROM space at my disposal now (using a serial >EEPROM), so wondering if it would be better to skip the checksum computations >altogether (which would be nice in freeing up some CPU cycles during that >time) and simply duplicate or even triplicate the dataset so on read-back I >would be able to restore valid data if one of 3 sets does not match. Also if >I save in triplicate, it would be quite fast using the page-write mode, but >is there any advantage to saving the repeated datasets in different pages? >Data integrity is key here, but if it costs me some CPU cycles, that's fine. > >Any ideas on what's better? Perhaps something other that these 2 options? > >Cheers, >-Neil. Hi, Neil:- I often triplicate critical data, but I like to separate it into different pages, and avoid certain locations. You do have to allow for 3 write cycles, which is quite a few msec worst case with Fowler-Nordheim tunneling NV memory, not a problem at all if you use FRAM (but it's single-sourced and more expensive). I also attempt to repair bad data. It depends a bit on what you are worried about as a cause of data corruption, of course-- whether it's EEPROM failure or some external influence. Best regards, Spehro Pefhany --"it's the network..." "The Journey is the reward" speff@interlog.com Info for manufacturers: http://www.trexon.com Embedded software/hardware/analog Info for designers: http://www.speff.com ->> Inexpensive test equipment & parts http://search.ebay.com/_W0QQsassZspeff -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist