YURUNOX · Nonvolatile memory selection
EEPROM vs NOR Flash vs FRAM: Which Memory Fits?
Start with EEPROM for occasional settings, NOR Flash for firmware and larger read-heavy storage, and FRAM for compact data that must be saved frequently. Then check capacity, write completion, endurance, retention and what must survive an interrupted save. All three retain data without power; they do not behave the same while updating it.
© Raimond Spekking / CC BY-SA 4.0 (via Wikimedia Commons).
The useful comparison is the write workload
A calibration value changed during service, a firmware image read at boot and a counter saved ten times per second are three different jobs. Choosing memory only by capacity or price hides the firmware and reliability work that follows.
| Question | EEPROM | NOR Flash | FRAM |
|---|---|---|---|
| Where does it fit? | Settings, identification and calibration updated occasionally | Firmware, code and larger read-heavy data sets | Frequently updated state, counters and compact logs |
| How is data replaced? | Byte or page write; internal erase/write is handled by the device | Program erased locations; erase a larger unit before reusing it | Direct overwrite without a separate erase command |
| What delays the next write? | Interface time plus an internal write cycle | Interface, program time and eventual erase/reclaim time | Mainly interface and device timing, without an EEPROM-style write-cycle wait |
| What needs counting? | Writes against the specified endurance unit | Program/erase cycling and uneven sector reuse | Accesses against the specified internal unit; reads may count too |
| Common design trap | Page-boundary wrap or treating transfer completion as persistence | Running out of erased space, or overwriting live data during reclaim | Confusing high endurance with large capacity or atomic records |
On narrow screens, scroll the table horizontally.
Three questions narrow the choice: How much data must remain available? How often is the hottest location accessed? After a reset halfway through a save, which version must the system recover?
There is no useful universal “cheapest memory” ranking. Compare the part, extra board area, firmware, qualification effort and field-recovery requirements at your actual capacity and volume.
What changes when you write a byte?
EEPROM: easy small updates, with a wait afterward
EEPROM means electrically erasable programmable read-only memory. Despite the historical name, it is rewritable. With a typical serial EEPROM, the host sends an address and data; the device then performs a self-timed internal write.
The driver must respect the page boundary and wait until the part is ready. For the 24LC256, sending a page write past the boundary can wrap within that page instead of continuing into the next one. ACK polling checks readiness without assuming that every write takes the maximum time. Microchip’s EEPROM application guide explains these driver-level details.
© Raimond Spekking / CC BY-SA 4.0 (via Wikimedia Commons).
NOR Flash: program a small region, reclaim a larger one
NOR programming normally changes bits from 1 to 0; erasing restores them to 1. A program page and an erase sector are different units. Changing a short value may therefore require a fresh record location, followed later by copying valid data and erasing old storage.
This works well for firmware and append-based storage, but “just overwrite the variable” is not a complete NOR strategy. Execute-in-place also requires a compatible memory-mapped host controller and device configuration; having a generic SPI peripheral is not enough.
© Raimond Spekking / CC BY-SA 4.0 (via Wikimedia Commons).
FRAM: direct overwrite, not a magic transaction
FRAM stores information using ferroelectric polarization, not magnetism. Supported serial devices can save incoming bytes without a separate erase operation or EEPROM-style internal write delay.
Data still takes time to cross the bus. If a 32-byte record is interrupted after only some bytes arrive, fast individual writes do not make the whole record complete. On FRAM architectures with read-and-restore behavior, reads also contribute to endurance. TI’s FRAM reliability report explains that distinction for its MSP430 FRAM devices.
What three actual datasheets tell you
These examples make the differences concrete. They have different densities and are not a drop-in replacement list or an equal-capacity price comparison. Check the exact ordering code, grade and applicable revision before approving a part.
| Example device | Capacity & write organization | Endurance detail | Design consequence |
|---|---|---|---|
| Microchip 24LC256 EEPROM | 256 Kbit = 32 KiB; 64-byte page; maximum 5 ms internal byte/page write cycle | 1,000,000 minimum cycles in the AC table at +25°C, 5.5 V, page mode; ensured by characterization | Split writes at page boundaries and distinguish transfer completion from write completion. |
| Winbond W25Q64JV NOR Flash | 64 Mbit = 8 MiB; up to 256-byte page program; 4 KiB sector erase available | Minimum 100,000 program/erase cycles per sector; apply the specified device conditions | Budget erased spare space and sector reuse, not one erase per logical byte update. |
| Infineon FM24CL64B Industrial I2C FRAM | 64 Kbit = 8 KiB; no EEPROM-style write-cycle wait | 1014 read/write cycles over operating temperature; accesses cycle an internal 8-byte row | Include reads and the internal cycling unit, not only application “save” calls. |
Examples: Microchip DS20001203Y; Winbond Rev. M, December 24, 2024; Infineon 001-84458 Rev. *K, December 5, 2018. These are the cited documents, not a claim that every current or similarly named grade shares their limits.
Keep bits and bytes separate: an 8-KiB memory holds 8,192 bytes, not 64,000 bytes. Firmware, record headers, checksums, spare copies and recovery space all reduce capacity available to useful data.
Bus speed is not the time to a completed save
Worked example · calculated, not a bench measurement
A 32-byte I2C write at 400 kHz
Assume one control byte, two address bytes and 32 data bytes, each followed by an acknowledge clock. Use a valid common supply such as 3.3 V and keep the EEPROM write inside one page.
(1 + 2 + 32) × 9 ÷ 400,000 = 787.5 µs
For the 24LC256, adding its maximum 5 ms internal write cycle gives a 5.7875 ms transfer-plus-write subtotal. The FM24CL64B has no corresponding EEPROM-style internal wait, but it still needs the transfer and its specified timing.
This excludes start/stop timing, software, bus arbitration, retries, polling and record verification. It is not a guaranteed application deadline. The EEPROM endurance condition at 5.5 V in the previous table is not a qualification result for this 3.3 V timing scenario. Sources: 24LC256 and FM24CL64B.
A well-designed asynchronous driver can do other work while EEPROM is busy. The important question is when the data is persistent, not whether the CPU must sit idle.
For NOR, a higher SPI clock also leaves internal program and erase time to account for. Size buffers for the longest required reclaim operation, not only the average write rate. If firmware executes from that memory, check access restrictions and any supported suspend mechanism during programming or erasing.
Count writes, storage and retention separately
Endurance is the specified cycling budget. Retention is how long stored data remains valid under stated conditions. Record integrity is whether a recovered record is complete and trustworthy. A strong number in one category does not answer the other two.
How much writing does your workload create?
Estimate logical updates, raw data per day and buffer coverage. This calculator sizes the workload; it does not predict a device’s failure date or certify its endurance.
Logical updates over service
1,576,800,000 estimated updatesRaw data generated daily
13,824,000 bytes per dayRaw buffer coverage
512 complete records fit8 KiB fits 512 complete 16-byte records: 51.2 seconds at 10 updates per second. Capacity is not an archive, even when endurance is high.
Assumes a steady rate, 365-day years, 1 KiB = 1,024 bytes and 1 MiB = 1,048,576 bytes. Capacity is rounded down to complete records. Inputs must be positive; fractional update rates are allowed. Add record metadata, commit writes, retries, alignment, reads and reserved recovery space to your real design budget.
Formulas: updates = rate × service seconds; bytes/day = record bytes × rate × 86,400; coverage = complete records that fit ÷ updates/second. For occasional settings, “daily data” is write traffic, not necessarily growing archive space.
Look for the hottest location—not just total writes
Ten updates per second for five 365-day years produce about 1.58 billion logical updates. A hypothetical budget of one million cycles spent on the same endurance unit at ten cycles per second would be used in 100,000 seconds, or about 27.8 hours. This is budget arithmetic, not a claim that a particular EEPROM will physically fail after that time.
One save may change payload, a sequence counter, a checksum and a commit marker. Moving the payload while always rewriting the same “latest record” pointer leaves a hot spot. For NOR, count how often each sector is reclaimed. For FRAM, follow the part’s read/write and internal-row rules rather than treating every byte address as an independent unlimited resource.
Temperature changes the retention question
The cited industrial FM24CL64B datasheet specifies minimum retention of 10 years at 85°C, 38 years at 75°C and 151 years at 65°C. Those are different temperature conditions—not three interchangeable lifetime promises. Start with the actual powered and unpowered temperature profile, cycling history and required retention interval. See the retention table.
Assembly is a separate check. TI’s SLAA526A distinguishes its MSP430FR57xx family, which must be programmed after reflow, from the other MSP430 FRAM devices covered by that report. Do not extend one family’s programming or baking rules to every FRAM component. See TI’s reflow guidance.
Nonvolatile bytes do not guarantee an intact record
Suppose a saved record contains a sequence number, operating count and CRC. After a mid-write reset, the sequence number might be new while the count is old. The application needs a rule for rejecting that mixture and finding the last committed version.
FRAM’s short write path reduces the time exposed to interruption, but completed bytes and a completed record remain different concepts. Infineon’s F-RAM power-failure discussion describes the behavior of completed versus interrupted byte transfers; the device’s voltage and power-down requirements still apply.
- 1 · Keep the valid versionRetain a committed record outside the candidate update’s relevant failure or erase region.
- 2 · Write a candidateInclude version, sequence, length, payload and integrity information. Finish the required device operations.
- 3 · Commit, then retireUse a device-qualified completion method. Recover the newest valid committed version before reclaiming the old one.
This is an architecture, not a universal two-slot recipe. The guaranteed write unit, failure region, erase geometry and commit-marker behavior determine the implementation. Two copies in the same sector are not independent protection if reclaiming that sector can remove both.
Documented manufacturer guidance
Why a correct-looking Flash readback may not be enough
Infineon’s Flash recovery guidance warns that an interrupted program or erase can leave the affected data untrustworthy—even if the readback appears correct. Its recovery approach tracks interrupted operations and avoids reusing the affected location until the required erase/recovery has been completed.
A CRC can help reject an incomplete record; it does not prove that cells affected by an interrupted Flash operation are stable. Follow the recovery instructions for the exact device. Read Infineon’s recovery guidance.
Define the acceptance rule before selecting the memory. “The newest uncommitted update may be lost, but all previously committed data must recover” is different from “no event may be lost.” The second requirement may need earlier persistence, enough hold-up energy for the entire save path, or a different system architecture. Reset supervision must keep the host and memory within their valid operating conditions.
Three practical selection scenarios
Illustrative design scenario · not a customer case
1. A serviceable instrument that saves operator settings
The instrument changes its configuration only after the operator confirms a new setting. EEPROM is a reasonable starting point if the save latency and calculated cycling budget fit.
Save confirmed changes, not every screen refresh. Separate calibration from user settings, include a format version, and define how new firmware migrates or rejects an old record. The decisive test is an interrupted save followed by a restart—not merely writing and reading one value on the bench.
Illustrative design scenario · calculated workload
2. An event logger that records 16 bytes ten times a second
The raw stream is 160 bytes per second, or 13,824,000 bytes per day. An 8-KiB FRAM holds only 512 such records: 51.2 seconds before metadata and spare space. High endurance does not make that device a day-long archive.
FRAM could hold frequently changing state or a short buffer, while larger NOR storage holds the archive. Size the archive for the required offline interval, and make the handoff recoverable. If power fails after copying a record but before updating the source pointer, a sequence number can help prevent silently duplicating it on the next boot.
Documented implementation example · STMicroelectronics
3. Reusing Flash for EEPROM-style settings
ST’s AN4894 shows that EEPROM emulation is a storage-management task: its STM32 implementation uses at least two Flash pages, wear leveling, page-state management and cleanup. This is evidence for the extra firmware work—not a ready-made driver for an unrelated serial NOR chip.
A 32-byte replacement inside a 4-KiB sector leaves 4,064 other bytes to preserve if they contain needed data. Appending a new record avoids an immediate erase, but eventually valid records must be retained and old space reclaimed. Test that transition with nearly full storage and interrupted power. Read ST’s EEPROM-emulation application note.
The selection lesson is straightforward: use the simplest architecture that meets the actual workload and recovery rule. A mixed-memory design can solve different jobs well, but each additional memory and transfer path adds qualification work.
Qualify the behavior before approving the purchase
Two parts with the same density, interface label or eight-pin outline can still need different firmware. A sourcing alternative is only a candidate until its electrical limits, memory organization and recovery behavior have been reviewed.
- Write down the workload.List useful bytes, metadata, peak update rate, hot addresses, read traffic, service life and archive duration.
- Check electrical and physical compatibility.Compare operating voltage, logic thresholds, pin assignments, package dimensions, temperature grade, startup timing and write-protect behavior.
- Review the full driver contract.Check address width and mapping, page boundaries, command set, busy/ready handling, erase units and any restrictions on repeated partial programming or internal ECC.
- Test persistence, not just communication.Exercise page ends, capacity ends, retries, reset timing, interrupted writes and near-full reclaim. Capture supply voltage alongside the interface signals.
- Match the supply documentation.Specify the complete manufacturer part number, allowed alternatives, packaging, traceability and inspection requirements. Functional testing and supply-chain provenance answer different questions.
| Observed symptom | First checks |
|---|---|
| Earlier bytes change during a longer save | Page wrap, address length, capacity aliasing and transfer boundaries |
| “Saved” is reported, but old data returns | Write protection, error handling, internal busy time and the point at which success is acknowledged |
| A record mixes old and new fields | Interrupted transfer, record validation and commit/recovery rules |
| Storage works until nearly full | Erased spare space, garbage collection, metadata hot spots and interrupted reclaim |
A useful RFQ states capacity after overhead, interface and clock, voltage, package, temperature range, access workload, retention conditions and the permitted loss rule. Attach the approved part number and datasheet revision. “64 Kbit memory, eight pins” leaves too much unspecified.
For supply review, see YURUNOX’s quality-assurance approach and purchasing process. Brand-specific sourcing information is also available for Infineon and STMicroelectronics.
EEPROM, NOR Flash and FRAM FAQs
Is EEPROM the same as NOR Flash?
Not in normal component-selection terminology. Both are electrically rewritable nonvolatile memories, but a serial EEPROM usually accepts byte or page updates with its own internal write cycle. NOR Flash programs erased locations and reclaims space by erasing larger units. The drivers and recovery rules are not interchangeable.
Which is fastest for frequent small writes?
FRAM is often a strong choice because supported devices overwrite data without an EEPROM-style internal write delay or a NOR erase operation. Total save time still includes the interface transaction, software, record validation and any commit step. Compare the complete save path, not just the memory clock.
Does FRAM have unlimited endurance?
No. Use the specified endurance and its conditions. For the industrial FM24CL64B example, both reads and writes contribute to cycling of an internal eight-byte row. High endurance provides a large cycling budget; it does not remove retention limits, power requirements or the need to count accesses.
Will FRAM always preserve a complete record after power loss?
No. Completed bytes may already be persistent while later bytes in the same record have not arrived. Use a recoverable record format and a qualified commit method, and keep voltage and timing within specification. Nonvolatile storage alone does not make a multi-byte transaction atomic.
Can NOR Flash store settings or counters?
Yes, if firmware handles append records, wear distribution, erased spare space, recovery and eventual garbage collection. Frequent direct replacement of a small value is a poor model for NOR. Check worst-case erase delays and behavior when the storage area is nearly full.
Can FRAM directly replace an I2C EEPROM?
Sometimes, but not merely because the package has eight pins or both parts use I2C. Compare capacity, address width and mapping, voltage, pins, write protection, startup timing and driver assumptions. A smaller replacement may alias addresses, and EEPROM-specific page and busy handling may need changes.
Which technology keeps data longest without power?
There is no universal winner. Compare retention for the exact device, temperature profile and cycling history. A long headline retention figure at a lower temperature is not the same requirement as years of storage at a higher temperature. Assembly and baking conditions also need a separate check.
Does it make sense to use more than one memory type?
Yes. NOR can hold firmware and an archive while EEPROM stores occasional settings or FRAM holds frequently updated state. The benefit must justify the extra hardware and firmware. If records move between memories, make that handoff recoverable so a reset does not silently lose or duplicate events.
Technical sources
Numerical examples identify the cited device and conditions. Manufacturer documents and application guidance support the comparisons; the workload examples are calculations, not YURUNOX test results or customer outcomes.
- Microchip — 24AA256 / 24LC256 / 24FC256, DS20001203Y: capacity, write organization, timing and endurance conditions.
- Microchip — AN1028, Recommended Usage of Microchip I2C Serial EEPROM Devices: page boundaries and driver practice.
- Winbond — W25Q64JV, Rev. M, December 24, 2024: manufacturer-authored datasheet hosted on TI E2E; page programming, sector erase and endurance.
- Infineon — FM24CL64B industrial F-RAM, 001-84458 Rev. *K: read/write cycling, internal row size and temperature-dependent retention.
- STMicroelectronics — AN4894, EEPROM emulation on STM32 MCUs: page management, wear leveling and recovery architecture.
- Infineon — Recover Flash Devices When Power Failure or Reset Happens During Program or Erase: interrupted-operation recovery.
- Infineon — F-RAM Power Failure During Write: completed bytes versus interrupted transfers.
- Texas Instruments — SLAA526A, MSP430 FRAM Quality and Reliability: ferroelectric behavior, read/write endurance and family-specific assembly guidance.
Bottom line: choose the memory around the data’s size, update pattern, temperature, save deadline and recovery rule—not the technology name alone.
