铁电存储器FM3808在TMS320VC5402系统中的应用
摘要:FM3808是Ramtrom公司生产的新型超低功耗非易失铁电存储器,该器件可支持对存储区的高速读写,并可进行近乎无限次的写入。FM3808内部除具有256kB的存储阵列外还集成了实时时钟和系统监控模块,因而功能十分强大。文中介绍了FM3808的性能特点、内部结构和工作原理,分析了TMS320VC5402 DSP的并行引导装载模式。给出了DSP与FM3808组成的并行引导接口方案。
关键词:铁电存储器 数字信号处理器 并行引导装载模式 FM3808
1 引言
铁电存储器(FRAM)是Ramtron公司近年推出的一款掉电非易失性存储器,它的核心技术是铁电晶体材料。这一特殊材料的运用使铁电存储器可以同时拥有随机存储记忆体(RAM)和非易失存储器的综合特性。与EEPROM相比,FRAM可以总线速度写入数据,且在写入之后不需要任何延时等待。面EEPROM的慢速和大电流写入使其需要用高出FRAM2500倍的能量去写入每个字节。同时,FRAM有近乎无限次的写入寿命,而且价格比相同容量的不挥发锂电SRAM低很多,因此,FRAM特别适合那些对数据采集、写入时间要求很高的场合。自FRAM问世以来,已凭借其各种优点被广泛应用于测量和医疗仪表、航空航天、门禁系统和汽车黑匣子等系统之中。
javascript:window.open(this.src);" style="cursor:pointer;"/>
2 主要特性有内部结构
FM3808是一款存储容量为32k×8bits的新型FRAM(减16字节),它具有高速读写、超低功耗和无限次读写等特性。其主要特点如下:
*采用32752×8位存储结构;
*读写次数高达10 11次,具有10年的数据保存能力;
*最快并行读取速度为70ns,写入无延时;
*具有实时时钟和日历功能,时钟寄存器在地址空间的最上16字节处;
*外部供给后备电源,提供32.768kHz的时间记录晶振;
*具有可编程的实时、日历时钟和报警时间;
*可编程的看门狗定时器;
*可编程的电源监控模块。
FM3808芯片上集成了了三种不同的功能:32k×8B的存储单元、实时时钟、日历功能、系统监控功能。其结构框图如图1所示。
javascript:window.open(this.src);" style="cursor:pointer;"/>
3 FM3808功能说明
3.1 FM3808实时时钟操作
实时时钟(RTC)由晶体振荡器、时钟分频器和一个系统寄存器组成。晶体振荡只有在控制寄存器器(7FF8h)的第7位设置为0时才能开始工作,时钟分频器将32.768kHz的信号分频成1kHz,并以秒为单位来计数,可以用标志寄存器(7FF0h)并通过设置R和W来对各实时钟寄存器进行读和写。实时时钟需要提供电源才能工作,当供电电压VDD下降到低于补给电压VBAK时,实时时钟电源由VBAK供给。对于FM3808来说,用户可以选择用电流做电源,也可以选择用电容来完成供电。使用1000μF的电容时,其供电时间可达30分钟,若使用0.4μF的电容,则供电时间可长达240小时。
当标志寄存器的第2位(CAL)设置成1时,实时时钟进入校准模式。在校准栻上,INT引脚将输出512Hz的方波,用户可以通过测量INT脚偏离512Hz的误差来进行时钟校准,校准误差由用户写入到7FF8h单元。在进行完时钟校准以后,在校准温度下每月的最大误差为±4.34ppm分,通过置CAL位为0可退出时钟校准模式。
3.2 FM3808监控操作
系统监控主要包括:报警功能、看门狗定时器、电源监控器和系统中断。
报警功能是把应用编程写入的时间值和系统相应的值进行对比,如果匹配,就通过INT产生中断并设置相应的标志位AF为1。报警功能提供有四种匹配值,分别为秒、分、时、日,通过设置相应的位为0可选择对比位。
看门狗定时器由可装载计数器和自由运行的计数器组成,看门狗定时器的工作频率为32Hz,此时晶振OSCEN必须设置为0。定时器溢出值存放在7FF7h。系统上电时会自动将溢出值加载到装载寄存器,此时自由运行计数器开始计时。当计数器的值与装载值之前,可以通过设置WDS位为1来重新装载溢出值,而此时不会有中断产生。
javascript:window.open(this.src);" style="cursor:pointer;"/>
电源监控功能是将VDD与三个门电压相比比较。这三个门电压分别为中断门电压VINT、存储器停止门电压VLO、外部供给电压VBAK。当VDD达到不同的电压门限时,FM3808内相应的功能将停止工作。FM3808共可产生四个外部中断:看门狗中断、报警时钟中断、电源低电压中断和供给电源中断。
3.3 FM3808存储器操作
FM3808逻辑上可以分成32768×8位存储结构,最上面的16字节分给了实地时钟的寄存器。FM3808通过并行口与外部微处理器进行接口,其操作与SRAM十分类似。FM3808半存储单元分成32个块,每块由256行和4列即1k×8的结构组成。其中A0~A7为行选择线,A8~A9为列选择线,A10~A14为块选择线。FM3808芯片的CE不能接地,这与普通SRAM不同。FM3808的读取过程是这样的:在CE的下降沿,地址信号被锁存,并启动一个读周期,此后即使CE发生变化也不会影响这个周期的完成。由于FM3808需要在CE的下降沿才能锁存地址信号,所以不能被CE接地,有效读时序如图2所示。
在读时间数据之前,需把7FF0.0设置为“1”,读出时间数据后,应将7FF0.0设置为“0”。在读数据时,当地址信号锁存后,在OE允许的情况下,DQ0~DQ7输出数据。FM3808共有两种写工作模式,一种是由WE来控制,另一种是由CE控制。由WE控制的写时序如图3所示。
虽然FM3808要求在CE下降之间,地址信号要存在5ns的时间,但实际应用证明,同时输出CE与地址信号的接法也是可以的。由于FRAM的读写过程会对内部存储单元造成改变,因此在一次读或写后,要很快对原有的数据进行“修补”。“修补”的过程在CE为高电平时进行,所以在一次读写的操作中,CE为低的时间不能太长,否则FM3808将来不及“修补”原有数据而造成数据丢失。FM3808规定CE为低的时间不超过10μs。
4 与TMS320C5402的引导接口
TMS320C5402上电后将首先检查MP/MC引脚的状态,若该脚为低电平,说明DSP被设置为微计算机模式,从片内ROM的0FF80h地址开始执行程序。在TMS320C5402的0FF80h地址处,存放着一条跳转至0F800h处执行DSP自引导装载(Bootloader)程序的指令。当TMS320C5402的Bootloader程序时,它将会按HPI装载模式→串行EEPROM装载程序→并行装载模式→标准串行口装模式→I/O口装载模式的顺序循环检测,以决定执行哪种启动模式。
javascript:window.open(this.src);" style="cursor:pointer;"/>