Need a non-volatile memory IC with near unlimited read/write operations capability
Three non-volatile memory types match your needs, in order of available size:
- Wear leveled EEPROM/FLASH.
- Battery backup SRAM.
In terms of cost, FRAM is best. All you need is inside the chip, including backup capacitors to complete writing. However available sizes are low.
Battery backup SRAM is large and costly in materials.
Wear leveled EEPROM requires firmware to handle the wear leveling.
Here is what I did on a product that's still in mass production.
- Keep all the parameters and counters in RAM
- Hook up an interrupt line to a power supply voltage threshold detector
- When the interrupt triggers, shut off everything that consumes power (most peripherals, LEDs, etc) and back up all the RAM to flash.
Turns out there was about 10-20ms of time between the low voltage trigger and the time when the power management IC kicked in and shut everything down (in an orderly fashion). Whether this works or not depends on the energy storage in your power supply, but even a small-ish supply can slow this down enough so that you can write a small data set reliably.
Toggle MRAM (magnetoresistive RAM) is claimed to have an effectively infinite write endurance (they're not aware of any mechanism that would cause writing to wear it out). I'm not aware of any such chips that speak I2C, though, so you'd have to settle for SPI. Here's one such part: https://www.digikey.com/product-detail/en/everspin-technologies-inc/MR25H256ACDF/819-1064-ND/8286370