MC68F375
CDR MoneT FLASH FOR THE IMB3 (CMFI)
MOTOROLA
REFERENCE MANUAL
Rev. 25 June 03
10-32
10.6.6.4 Over Programming
Programming a CMFI bit without a program margin read after each program pulse or
exceeding the specified program times or voltages will result in an over programmed
state. Once a CMFI bit has been over programmed, data in the array block that is
located upon the same column shall be lost as the over programmed bit causes the
entire column to appear programmed. To restore an array block with an over pro-
grammed bit the block must be erased and reprogrammed.
10.6.7 Erase
To modify the charge stored in the isolated element of the CMFI bit from a logic 0 state
to a logic 1 state, an erase operation is required. The erase operation cannot change
the logic 1 state to a logic 0 state; this transition must be done by the program opera-
tion. In the CMFI EEPROM, erase is a bulk operation that shall affect the stored charge
of all the isolated elements in an array block. To make the CMFI module block-eras-
able, the array is divided into blocks that are physically isolated from each other. Each
of the array blocks may be erased in isolation or in any combination. The CMFI array
block size is fixed for all blocks in the module at 32 Kbytes and the module is com-
prised of 4, 6 or 8 blocks. If the CMFI EEPROM array is protected (PROTECT = 1),
the array will not be erased. Also, if PEEM = 0 no erase voltages will be applied to the
array and if B0EM = 0, no programming voltages will be applied to block 0.
The array blocks selected for erase operation are determined by BLOCK[7:0].
10.6.7.1 Erase Sequence
The CMFI EEPROM module requires a sequence of writes to the high voltage control
registers (CMFICTL1 and CMFICTL2) and an erase interlock write in order to enable
the high voltage to the array and shadow information for erase operation. The erase
sequence follows.
1. Write PROTECT = 0 to disable protection on the array.
2. Set the initial pulse width bit settings per Table 10-7.
CLKPM, write the pulse width timing control fields for an erase pulse in the
CMFICTL1 register. Write the BLOCK[7:0] to select the blocks to be erased, PE
= 1 and SES = 1 in the CMFICTL2 register.
4. Execute an erase interlock write to any CMFI array location.
5. Write EHV = 1 in the CMFICTL2 register.
6. Read the CMFICTL1 register until HVS = 0.
7. Write EHV = 0 in the CMFICTL2 register.
8. To verify the erase operation, read all locations that are being erased, including
the shadow information if the block containing it is erased. Off-page reads are
erase margin reads that update the read page buffer. (See section 10.6.7.2 F
re
e
sc
a
le
S
e
m
ic
o
n
d
u
c
to
r,
I
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
c
..
.