FIGnition FUZE Hardware Reference Manual page 38

Table of Contents

Advertisement

Fig 5.10
Finding these blocks turns out to be quite easy; any physical block that replaces an older
physical block will have two (or more) entries in the inverse block number table in Flash.
All we have to do is look for the last one of them and all the previous ones will in fact be
what's called dirty blocks.
Unfortunately to re-use flash blocks we must erase chunks of 4Kb at a time (called Flash
sectors), but dirty blocks will be scattered around the Flash memory [Fig 5.10].
The solution here is to leave at least one free 4Kb sector at the end of Flash and treat the
physical block area of flash as though it wrapped around. We examine all the blocks in the
'next' sector of Flash and copy only the blocks that aren't dirty. This will often leave at least
one free block from that sector which we can then use as normal and finally we erase the
'next' sector, freeing it up for the next purge [Fig 5.11].
Fig 5.11

Advertisement

Table of Contents
loading

Table of Contents