外设驱动库开发笔记25:FM25xxx FRAM存储器驱动

本文详细介绍了FM25xxxFRAM存储器的驱动设计,包括其硬件描述、SPI接口、操作模式,以及如何实现驱动的初始化、写使能控制、状态寄存器操作和数据存储。通过实例展示了驱动在实际应用中的使用方法,特别强调了其高速写入和无写延迟的优势。

在我们的项目中,时常会有参数或数据需要保存。铁电存储器的优良性能和操作方便常常被我们选用。FM25xxx FRAM存储器就是我们经常使用到的一系列铁电存储器,这一我们将讨论FM25xxx FRAM存储器的驱动设计、实现及使用。

1、功能概述

FM25xxx FRAM存储器是非易失性存储器,采用了先进的铁电存储。铁电随机存取存储器或F-RAM是非易失性的,其读写操作与RAM类似。它提供了151年的可靠数据保留,同时消除了由串行闪存、EEPROM和其他非易失性存储器引起的复杂性、开销和系统级可靠性问题。

1.1、硬件描述

FM25xxx系列FRAM存储器拥有从4K1M的各种容量。虽然不同型号的FM25xxx系列FRAM存储器内部存储矩阵存在差异,但都采用了相同的封装和引脚排布。具体的引脚分布如下图:

FM25xxx FRAM存储器的CS信号低电平有效,就是说CS信号处于低电平时,该设备被选中。当CS信号处于高电平时,设备进入低功耗待机模式,忽略其他输入,并对输出进行测试。当CS信号处于低电平时,设备内部激活SCK信号。CS的下降沿必须在每个操作码之前出现。

FM25xxx FRAM存储器的WP引脚低电平有效。当WPEN设置为“1”时,WP信号低电平可以防止对状态寄存器的写操作。这很重要,因为其他写保护特性是通过状态寄存器控制的。如果不使用此引脚,则必须将其连接到VDD。在FM25040中,WP引脚可以阻止对部件的所有写操作。

当主机CPU必须中断另一个任务的内存操作时,使用HOLD引脚。HOLD引脚处于低电平时,当前操作暂停。设备忽略SCKCS上的任何转换。所有等待的转换必须在SCK低的时候发生。如果不使用此引脚,则必须将其连接到VDD

FM25xxx FRAM存储器与串行闪存和EEPROM不同,以总线速度执行写操作,不存在写延迟。数据在每个字节成功传输到设备后立即写入内存数组。下一个总线周期可在不需要进行数据轮询的情况下开始。此外,与其他非易失性存储器相比,FM25xxx FRAM存储器具有较强的写持久性。FM25xxx FRAM存储器能够支持1014个读/写周期,或比EEPROM1亿倍的写周期。

这些功能使FM25xxx FRAM存储器非常适合需要频繁或快速写入的非易失性内存应用程序。从数据采集(写入周期的数量可能至关重要)到要求工业控制(串行闪存或EEPROM的长写入时间可能导致数据丢失)。FM25xxx FRAM存储器采用高速SPI总线,提高了F-RAM技术的高速写入能力。

1.2、通讯接口

FM25xxx FRAM存储器采用SPI通讯接口。FM25xxx FRAM存储器由主机控制器(通常称为SPI主机)发送的一组指令控制。与FM25xxx FRAM存储器的通信必须由SPI主设备(如微控制器)发起。SPI主设备必须在串行数据时钟(SCK)引脚上为FM25xxx FRAM存储器生成串行时钟。FM25xxx FRAM存储器总是作为一个从属操作,因为SCK总是一个输入。主机与FM25xxx FRAM存储器通讯的拓扑图如下所示:

FM25xxx FRAM存储器是一个SPI从设备,运行速度高达20 MHz。这种高速串行总线为SPI主机提供高性能的串行通信。许多常见的微控制器有硬件SPI端口,允许直接接口。使用普通的端口引脚来模拟端口是非常简单的,因为微控制器不需要。FM25xxx FRAM存储器支持SPI模式00 0)和SPI模式31 1)。

1.3、操作模式

FM25xxx FRAM存储器被设计成直接与同步串行外围接口(SPI)接口。FM25xxx FRAM存储器使用一个8位指令寄存器。所有的指令、地址和数据首先由高位开始传送,然后由高到低依次进行。指令列表及其操作代码如下:

从上表我们知道,除了操作存储区域外,还可以操作状态寄存器。FM25xxx FRAM存储器包括一个8位状态寄存器。状态寄存器位调节设备的各种特性。这些位可以通过指令进行更改。具体的结构如下:

状态寄存器除了反应当前的状态外,实际上有些位还有配置功能。关于致谢为的属性及具体含义如下:

通过写状态寄存器(WRSR)指令可以配置写保护使能和写保护的区域。块写保护位(BP1BP0)决定了存储阵列的写保护区域。两位决定了阵列保护的四个级别,分别是:没有一个内存阵列被保护;上四分之一地址范围内存阵列被保护;上半部分地址范围内存阵列被保护;所有的内存阵列都是写保护的,这意味着所有的地址位都是只读的。块写保护级别和相应的状态寄存器控制位关系如下:

而写保护使能 (WPEN)位用于启用或禁用写保护 (WP) 引脚。当WPEN位设置为逻辑“0”时,写入EEPROM数组的能力取决于块写保护(BP1

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值