Off topic CF questions

tyson at irobot.com tyson at irobot.com
Mon Nov 24 19:11:01 CET 2003


This is a bit off topic, but I need some pointers and we seem to have 
quite a few really smart people on this list. ;-)

I'm trying to learn about the issues and solutions to using CF cards for 
data logging in appliances where the power may be pulled at any time.

There are sort of two classes of logging.  One would be classic "write 
only" logging.  The other would be things like total run time, an 
odometer, that sort of thing where you might want to something that 
amounts to erase the old value and over write it with a new one. 
Obviously the second case would degenerate a bit with at least "double 
buffering" and could get as "bad" as a "write only" log history.

I say write only, meaning that the download/reset/erase procedure could 
be under controlled conditions and not a concern.

My issue is that CF cards present and IDE abstraction that hides the 
underlying block sizes and the fact that FLASH is erased as a block (and 
unknown block) and rewritten from scratch.  I have absolutely no idea 
what size these blocks are such that I might separate my "read-only" 
partitions from my "write only" partitions with a buffer partition.  I 
also have absolutely no idea what happens to these things when the power 
is pulled, esp. in the middle of an erase/write cycle or how these 
erase/write cycles might be optimised.

Any pointers or suggestions would be greatly appreciated.

Thanks!
Ty

-- 
Tyson D Sawyer                             iRobot Corporation
Senior Systems Engineer                    Military Systems Division
tsawyer at irobot.com                         Robots for the Real World
603-654-3400 ext 206                       http://www.irobot.com




More information about the coreboot mailing list