September
1999, Issue 110
Get
Smart Media(Part
1):
What's
It All About?
528
512 = 16
Heres
where we learn about those 16 extra bytes in each page.
Because manufacturing these large-scale NAND flash memory
arrays is difficult, theres the possibility of
having a defective cell in one or more pages. A cell
may also deteriorate during its life of over a quarter
million programming cycles.
The
extra 16 cells are a way of keeping track of bad pages,
like bad sectors on magnetic media. When the SmartMedia
is tested after manufacturing, if a bad page is found,
a 00H is written to the sixth extra byte of the last
16 bytes of the page (the other 15 bytes are erased
to 0FFH ). Be advised that when a block is erased, so
are the bad page identifiers, so you must either keep
track externally and rewrite the indicators back after
erasing, or pay attention to the status register.
The
status register can be read by issuing a command 70H
and then reading back the status byte (after 60 µs).
Three of the eight bits are significant. Bit 0 indicates
a program/erase success by a bit value of 0 and by a
failure of 1. An erase failure indicates all bits within
the block could not be erased to an erased FFH state.
A
program failure indicates that at least one bytes
bit within the page could not be programmed to a 0.
From this information, you can update that pages
invalid page indicator so it wont be used in the
future.
In
addition, Bit 6 is a software indication of the hardware
ready/busy output0 when busy and 1 when ready.
Bit 7 is software indication of the protect status,
0 indicating protected and 1 indicating not protected.
The
protection status is an input pin to the SmartMedia.
A low on this pin protects the flash memory from being
erased or programmed. The user may place an adhesive
conductive dot on the SmartMedia as an indication that
the device is read-only. This conductive dot is read
by a pair of contacts on the SmartMedia socket and must
be interpreted by your hardware.