4 ms·
Often, the same chip is used for more than just firmware. For instance, for UEFI firmware AFAIK it's common to have the UEFI variables stored on the same flash
by cesarb 5y ago
Often, the same chip is used for more than just firmware. For instance, for UEFI firmware AFAIK it's common to have the UEFI variables stored on the same flash chip; not being able to write to these variables will break more than just firmware update.
- ComputerGuru 5y agoYeah, it’s a bit more nuanced in practice. Most chips now have the ability to specify ranges that are locked or unlocked which then have different requirements for what it takes to write to them, and treat the /W line differently depending on that configuration. But they’re also 20c parts, so using two chips isn’t crazy (many use multiple either as backup or for the different components anyway).
- mananaysiempre 5y agoI don’t know how PC hardware does it, but microcontrollers typically have separate “flash” (large, less write cycles, requires complex rituals to write, executable) for programs and “EEPROM” (small, more write cycles, requires little if any preparation to write, often non-executable) for configuration and (very lightweight) logging. Prohibiting writes to the former but not the latter shouldn’t be particularly difficult, although I’ve yet to see a chip that would actually do it.
- ComputerGuru 5y agoThis is actually why bios chips fail so often in personal computers.
- jmrm 5y agoIs this true? I have repaired a lot of computers since I were young and non of them had hardware BIOS related problems.
- ComputerGuru 5y agoI’ve had three laptops fail in the last five years due to a flash rom chip getting corrupted after saving changes in the BIOS one time too many. Enterprise warranty covered an HP and a Dell service rep to come on site and swap out the motherboard+cpu+gpu combo twice, I swapped out the rom myself the third time. I’ve also had to do it on a desktop Gigabyte motherboard circa 2009 after a successful BIOS update left the flash rom unstable.
- tremon 5y agoIsn't it actually the other way around? EEPROM (electronically-erasable programmable read-only memory) is limited in write cycles, requires a lot of preparation to write, and is usually executed directly on the processor it's connected to. In comparison to EEPROM, flash memory is larger, can endure more write cycles and has a less complex ritual to write. Flash memory is used to store anything, even user data. Then there's NVRAM (non-volatile random access memory), which is usually smaller than EEPROM but has infinite write cycles, requires very little preparation to write (since it's just RAM), and is often used to store configuration data, not code.
- mananaysiempre 5y agoYes, it doesn’t mesh well with historical usage of these terms, but that’s what (e.g.) AVR and STM8 manuals call it, so that’s what I’m used to. From what I understand “flash” (program memory) is NAND flash with ~ 10⁴ write cycles and larger erase blocks, connected to the instruction bus, and “EEPROM” is NOR flash with ~ 10⁵ write cycles and smaller erase blocks (sometimes single bytes), connected to the data bus or even accessed indirectly. > Then there's NVRAM I was under the impression that NVRAM is less of a specific technology and more of a desideratum. As for implementations of it aside from ages-old battery-backed RAM, there’s FRAM used in some TI microcontrollers and (Wikipedia tells me) some other stuff, but it’s all patented to hell and back so we’re unlikely to see any of it in general use (although TI microcontrollers are admittedly lovely).