SPI FLASH学习笔记(二) 写操作
写操作
PAGE PROGRAM操作序列对页面内1字节至2176字节的数据进行编程。写页面
顺序如下:
•02H(写加载)/ 32H(写负载x4)
•06H(写允许)
•10H(执行写)
•0FH(读取命令状态)
首先,发出PROGRAM LOAD(02H / 32H)命令。程序加载由8位操作码组成,后跟4虚拟位和12位列地址,然后是要编程的数据字节。数据字节被加载到缓存中长度为2176字节的寄存器。如果加载了超过2176个字节,则高速缓存将忽略这些额外的字节寄存器。当CS#从LOW变为HIGH时,命令序列结束。图10-1显示了程序加载操作。其次,在执行PROGRAM EXECUTE操作之前,必须先执行WRITE ENABLE(06H)命令发行。与更改存储器内容的任何命令一样,必须执行WRITE ENABLE才能将WEL位置1。如果未发出此命令,则将忽略其余程序序列。
注意:
1.当写加载(02h)命令,写随机加载(84h)命令时,缓存寄存器的内容不会重置命令和RESET(FFh)命令。
2.当在烈军属加载(02h)命令之后发出了程序执行(10h)命令时,SPI-NAND控制器将0xFF数据输出到NAND,以获取程序加载(02h)命令未加载数据的地址。
3.在“程序加载随机数据(84h)”命令之后立即发出“写执行(10h)”命令时,SPI-NAND控制器将缓存寄存器的内容输出到NAND。
4.寻址应按顺序在一个块中完成。
Program Load (PL) (02H)
注意:当内部ECC禁用时,数据字节为2176,当内部ECC启用时,数据字节为2112。
Program Load x4 (PL x4) (32H)
Program Load x4命令(32H)与Program Load命令(02H)类似,但具有输入数据字节由四个引脚组成:SIO0,SIO1,SIO2和SIO3。 命令序列如下所示。 四通道使能位(QE)
必须设置功能(B0 [0])的最大值以启用写加载x4命令。
注意:当内部ECC禁用时,数据字节为2176,当内部ECC启用时,数据字节为2112。
Program Execute (PE) (10H)
加载数据后,必须发出PROGRAM EXECUTE(10H)命令以启动从PC的数据传输。缓存寄存器到主数组。 写执行命令由8位操作码和24位地址组成。 后页面/块地址被注册,存储设备开始从高速缓存寄存器到主阵列的传输,并且忙了tPROG时间。 该操作如图10-3所示。 在这个繁忙的时间里,状态寄存器可以被轮询到监视操作状态(请参阅状态寄存器)。 操作成功完成后,下一个系列数据可以使用PROGRAM LOAD命令加载。
Internal Data Move
INTERNAL DATA MOVE命令序列编程或用现有数据替换页面中的数据。 INTERNAL DATA MOVE命令序列如下:
•13H(页面读取以缓存)
•可选的84H / C4H / 34H(程序加载随机数据)
•06H(写使能)
•10H(程序执行)
•0FH(获取功能命令以读取状态)
在执行内部数据移动操作之前,必须通过以下方式将目标页面内容读入高速缓存寄存器:发出PAGE READ(13H)命令。 PROGRAM LOAD RANDOM DATA命令可以是(84H / C4H / 72H)如果用户要更新页面中的数据字节,则发出此消息。 新数据将加载到12位列地址中。 如果随机如果数据不是顺序的,则必须使用以下命令发出另一个PROGRAM LOAD RANDOM DATA(84H / C4H / 72H)命令新列地址。 加载数据后,必须发出WRITE ENABLE命令,然后发出PROGRAM可以发出EXECUTE(10H)命令开始编程操作。
Program Load Random Data(84H)
该命令由一个8位的操作码,后面的4个虚拟位和一个12位的列地址组成。 新数据已加载12位提供的列地址。 如果随机数据不是顺序数据,则另一个程序加载必须使用新的列地址发出RANDOM DATA(84H)命令,有关详细信息,请参见图10-4。 该命令是仅在内部数据移动序列期间可用。
注意:当内部ECC禁用时,数据字节为2176,当内部ECC启用时,数据字节为2112。
Program Load Random Data x4 (C4H/34H)
程序加载随机数据x4命令(C4H / 34H)与程序加载随机数据命令(84H)类似但具有通过四个引脚输入数据字节的功能:SIO0,SIO1,SIO2和SIO3。 显示命令顺序下面。 必须将功能(B0 [0])的四元使能位(QE)设置为启用,以允许程序加载随机数据x4命令。有关详细信息,请参见图10-5。 这两个命令仅在内部数据移动序列期间可用。
注意:当内部ECC禁用时,数据字节为2176,当内部ECC启用时,数据字节为2112。
Program Load Random Data Quad IO (72H)
程序加载随机数据四线IO命令(72H)与程序加载随机数据x4命令相似(C4H),但具有通过四个引脚(SIO0,SIO1,SIO2和SPIN)输入4个虚拟位和12位列地址的功能。
SIO3。 命令序列如下所示。 必须将功能(B0 [0])的Quad Enable位(QE)设置为启用程序加载随机数据x4命令。 有关详细信息,请参见图10-6。 该命令仅在内部数据期间可用
移动顺序。
注意:当内部ECC禁用时,数据字节为2176,当内部ECC启用时,数据字节为2112。