这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » 【转载】单片机为什么常有Flash,而不常有EEPROM?--from嗷呜

共19条 1/2 1 2 跳转至

【转载】单片机为什么常有Flash,而不常有EEPROM?--from嗷呜

工程师
2023-01-07 19:51:28     打赏

今天就来围绕EEPROM 和 FLASH展开描述。



ROM的发展

ROM:Read-Only Memory,只读存储器。


以非破坏性读出方式工作,只能读出无法写入信息,信息一旦写入后就固定下来,即使切断电源,信息也不会丢失,所以又称为固定存储器。---来自百度百科


最早的ROM是不能编程的,出厂时其存储内容(数据)就已经固定了,永远不能修改,也不灵活。
因为存在这种弊端,后来出现了PROM(Programmable read-only memory,可编程只读存储器),可以自己写入一次,要是写错了,只能换一块芯片。


微信图片_20230107194903.jpg

因为只能写一次,还是存在很多不方便,于是出现了EPROM(Erasable Programmable Read-Only Memory,可擦除可编程只读存储器),这种存储器就可以多次擦除,但是这种可擦除的存储是通过紫外线进行擦除,擦除的时候也不是很方便。




引用一个比如:如果你往单片机下载一个程序之后发现有个地方需要加一句话,为此你要把单片机放紫外灯下照半小时,然后才能再下一次,这么折腾一天也改不了几次。



随着技术的不断进步,EEPROM(Electrically Erasable Programmable Read-Only Memory,电可擦除可编程只读存储器)来了,解决了ROM过去历史中存在一些问题。
早期的EEPROM:早期的EEPROM的特点是可以随机访问和修改任何一个字节,可以往每个bit中写入0或者1,现在基本以字节为单位了。
早期的EEPROM具有较高的可靠性,但是电路更复杂,其成本也更高,因此EEPROM的容量都很小,从几KB到几百KB不等。(有点类似前面说的单片机中RAM少的原因》。

如今的EEPROM支持连续多字节读写操作了,算是已经发展到很先进的水平了。


至此,大家今天看到的EEPROM,基本都是发展的很成熟的EEPROM了。

Flash的发展

Flash,又叫Flash Memory,即平时所说的“闪存”。
Flash结合了ROM和RAM的长处,不仅具备电子可擦除可编程(EEPROM)的功能,还可以快速读取数据,具有NVRAM的优势NVRAM:Non-Volatile Random Access Memory,非易失性随机访问存储器)。
在过去,嵌入式系统一直使用ROM(EPROM)作为它们的存储设备,Flash的出现,全面代替了ROM(EPROM)在嵌入式系统中的地位,用作存储Bootloader以及操作系统或者程序代码或者直接当硬盘使用(U盘、固态硬盘)。

微信图片_20230107194943.png

Flash通常分为:NOR Flash 和 NAND Flash,它们各自有各自的优缺点。


1.NOR FlashIntel于1988年首先开发出NOR flash技术,彻底改变了原先由EPROM和EEPROM一统天下的局面。
NOR Flash的读取和我们常见的SDRAM的读取是一样,即可以根据地址随机读写,用户可以直接运行装载在NOR FLASH里面的代码,这样可以减少SRAM的容量从而节约了成本。因为其读取速度快,多用来存储程序、操作系统等重要信息。
2.NAND Flash1989年,东芝公司发表了NAND flash结构,强调降低每比特的成本,更高的性能,并且象磁盘一样可以通过接口轻松升级。
NAND Flash没有采取内存的随机读取技术,它的读取是以一次读取一块的形式来进行的,通常是一次读取512个字节,采用这种技术的制作Flash的成本更廉价。
用户不能直接运行NAND Flash上的代码,因此好多使用NAND Flash的开发板除了使用NAND Flash以外,还作上了一块小的NOR Flash来运行启动代码。
3.比较相比于 NOR Flash,NAND Flash 写入性能好,大容量下成本低。
目前,绝大部分手机和平板等移动设备中所使用的 eMMC 内部的 Flash Memory 都属于 NAND Flash。PC 中的固态硬盘中也是使用 NAND Flash。

EEPROM和FLASH区别

现在的 EEPROM 和 FLASH 都属于“可多次电擦除存储器”,但他们二者之间还是有很大差异。
首先,他们最大差异就是:FLASH按块/扇区进行读写操作,EEPROM支持按字节读写操作。
其次,容量大小不同:FLASH容量可以做到很大,但EEPROM容量一般都很小。
再次,就是它们的应用场景不同:EERPOM存储零散小容量数据,比如:标志位、一组数据等。FLASH存储大容量数据,比如:程序代码、图片信息等。
再次,内部结构不同,Flash结构更简单,成本更低,类似前面和大家分享的《单片机中RAM少的原因》。


当然,还有很多其他区别,但随着技术的提升,它们二者已经很接近了。以前它们不能满足的功能,现在基本都能满足了。

单片机中为啥很少有EEPROM?

通过上面的描述,相信大家基本都能明白,为什么单片机中很少有EEPROM了。
下面简单总结一下几点原因:
1.Flash容量更大,储存数据更多;

2.Flash速度更快,特别是读取速度;
3.同等容量,Flash成本更低;
4.Falsh体积更小,在单片机有限的空间Flash优势更明显;

5.随着RAM增加、CPU处理速度增快,能用Flash“模拟”EERPOM;


转载自网络,如有侵权,联系删除。



高工
2023-01-07 21:17:26     打赏
2楼

感谢分享


高工
2023-01-07 21:18:50     打赏
3楼

感谢分享


高工
2023-01-07 21:29:55     打赏
4楼

感谢分享


专家
2023-01-07 21:39:37     打赏
5楼

感谢分享


专家
2023-01-07 21:38:30     打赏
6楼

感谢分享


高工
2023-01-07 22:29:17     打赏
7楼

谢谢


高工
2023-01-07 22:34:48     打赏
8楼

谢谢


院士
2023-01-07 23:31:45     打赏
9楼

学习


专家
2023-01-08 00:04:07     打赏
10楼

感谢楼主分享


共19条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]