5.37 Page Program (PP)

The Page Program (02H) instruction programs up to 256 bytes of data into the memory and supports both SPI and QPI protocols. Before initiating a Page Program operation, the target page address must be in an erased state (FFH). If the instruction is applied to a protected memory region, it is ignored. The Write Enable (WREN) instruction must be executed prior to issuing the Page Program command.

To perform a Page Program operation, the host drives CE# low, issues the Page Program command (02h) once in SPI or QPI mode, transmits three address bytes followed by the data to be programmed, and then drives CE# high. The amount of data programmed must be between 1 and 256 bytes, in whole-byte increments. Any partial byte transmitted is ignored. Completion of the internally self-timed Page Program operation can be determined by polling the BUSY bit in Status Register 1 or by waiting for the specified TPP duration. Refer to Figure   1 and Figure   2 for the Page Program command sequences in SPI and QPI modes.

During a Page Program operation, the memory is organized into 256-byte page boundaries. If more than 256 bytes are transmitted, the device programs only the last 256 bytes received. If the target address does not start at a page boundary (A[7:0] are not all zero) and the data length exceeds the remaining bytes in the page, the excess data wraps around and is programmed at the beginning of the same page.

Figure 5-34. Page Program Sequence (SPI)
Figure 5-35. Page Program Sequence (QPI)
Note: MSN = Most Significant Nibble; LSN = Least Significant Nibble; C[1:0] = 02H