早上看到《电子系统设计》的一篇文章《嵌入式应用中存储器类型的选择技巧》,觉得不错。细细分析,自己对于存储器类型的理解上还不是很系统,搜索了一些资料,总结备忘。
从技术上讲,可以分为NVRAM(Non-Volatile Random Access Memory, 非易失性随机访问存储器)和VRAM(Volatile Random Access Memory, 易失性随机访问存储器)。严格地来说,非易失性存储器应该叫NVM(Non-Volatile Memory),因为有些存储器的随机访问能力非常弱,但是现有的和未来的非易失性存储器都具备不错甚至非常好的随机寻址能力,所以统称为NVRAM。
VRAM技术对应的存储器一般为DRAM(Dynamic Random Access Memory,动态随机存储器)和SRAM(Static Random Access Memory,静态随机存储器),特点就是掉电后存储信息会丢失。
DRAM与SRAM由于其VRAM特性,使得它们的应用受到了一定的限制。其实每种存储器都有自身的限制,但VRAM特性让这些平时肩负着重要数据中转任务的存储器在某些场合显得有些力不从心。例如应用写缓存技术从主机向硬盘写数据,当写入写缓存后,对于主机一方就表明写入完成,从而可以进行后面的工作了,但如果此时突然断电,那么就意味着在写缓存中的数据丢失了,而没有真正写入磁盘中。因此,在网络存储领域,不少磁盘阵列自身都带有不间断电源,以保证阵列的缓存(一般都是1GB以上容量的DRAM)中数据的安全。在嵌入式系统中,固化代码也无法使用DRAM和SRAM。
20世纪90年代后,数码掌上设备迅速普及。这些小巧的设备其实就像一个PC,可谓五脏俱全。此时必须有一个能肩负起PC中硬盘角色的存储器应用于掌上设备。但是,传统硬盘这种磁性介质(Magnetic Media)需要体积较大且复杂而精细的机构来带动磁头和盘片,同时容易因为机械上的磨耗或外力冲击而失常。此外,磁盘驱动器需要消耗相当的电力来维持马达和电子驱动电路的操作,即使在现今计算机设计上有许多省电功能(特别是笔记本电脑)的情况下,机械式存储设备仍然占了计算机消耗功率中的大部分。显然,这对于小巧的掌上设备而言,并不十分适合。尽管现在已经出现了1英寸和0.85英寸的硬盘,但将其用于掌上设备仍不成熟,目前也仅应用到了高端数码相机(DC)这一级别的设备。DC手机、PDA、便携式DC的发展越来越需要大容量的存储器。
相比之下,DRAM与SRAM虽然体积小,不受碰撞的影响,速度也非常快,但不具备非易失性,因此在掌上设备中也只能充当传统内存的角色,而这正是NVRAM所能弥补的。NVRAM具备DRAM与SRAM的物理优点,同时具有硬盘永久(相对而言)存储的特性。正是在这种需求的推动下,NVRAM发展迅速,当它的传输速度越来越逼近DRAM,而单片容量又大幅超过DRAM时,人们看到了它巨大的发展潜力,我们使用的PDA、数码相机和手机里都有NVRAM。
对于NVRAM,业界似乎没有非常严格的定义,厂商间也有不同的分类(有的厂商仍用NVM统称,有的则一直用NVRAM)。不过,凡是具备永久保存数据能力的半导体存储器都可以称之为NVRAM。
从发展过程看,NVRAM经历了五代产品,如图1所示。其中,Masked ROM是掩模式只读存储器;OTP(One Time Programmable)ROM是只可编程一次只读存储器;EPROM(Erasable Programmable ROM)为可擦可编程只读存储器;而EPROM与EEPROM的替代者(或结合体)就是我们今天常说的闪存(Flash Memory)。
【注:MASK ROM的MCU价格便宜,但程序在出厂时已经固化,适合程序固定不变的应用场合;FALSH ROM的MCU程序可以反复擦写,灵活性很强,但价格较高,适合对价格不敏感的应用场合或做开发用途;OTP ROM的MCU价格介于前两者之间,同时又拥有一次性可编程能力,适合既要求一定灵活性,又要求低成本的应用场合,尤其是功能不断翻新、需要迅速量产的电子产品。】
图1
20世纪70年代,为了替代不太灵活的只读存储器ROM,开发出了EPROM和EEPROM,但EPROM很难编程,而EEPROM的成本又太高。之后,80年代后期,闪存在Die的面积、密度和可重写性上取得了突破。到目前为止闪存已成长为规模最大的存储器产品之一,2003年,其销售收入约占整个存储器行业110亿美元销售额的1/3。
闪存最早的发明厂家是Intel。1980年,为了解决EEPROM由于只能以位(bit)为单位进行写入和删除而带来的速度慢、成本高的缺陷,Intel在EPROM基础上开发出了能以块为单位进行读写的闪存,因此,Flash Memory也被称为快擦写存储器。到了1988年,Intel正式推出了NOR型闪存,而东芝公司则在1987年提交了以EEPROM为基础开发的NAND型闪存技术设计,并于1989年正式推出相关的产品。后来,三菱公司在NOR的基础上又开发出了DiNOR(Divided bit-line NOR)型闪存,日立则在NAND的基础上开发出了AND型闪存,但这后两者并不常见。2003年,三菱与日立的半导体分部合并成立了Renesas(瑞萨)半导体公司,目前该公司主推NOR和AND型闪存。
图2
图3就是目前4种主流闪存的结构图。从图3中可以看出,DiNOR简化了NOR型闪存的位线设计,采用了多晶硅子位线设计,这样做的好处是缩减了芯片的核心面积,这也是NOR的一个重要缺点。在性能上,DiNOR与NOR相差不多。AND型闪存相对于NAND闪存的改动主要是将传统的位线扩展为发散型嵌入式位线,降低了擦/写电压,性能则与NAND相当。这里需要指出的是,所谓的NOR、NAND、AND都是以晶体管的连接形态命名的。熟悉门电路的读者不难发现它们是非或、非与和与门电路的简称,而对应闪存的晶体管的连接方式与相应的门电路的连接方式有几分相像。
图3
目前,NVRAM的主流产品就是闪存,传统的EPROM与EEPROM的应用范围则相对狭窄(但我们还是能见到它们的身影,比如内存模组上SPD芯片)。
另外的一种理解就是NVRAM与FLASH等并列,是一种组合方式,一般有两种组合。一种是SRAM+电源,另一种是SRAM+EEPROM。第一种组合电源用尽,非易失性就丢失了;第二种组合是MCU直接操作SRAM,在检测到掉电之后,把SRAM的内容写入到EEPROM,下次在读取内容。这样也实现非易失性,但是存在发生异常时,无法写入EEPROM,而造成内容丢失的情况,也就是不可靠。
前面的5中分类的方法更为合理一些。后面的理解可以根据实际的应用情况进行处理。
三 最新的发展
最新的存储器为FRAM(Ferroelectric RAM,铁电存储器)。RAM 类型的存储器易于使用、性能好,可是它们同样会在掉电的情况下会失去所保存的数据。而所有的主流的非易失性存储器均源自于只读存储器(ROM)技术。 正如你所猜想的一样,被称为只读存储器的东西肯定不容易进行写入操作,而事实上是根本不能写入。所有由ROM技术研发出的存储器则都具有写入信息困难的特点。这些技术包括有EPROM (几乎已经废止)、EEPROM(或写为E2PROM)和Flash(闪存)。 这些存储器不仅写入速度慢,而且只能有限次的擦写,写入时功耗大。铁电存储器能兼容RAM的一切功能,并且和ROM技术一样,是一种非易失性的存储器。铁电存储器在这两类存储类型间搭起了一座跨越沟壑的桥梁--一种非易失性的RAM。与传统的非易失存储器相比,具有高速、低功耗、长寿命的特点。
铁电存储器的工艺
铁电存储器技术和标准的CMOS制造工艺相兼容。铁电薄膜被放置于CMOS基层之上,并置于两电极之间,使用金属互连并钝化后完成铁电制造过程。
Ramtron的铁电存储器技术到现在已经相当的成熟。最初的铁电存储器采用两晶体管/两电容器(2T/2C)的结构,导致元件体积相对过大。最近随着铁电材料和制造工艺的发展,在铁电存储器的每一单元内都不再需要配置标准电容器。Ramtron新的单晶体管/单电容器结构可以像DRAM一样,使用单电容器为存储器阵列的每一列提供参考。与现有的2T/2C结构相比,它有效的把内存单元所需要的面积减少一半。新的设计极大的提高了铁电存储器的效率,降低了铁电存储器产品的生产成本。
Ramtron同样也通过转向更小的技术节点来提高铁电存储器各单元的成本效率。最近采用的0.35微米的制造工艺相对于前一代0.5微米的制造工艺,极大的降低了芯片的功耗,提高了单个晶元的利用率。
铁电存储器的前景及应用
所有这些令人振奋发展使铁电存储器在人们日常生活的各个领域广为应用。从办公室复印机、高档
服务器到汽车安全气囊和娱乐设施,铁电存储器不断改进性能在世界范围内得到广泛的应用。
【小资料】闪存的存储原理
要讲解闪存的存储原理,还是要从EPROM和EEPROM说起。
EPROM是指存储器中的内容可以通过特殊手段擦去,然后重新写入。其基本单元电路(存储单元)如图1所示,它常采用浮空栅雪崩注入式MOS(FAMOS)电路,与MOS电路相似,是在N型基片上生长出两个高浓度的P型区,通过欧姆接触分别引出源极S和漏极D。在源极和漏极之间有一个多晶硅栅极浮空在SiO2绝缘层中,与四周无直接电气连接。这种电路以浮空栅极是否带电来表示存入1或者0,浮空栅极带电后(如负电荷),就在其下面,源极和漏极之间感应出正的导电沟道,使MOS管导通,即表示存入0。若浮空栅极不带电,则不形成导电沟道,MOS管不导通,即存入1。
EEPROM基本存储单元电路的工作原理如图2所示。与EPROM相似,它是在EPROM基本单元电路的浮空栅的上面再生成一个浮空栅,前者称为第一级浮空栅,后者称为第二级浮空栅。可给第二级浮空栅引出一个电极,使第二级浮空栅极接某一电压VG。若VG为正电压,第一浮空栅极与漏极之间产生隧道效应,使电子注入第一浮空栅极,即编程写入。若使VG为负电压,强使第一级浮空栅极的电子散失,即擦除。擦除后可重新写入。
闪存的基本单元电路如图3所示,与EEPROM类似,也是由双层浮空栅MOS管组成。但是第一层栅介质很薄,作为隧道氧化层。写入方法与EEPROM相同,在第二级浮空栅加以正电压,使电子进入第一级浮空栅。读出方法与EPROM相同。擦除方法是在源极加正电压利用第一级浮空栅与源极之间的隧道效应,把注入至浮空栅的负电荷吸引到源极。由于利用源极加正电压擦除,因此各单元的源极联在一起,这样,快擦与存储器闪存不能按字节擦除,而是全片或分块擦除。
随着半导体技术的进步,闪存也实现了单晶体管(1T)的设计,主要就是在原有的晶体管上加入了浮动栅和选择栅。在源极和漏极之间电流单向传导的半导体上形成存储电子的浮动栅。浮动栅包裹着一层硅氧化膜绝缘体。它的上面是在源极和漏极之间控制传导电流的选择/控制栅。数据是0还是1取决于在硅底板上形成的浮动栅中是否有电子。有电子为0,无电子为1。
闪存就如同其名字一样,在写入前删除数据进行初始化。具体说就是从所有浮动栅中导出电子,即将所有数据归“1”。
写入时,只有数据为0时才进行写入,数据为1时则什么也不做。写入0时,向栅电极和漏极施加高电压,增加在源极和漏极之间传导的电子能量。这样一来,电子就会突破氧化膜绝缘体,进入浮动栅。
读取数据时,向栅电极施加一定的电压,电流大为1,电流小则定为0。在浮动栅没有电子的状态(数据为1)下,当在栅电极施加电压时,也向漏极施加电压,源极和漏极之间由于大量电子的移动,就会产生电流。而在浮动栅有电子的状态(数据为0)下,沟道中传导的电子就会减少。因为施加在栅电极的电压被浮动栅电子吸收后,很难对沟道产生影响。