DSPRelated.com
Forums

Flash memory (M29W160EB ) Erase Timing........????

Started by mall...@yahoo.co.in June 3, 2008
Hi all!

I have small doubt...

I have a customized BF532 board with M29W160EB ...
Actually in the datasheet it is given that the typical Erase time is 29sec and the Maximum erase time is 120sec and they didn't specified any minimum time...

In my application i will be first doing the Flash Erase and then Program the flash..
My first Problem is :
If the flash contains some data already.., it takes some time (around 20-40sec) to erase it......If it is already erased once and if i want to again erase it it takes very very less time to erase the flash(Less than the typical time given in the datasheet)..
After above erse is done i have done the programming of the flash..
After it i have programmed the flash ...and i have compared the programmed data and the actual data they differ in the first location(only one word is the difference)

Here i want to know why the erase time is less than typical time given in the datasheet...when i have already erased once.............i.e is the erasing time will depend upon the no of bytes programmed into the flash....????????
If anybody won't understand i will make it clear....

waiting for reply............
Hello,

The time it takes to erase an entire flash will vary greatly from device to device and will also vary based on how much has been written to the flash. There is also a chance that if you do not execute the erase sequence perfectly the flash will appear to be done almost immediately.
If you want to make a guess about how long it will take, you can conservatively guess the typical time, but there is no way to know exactly how long the erase chip will take.
As an alternative you could only erase the flash memory that you need to program by using the block erase command and memory map, this is much more consistent in the time that it takes. This way you could also hold onto data that is located elsewhere in flash, outside of where your program is located.
On our dspFlash programmer (http://www.danvillesignal.com) and on the ADI flash programming tool there are pre-program erase options which are none, erase all (erases the full chip), and erase affected (which erases only affected sectors). The erase affected option seems to save time unless you are filling more than 3/4 of the flash.
As far as the first byte not programming correctly, on the flash you are using there is no special provision to program in bulk or to program individual bytes. This means that you should check your timing to ensure you are not doing something wrong causing the first byte to be missed. A timing test would also allow you to ensure you are sending the correct sequence and data.

All the best,

Justin
Danville Signal Processing, Inc.
http://www.danvillesignal.com

Hi all!
>
>I have small doubt...
>
>I have a customized BF532 board with M29W160EB ...
>Actually in the datasheet it is given that the typical Erase time is 29sec and the Maximum erase time is 120sec and they didn't specified any minimum time...
>
>In my application i will be first doing the Flash Erase and then Program the flash..
>My first Problem is :
>If the flash contains some data already.., it takes some time (around 20-40sec) to erase it......If it is already erased once and if i want to again erase it it takes very very less time to erase the flash(Less than the typical time given in the datasheet)..
>After above erse is done i have done the programming of the flash..
>After it i have programmed the flash ...and i have compared the programmed data and the actual data they differ in the first location(only one word is the difference)
>
>Here i want to know why the erase time is less than typical time given in the datasheet...when i have already erased once.............i.e is the erasing time will depend upon the no of bytes programmed into the flash....????????
>If anybody won't understand i will make it clear....
>
>waiting for reply............
>
>
thank u for helping........
Now it is working properly....
I can't able to figure out why sometimes first byte is not writing properly..

Now it is OK.....

If No data is there in the flash .., it is taking very less time to erase the full chip very much less than the typical chip erase time given in the datasheet....When Some data is there in the chip then it is taking around the same typical time given in the datasheet .....

Hi all!
>
>I have small doubt...
>
>I have a customized BF532 board with M29W160EB ...
>Actually in the datasheet it is given that the typical Erase time is 29sec and the Maximum erase time is 120sec and they didn't specified any minimum time...
>
>In my application i will be first doing the Flash Erase and then Program the flash..
>My first Problem is :
>If the flash contains some data already.., it takes some time (around 20-40sec) to erase it......If it is already erased once and if i want to again erase it it takes very very less time to erase the flash(Less than the typical time given in the datasheet)..
>After above erse is done i have done the programming of the flash..
>After it i have programmed the flash ...and i have compared the programmed data and the actual data they differ in the first location(only one word is the difference)
>
>Here i want to know why the erase time is less than typical time given in the datasheet...when i have already erased once.............i.e is the erasing time will depend upon the no of bytes programmed into the flash....????????
>If anybody won't understand i will make it clear....
>
>waiting for reply............
>
>