812
End of erasing
Start
Set SWE1 bit in FLMCR1
Set ESU1 bit in FLMCR1
Set E1 bit in FLMCR1
Wait (x)
µ
s
Wait (y)
µ
s
n = 1
Set EBR1 and 2
Enable WDT
*
3
Wait (z) ms
Wait (
α
)
µ
s
Wait (
β
)
µ
s
Wait (
γ
)
µ
s
Set block start address to verify address
Wait (
ε
)
µ
s
Wait (
η
)
µ
s
*
2
*
4
Start erase
Clear E1 bit in FLMCR1
Clear ESU1 bit in FLMCR1
Set EV1 bit in FLMCR1
H'FF dummy write to verify address
Read verify data
Clear EV1 bit in FLMCR1
Wait (
η
)
µ
s
Clear EV1 bit in FLMCR1
Clear SWE1 bit in FLMCR1
Disable WDT
Halt erase
*
1
Verify data = all "1"?
Last address of block?
End of
erasing of all erase
blocks?
Erase failure
Clear SWE1 bit in FLMCR1
n
≥
(N)?
NG
NG
NG
NG
OK
OK
OK
OK
n
←
n + 1
Increment
address
Wait (
×
1)
µ
s
Wait (
×
1)
µ
s
Notes: 1. Preprogramming (setting erase block data to all "0") is not necessary.
2. Verify data is read in 16-bit (W) units.
3. Set only one bit in EBR1 and 2. More than 2 bits cannot be set.
4. Erasing is performed in block units. To erase a number of blocks, each block must be erased in turn.
tcev:
tcswe:
tsswe:
tsesu:
tse:
tce:
tcesu:
tsev:
tsevr:
tcev:
tcswe:
Figure 22-12 Erase/Erase-Verify Flowchart