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,
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.
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.
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,