how to calculate time for read from the values in datasheet for NOR S25FL256S

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

cross mob
hatgc_4010396
Level 1
Level 1

Hi,

      I got confused with calculating timing for read from the values mentioned in the datasheet for S25FL256S NOR flash. Can u please help. I want in ns or us not in Mbytes/s. I am getting confused here because of clock rate is also given. This may be simple but im missing something here.

thanks.

0 Likes
1 Solution

Hi,

Sorry for the delay. As mentioned in the datasheet, you can read the entire memory location from S25FL256S using one read command. Please see the below paragraph from datasheet section "9.4.1 Read (Read 03h or 4READ 13h)".

"The address can start at any byte location of the memory array. The address is automatically incremented to the next higher address in sequential order after each byte of data is shifted out. The entire memory can therefore be read out with one single read instruction and address 000000h provided. When the highest address is reached, the address counter will wrap around and roll back to 000000h, allowing the read sequence to be continued indefinitely."

As per the above paragraph, the time to read memory content depends upon the number of bytes to read from flash.

Number of clock cycles for read command = 8

Number of clock cycles for address (3 bytes) = 24

Number of clock cycles to read n bytes = n*8

Total number of clock cycles to read n bytes = 8+24+(n*8) = 32+n*8 = 8(4+n)

Now, you can calculate the time for read operation according to the number of bytes that you need to read and the operating frequency. Please note the maximum frequency for read operation is 50MHz. Please see table 12 in datasheet for other timing specs.

Thanks and Regards,

Sudheesh

View solution in original post

0 Likes
4 Replies
SudheeshK
Moderator
Moderator
Moderator
250 sign-ins First question asked 750 replies posted

Hi,

S25FL256S is an SPI device and the speed with which you can read data depends upon the clock frequency. Please see the read timing diagram for more clarity. Refer figure 71 in datasheet, https://www.cypress.com/file/448601/download .

Thanks and Regards,

Sudheesh

0 Likes

Hi Sudheesh,

                       I referred the datasheet and calculated the read speed. Please see if this is correct or not?

NO of clocks needed for 3-byte addressing read command: 40 cycles

NO of bytes: in this case 65536Bytes same as the sector size

so, my calculation for the read speed would be: 65536 * 8 (bits) \ 40 * 1,000,000 us(microseconds).

Is the above calculation correct? Please correct if I am wrong.

0 Likes

hi Sudheesh,

                      One more thing, I do not have a read timing diagram in the datasheet, rather I have read command sequence diagram where it says the instruction, 3-byte address and data-in in the figure. This is what confusing me and I am not able to get the timing values. All I know is operating frequency is 50 MHz and from this, it is 20ns is my max speed. So, it is calculating the read speed is 40*20ns = 800ns.This is not correct I know. Kindly help me.

0 Likes

Hi,

Sorry for the delay. As mentioned in the datasheet, you can read the entire memory location from S25FL256S using one read command. Please see the below paragraph from datasheet section "9.4.1 Read (Read 03h or 4READ 13h)".

"The address can start at any byte location of the memory array. The address is automatically incremented to the next higher address in sequential order after each byte of data is shifted out. The entire memory can therefore be read out with one single read instruction and address 000000h provided. When the highest address is reached, the address counter will wrap around and roll back to 000000h, allowing the read sequence to be continued indefinitely."

As per the above paragraph, the time to read memory content depends upon the number of bytes to read from flash.

Number of clock cycles for read command = 8

Number of clock cycles for address (3 bytes) = 24

Number of clock cycles to read n bytes = n*8

Total number of clock cycles to read n bytes = 8+24+(n*8) = 32+n*8 = 8(4+n)

Now, you can calculate the time for read operation according to the number of bytes that you need to read and the operating frequency. Please note the maximum frequency for read operation is 50MHz. Please see table 12 in datasheet for other timing specs.

Thanks and Regards,

Sudheesh

0 Likes