flash memory vs EEPROM

Started by rashid husain August 4, 2004
Hi All,

A very naive question.
What is the different between flash memory and EEPROM?
What do you install in flash memory and EEPROM?
As far as I know, flash for program code, and variable
in EEPROM or RAM.

tq..

hole

__________________________________




It's not a naive question at all. I'm still not sure of the
difference, but I think flash may be a type of EEPROM:

http://www.webopedia.com/TERM/F/flash_memory.html
http://www.webopedia.com/TERM/E/EEPROM.html

Even DigiKey lists the F (flash) PIC parts in their catalog as EEPROM.

Mike

--- In , rashid husain <wfm6453@y...> wrote:
> Hi All,
>
> A very naive question.
> What is the different between flash memory and EEPROM?
> What do you install in flash memory and EEPROM?
> As far as I know, flash for program code, and variable
> in EEPROM or RAM.
>
> tq..
>
> hole >
>
> __________________________________
>



Also...

I think EEPROM is where geeks take their girl robots.

Mike

--- In , rashid husain <wfm6453@y...> wrote:
> Hi All,
>
> A very naive question.
> What is the different between flash memory and EEPROM?
> What do you install in flash memory and EEPROM?
> As far as I know, flash for program code, and variable
> in EEPROM or RAM.
>
> tq..
>
> hole >
>
> __________________________________
>




Flash memory requires you to erase a block of memory at a time. EEPROM allows you to erase one location in memory. There will also be different erase/write cycles for each memory.

 

Basically Flash memory is good for data which does not change often, if the data does change often you need some advance algorithms to make sure you do not erase blocks to many times, etc.

 

EEPROM is good for data that does change often as you can erase an write back to same memory location. Again pay attention to the erase/write cycles.

 

Back in the old days you had EPROMs which generally were erased by UV light. Then came EEPROMs which could be erased electrically, then came flash. Originally PICs had code stored on EPROMs now a days the F parts have code in Flash but sometimes people get confused and still say the code is stored in EPROM.

 

Regards,

Trampas

 

 

-----Original Message-----
From: upand_at_them [mailto:u...@yahoo.com]
Sent: Wednesday, August 04, 2004 11:09 AM
To: p...@yahoogroups.com
Subject: [piclist] Re: flash memory vs EEPROM

 

Also...

I think EEPROM is where geeks take their girl robots.

Mike

--- In p...@yahoogroups.com, rashid husain <wfm6453@y...> wrote:
> Hi All,
>
> A very naive question.
> What is the different between flash memory and EEPROM?
> What do you install in flash memory and EEPROM?
> As far as I know, flash for program code, and variable
> in EEPROM or RAM.
>
> tq..
>
> hole
>
>
>
>            
> __________________________________
>


to unsubscribe, go to http://www.yahoogroups.com and follow the instructions



> A very naive question.
> What is the different between flash memory and EEPROM?
> What do you install in flash memory and EEPROM?
> As far as I know, flash for program code, and variable
> in EEPROM or RAM.

RAM - Unlimited number of erase/write cycles, very fast. Used to store
application variables (dynamic data). Data is lost when power goes down.

FLASH - 100.000 erase/write cycles. Used to store application code,
constants, tables and other static data. Slow. Program is stopped while MCU
does self-programming of its FLASH memory (if self-programming is available
on that MCU). Processor can't write its program memory (Flash) and execute
code from that same memory at the same time so writing to Flash is tricky.
Could be used to store calibration data since these values are changed
rarely. Non-volatile memory.

EEPROM - 1.000.000 erase/write cycles. Used to store calibration data and
variables that will not be changed more than 1mil times during expected
product life. You can initiate EEPROM programming without interrupting your
application. When writing is done, there is bit that is set or even IRQ can
be generated. Non-volatile memory.

I'm using RAM for variables, Flash for code, constant and tables, and EEPROM
for calibration data and variables that are not changed so frequently.

Usually, that's how it goes...

Regards,
Igor