5.52 Page Program (PP)

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

To execute a Page Program operation, the host drives CE# low, issues the Page Program command (02H) 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 range from 1 to 256 bytes in whole-byte increments. Any partial byte transmitted is ignored. Completion of the internally timed Page Program operation can be verified by polling the Busy bit in Status Register 1 or by waiting for the specified TPP interval. Refer to Figure 5-46 and Figure 5-47 for the Page Program command sequences in SPI and QPI modes.

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

Figure 5-46. Page Program Sequence (SPI)
Note: MSb = Most Significant bit, LSb = Least Significant bit
Figure 5-47. Page Program Sequence (QPI)
Note: MSN = Most Significant Nibble; LSN = Least Significant Nibble; C[1:0] = 02H