嵌入式存储器基础知识:EEPROM、FRAM、eMMC 和 SD 卡之对比

作者:Jacob Beningo

投稿人:DigiKey 北美编辑

对于所有基于微控制器的嵌入式系统而言,存储器都是其中的主要元件。例如,开发人员需要足够的 RAM 以存储所有易失性变量、创建缓冲区以及管理各种应用堆栈。RAM 对于嵌入式系统相当重要,同样,开发人员也需要一定空间用于存储应用代码、非易失性数据和配置信息。

然而,问题在于非易失性存储器技术不断扩展,选择众多,使选择适合应用的存储器颇具挑战性。

本文对各种存储器技术进行了介绍,并以 ON SemiconductorAdesto TechnologiesRenesasISSI、Cypress Semiconductor、AdvantechGigaDevice SemiconductorSilicon Motion 等供应商推出的产品为例,帮助开发人员了解各种存储器类型的特性。此外,本文还探讨了各种类型存储器的最佳应用,以便开发人员有效使用。

嵌入式系统中的 EEPROM 和 FRAM

EEPROM 往往是开发人员最先、最常考虑用于嵌入式系统的存储器件。在嵌入式应用中,这类非易失性存储器通常用于存储系统配置参数。例如,连接至 CAN 总线网络的设备可能会将 CAN ID 存储于 EEPROM。

EEPROM 的以下特性使其成为嵌入式系统开发人员的理想之选:

  • 小封装尺寸
  • 相对实惠的价格
  • 100 kbps 至 1000 kbps 的典型比特率范围
  • 标准化电气接口
  • 通常支持 I2C 和 SPI 接口

目前,在 DigiKey 网站上快速搜索 EEPROM 可以发现,共有 9 家 EEPROM 供应商提供的 5,800 多款 EEPROM。例如,ON Semiconductor 的 CAT24C32WI-GT3 是一款 32 Kb (4 KB) EEPROM 器件,采用 8 引脚 SOIC 封装,连接 I2C 总线时速度可达 1 MHz(图 1)。

ON Semiconductor 的 CAT24C32WI-GT3 是一款 1 Kb EEPROM 图片图 1:ON Semiconductor 的 CAT24C32WI-GT3 是一款 1 Kb 的 EEPROM,可通过 I2C 或 SPI 端口连接微控制器以存储配置和应用数据。(图片来源:ON Semiconductor)

值得注意的是,某些微控制器中也包含 EEPROM。例如,Renesas 的 R7FS128783A01CFM#AA1 32 位微控制器,具有 4 KB 板载 EEPROM 可供开发人员使用。

因此,配置需求不能超过 4 KB,否则,开发人员就需要使用外部存储器件,或使用微控制器的闪存来模拟 EEPROM 以扩展容量。

尽管 EEPROM 深受青睐,却也存在一些潜在缺陷:

  • 擦/写操作寿命通常为 1,000,000 次
  • 写周期约为 500 ns
  • 写入单个数据单元需要多条指令
  • 数据保存期为 10 年以上(近期的产品可达 100 年以上)
  • 易受辐射和高工作温度影响

EEPROM 适合的应用众多,但对于汽车、医疗或航天系统等可靠性要求较高的应用,开发人员则希望使用 FRAM 等更可靠的存储器解决方案。

FRAM 是“铁电随机存取存储器”的缩写,相较于 EEPROM 存储器,颇具优势:

  • 速度更快(写周期小于 50 ns)
  • 写操作寿命更长(高达 1 万亿次,EEPROM 仅为 100 万次)
  • 功率较低(工作电压只需 1.5 V)
  • 辐射耐受性更强

FRAM 的存储容量与 EEPROM 相当。例如,Cypress Semiconductor 的 FRAM 系列容量范围从 4 Kb 至 4 Mb。其中,FM25L16B-GTR 容量为 16 Kb(图 2)。该器件采用 8 引脚 SOIC 封装,工作频率可达 20 MHz。

Cypress 的 FRAM 系列图片图 2:Cypress 的 FRAM 系列存储器容量从 4 Kb 至 4 Mb 不等,可通过 SPI 连接微控制器以存储配置和应用数据。FM25L16B-GTR(如图所示)的工作频率可达 20 MHz。(图片来源:Cypress Semiconductor)

针对高端产品,Cypress Semiconductor 推出 CY15B104Q-LHXIT,容量为 4 Mb,支持的接口速度高达 40 MHz(图 3)。这款 FRAM 存储器具有以下特性:

  • 151 年数据保存期
  • 100 万亿次读/写
  • 直接替代串行闪存和 EEPROM

正如您所猜想,FRAM 的价格比 EEPROM 昂贵,因此选择适合应用的存储器时,务必仔细权衡器件的各种工作环境因素。

Cypress 的 CY15B104Q-LHXIT 是一款 4 Mb 器件图片图 3:CY15B104Q-LHXIT 是一款 4 Mb 器件,工作频率可达 40 MHz。该器件所属的 Cypress FRAM 系列产品,容量范围从 4 Kb 至 4 Mb。(图片来源:Cypress Semiconductor)

嵌入式系统中的闪存、eMMC 和 SD 卡

嵌入式系统中的闪存具有多种不同用途。首先,外部闪存可用于扩展内部闪存,从而增加应用代码的可用存储器空间。常用解决方法是:使用 GigaDevice Semiconductor 的 GD25Q80CTIGR 等 SPI 闪存模块(图 4)。如果微控制器支持 SPI 接口,则可通过该接口使用 GD25Q80CTIGR 将内部存储器扩展 8 Mb。

GigaDevice Semiconductor Limited 的 GD25Q80CTIR 闪存图片图 4:使用 GigaDevice Semiconductor Limited 的 GD25Q80CTIR 闪存,可通过 SPI 端口将内部闪存空间扩展 8 Mb。(图片来源:GigaDevice Semiconductor Limited)

其次,外部闪存可用于存储配置信息或应用数据,而非使用 EEPROM 或 FRAM。为了降低 BOM 成本或扩展内部存储器以存储应用数据,可以改用外部闪存芯片。微控制器外设和存储器映射可以配置为加入该外部闪存,以便开发人员能够更轻松地进行访问,而无需专门对所需的驱动程序进行自定义调用,来连接 EEPROM 或 FRAM。

Adesto Technologies 的 AT25SF161 是一款适用于该用途的外部闪存器件范例(图 5)。该器件使用队列式 SPI (QSPI) 接口。QSPI 是对常规 SPI 协议的扩展,提高了系统数据吞吐量。对于单一事务需要存储或检索大量数据的应用,开发人员可留意这类器件。

QSPI 免除了 CPU 对 QSPI 外设的干预,并将接口由标准的 4 引脚(MOSI、MISO、CLK 和 CS)变更为 6 引脚(CLK、CS、IO0、IO1、IO2、IO3)。因此,其中 4 个引脚可用于输入和输出,而传统 SPI 只用 2 个引脚。

Adesto Technologies 的 AT25SF161 外部闪存器件图片图 5:Adesto Technologies 的 AT25SF161 外部闪存器件可用于扩展内部闪存,具有 QSPI 接口,可实现更快的数据存储和检索。(图片来源:Adesto Technologies)

最后,闪存可用于存储应用数据和有效载荷信息。例如,GPS 系统往往不会试图将所有 GPS 地图存储于本地处理器,而是使用 SD 卡或 eMMC 器件等外部存储器件。这些存储介质可通过 SPI 或专用 SDIO 接口连接微控制器,从而有效连接外部存储器件。

例如,ISSI 推出的 IS21ES04G-JCLI eMMC 可直接连接微控制器的 SDIO 接口,为其扩展 32 Gb 的闪存(图 6)。

ISSI 的 eMMC 闪存模块存储器容量达 32 Gb 图片图 6:ISSI 的 eMMC 闪存模块存储器容量达 32 Gb,可通过 SPI 或 SDIO 连接主机。(图片来源:ISSI)

就电气接口而言,SD 卡与 eMMC 器件别无二致。换言之,二者虽采用不同的封装,但都具有通用引脚可用于连接微控制器。不过,这两种存储器类型却截然不同。相较于 SD 卡,eMMC 通常具有以下差异:

  • 更坚固耐用,不易出现物理损坏
  • 交互更快
  • 价格更昂贵
  • 须焊接至电路板,不可拆卸

如果用户无需拆卸存储器,那么使用 eMMC 可以提供更可靠的解决方案,但仍取决于最终应用。无论哪种情况下,开发人员都需要仔细选择存储器,因为每款存储器的特性各不相同。

例如,车载子系统可能要求存储器经过可靠性验证,标准往往高于标准闪存器件。在这种情况下,开发人员需要选择通过汽车级鉴定的存储器,例如 Silicon Motion 的 SM668GE4-AC 4 GB eMMC 模块。

选购 SD 卡时,开发人员必须慎重考虑,因为与 eMMC 一样,每款 SD 卡的特性各不相同。开发人员需仔细检查存储卡的速度等级和工作温度。例如,多数 SD 卡的额定温度范围为 0 至 70 ℃,适用于消费类电子产品。

此外,每款存储卡都具有相关速度等级,用于描述预期最大接口速度。例如,在需要存储图像的应用中,使用 Class 2 存储卡则速度较慢,远不如专为高清视频设计的 Class 10 存储卡,例如 Advantech 推出的 SQF-MSDM1-4G-21C SQFlash 4 GB microSD 卡。

Advantech 的 SQF-MSDM1-4G-21C SQFlash microSD 卡图片图 7:Advantech 的 SQF-MSDM1-4G-21C SQFlash microSD 卡存储器容量达 4 GB,速度等级为高端 Class 10。(图片来源:Advantech Corp)

存储器选择技巧与诀窍

为嵌入式产品选择合适的存储器类型和接口颇具挑战性。选择适合应用的存储器时,开发人员可以参考以下“技巧与诀窍”:

  • 明确存储器工作条件,例如:
    • 预期擦/写次数
    • 温度、振动和辐射等环境条件和因素
    • 数据加载要求
  • 记录应用中存储器正常工作的最小比特率、所需比特率和最大比特率
  • 选择最接近记录中所需比特率的存储器接口类型
  • 对于汽车或航天系统等恶劣环境条件,须选择通过汽车级鉴定或辐射耐受性较强的存储器
  • 使用分线板将所选存储器件连接至微控制器开发套件以测试其性能

上述技巧有助于确保开发人员找到适合嵌入式应用的存储器。

总结

如今,可供开发人员选择的非易失性存储器件种类繁多,可用于存储各种数据,从应用代码到配置信息,不一而足。如上所述,开发人员需仔细评估应用需求,慎重选择存储器类型和接口,以期取得这些需求与成本之间的平衡。

 

免责声明:各个作者和/或论坛参与者在本网站发表的观点、看法和意见不代表 DigiKey 的观点、看法和意见,也不代表 DigiKey 官方政策。

关于此作者

Jacob Beningo

Jacob Beningo 是一位嵌入式软件顾问,目前与十几个国家的客户保持合作,通过帮助客户改善产品质量、降低成本和加快上市时间来大幅改变他们的业务。Jacob 先后发表了 200 多篇关于嵌入式软件开发技术的文章,是一位广受欢迎的演讲者和技术培训师。他拥有三个学位,其中包括密歇根大学的工程硕士学位。如有需要,欢迎随时通过 jacob@beningo.com 与其联系,也可访问其网站 www.beningo.com,并订阅其月度 Embedded Bytes Newsletter

关于此出版商

DigiKey 北美编辑