A very hard problem for me. FLASH ROM write fail!

Guest
Hi All,
If your FLASH rom sometimes will write wrong data, how will you
debug it?

The firmware was used for a long time........with no problem..


We got some flash rom data have regular difference ( for example, if the
update data is 0, but the flash save data is 3, if the update data is 2, but
the flash save data is 5), but some part/secotr they are all correct, but
some part they are all wrong, what I can sure is the data on the begging has
regular difference.

Could you please adivce? I don't know how to debug it....

Thank you very much..

Best regards,
Boki.
 
bokiteam@ms21.hinet.net wrote:

Hi All,
If your FLASH rom sometimes will write wrong data, how will you
debug it?

The firmware was used for a long time........with no problem..

We got some flash rom data have regular difference ( for example, if the
update data is 0, but the flash save data is 3, if the update data is 2, but
the flash save data is 5), but some part/secotr they are all correct, but
some part they are all wrong, what I can sure is the data on the begging has
regular difference.

Could you please adivce? I don't know how to debug it....
Can I suggest you take it more slowly and describe your problem issue by issue
so that it's clear what your problem is.

At present I can't work out what your exact difficulty is.

Graham
 
<bokiteam@ms21.hinet.net> wrote in message
news:d9rv0t$gav$1@netnews.hinet.net...
Hi All,
If your FLASH rom sometimes will write wrong data, how will you
debug it?

The firmware was used for a long time........with no problem..


We got some flash rom data have regular difference ( for example, if the
update data is 0, but the flash save data is 3, if the update data is 2,
but
the flash save data is 5), but some part/secotr they are all correct, but
some part they are all wrong, what I can sure is the data on the begging
has
regular difference.

Could you please adivce? I don't know how to debug it....
We need to know what part and manufacturer you are using and what you use to
program it. How often does a ROM show an error ? If a part is not
programming correctly, you are looking at a poor quality batch, or trouble
with timing, programming algorithm or voltages.


To isolate the cause, you often have to change things out until the problem
goes away -

- A basic step is to find if the fault isin the ROM part itself, or the
programming hardware?

- If you use a programmer, buy, rent or borrow another programmer and see if
that solves the problem.

- If you have changed ROM manufacturer, can you try some of the parts you
used earlier, or another manufacturer ?

- If the ROM is programmed inside your product, has your product changed ?



Roger Lascelles
 
"Boki" <bokiteam@ms21.hinet.net> wrote in message
news:1120065415.025433.110850@g14g2000cwa.googlegroups.com...
When I check the fail Flash rom,

Correct data:
01 02 03 04 05 06 07 08 09 00 ....

Flash rom data:
06 02 07 04 09 06 0B 08 09 00 ....

Another Flash rom data:
16 02 17 04 19 06 1B 08 19 00 ....

SNIP
Boki,
Is this by chance a 16bit Flash part? - is appears all your odd bytes are
corrupted.

If it is a a 16bit flash part then I have seen this behaviour before, it
occurrs during the write when you only test for the 'end of write' on the
high order byte status.

Any chance you can provide the flash part number?

Heath
 
Boki wrote:

We didn't encounter this problem when we are in design phase,
You *NEVER* do ! It's called Sod's Law.

on mass production phase, we got this problem,
Likely causes may include operating the parts at or near to any specification
limits, manufacturing tolerance spread related issues and just even a 'duff' batch
of parts. It *does* happen sometimes !


and it is very hard to debug,
because some FLASH rom fail and some not, the H/W,S/W are both the
same... I still don't know that is a S/W or H/W problem now...

Another problem is I can't guarantee every FLASH rom will fail after N
times upgrade. Sometims I guess that is a FLASH manufacture problem,
but I know that is almost impossible.
Have you tried equivalent parts from several manufacturers ? Have you even tried a
batch of parts from the same manufacturer but with a different batch / date code ?

These are things you have to do to help resolve such issues.


Our programmer is control by embedded system CPU/firmware.

I have no chance to changed ROM manufacturer...

If the ROM is programmed inside your product, has your product changed
?
Yes, of course, but sometims it will fail on some
bits/blocks(1024bytes), the result is my system will fail to start up.
Is the Flash memory updated in-system on a regular basis ? I assume that's what
you mean.

Ohhh - and if so - a classic issue is the following one. What happens if someone
powers down the product in the middle of a write cycle ? Have you addressed this
possibility ? Which reminds me - I ought to check that I did that in one of *our*
products !

Graham
 
Something like:

29LV160TB/TC

"Mr Rogers" <MrRogers@nospam.org> źśźgŠóślĽóˇsťD:1120068543.2429179868018a2e4869f88036e077af@teranews...
"Boki" <bokiteam@ms21.hinet.net> wrote in message
news:1120065415.025433.110850@g14g2000cwa.googlegroups.com...
When I check the fail Flash rom,

Correct data:
01 02 03 04 05 06 07 08 09 00 ....

Flash rom data:
06 02 07 04 09 06 0B 08 09 00 ....

Another Flash rom data:
16 02 17 04 19 06 1B 08 19 00 ....

SNIP
Boki,
Is this by chance a 16bit Flash part? - is appears all your odd bytes are
corrupted.

If it is a a 16bit flash part then I have seen this behaviour before, it
occurrs during the write when you only test for the 'end of write' on the
high order byte status.

Any chance you can provide the flash part number?

Heath
 
On 29 Jun 2005 12:34:41 -0700, "Glenn Gundlach" <stratus46@yahoo.com>
wrote:

Boki wrote:
When I check the fail Flash rom,

Correct data:
01 02 03 04 05 06 07 08 09 00 ....

Flash rom data:
06 02 07 04 09 06 0B 08 09 00 ....

Another Flash rom data:
16 02 17 04 19 06 1B 08 19 00 ....


It seems that have a rule, but I can't see the rule between different
fail Flash roms....

and some data block are all different ( don't know, just random
different )



Is that a HW or SW problem ?


Best regards,
Boki.

How come the first 5 odd numbered bytes are correct? Address bit funky?
Is it a serial access device? Parallel? If a serial device, I would
suspect a software error. Parallel could be either (or both). Are you
dealing with timing requirements correctly? Looks software buggy to me.
GG
Sounds like Atmel ATMega 32 or 128 AVR parts to me...

boB
 
bokiteam@ms21.hinet.net wrote:

Something like:

29LV160TB/TC
Which gives *zero* hits on Google.

You could try a little harder Boki, to give us some information to work on !

It aint AMD or Atmel apparently.

And ALSO.

Please stop writing your reply at the *top* !

Good newsgroup practive is to post your answer at the bottom so it's clear what is the question and what is
the answer. Also please don't 'snip' i.e. remove all the previous poster's text. It makes it all but
impossible for anyone to understand your line of thought.

Graham
 

Welcome to EDABoard.com

Sponsor

Back
Top