[sdiy] destroying flash memory cell on a PIC
ASSI
Stromeko at nexgo.de
Fri Mar 19 21:28:44 CET 2021
On Mittwoch, 17. März 2021 11:55:41 CET Roman Sowa wrote:
> I was recently playing with PIC18 self-write and encountered strange
> problem. I can't be sure if it was because of my multiple write attempts
> (not that many of them) or it is extremely bad luck, but the
> microcontroller in question (PIC18F46K22) shows stange fault. About 20
> of flash memory bytes are showing 00 even if that range was not
> programmed. It is FF after bulk erase, but after programming even
> several kilobytes below, they read as 00.
That would be program disturb… which is a common failure mode when cells
starting to get marginal after cycling.
> There's a pattern - they are all on 10-bit boundary, so it's address
> 400, 800, C00 and so on till FC00. To look even more strange, it's not
> all, but randomly few bytes fitting that pattern work OK.
> It happens either if I program it as self-write, or if using ICD3.
Fluctuating margins at different sense amps or array boundary effects would be
most likely to produce such patterns. Unless you know the actual array
organization and can do margin reads (unlikely to be possible in user mode) on
the memory, you're not going to find out.
The second most likely possibility is a non-catastrophic failure somewhere in
the decoder circuitry and high voltage distribution.
> Maybe I'm doing this too fast? The 64-byte page write is initiated just
> a couple of us after page erase is finished. This shouldn't be a problem
> but maybe worth trying to put 2-3ms delay.
No, if there's no defect somewhere then that should not be any problem.
If you want to play around a bit, store the PIC (power removed) at 180°C…250°C
for 24h and see if it gets better. If it helps, the problem is likely to re-
occur quickly, though.
Regards,
Achim.
--
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+
Wavetables for the Waldorf Blofeld:
http://Synth.Stromeko.net/Downloads.html#BlofeldUserWavetables
More information about the Synth-diy
mailing list