Memory
Data Sheet
MC68HLC908QY/QT Family — Rev. 2
34
Memory
MOTOROLA
In applications that require more than 1000 program/erase cycles, use the 4 ms
page erase specification to get improved long-term reliability. Any application can
use this 4 ms page erase specification. However, in applications where a FLASH
location will be erased and reprogrammed less than 1000 times, and speed is
important, use the 1 ms page erase specification to get a shorter cycle time.
2.6.3 FLASH Mass Erase Operation
Use the following procedure to erase the entire FLASH memory to read as a 1:
1.
Set both the ERASE bit and the MASS bit in the FLASH control register.
2.
Read the FLASH block protect register.
3.
Write any data to any FLASH address(1) within the FLASH memory address
range.
4.
Wait for a time, tNVS (minimum 10 s).
5.
Set the HVEN bit.
6.
Wait for a time, tMErase (minimum 4 ms).
7.
Clear the ERASE and MASS bits.
NOTE:
Mass erase is disabled whenever any block is protected (FLBPR does not equal
$FF).
8.
Wait for a time, tNVH (minimum 100 s).
9.
Clear the HVEN bit.
10.
After time, tRCV (typical 1 s), the memory can be accessed in read mode
again.
NOTE:
Programming and erasing of FLASH locations cannot be performed by code being
executed from the FLASH memory. While these operations must be performed in
the order as shown, but other unrelated operations may occur between the steps.
CAUTION:
A mass erase will erase the internal oscillator trim value at $FFC0.
2.6.4 FLASH Program Operation
Programming of the FLASH memory is done on a row basis. A row consists of 32
consecutive bytes starting from addresses $XX00, $XX20, $XX40, $XX60, $XX80,
$XXA0, $XXC0, or $XXE0. Use the following step-by-step procedure to program a
row of FLASH memory
Figure 2-4 shows a flowchart of the programming algorithm.
NOTE:
Only bytes which are currently $FF may be programmed.
1. When in monitor mode, with security sequence failed (see 15.3.2 Security), write to the FLASH
block protect register instead of any FLASH address.