EEPROM vs Flash: Resistência, Granularidade e Tempo de Escrita
Ambos armazenam dados sem alimentação. A diferença está na frequência com que é possível escrever, na quantidade que tem de apagar de uma só vez e no tempo que a escrita demora — e são estes três fatores que decidem qual deles deve entrar no seu projeto.
Resposta rápida
- EEPROM: gravável byte a byte, 1M+ ciclos, milissegundos por byte, baixa densidade. Configuração e calibração.
- NOR flash: apagamento por setor (4 KB), ~100 mil ciclos, escritas de página abaixo de um milissegundo. Firmware e registo moderado.
- NAND flash: apagamento por bloco (grande), menor durabilidade, necessita de ECC e tratamento de blocos defeituosos. Dados em volume.
- FRAM / MRAM: escritas praticamente ilimitadas, rápidas, caras. Contadores e registos de alta frequência.
1. Os três eixos
| Tipo | Resistência | Unidade de apagamento | Tempo de escrita |
|---|---|---|---|
| EEPROM | 1M–4M cycles | Byte/page | ≈ 5 ms per write |
| NOR flash | ≈ 100k cycles | 4 KB sector | Page < 1 ms, erase 50–400 ms |
| NAND flash | 1k–3k (MLC/TLC) | 128 KB block | Page ≈ 0.3 ms, block ≈ 2 ms |
| FRAM / MRAM | 10^12+ | Byte | Microseconds |
2. A granularidade de apagamento é a diferença estrutural
A flash não consegue sobrescrever um byte no local: apaga um setor inteiro e depois reescreve-o. Isso significa que uma pequena atualização se torna um ciclo de leitura-modificação-escrita, e a durabilidade efetiva desse byte é dividida pelo número de bytes do setor. A EEPROM evita isto à custa da densidade e do preço.
A NOR e a NAND diferem na forma como lidam com isso. A NOR expõe uma interface de acesso aleatório e permite execução no local (execute-in-place), razão pela qual o firmware reside aí. A NAND está organizada em páginas e blocos, necessita de ECC e gere blocos defeituosos — mais barata por bit, mas o controlador tem de fazer mais trabalho.
3. Cálculo de durabilidade
1M ciclos a 1 escrita/s = 11.6 dias 1M ciclos a 1 escrita/min = 1.9 anos 1M ciclos a 1 escrita/10min = 19 anos 100k ciclos (NOR) a 1 escrita/min = 69 dias
É esse o cálculo que decide o componente. Um contador atualizado uma vez por segundo precisa de FRAM ou de nivelamento de desgaste; um bloco de configuração escrito aquando da alteração é adequado em EEPROM; o firmware escrito em produção é adequado em NOR.
| Padrão de escrita | Vida útil efetiva | Correção |
|---|---|---|
| 1 byte/s into EEPROM | 11.6 days at 1M | FRAM, or buffer + periodic write |
| 1 write/min into NOR | 69 days at 100k | Wear leveling across sectors |
| Config on change | Decades | No action |
| Firmware at production | Effectively unlimited | Sector erase is fine |
O tempo de escrita é importante para o comportamento em caso de perda de energia: um apagamento de setor de 300 ms que seja interrompido pode deixar o setor inválido. Planeie um journal ou um segundo setor, não contar com "vai terminar".
4. Escolha por carga de trabalho
| Carga de trabalho | Melhor adequação | Porquê |
|---|---|---|
| Config, calibration, serial number | EEPROM | Byte writes, high endurance |
| Firmware, bootloader | NOR flash | Execute-in-place, sector update |
| Counter, event log, energy meter | FRAM / MRAM | Unlimited writes, no erase |
| Audio, images, bulk records | NAND | Density per dollar, with ECC |
Para o lado da flash série de um projeto, oGuia de layout do W25Q32abrange a interface e a desacoplagem; para o aspeto da durabilidade de uma decisão EOL, oGuia PCN/EOLabrange as compras de última oportunidade.
4b. Interface e encapsulamento
| Interface | Utilização típica |
|---|---|
| I2C EEPROM | Small config, 2-wire bus, many devices |
| SPI EEPROM | Faster byte writes, small density |
| SPI/QSPI NOR | Firmware, execute-in-place, larger density |
| Parallel NOR | Legacy, fast random access, many pins |
| NAND (raw or managed) | Bulk storage; managed parts hide ECC/bad blocks |
5. Lista de verificação
- Estime as escritas por dia e a vida útil do produto em anos.
- Divida o endurance pelo tamanho do setor se a atualização for menor do que a unidade de apagamento.
- Verifique o tempo de escrita e de apagamento face à estratégia de perda de energia.
- Confirme a interface (I2C, SPI, QSPI, paralela) e o número de pinos.
- Para NAND, reserve orçamento para ECC e gestão de blocos defeituosos.
- Verifique a retenção de dados à temperatura máxima de funcionamento.
6. FAQ
Posso utilizar flash como EEPROM?
Só com nivelamento de desgaste e um esquema de leitura-modificação-escrita. Não é possível escrever um byte em flash sem apagar o setor.
Quantas escritas consegue realmente suportar uma EEPROM?
1M–4M ciclos é típico, mas a durabilidade é especificada por byte e a uma temperatura. Verifique as condições da ficha de dados.
Porque é que a minha flash se desgasta tão depressa?
Porque cada pequena atualização reescreve um setor inteiro. A durabilidade efetiva é o número de ciclos nominais dividido pelo número de bytes que partilham esse setor.
A FRAM justifica o custo?
Quando a taxa de escrita é elevada ou a alimentação pode ser perdida a qualquer momento, sim. Elimina por completo o ciclo de apagamento e a questão do desgaste.
Preciso de ECC em NOR?
Normalmente não para firmware; para registo de longa duração a alta temperatura, um ECC ou checksum ligeiro é uma proteção barata.
O que acontece se houver uma falha de energia durante uma escrita?
Uma escrita de byte numa EEPROM é suficientemente atómica para a maioria dos projetos; um apagamento de setor numa flash não é. Utilize um journal ou dois setores alternados se os dados tiverem de sobreviver a uma perda de energia inesperada.
Posso armazenar dados durante 20 anos?
A retenção é tipicamente especificada para 10–20 anos a 85 °C. A temperaturas mais elevadas, aplique derating e confirme com o fornecedor.
7. Fontes
- Fichas técnicas de memória — resistência, retenção, tamanho de página/setor/bloco e tempos de escrita e apagamento.
- Notas de aplicação sobre nivelamento de desgaste e registo seguro contra falhas de energia (documentação do fornecedor e do MCU).
- Normas JEDEC para qualificação de memória e testes de retenção.
Selecionar memória?
Envie a taxa de escrita, o tamanho dos dados e a vida útil. Diremos-lhe se EEPROM, NOR, NAND ou FRAM é a resposta mais barata.