EPROM
6
Before we continue, it’s important to realize that this type of
cell doesn’t have a reliability problem, it has a program-
mability problem. This cell will have the same long-term
data retention as any other cell in th e device, even if it
loses part of its prog ramming charge. Although it is an
EPR OM, it has th e same charg e retentio n charact eristics
as many manufacturers’ E2PROM cells that use this type of
erasure mo de, and the y all exh ibit exce llent l ong-t erm data
retentio n. The chal lenge is to find thes e low- margin c ells in
the device with our programming algorithm, and to repair
them so that the device functions normally.
Let’s see what kind of impact a cell like this can have on
programming margin by programming a row of EPROM
cells from our AT27C010 one-megabit EPROM with both
algor ithms. The arr ay geo metry on the one -mega bit is 12 8
columns by 1024 rows, by 8 outputs. This means that a sin-
gle r ow from a si ngle out put has 12 8 EPROM c ells. Let ’s
say that the second cell on this row, bit 1 (we’ll call them
bits and s tart with bit 0 ), has an asp erity, just l ike the on e
mentioned above. When we go to program bits 2, 3, 4, etc.,
the voltage present on the gate of bit 1 causes the
E2PROM-like erasure mode. Given enough subsequent
bits to program, bit 1 may lose enough charge to appear
unprogrammed. Let’s take a look at how the QUICK-
PULSE type of algorithm will fail the device, or even worse,
pass it with poo r progra mming ma rgin. The n we’ll se e how
the RAPID algorithm will program it such that it works per-
fectly!
If we examine Figure 8, we see the row of EPROM cells
taken from our AT 27C0 10 one -me gabit dev ice. Rec all t hat
bit 1 is the cell that’s having the programmability problem,
while the rest of the bits function normally. For the sake of
example, let’s say that for each subsequent bit after bit 1
that’s program med, bit 1 will lose eight mi llivolts (mV) of
programming margin. Let’s also assume that the nominal
programming margin for each cell is at least the value of
VCC present during programming, which is 6.25V for
QUICK-PULSE type algorithms and 6.5V for the RAPID
algorithm. Starting with the QUICK-PULSE type of algo-
rithm at bit 0, we program it, verify it, and find that it passes
(remember our flowchart from Figure 6?) with th e correct
margin (see Figure 9). We move to cell 1, program it, verify
it, and it passes (see Figure 10). Remember, bit 1 only
loses voltage margin when subsequent cells are pro-
grammed. Now we move on to bit 2, program it, verify it,
and in the process reduce bit 1’s programming margin
down to 6.242 V (see Fi gure 11). Nex t we go to bi t 3, pro-
gram i t, verify it, a nd in tur n reduce bit 1’s programm ing
margi n down to 6.23 4V (see Figu re 12). This pr ocess co n-
tinues until we get to bit 127. By this time bit 1 has experi-
enced 126 subs equent cell programmi ng cycles, and its
programmi ng ma r gin will be r edu ced to 5.24 2V (see Figure
13). Since th e QUICK-PULSE type of algorithm does its
high-voltage verify immediately after programming, the
algorithm has no way o f k now ing wh at h as h appe ned to bi t
1, once i t fi nishes progr am min g i t. O nly w hen the algor ith m
does its final verify with VCC set at 5.25V could it detect that
bit 1 is not fully programmed.
In this example we were able to detect bit 1 as being bad,
and we would fail the device. But what if bit 1’s erasure rate
was slightly less than 8 mV per subsequent cell, say 7.7
mV? Bit 1’s margin might be somewhere around 5.3V,
which wou ld probably pass the 5.2 5V verify check on our
programmer. But remember the problem that we discussed
earlier, about the power supply nois e glitches messing up
the operation of devices with low programming margin? A
device with only 5.3V of margin is a prime candidate for this
type of problem. A small noise glitch occurring during data
access on t he VCC line of this EP ROM c ould ea sily ch ang e
the output from a “0” to a “1”. And, to make matters wor se,
this problem would probably occur randomly; the eventual
diagnosis being that the device was intermittent. The unfor-
tunate truth is that there is nothing wrong with the EPROM,
it’s the programming algorithm that’s at fault.
So let’s go back to our row of 128 EPROM cells, erase
them, and reprogram them with the RAPID algorithm.
Remember that with th e RAPID alg orithm the in itial pro-
Figure 8. Row of E PROM cells from AT2 7C010. No te tha t
the programming margin of each cell is 0, which allows
each bit to read a “1”.
Figure 9. Bit 0 has been programmed, (QUICK-PULSE
algorithm).
Figure 10. Bit 0 and bit 1 have been programmed.
Programming Margin (Volts):
0000000 00
Bit
0Bit
1Bit
2Bit
3Bit
4Bit
5Bit
6• • • Bit
126 Bit
127
Programming Margin (Volts):
6.25000000 00
Bit
0Bit
1Bit
2Bit
3Bit
4Bit
5Bit
6• • • Bit
126 Bit
127
Programming Margin (Volts):
6.256.2500000 00
Bit
0Bit
1Bit
2Bit
3Bit
4Bit
5Bit
6• • • Bit
126 Bit
127