非易失性存储器有哪些:断电保留数据的常用存储硬件
之前帮工作室调试老旧设备固件的时候,被人问懵过非易失性存储器有哪些,当时只笼统知道是断电不丢数据的存储,实操排查硬件故障时,才实打实摸清了日常设备里最常用的几款类型。
最先接触到的就是ROM,也就是只读存储器。很早之前组装工控机的时候,主板上的BIOS芯片就是最典型的ROM。这块芯片不管设备断电多久,里面的底层启动程序都不会丢失,不用任何额外供电,出厂写入的核心程序会一直保留。那会儿不懂事,试着随便刷写BIOS固件,直接导致主板启动异常,后来才清楚,传统ROM几乎无法自主改写数据,只能读取,专门用来存放设备最基础、不需要频繁改动的固定程序。
后来调试便携单片机设备,频繁用到了Flash闪存,这是目前应用最广的非易失性存储器。市面上的U盘、固态硬盘、手机机身存储,全部都是基于Flash做的。和ROM不一样,它可以反复擦写数据,读写速度快,适配日常高频使用场景。之前做项目存储设备日志,用Flash芯片存运行数据,设备反复断电重启几十次,日志记录都完整保留,没有出现过数据丢失的情况,这也是它能取代很多老式存储的核心原因。
调试老旧工业设备时,还碰到过EPROM存储器。这种存储芯片外观很特殊,顶部有一个透明的石英窗口,当时师傅特意提醒,这是它的关键特征。它的数据可以擦除,但方式特别麻烦,不能软件直接操作,必须用专用的紫外线灯照射窗口,清空内部数据之后,才能重新烧录程序。早年很多工业控制器、老式仪器都用它,现在基本被淘汰了,效率太低,没法适配现在快速迭代的设备程序更新需求。
还有一种EEPROM,是我做小型硬件调试最常用的一款。它弥补了EPROM的短板,不用紫外线照射,也不需要拆机,通过电路信号就能直接在线擦写、修改数据,操作便捷很多。平时给小型传感器、温控器存储参数、校准数据,都会用到这款存储器。它的存储空间不大,读写速度也比不上Flash,但胜在稳定、小巧,专门用来存放设备的微调参数、用户自定义设置这类小体量数据。
很多人会混淆的还有MRAM,磁阻非易失性存储器。之前接触过高端工控设备,里面搭载的就是这款存储。它的工作原理和前面几款都不同,依靠磁阻效应存储数据,既保留了断电存数的特性,读写速度还无限接近内存,抗震动、耐高温的性能也极强。唯一的问题就是成本太高,没法普及到民用设备,只用于航空、工业精密仪器这些对稳定性和速度要求极高的场景。
实操过程里还发现一个很容易踩的误区,很多人把普通内存条当成非易失性存储器。台式机、笔记本的DDR内存,通电才能存数据,一旦断电,所有临时数据瞬间清空,属于典型的易失性存储,和上面这些类型完全不同,选型的时候绝对不能混淆。
最近整理设备存储清单时,正在逐一核对各类非易失性存储器的适配场景,打算把不同设备对应的存储型号、读写特性整理成一份实操对照表,方便后续快速选型排查。