作者:Jon Gabay
内存技术不会停滞不前。内存架构发生变化,更快、更高效的结构被创建并用于连续几代,例如 DRAM 到 SDRAM 到 DDR 到 DDR1、2、3 等等。
然而,记忆进化不仅仅局限于结构改进。存储单元本身的底层技术一直在改进。特殊工艺和设计针对低功耗、非易失性、安全存储或其他特殊需求进行了优化。
本文着眼于具有不同类型存储单元和存储架构的嵌入式 MCU。多家制造商提供这些 MCU,并声称其优于具有传统内存和架构的竞争部件。本文将研究设计人员可用的几个选项。
为了寻找完美的单元
Van Neumann、Harvard 和 RISC 架构都使用非易失性存储器(如 EPROM 和 Flash)来存储引导代码和固件。大多数引导代码都在芯片上,但也存在无 ROM 部分,并且仍将使用外部 OTP EPROM 或闪存。这两种技术都为微控制器的固件需求提供了密集、相当低功耗、低成本的现场和工厂可编程解决方案。
虽然传统 EPROM 已经让位给闪存作为主要存储技术已有数十年,但人们一直在寻求消除易失性和可重写性之间的障碍。最终,每个人都在寻求一种可以在任何地方使用的高速、非易失性、低功耗、可重写、高耐用性的电池。
令人高兴的是,已经开发了几种好的技术,可以产生我们都想要的理想细胞结构。然而,新的存储技术需要时间才能进入现代微控制器架构。当需要不同的制造工艺来制造这些特殊的存储单元时,尤其如此。在良率足够高之前,这些部件的成本总是会更高一些。
安全是驱动力
当专有算法或代码块为设计带来明显优势时,代码尤其有价值。当所有代码都存储在微控制器中时,很难根据代码侵权来强制执行专利。尽管如此,工具确实允许转储核心内存,因此可以使用加密代码。
外部存储器中的加密代码块不会让杂散的眼睛以任何可用的形式将其分解。MCU 包含一个解密算法,其中包含为伪随机函数生成器提供种子的定制参数。除非您知道种子,否则您无法轻松解码数据。
这就是Maxim DS5000T-32-16+等部件所采用的方法,这是一个基于 8 位传统 8051 内核的安全微控制器。它的核心是一个电池备份的 SRAM,它创建了一个“软”安全设计。即使被迫通过其地址序列,内部代码数据也已经加密。10 年数据保留规范将在没有电源的情况下保存内容。
请注意固件如何不保存在 ROM、EPROM 或闪存中。相反,对传入的加密代码应用 48 位或 80 位随机解密。如果检测到篡改,电池备份 RAM 甚至具有自毁机制。
其他现代风格的安全微控制器采用可交换模块格式,例如 Maxim DS2250-64-16#。注意双电池以确保使用寿命。整个微控制器模块、存储器、加密引擎和实时时钟可以保持状态并继续在系统外部运行。这使得这些 MCU 成为安全密钥访问、安全和关键设置参数、秘密算法和处理技术、滤波器系数等的理想选择。
具有加密 SRAM 的可交换安全模块具有自毁功能,可保护密码和固件以及关键参数和安全设置。
新的非易失性电池结构 松下
独有的技术用它的 ReRAM 单元。该公司开发了一种新的非易失性存储器结构,该结构基于一个晶体管 - 电阻器核心单元,该核心单元在特殊的电阻层中使用了氧化钽材料。使用普通的 0.18 µm CMOS 工艺,可以将 ReRAM 单元重新编程为 1.8 到 3.6 V 的低电平,而不必使用内部电荷泵来启动到更高的电压。重写时间也很快:10 ns。另一个关键优势是,与许多闪存和 EEPROM 技术不同,一个单元在重写之前不必被擦除。
Panasonic 在 MN101L、E 和 C 系列等 8 位内核和 MN103 L、S 和 H 系列等 16/32 位内核中利用了该技术,性能水平从 10 到 120 MHz 和 C 优化架构。
与闪存技术相比,ReRAM 的一个好处是功耗降低了 50%,这要归功于漏电流的减少(图 2)。松下表示,与闪存或 EEPROM 不同,不需要中间数据擦除周期,从而使写入时间快五倍。与闪存的典型 10 Kcycles 相比,ReRAM 的耐久性也增加到 100 Kcycles。
图 2:根据 Panasonic 的说法,ReRAM 技术将平均电流降低到足以消除其中一个电池的程度。
例如,像MN101LR04DXW这样的部件包含 64 KB 的 ReRAM 以及另一个 4K 用于暂存器 SRAM。8 位部件具有 16 位内部架构,包括标准外设,如 A/D(6 通道,12 位);I²C、UART 和 DMA。请注意,ReRAM 在程序区域中仅允许 1K 写入周期,但在数据区域中具有完整的 100K 写入耐久性。
另一种不同的技术来自瑞萨电子,它在其微控制器内部使用专有存储器技术来提高灵活性并缩短掩模 ROM 型处理器的生产时间。一个示例部件是M37548G3FP#U0使用该公司以 8 MHz 运行的 8 位内部 740 内核。它非常适合电器、玩具和娱乐等相对较小(20 针、15-I/O)简单(6 KB QzROM)嵌入式设计。更大的兄弟 M37542F8FP#U0 将其提升到 64 KB,采用更大的 36 引脚封装和 29 个 I/O。
QzROM 技术几乎取代了 MASK ROM 技术,大大缩短了开发周期,并降低了功耗(图 3)。与基于 Flash 的 micros 系统编程中的 OTP 和 J-Tag 一样,QzROM 可以在安装后进行编程,并且还具有防篡改功能以防止未经批准的访问。Panasonic 也在以 720 内核为中心的大容量 4 位系列中使用了这项技术。Segger Flasher 系列支持这两个内核的生产工具。
图 3:与闪存和 OTP 一样,QzROM 允许开发和非常大批量的类似掩模的良率,
但与传统的掩模技术相比,显着减少了大批量生产的延迟。
Innovasic在其用于 66 MHz 32 位灵活输入确定性输出 (FIDO) MCU 的 RREM 存储器类型中提出了一种创新架构。针对实时通信应用并针对各种通信协议进行了优化,部件如FIDO1100BGB208IR1使用 Innovasic 所谓的可重定位快速执行内存(RREM) 内存单元。这些用于通过将代码映射到更高速的内存来加速代码的关键部分。RREM 连接到处理器的内存总线,看起来就像该总线上的任何其他外围设备。RREM 的存储周期降至 20 ns,以支持 12.5 µs 的周期时间。由于不必使用等待状态或外部缓存式代码块,可以提高性能水平。
EEPROM 和 FRAM
并非所有形式的 NovRAM 都适用于代码存储,EEPROM 就是其中之一。EEPROM 单元更大、更复杂,并且通常速度较慢,这限制了其为高速微控制器提供代码的能力。但是,在微控制器内使用 EEPROM 进行非代码相关的非易失性存储是有优势的。
闪存是一种更高密度的非易失性存储器,它是面向页面的,必须加载整个页面才能读取位于该页面任何位置的单个字节。写入时也是如此,必须写入整个页面才能更改单个字节。
然而,EEPROM 可在字节范围内访问,并且微控制器可以运行自己的代码来读取或写入片上 EEPROM。飞思卡尔在其一些微控制器中添加了 16 位 EEPROM 块,例如MC812A4CPVE8,这是供应商HC12 核心系列 16 位微控制器的一部分。EEPROM 巧妙地用作一些寄存器以及控制块和通用阵列。
虽然排列为 16 位块,但可以在单周期总线操作中读取和编程数据以进行字节和对齐字访问。未对齐的字需要第二个周期。还提供了批量擦除功能。
嵌入式 MCU 中现在可用的另一种新型非易失性字节范围可访问存储器技术来自德州仪器通过收购 FRAM 技术。FRAM 是铁电 RAM,类似于早期计算机中使用的原始核心存储器。它是可靠的、固有的耐用性和抗辐射性。
从架构上讲,它就像 DRAM 单元总线,使用一层铁电材料代替介电材料使其非易失性,与闪存技术相比具有快速写入和更低的功耗。另一个关键优势是几乎无限的写入耐久性,例如 SRAM。
TI 已将 FRAM 模块置于其流行的低功耗 MSP430 系列部件中,包括小型部件(如 4k MSP430FR5720IRGER )和更大的 16k 部件(如MSP430FR5739IRHAR)。
FRAM 微控制器的产品培训模块概述可在 Digi-Key 网站上获得。还提供了另一个产品培训模块,该模块专门针对TI MSP430FR57xx FRAM MCU。
总而言之,工程师应该意识到,我们在 MCU 中认为理所当然的内存技术并不是全部。许多微控制器具有特殊的内存功能和架构,可以为您所用,我们在本文中重点介绍了其中的一些。此外,现代微控制器中新型存储器单元和传统存储器的组合可以为您的设计产生新颖、安全的应用程序。