SPI NOR S25FS128S - S25FS256S - S25FS512S Page programming with data greater than buffer size

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
MoSa_4200611
Level 1
Level 1
First like given

I have a question regarding page programming when the data, sent along with PP command, exceeds the buffer size.

Here is the text from Cypress specification:

If more data is sent to the device than the space between the starting address and the page aligned end boundary, the data loading

sequence will wrap from the last byte in the page to the zero byte location of the same page and begin overwriting any data

in the page. The last page worth of data is programmed in the page. This is a result of the device being equipped

with a page program buffer that is only page size in length. If less than a page of data is sent to the device, these data bytes will be

programmed in sequence, starting at the provided address within the page, without having any affect on the other bytes of the same

page.

Let’s assume:

The buffer size is 256 bytes

Address is 0x0

Data received are 258 bytes (byte 0 is 0x00,     byte 1 is 0x01,      byte 2 is 0x02, ……..           byte 255 is 0xFF,       byte 256 is 0xAA,        byte 257 is 0xBB)

After the receiving 256 bytes, the page buffer will contain: 0x00, 0x01, 0x02, ………, 0xFF

The new data (exceeding 256 bytes will overwrite the first byte): so the page buffer will contain at the end: 0xAA, 0xBB, 0x02, ………. 0xFF.

Now what data do you expect to be written to the memory?

Option A:        Last 256 received bytes will be written to memory starting from the given program address which is 0x0 in this example

@address 0x0  à 0x02

@address 0x1  à 0x03

@address 0x2  à 0x04

…..

@address 0xFE  à 0xAA

@address0xFF à 0xBB

Option B:  The page program buffer is written to the corresponding memory’s page (page 0 in this example)

@address 0x0  à 0xAA

@address 0x1  à 0xBB

@address 0x2  à 0x02

…..

@address 0xFE  à 0xFE

@address0xFF à 0xFF

Thanks,

Mona

0 Likes
1 Solution
SudheeshK
Moderator
Moderator
Moderator
250 sign-ins First question asked 750 replies posted

Hi Mona,

As per the example that you mentioned, the content of memory will be as in Option B after program operation.


Thanks and Regards,

Sudheesh

View solution in original post

1 Reply
SudheeshK
Moderator
Moderator
Moderator
250 sign-ins First question asked 750 replies posted

Hi Mona,

As per the example that you mentioned, the content of memory will be as in Option B after program operation.


Thanks and Regards,

Sudheesh