SD card single/multi-block read speed difference?
ags
Posts: 386
I realize I can do some work and test this on my own. I won't be able to do that for some number of days, and would like to continue some high-level design work before then.
I'm looking for someone with experience reading SD cards (quickly). I know Kye and lonesock (and others) have done work in this area. My question is about the speed difference between single- and multi-block reads. I understand that the single-block read requires for each block being read a command (to the SD card), a response (from the SD card), some busy state and finally the data block is ready for reading. With multi-block mode, only one command/response is necessary when initiating, then just keep reading the next sequential block.
Is the speed advantage of multi-block vs single-block just the time saved avoiding multiple command/response exchanges, or does the SD card do some "look-ahead" and prepare the next block for reading, meaning that the wait time between finishing the current block read to when the next block is ready for reading is shorter than the time between completing the command/response and the block being ready for reading using single-block mode?
Thanks.
I'm looking for someone with experience reading SD cards (quickly). I know Kye and lonesock (and others) have done work in this area. My question is about the speed difference between single- and multi-block reads. I understand that the single-block read requires for each block being read a command (to the SD card), a response (from the SD card), some busy state and finally the data block is ready for reading. With multi-block mode, only one command/response is necessary when initiating, then just keep reading the next sequential block.
Is the speed advantage of multi-block vs single-block just the time saved avoiding multiple command/response exchanges, or does the SD card do some "look-ahead" and prepare the next block for reading, meaning that the wait time between finishing the current block read to when the next block is ready for reading is shorter than the time between completing the command/response and the block being ready for reading using single-block mode?
Thanks.
Comments
Jonathan
is it faster to use multi-block mode, and then just cancel after the first block read (compared to a single-block read)? Or just that the first block access is slow in either case, but with multi-block avoided after the first block read?