SST39VF1601 简介(转)

 

1、产品描述(PRODUCT DESCRIPTION)

SST39VF160x/320x/640x设备提供了7 us的Word-program时间。这些设备用Toggle Bit或者Data# Polling来表明编程操作的完成。为了保护inadvertent write,它们有偏上硬件和Software Data Protection机制。

2、设备操作(Device Operation)

命令被用来发起设备的存储器操作功能。通过标准的微处理器写序列,命令被写到设备中。通过asserting WE# low同时保持CE#为低,一条命令被写到设备中。地址总线最后在WE#或者CE#上升沿的时候被占用。而数据总线首先在WE#或者CE#上升沿的时候占用。

SST39VF160x/320x/640x也有一种Auto Low Power模式,这种模式在一次有效的读操作访问数据以后让设备进入一种standby 模式。它把IDD活动读电流(active read current)从典型的9mA减小到典型的3uA。Auto Low Power模式减少典型的IDD活动度电流到2mA/mHZ的读周期时间。设备通过任何的被用来发起另一个读周期的地址转换或者控制信号转换退出auto low power模式,这是不花费时间的。注意在开机后CE#一直稳定在低电平的时候,设备不会进入auto-low power 模式,知道第一次地址转换或者CE#被转换为高电平。

3、读操作(Read)

SST39VF160x/320x/640x的读操作被CE#和OE#控制。系统为了从输出获得数据,这两者必须都为低电平。CE#被用来作为设备选择。当CE#为高时,芯片取消选择,只有standby电源被消耗。OE#是输出控制,被用来从输出管脚gate数据。当CE#或者OE#为高电平的时候,数据总线处于高impedance状态。

4、字编程操作(Word-Program Operation)

SST39VF160x/320x/640x以字为单位编程。编程前,字所在的sector必须完全被擦除。编程操作可以分为三步。第一步是用于软件数据保护(Software Data Protection)的三字节的装载序列。第二部是装载字地址和字数据。在字编程操作过程中,地址在CE#或者WE#的下降沿被latch,这最后发生。数据在CE#或者WE#的上升沿被latch,这首先发生。第三步是内部编程操作,它在第四个WE#或者CE#的上升沿发起,这首先发生。编程操作一旦发生,会在10us内完成。在编程过程中,只有对Data# Polling和Toggle Bit的读是有效的。在内部编程操作过程中,host可以自由的执行额外的任务。在内部编程过程中,任何发起的命令都被忽略。在命令执行时,WP#应始终保持低或高。

5、Sector/Block-Erase Operation

擦除操作允许系统以sector或者block为单位进行。SST39VF160x/320x/640x提供sector-erase模式和block-erase模式。sector架构基于统一的2K字的sector尺寸。Block-erase模式基于统一的32K字的block尺寸。Sector-erase操作通过执行一条六字节的命令序列发起,sector-erase命令(30H)和sector地址(SA)在最后一次总线周期中。Block-erase操作通过执行一条刘子杰的命令序列发起,block-erase命令(50H)和blcok地址(BA)在最后一次总线周期中。sector或者block地址在第六个WE#脉冲的下降沿被latch,而命令(30H 或50H)在第六个WE#脉冲的上升沿被latch。内部擦除操作在第六个WE#脉冲后开始。擦除操作的结束可以用Data# polling 或者Toggle Bit的方法来决定。在sector-(block-)擦除操作的过程中,任何声明的命令都会被忽略。当WP#为低时,对写保护的块的sector(block-)擦除操作都会被忽略。在命令执行过程中,WP#应该一直保持为高或低。

6、擦除挂起/擦除恢复命令(Erase-Suspend/Erase-Resume Commands)

擦除挂起操作可以临时挂起一次sector-或者block-erase操作。这样允许数据能够从存储单元读出,或者把数据写入任何没有执行执行挂起操作的sector/block。操作通过声明一个字节的命令序列(Erase-Suspend command (B0H))来执行。设备在擦除挂起操作声明后20us内自动进入读模式。有效数据可以从任何不被擦除挂起的sector或者block中读出。对被擦除挂起的sectors或者blocks内的地址单元的读会输出DQ2 toggling和DQ6 at "1"。在擦除挂起模式里,对被擦除挂起的sector或block以外的sector或block的字编程操作是允许的。

为了恢复被挂起的sector-erase或者block-erase操作,系统必须声明擦除恢复命令。擦出恢复命令通过在最后一个字节序列的任何地址声明一个字节的擦除恢复命令(30H)来执行。

7、芯片擦除操作(Chip-Erase Operation)

SST39VF160x/320x/640x提供了一个芯片擦除操作,这个操作允许用户把整个存储阵列擦除为状态“1”。当设备必须快速擦除时这很有用。

芯片擦除操作被通过执行一个六字节的命令序列来发起。芯片擦除命令(10H)在最后一个字节序列的地址5555H处。这个擦除命令开始于第六个WE#或CE#的的上升沿,这首先发生。在芯片擦除操作过程中,唯一有效的读是toggle bit 或者Data# polling。在芯片擦除操作过程中,任何命令的声明都会被忽略。当WP#是低电平时,任何芯片擦除的尝试都会被忽略。在这个命令执行过程中,WP#应该稳定的保持为高电平或者低电平。

8、写操作状态保护(Write Operation Status Detection)

SST39VF160x/320x/640x提供了两种软件方式来检测一次写(编程或者擦除)周期的完成,这是为了优化系统的写周期时间。软件检测包括两个状态位:Data# Polling(DQ7) 和Toggle Bit(DQ6)。写结束检测模式在WE#的上升沿之后使能,这个WE#的上升沿发起内部编程或者擦除操作。

Nonvolatile write的真正完成和系统是异步发生的;因此,一次Data# polling 或者Toggle bit读可能和写周期同时完成。如果这发生的话,系统可能得到一个错误的结果,即有效数据可能和DQ7或者DQ6冲突。为了防止各种各样的rejection,如果一次错误结果出现的话,软件例程应该包括一个循环。这个循环额外再读被访问的单元两次。如果这两次读都是有效的,那么设备就已经完成了写周期,要不然,rejection就是有效的。

8、Data# Polling (DQ7)

当SST39VF160x/320x/640x在内部编程操作时,任何对DQ7的读尝试都会产生真正数据的complement。一旦编程操作完成,DQ7会产程真正的数据。注意即使紧跟在内部写操作完成后DQ7也许有有效的数据,但是剩余的数据输出仍然可能是无效的:在整个数据总线上有效的数据会再1us的间隔后出现在随后接下来的读周期中。在内部擦除操作过程中,尝试读DQ7会产生‘0’。一旦内部擦除操作完成了,DQ7会产生‘1’。对编程操作来说,在WE#(或者CE#)脉冲的上升沿之后,Data# Polling是有效的。对于secto-,block-或者chip-erase,在第六个WE#(或者CE#)脉冲的上升沿之后,Data# Polling是有效的。

 

9、Toggle Bits (DQ6 and DQ2)

在内部编程或者擦除操作过程中,任何读DQ6的尝试都会产生变化的1和0,也就是在1和0之间toggle。当内部编程或者擦除操作完成时,DQ6会停止toggle。设备然后准备下一个操作。对于sector-,block,或者chip-erase操作来说,在第六个WE#(或者CE#)脉冲的上升沿之后,toggle bit(DQ6)是有效的。如果对一个擦除挂起的sector/block尝试读操作,DQ6会被设置为“1”。如果对一个非处于擦除挂起模式的sector/block发起编程操作,DQ6会toggle。

一个额外的Toggle bit在DQ2上是可用的,它能被用在in conjunction with DQ6,用来检查是否一个特殊的sector正在被擦除或者擦除挂起。Toggle bit(DQ2)在写操作的最后一个WE#(或者CE#)脉冲的上升沿之后是有效的。

你可能感兴趣的:(SST39VF1601 简介(转))