非挥发性SRAM
非挥发性SRAM(Non-volatile SRAM,nvSRAM)是一种非挥发性随机储存记忆体,它的操作方法和普通的静态随机存取记忆体(Static Random-Access Memory,SRAM)大同小异,但却不需要供电来维持记忆体内部的值。虽然非挥发性SRAM在结构上跟一般的SRAM是相同的,但是一般的SRAM只能做读和写,而非挥发性SRAM则可以做出读(read)、写(write)、储存(store)、召回(restore)等动作。
而要做出非挥发性SRAM的方法有很多种,其中一种方法是整个区块或整个模组要断电之前,把非挥发性SRAM内部的值借由store来把值转移到非挥发性记忆体上,等到区块或模组上电后,在借由restore来把之前存入的值取出来,此方法为使用硬件来做储存的方法。还有许多其他种类的方法,如自动储存(AutoStore)和软件储存(Software Store)皆是储存的方法。
而非挥发性SRAM的应用层面很广,因为不仅仅解决的SRAM无法永久保存值的缺点,并且透过使用非挥发性SRAM也可以达到低功耗的目的,同时也可以保有基本SRAM的高速运作。
基本原理
目前非挥发性储存实现方式主要有三种:Micro Power SRAM+后备电池+控制器、电池后备供电SRAM(BBSRAM, Battery Backup SRAM)、NVSRAM。在NVSRAM尚未问世前,前两种记忆体是市场上的主流,因为其出现较早,是较传统的应用,但其缺点也一直存在。以下将分别探讨这三种方式的优缺点。
1. Micro Power SRAM+后备电池+控制器
Micro Power SRAM+后备电池+控制器的结构是由控制器判断外部电源是否正常,假如出现异常,会切换到电池供电,以保存Micro power SRAM的数据。这种结构需要三个零组件,即Micro power SRAM、控制器和电池,其电路设计非常麻烦,且占用很大的PCB空间,而电池所带来的问题也很多。
2. BBSRAM
BBSRAM的结构整合了SRAM与控制器。与第一种结构相比,BBSRAM较为简单,但其封装体积非常大,也需要电池,这将为客户带来许多不便。首先,由于环保问题日益重要,内含电池的BBSRAM不符合RoHS标准;其次,电池也使加工生产更加复杂;而保存期限也是一个问题,一般BBSRAM号称可以保存10年,但实际上一般仅有5年,甚至部分产品仅能保存1~2年。此外,还有一个最重要的问题,即电池泄漏。这个问题影响的不仅是BBSRAM本身,还会危及周围电路!除了体积和电池的问题,还需考量性能,BBSRAM最快只能达到70ns,这对速度要求比较高的产品来说也会形成局限。因此,业界极需一种新型的替代产品。
3. NVSRAM
NVSRAM相当于将一颗SRAM和EEPROM整合,外加一些控制部分。其大小和其他普通芯片一样,大幅节省了PCB空间,其内部结构和工作方式将于后文详细阐述。很明显,前述带电池的两种方式的不便在NVSRAM里完全不会看到,它符合RoHS标准,加工制程简单,可保存长达100年。值得一提的是,NVSRAM速度最快可达15ns,大幅提高了产品性能。
NVSRAM采用SRAM+EEPROM方式,实现了无须后备电池的非挥发性储存,芯片界面、时序等与标准SRAM完全相容。
NVSRAM的外部界面与SRAM相同,读写控制都是由芯片使能(CE)、读取使能(OE)、写入使能(WE)来控制,时序标准也与SRAM完全相同。NVSRAM与SRAM的最大不同之处在于NVSRAM需外接一个电容器(Vcap),当外部电源关断时可透过电容器放电提供电源,将SRAM中的数据拷贝到EEPROM(图5)。
NVSRAM通常在SRAM中进行作业,只有当外界突然断电或认为需要储存的时候才会把数据储存到EEPROM中去,当检测到系统上电后,会把EEPROM中的数据拷贝到SRAM中,使系统正常执行。
NVSRAM工作方式
NVSRAM有三种储存方式:自动储存、硬件储存和软件储存;有两种‘召回’(RECALL)作业方式:自动RECALL和软件RECALL。
储存是指数据从SRAM到EEPROM的过程,其过程包括两个步骤:擦除之前EEPROM的内容;把目前SRAM的数据存到EEPROM中。然而,RECALL是指EEPROM到SRAM的过程。它也包括两个步骤:清除之前SRAM的内容;把EEPROM的数据拷贝到SRAM中。
自动储存 当检测到外界电压低于最小值时,会自动保存SRAM的数据到EEPROM中,其间所需电压由外部电容器提供.
硬件储存 NVSRAM有一个/HSB接脚,可以将/HSB接脚连接至CPU,由CPU来控制,当拉到低电平时进行储存作业,会保存SRAM的数据到EEPROM中。
软件储存 软件储存是由一个预定义的六个连续SRAM读取作业进行控制,以便将数据从SRAM保存至EEPROM中。
自动RECALL 当检测到外界重新上电时,数据会自动从EEPROM拷贝到SRAM中。
软件RECALL 软件RECALL是由一个预定义的六个连续SRAM读取作业进行控制,可将数据从EEPROM拷贝到SRAM中。
应用
NVSRAM适用于断电时保存不能丢失的重要数据,主要应用领域包含: 1. 网络通讯设备
NVSRAM適用於儲存初始化資訊、硬體版本資訊、警報資訊等,能在斷電時儲存現場資訊及異常資訊等,當重新上電後,像如路由器、高階交換機、防火牆等設備的重要數據不會丟失。
2. 打印设备类
包含印表機、傳真機、掃描器等。特別是銀行印表機,可儲存賬號和交易資訊,當突然停電時,NVSRAM可以對已經完成但還未列印到存摺或清單上的數據進行儲存,等系統重新上電時印表機不會丟失此交易資訊,可以直接列印。 3. 工業控制應用 包括工控板、鐵路/地鐵訊號控制系統、高壓電繼電器等。在這類產品中,作業過程和數據運算結果等資訊尤為重要,當斷電時,NVSRAM會儲存中間作業和運算結果,重新上電時這些結果會重新拷貝到SRAM中,不會丟失任何中間運算結果。
4. 汽车电子
可應用在行駛記錄儀等裝置中,儲存汽車即時數據,即存放汽車發生事故前後的數據,可分析事故發生的原因和事故的責任。發生事故時,汽車系統很可能會沒有電源,若要把速度、剎車、轉向燈、車門、發動機溫度等一些重要的資訊記錄下來,就需要使用到NVSRAM。
5. 医疗设备
如彩色超音波,可用於儲存啟動設置、醫院ID、模式設置等。
6. 服务器
如RAID伺服器。RAID是由多塊硬碟組成,需記錄文件的位置,NVSRAM可即時保存這些資訊,當出現故障時仍會保留這些資訊。