5.56 Quad Page Program
The Quad Page Program instruction programs up to 256 bytes of data into memory. Before initiating the operation, the selected page address must be in the erased state (FFH). If the instruction is applied to a protected memory region, the operation is ignored. The Quad Page Program instruction requires the IOC bit in Status Register 2 to be set to 1 before execution. The Write Enable (WREN) instruction must also be executed prior to issuing the command.
To execute a Quad Page Program operation in SPI mode, the host drives CE# low, issues the command cycle (33H or C2H) in SPI mode, and transmits three or four address cycles followed by the data using SIO[3:0]. The host then drives CE# high. The programmed data length must be between 1 and 256 bytes in whole-byte increments. The command cycle is eight clocks long, while the address and data cycles are each two clocks long, with the Most Significant bit transmitted first. Completion of the internally timed write 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-50 for the command sequence.
To execute a Quad Page Program operation in QPI mode, the host drives CE# low, issues the command cycle (33H or C2H), and transmits three or four address cycles followed by the data using SIO[3:0], then drives CE# high. The programmed data length must be between 1 and 256 bytes in whole-byte increments. The command cycle is eight clocks long, and the address and data cycles are each two clocks long, with the Most Significant bit transmitted first. Completion of the internally timed write 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-51 for the command sequence.
During a Quad Page Program operation, memory is organized into 256-byte page boundaries. If more than 256 bytes of data are transmitted, only the last 256 bytes received are retained and programmed. If the target 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 target page.


