EmbeddedRelated.com
Forums
Memfault Beyond the Launch

Using flash memory instead of eeprom?

Started by gewitter2000 January 31, 2005

Hi!

Has someone used the flash memory of the lpc21xx for eeprom purposes?
Or is it more usefull to take an additive eeprom to the design? I only
want to store some parameters.

Thank you for feedback!
Martin




Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?

An Engineer's Guide to the LPC2100 Series

Hi,

Its always better to have EEPROM if you have frequent write cycles.
Flash used for code memory has roughly around 1000 write cycles, where
as if its data flash it has around 10,000+ write cycles. And EEPROM has
around 1 million write cycles.

Regards,
Raj

_____

From: gewitter2000 [mailto:]
Sent: Monday, 31. January 2005 6:43 PM
To:
Subject: [lpc2000] Using flash memory instead of eeprom?
Hi!

Has someone used the flash memory of the lpc21xx for eeprom purposes?
Or is it more usefull to take an additive eeprom to the design? I only
want to store some parameters.

Thank you for feedback!
Martin _____

> .




Re: Using flash memory instead of eeprom?

--- In , "Rajkumar Shetgar (RBIN/ECR2)"
<Rajkumar.Shetgar@i...> wrote:
> Hi,
>
> Its always better to have EEPROM if you have frequent write
cycles.
> Flash used for code memory has roughly around 1000 write cycles,
where
> as if its data flash it has around 10,000+ write cycles. And EEPROM
has
> around 1 million write cycles.
>
> Regards,
> Raj
>
> _____
>
> From: gewitter2000 [mailto:martin@c...]
> Sent: Monday, 31. January 2005 6:43 PM
> To:
> Subject: [lpc2000] Using flash memory instead of eeprom? >
> Hi!
>
> Has someone used the flash memory of the lpc21xx for eeprom
purposes?
> Or is it more usefull to take an additive eeprom to the design? I
only
> want to store some parameters.
>
> Thank you for feedback!
> Martin > _____
>
> > .

I have used this technique with the ST STR7 devices, they have a
write cycle of 100,000 and if combined with a linked list type
structure to minimise using the same blocks it is a cheap method of
eeprom emulation.

Regards
sjo




There are many serial flash devices (I Use SST25vf512)that guarantee
100K cycles and 100 years. Flash offers byte write and sector erase,
while EEPROM offers both byte write and erase but are SLOW.

Richard

--- In , "gewitter2000" <martin@c...> wrote:
>
> Hi!
>
> Has someone used the flash memory of the lpc21xx for eeprom purposes?
> Or is it more usefull to take an additive eeprom to the design? I only
> want to store some parameters.
>
> Thank you for feedback!
> Martin




Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Serial FRAM is available and not too outrageously priced now. Not as cheap as
EEPROM, but if your project isn't cost sensitive it works a treat and you
have unlimited life non-volatile memory.

--------------------------

There are many serial flash devices (I Use SST25vf512)that guarantee
100K cycles and 100 years. Flash offers byte write and sector erase,
while EEPROM offers both byte write and erase but are SLOW.

Richard

--- In , "gewitter2000" <martin@c...> wrote:
>
> Hi!
>
> Has someone used the flash memory of the lpc21xx for eeprom purposes?
> Or is it more usefull to take an additive eeprom to the design? I only
> want to store some parameters.
>
> Thank you for feedback!
> Martin
Yahoo! Groups Links



Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Yes I have. Its easy, but you have to use up a whole page (unless you read - modify - write) I had lots of spare flash and was typically saving a configuration just a few times so these limitations didn't matter.

Code using IAP instructions below.

Accessing the stored structure is just a direct memory access.

The write cycle limitations have been well documented by those willing to offer an opinion but not answer your question !!!

Owen Mooney

#define IAP_LOCATION 0x7ffffff1

void savesetup(struct SETUP *setup){
typedef void (*IAP)(unsigned int [],unsigned int[]);
unsigned int command[5];
unsigned int result[2];
IAP iap_entry;
__ARMLIB_disableIRQ();
iap_entry=(IAP) IAP_LOCATION;
// get part ID
command[0]T;
result[0]=0;
iap_entry(command, result);
// result in result[1]
// prepare to erase
command[0]P;
command[1];
command[2];
iap_entry(command, result);
if (result[0] != 0) goto error;
// erase
command[0]R;
command[1];
command[2];
command[3]745;
iap_entry(command, result);
if (result[0] != 0) goto error;
// prepare to program
iap_entry=(IAP) IAP_LOCATION;
command[0]P;
command[1];
command[2];
iap_entry(command, result);
if (result[0] != 0) goto error;
// program
command[0]Q;
command[1]=0x1C000;
command[2]=(int)setup;
command[3]Q2;
command[4]745;
iap_entry(command, result);
if (result[0] != 0) goto error;
__ARMLIB_enableIRQ();
return;
error:
__ARMLIB_enableIRQ();
printf("bum");
} Hi!

Has someone used the flash memory of the lpc21xx for eeprom purposes?
Or is it more usefull to take an additive eeprom to the design? I only
want to store some parameters.

Thank you for feedback!
Martin ____________



Re: Subject: Using flash memory instead of eeprom?
Re: Subject: Using flash memory instead of eeprom?

AFAIK FRAM does not have unlimited life. It was around 10^6 cycles
when I forst looked at it many years back and I believe it is now
around 10^12 cycles, compared to around 10^5 cycles for EEPROM and
flash.

The smallprint though is that for EEPROM and flash, the endurance
counts only the write cycles and not read cycles whereas FRAM
endurance counts both.

Because it is "just like RAM" once might be tempted to try place
variables in FRAM or data items that you read frequently (data as
well as code). In this case you could hit that 10^12 cycles pretty
fast. With worst case code on an LPCxxx style device you could end up
hitting the FRAM for more than 10^7 cycles per second, giving only a
useful life of 10^5 seconds or just over a day.

As always, design with your eyes open!

--- In , Robert Wood <robert.wood@a...> wrote:
> Serial FRAM is available and not too outrageously priced now. Not
as cheap as
> EEPROM, but if your project isn't cost sensitive it works a treat
and you
> have unlimited life non-volatile memory.
>
> --------------------------
>
> There are many serial flash devices (I Use SST25vf512)that guarantee
> 100K cycles and 100 years. Flash offers byte write and sector
erase,
> while EEPROM offers both byte write and erase but are SLOW.
>
> Richard
>
> --- In , "gewitter2000" <martin@c...> wrote:
> >
> > Hi!
> >
> > Has someone used the flash memory of the lpc21xx for eeprom
purposes?
> > Or is it more usefull to take an additive eeprom to the design? I
only
> > want to store some parameters.
> >
> > Thank you for feedback!
> > Martin >
> Yahoo! Groups Links




Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Re: Using flash memory instead of eeprom?
Dear embeddedjanitor,

Please, open your eyes and have a look to www.ramtron.com. You will see, that many
of their FRAMs now have not any write/read cycles limiting!

Varuzhan

----- Original Message -----
From: embeddedjanitor
To:
Sent: Tuesday, February 01, 2005 8:25 AM
Subject: [lpc2000] Re: Using flash memory instead of eeprom?
AFAIK FRAM does not have unlimited life. It was around 10^6 cycles
when I forst looked at it many years back and I believe it is now
around 10^12 cycles, compared to around 10^5 cycles for EEPROM and
flash.

The smallprint though is that for EEPROM and flash, the endurance
counts only the write cycles and not read cycles whereas FRAM
endurance counts both.

Because it is "just like RAM" once might be tempted to try place
variables in FRAM or data items that you read frequently (data as
well as code). In this case you could hit that 10^12 cycles pretty
fast. With worst case code on an LPCxxx style device you could end up
hitting the FRAM for more than 10^7 cycles per second, giving only a
useful life of 10^5 seconds or just over a day.

As always, design with your eyes open!

--- In , Robert Wood <robert.wood@a...> wrote:
> Serial FRAM is available and not too outrageously priced now. Not
as cheap as
> EEPROM, but if your project isn't cost sensitive it works a treat
and you
> have unlimited life non-volatile memory.
>
> --------------------------
>
> There are many serial flash devices (I Use SST25vf512)that guarantee
> 100K cycles and 100 years. Flash offers byte write and sector
erase,
> while EEPROM offers both byte write and erase but are SLOW.
>
> Richard
>
> --- In , "gewitter2000" <martin@c...> wrote:
> >
> > Hi!
> >
> > Has someone used the flash memory of the lpc21xx for eeprom
purposes?
> > Or is it more usefull to take an additive eeprom to the design? I
only
> > want to store some parameters.
> >
> > Thank you for feedback!
> > Martin >
> Yahoo! Groups Links


------
Yahoo! Groups Links

a.. To


At 04:25 AM 2/1/05 +0000, embeddedjanitor wrote:
>AFAIK FRAM does not have unlimited life. It was around 10^6 cycles
>when I forst looked at it many years back and I believe it is now
>around 10^12 cycles, compared to around 10^5 cycles for EEPROM and
>flash.


They rate the low voltage devices as unlimited read/write cycles (I just
re-checked). As I recall, it is only within the last couple of years that
devices rated for that have been available. The high voltage (5V) devices
range from 10^10 to 10^12 read/write cycles. The write speed of FRAM
compared to ee is certainly an advantage but I wouldn't want to put a
millisecond clock in an older device.

Robert

" 'Freedom' has no meaning of itself. There are always restrictions,
be they legal, genetic, or physical. If you don't believe me, try to
chew a radio signal. "

Kelvin Throop, III


> Because it is "just like RAM" once might be tempted to try place
> variables in FRAM or data items that you read frequently (data as
> well as code). In this case you could hit that 10^12 cycles pretty
> fast. With worst case code on an LPCxxx style device you could end up
> hitting the FRAM for more than 10^7 cycles per second, giving only a
> useful life of 10^5 seconds or just over a day.

Not quiet right. I just looked up on datasheet at Ramtron.
The max. bus-freq. is 1E6 Hz for a 256KB FRAM.
20bits to read memory => max. 50000 reads/s
The chip I look at has an endurance of 1E10, gives 200.000s ~= 138d.

Also not forever, but slightly longer :-)

> As always, design with your eyes open!
Anyway a good hint :-)

--
42Bastian Schick




Memfault Beyond the Launch