Electronics > Projects, Designs, and Technical Stuff
bit/byte programmable NOR Flash
gaminn:
Hi,
in my embedded device I would like to store some records in NOR flash. The record contains some meta data that can be updated eventually. Are there NOR flash chips capable of programming single bits (or at least bytes) at bit/byte locations containing 1s but at page that was already written with some data? Because I don't want to reprogram the whole updated record to erased page....
I found e.g. this device https://www.mouser.com/datasheet/2/949/w25q64jv_revj_03272018_plus-1489671.pdf and the datasheets says "In some cases, less than 256 bytes (a
partial page) can be programmed without having any effect on other bytes within the same page".
However, I would like to be 100% sure that programming bits/bytes into already programmed pages won't degrade the memory array.
Do you know any devices capable of this?
FenTiger:
A few years ago I designed a Flash file system for embedded use which relied heavily on the ability to flip any single bit from 1 to 0, even if other bits had already been cleared in the same page, or even in the same byte.
I won't go as far as to say that any SPI NOR Flash will support this, but we used this in production for years, with a variety of different Flash devices, and never had a problem with it.
What you can't do is program a 0 bit back to 1. That has to be done to an entire erase block at once.
gaminn:
Hi FenTIger and thank you for your reply. Do you remember exactly which NOR flash chips you use?
I found this info in several NOR flash's datasheets
ISSI IS25xxxx devices: "A program operation can alter “1”s into “0”s. The same byte location or page may be programmed more than
once, to incrementally change “1”s to “0”s. An erase operation is required to change “0”s to “1”s"
Cypress S25FL064L: "For the very best performance, programming should be done in full pages of 256bytes aligned on 256byte boundaries
with each Page being programmed only once."
Microchip SST26WF064C: nothing
For me it seems that we have to pick the NOR flash carefully with this feature in mind.
Benta:
FRAM or MRAM. Act as SRAM, but are non-volatile. Cypress and Everspin are the main manufacturers.
ejeffrey:
There is a difference between supporting it and describing it in the datasheet vs. it working. Standard NOR flash would need to take special precautions to prevent this from working, so it will probably work in most flash chips.
One thing that I have heard about (I think) NAND flash, not sure if true or if it applies to NOR flash is that writing '0' to to an already programmed bit causes excessive wear. Therefore it is recommended that when you execute your subsequent write you only try to program the bits that are still erased. If you do that you have to be careful that you don't break any write verification you are using.
Navigation
[0] Message Index
[#] Next page
Go to full version