
M95xxx EEPROM介绍 前言 以带标识页的M95M01-DF EEPROM为例, 介绍M95xxx系列EEPROM,包括内存组织、SPI接口时序、指令、读写时间、供电、写保护以及出厂参数等等。 M95xxx EEPROM介绍 M95M01-DF特性介绍 • 访问接口:SPI • 时钟速率:16MHz •内存组织 ·1Mbit(128KByte) · 页大小:256字节 • 写操作: ·页写时间5ms · 字节写时间5ms • 写保护设置: ·四分之一内存保护 ·一半内存保护 · 整个内存保护 • 供电: · 对于M95M01-R,1.8V~5.5V。 ·对于M95M01-DF,1.7V~5.5V。 • 工作温度范围:-40~+85摄氏度 • 400万次写周期 • 200年数据保存时间 •封装:SO8、TSSOP8、WLCSP •Identification Page:256字节。Identification page用来存储应用程序的敏感数据,可以被永久锁存为只读模式。M95xx系列EEPROM分为带标识页和不带标识页的型号,根 据芯片编号来区分。 M95xx系列EEPROM命名规则 ![]() 内存组织 ![]() 引脚框图和信号描述 ![]() 信号描述: • 串行数据输出Q:该信号用来从设备移出串行数据,数据在时钟下降沿移出。 • 串行数据输入(D):该信号用来输入串行数据到设备,当时钟上升沿时,被写入的指令、地址和数据的值被锁存。 • 串行时钟(C):SPI通信的时钟。 • 芯片选择(S ):当输入信号为低时,设备被选择。 • 保持(HOLD ):HOLD 可以用来暂停串行通信,低电平有效。 • 写保护(W ):对内存进行写保护配置引脚,在通过写指令操作内存过程中,要维持该引脚的电平不变。 • 供电(VCC):供电引脚。 • 地(VSS):接地引脚。 SPI时序 M95M01支持SPI接口访问,支持以下两种模式: • CPOL = 0, CPHA = 0 • CPOL = 1, CPHA = 1 对于这两种模式,一种模式是输入数据在串行时钟的上升沿锁存,另外一种模式是输出数据在时钟的下降沿有效。时序图如下图所示: ![]() 指令 所有的命令在发送时需要高位在前,指令集如下表所示: ![]() 写使能指令WREN 通过WREN指令来使能写使能的WEL位。 ![]() 写禁止指令WRDI 写禁止指令WRDI用来复位WEL位,该为设置位0时禁止写或写状态寄寄存器命令来访问EEPROM。 ![]() 读状态寄存器指令RDSR 读状态寄存器RDSR用来读状态寄存器,状态寄存器可以在任意时刻被读取,建议在发送一个新指令到EEPROM之前先检查写进度。状态寄存器地输出是连续的1个字节,从0到7位,如下图所示: ![]() 状态寄存器如下: ![]() • WIP位:写进度指示位,指示内存忙于在写周期中,该位为1则指示在写周期中忙,为0则空闲; • WEL位:该为设置为1时,内部的写使能开启;当设置为0时,内部的写使能禁止,此时任何的写或写状态寄存器指令被阻止访问。WEL位可以被以下几种情况复位: ·上电 · WRDI指令执行完成 ·WRSR指令执行完成 ·WRITE指令执行完成 • BP1,BP0位:块保护位(BP1,BP0)是非易失的,它们两位决定软件写保护的区域大小。这两位由写状态寄存器命令WRSR来设置。 • ![]() • SRWD位:状态寄存器写禁止位(SRWD)位和硬件保护信号W 结合起来操作。 写状态寄存器指令WRSR 写状态寄存器(WRSR)用来写一个新值到状态寄存器中,在写状态寄存器命令操作之前,需要先执行写使能WREN指令。写状态寄存器用来改变BP1,BP0,SRWD位的值,写状态寄存器不影响b6, b5, b4, b1(WEL), b0(WIP)的值,即b1(WEL)位是由写使能命令WREN来改变其值的,而b0(WIP)是状态为,不能修改。 ![]() 读内存指令 当前如果有写周期在执行中,是无法进行读内存操作的。有效的地址位是A16~A0,地址位A23~A17不用关心。 ![]() 写内存指令 字节写时序图如下: ![]() 页写时序图如下: ![]() 有以下几种情况,写内存指令是不被接受和执行的: • 写使能位WEL没有被置1; • 写周期在执行中; • 在数据传输的最后一个位b0被锁存后,设备还没被取消选择,S 还未置高; • 要访问的地址页在块保护的区域中。 读标识页指令 读标识页时序图如下: ![]() 256字节的标识页是一个附加的页,能够被写和永久锁存为只读模式。读标识页的最大数量不能超过页边界,否则会读取到不可预测的数据。例如,从位置90开始读取标识页数据,读取的数量不能超过166,因为页边界时256字节。 假如有写周期在执行中,那么读标识页指令不被接受和执行。 写标识页指令 写标识页时序图如下所示: ![]() 256字节的标识页能够被写和永久锁存为只读模式。 数据保护 状态寄存器中的写禁止位SRWD,是配合写保护引脚W 一起使用的,它们一起决定的保护模式如下表所示: ![]() 写状态寄存器WRSR对b6,b5,b4,b1,b0位没有影响, b6,b5,b4一直是0。 状态寄存器写禁止位SRWD在状态寄存器中的初始化状态为0,通过WREN命令设置了WEL位后,不管W 引脚的电平如何,都允许写状态寄存器WRSR。 当状态寄存器写禁止位SRWD被置1后,根据W 引脚的电平有以下两种情况: • 当W 引脚为高时,通过WREN命令设置了WEL位后,允许写状态寄存器WRSR。 • 当W 引脚为低时,不管是否通过WREN命令设置了WEL位,都不允许写状态寄存器WRSR。 内存中的数据,可以被设置为软保护(SPM),也可以设置为硬保护,其中软保护是通过设置块保护位BP1,BP0。以下两种情况发生时,将会进入硬件保护模式HSM: • W 引脚输入低电平后,置SRWD位为1; • 置SRWD位为1后,W 引脚输入低电平。 假如W 引脚一直为高,则硬件保护模式HSM不会被激活,此时只有软件保护模式SPM,使用状态寄存器中的BP1,PB0来设置要保护的内存区域。 读锁状态 读锁状态时序图如下所示: ![]() 读锁状态指令用来检查标识页是否被锁或为只读模式,地址位A10必须为1,其它地址不用关心。锁存位是读取到的数据的最低位,该位为1则锁存被激活,该位为0则锁存未被激活。 锁状态查询 所状态指令时序图如下所示: ![]() 锁标识指令永久地锁存标识页为只读模式。该执行执行之前,先要执行写指令WREN。地址A10必须为1,其它地址位可以不关心。数据字节必须按照二进制的xxxx xx1x发送,x位的值不需关心。 有以下几种情况会导致锁标识指令不被接受和执行: • 写周期已经在进行中; • 块保护位设置为(BP1,BP0) = (1,1) ; • 数据传输边界时的S 上升沿出现。 上电状态 上电以后,EEPROM将会有如下状态: • 待机模式; • 设备上电后,EEPROM是被取消选择的状态,需要S 下降沿来开启指令传输; • 不在保持状态下; • 写使能锁存位是复位为0的; • 写进度位使复位为0的; 状态寄存器中的SRWD,BP1和BP0是断电后不会改变的,非易失的。 交货状态 整个内存区域和标识页的字节都设置为0xFF。状态寄存器写禁止位SRWD和块锁存位BP1、BP0都初始化为0。 结论 通过对M95xxx系列EEPROM进行介绍,能够快速指导用户如何使用HOST访问EEPROM内存和进行写保护设置,用户可以在设计产品过程中参考本文档进行软件设计,特别是写保护设计部分。 ![]() |
谢谢分享,学习一下 |
谢谢分享 |
谢谢分享 |
不错的资料,下载学习学习。 |