DIY编程器网

标题: 铁电存储器在仪表中的应用 [打印本页]

作者: liyf    时间: 2014-10-5 09:58
标题: 铁电存储器在仪表中的应用
铁电存储器在仪表中的应用

摘要:FRAM 是一种新型存贮器,最大特点是可以随总线速度无限次的擦写,而且功耗低。FRAM性能优越于EEPROM  AT24C256。
    关键词:存贮器;FM24C256;AT24C256;EEPROM
    一. 概述:
     FRAM是最近几年由RAMTRON公司研制的新型存贮器,它的核心技术是铁电晶体材料,拥有随即存取记忆体和非易失性存贮产品的特性。FM24C256是一种铁电存贮器(FRAM),容量为256KBIT存贮器,它和AT24C256容量等同,总线结构兼容,但FM24C256的性能指标远大于AT24C256。在存贮器领域中,FM24C256应用逐渐被推广和认可,尤其是大容量存贮器,它的优良特性远高于同等容量的EEPROM。在电子式电能表行业中,数据安全保存是最重要的。随着电子表功能的发展,保存的数据量越来越大,这就需要大容量的存储器,而大容量的EEPROM性能指标不是很高,尤其是擦写次数和速度影响电能表自身的质量。FM24C256在电能表中的使用,会提高电能表的数据安全存贮特性。
    二. 铁电存贮器(FRAM)FM24C256的特性:
    传统半导体记忆体有两大体系:易失性记忆体(volatile memory)和非易失性记忆体(non-volatile memory)。
易失性记忆体像SRAM和DRAM在没有电源的情况下都不能保存数据。但这种存贮器拥有高性能、易用等优点。
非易失性记忆体像EPROM,EEPROM和FLASH 能在断电后仍保存数据。但由于所有这些记忆体均起源自ROM技术,所以不难想象得到他们都有不易写入的缺点:写入缓慢、读写次数低、写入时工耗大等。
    FM24C256是一个256Kbit 的FRAM,总线频率最高可达1MHz,10亿次以上的读写次数,工耗低。与典型的EEPROM AT24C256相比较,FM24C256可跟随总线速度写入,无须等待时间,而AT24C256必须等待几毫秒(ms)才能进行下一步写操作。FM24C256可读写10亿次以上,几乎无限次读写。而AT24C256只有10万之一百万次读写。另外,AT24C256读写能量高出FM24C256有2,500倍。从比较中看出,FM24C256包含了RAM技术优点,同时拥有ROM技术的非易失性特点。

    三. FM24C256的应用:
    在仪表设计中,数据的安全存贮非常重要。如电子式电能表,它在运行期间时刻都在记录数据,
如果功能设计比较多,那么保存的数据量大,擦写次数比较多。这要求有一个高性能的存贮器才能满足要求。现在的仪表设计,寿命要求长,数据保存安全期长。目前,FM24C256是非常适合仪表设计要求的存贮器。它的性能指标完全达到设计要求,解决了仪表中的设计忧虑。更重要的是,它的存贮时间短,能够在极短的时间内保存大量数据,解决了仪表在突然断电时数据及时、安全的存贮。RAMTRON公司研制的FM24C256,为了普及使用,存贮指令和AT24C256兼容,只是在读写指令和应答是不需要延时,提高了擦写速率。封装体积、功能管角和AT24C256一样,使设计者容易接受和运用。

   


    写子程序:

WRITE:
      CLR1 PM.3      ;;设置P4.3为输出状态
      CLR1 P4.2
      CLR1 P4.3
      CLR1 P4.1       ;;打开写保护
CALL !SENDSTART    ;;发送起始位
MOV A,#10100000B
CALL !SENDCOM    ;;发送写命令
BC $WNOACKX      ;;没应答则错误返回
  NOP
CLR1 P4.2
CLR1  PM4.3        ;; 设置P4.3为输出状态
MOV A,D            ;;D中存放所写单元高地址
CALL !SENDCOM     ;;发送所写单元高地址
BC $WNOACKX    ;;;没应答则错误返回
CLR1  PM4.3        ;; 设置P4.3为输出状态
MOV A,E        ;;;;E中存放所写单元低地址
CALL !SENDCOM   ;;发送所写单元低地址
BC $WNOACKX   ;;没应答则错误返回
CLR1  PM4.3        ;; 设置P4.3为输出状态
MOV A,[HL]       ;;[HL] 中存放所写数据
    CALL !A24SENDC    ;;发送所写数据
   CLR1 CY
            SET1 P4.1  ;;写保护
WNOACKX:
SET1 CY
RET
SENDSTART:    发送起始位子程序
SET1 P4.2
   SET1 P4.3      ;;发起始位
        NOP
NOP     
      CLR1 P4.3
        CLR1 4.2
       RET
  SENDCOM:   发送命令子程序
         CALL !A24SENDC
           CLR1 P4.2
        SET1  PM4.3   ;;设置P4.3为输入状态
           NOP
           NOP
           NOP      
SET1 4.2
        BT P4.3,$DCOM1                 ;测试应答信号,有应答CY=1,否则CY=0
        CLR1 CY
           RET             ;BR RNOACK               
DCOM1:
        SET1 CY
           RET
A24SENDC:     发送数据子程序
        CLR1 CY
        MOV B,#08H   ;;发送8位
SENDREP:
        CLR1 P4.2
         NOP
         CLR1 P4.3
      ROLC A,1         ;;左移一位
      BNC $SENDPD
        SET1  P4.3
SENDPD:
        NOP
        SET1 P4.2
         NOP
     DBNZ B,$SENDREP   ;8位发送完返回
        RET
读子程序:
READ:
  CLR1 PM4.3       ;;;; 设置P4.3为输出状态
        CALL !SENDSTART ;发送起始位
MOV A,#10100000B
           CALL !SENDCOM   ;; ;发送读命令
           BC $RNOACK       ;;       没应答则错误返回
CLR1 P4.2
  CLR1 PM4.3        ;; 设置P4.3为输出状态
MOV A,D         ;D中存放所读单元高地址
             CALL !SENDCOM  ;;发送所读单元高地址
          BC $RNOACK            ;     没应答则错误返回
             CLR1 PM4.3    ;;设置P4.3为输出状态
MOV A,E      ;;;E中存放所读单元低地址
          CALL !SENDCOM   ;;发送所读单元低地址
BC $RNOACK   ;;没应答则错误返回
        CLR1 P4.2
             CLR1 PM4.3   ;;设置P4.3为输出状态
SET1 P4.2
SET1 4.3
NOP
NOP
             CLR1 P4.3
             CLR1 P4.2
             CALL !SENDSTART  ;发送起始位
          MOV A,#10100001B
          CALL !SENDCOM     ;;发送读命令
          BC $RNOACK
         CLR1 P4.2
            SET1 PM4.3
CALL !N24READB     ;;读数据
         CLR1 SK256
            CLR1 PM4.6
        CALL !SENDSTOP    ;;发送停止位
READRET:
    CLR1 CY
RET
RNOACK:
SET1 CY
RET
N24READB:
         MOV B,#08H
READREPX:
        CLR1 P4.2
   NOP
   NOP
   NOP
SET1 P4.2
          NOP
       NOP
       NOP
       CLR1 CY
BF P4.3,$READPD
       SET1 CY
READPD:
      ROLC A,1    ;;左移1位
      NOP
      NOP
      NOP
      DBNZ B,$READREPX    ;;判断是否接受8位
RET
SENDSTOP:     发送停止位
     CLR1 P4.3
        NOP
SET1 P4.2
        NOP            
     SET1 P4.3
        NOP
        RET
    四. 小结:
    FM24C256 是一种高性能的存贮器,性能指标远远大于EEPROM。在电子式电能表应用中,数据擦写次数比较频繁,而且在掉电存贮时数据量大、时间短,怎样安全可靠快速的保存数据一个关键的技术。所以,FM24C256的优良特性非常适合仪表中使用,如电能表、水表、煤气表、暖气表、计程车表、医疗仪表等应用广泛。它的封装形式有SOIC和DIP。
作者: 李小路    时间: 2021-8-3 18:43
谢谢分享!




欢迎光临 DIY编程器网 (http://diybcq.com/) Powered by Discuz! X3.2