General > General Technical Chat
Why not CMOS?
Bassman59:
--- Quote from: Kim Christensen on January 29, 2022, 05:50:48 am ---Back in the day that was the way to do it. But as others have said, modern flash is a far better choice.
If needed, a product could write to volatile RAM, sense when power has been removed, and have a capacitor to keep it running long enough to commit the data to flash.
Pic of an obsolete NVRAM chip with built in battery:
https://datasheets.maximintegrated.com/en/ds/DS1225Y.pdf
--- End quote ---
Dallas also made the DS5000T, which was an 8051 that used battery-backed SRAM as the program memory. You could also write to the program memory with a PC serial port which was handy back when the alternative in the late 1990s was a windowed EPROM.
It was specified to keep the program valid for at least ten years without power applied, and longer if the system was powered up.
I inherited a project that used this part back in 1997. It worked as expected. I probably should have asked the expected lifetime of the instrument that used the part, as by now the battery is surely dead.
Berni:
Batteries are horrible, please don't start putting them into products again.
There are non rechargeable cells that once dead render the entire product dead while rechargeable cells have way less capacity while still eventually wearing out and going dead, sometimes even leaking toxic corrosive goo over the board. Okay rechargeable cells can actually live a long happy life, but that is only in a favorable environment of stable temperature and regular consistent use, yet not all products gets used like that (leaving them over discharged can kill).There is test equipment out there using these battery backed Dallas SRAM chips, some of it holds valuable calibration data or even firmware that you really don't want to loose so you have to keep replacing them and keep a backup.
So what to use instead?
EEPROM and NOR Flash can actually live a really long time as long as you are not constantly writing large amount of data every second of every day.
But what if i need to write 10KB every 100ms?
Then just buy some FRAM memory. It writes really fast compared to Flash and has so much write endurance that you might as well treat it like it is SRAM. The thing is that FRAM is more expensive than the cheap high capacity NAND flash that factories are pumping out by the ton for SSDs, memory cards, phones etc.. This kind of flash memory is the crappiest flash out there (it focuses on maximum density) and due to its low cost ends up becoming the main storage memory of embedded systems. Since the embedded system already has lots of flash memory they will tend to also use the same memory chip for configuration. If you are careless with your Linux image then you can end up with the OS writing a lot of unnecessary garbage in flash while running. This not only wears the flash much quicker but can sometimes even cause the filesystem to crap itself on a hard power loss, bricking the device.
harerod:
--- Quote from: Siwastaja on January 29, 2022, 05:29:10 pm ---...
This battery-backed RAM is available in many microcontrollers that come with RTC peripheral.
...
--- End quote ---
FULLACK, let me add real quick: The backup battery only needs to deliver power, while all other power is off. I have done designs which can use either a supercap or a CR2032. The latter is cheaper during production and holds more charge, the former may result in a longer design life/service cycle.
https://en.wikipedia.org/wiki/Supercapacitor
Edit 220201: Let me share a story from the glorious days of battery buffered SRAM. We are writing the year 1998. The straddle carrier drivers of a certain Irish port went on strike. To emphasize their demands, they pulled the buffer batteries from all the Siemens S5 PLC's and threw them away. These PLC's were the brains of those machines, located in a locked cabinet in the driver's cabin. Their memory held program data and machine specific calibration data. I can't remember how many machines were standing around, dead in their tracks, blocking access to the container stack. Hunks of 56t of steel, 14m high, 6m wide, 13m long. Some poor bastard had to get out to each one, climb up with a handy 13kg mobile programming device and set things up again. Guess how I know. (The attached pictures were taken at other ports.)
tom66:
--- Quote from: TerraHertz on January 29, 2022, 03:10:20 am ---CMOS RAM plus easily replacable, no-leak coin cell, does not meet corporate 'planned obsolescence' objectives. They don't want to sell hardware that users can keep operational forever. They want to make and sell stuff that dies after some years, so the user has to buy a new one.
Limited lifetime flash memory is perfect for that. Since few users can diagnose and replace dead SMD chips. Especially if it held the firmware as well as config data.
--- End quote ---
Nonsense. See test equipment with Dallas battery-backed CMOS modules that die after 20 years. Yet you would never call that "planned obsolescence"
The real reason is flash memory is cheaper than RAM+battery connector+battery.
Plus good flash memory (most is good now) can last longer than any battery-backed CMOS ever did. Decades, even if written once a day with wear levelling. And likely 100 years if never written after factory init.
Bassman59:
--- Quote from: Berni on January 31, 2022, 06:37:17 am ---But what if i need to write 10KB every 100ms?
Then just buy some FRAM memory. It writes really fast compared to Flash and has so much write endurance that you might as well treat it like it is SRAM. The thing is that FRAM is more expensive than the cheap high capacity NAND flash that factories are pumping out by the ton for SSDs, memory cards, phones etc..
--- End quote ---
We use FRAM for non-volatile parameter and calibration storage and it's dead simple to manage and ultra reliable.
As for "expensive," I suppose that it's cheaper than a battery-backed SRAM and its lifetime exceeds ours :)
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version