5.55 Quad Input Page Program_4Byte
The Quad Input Page Program_4Byte 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 issued for a protected memory region, the operation is ignored. The Quad Page Program_4Byte 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 Input Page Program_4Byte operation in SPI mode, the host drives CE# low, issues the command cycle (34H), and transmits four address cycles in SPI mode, followed by the data to be programmed 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.
To execute a Quad Input Page Program_4Byte operation in QPI mode, the host drives CE# low, issues the command cycle (34H), and transmits 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.
During a Quad Input Page Program_4Byte 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.
