This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM3358: eMMC slow transfer speed

Part Number: AM3358

Hi,

we use the Sitara AM 3358 on a custom board, based on the ICE Board Rev. 2.x

  • The eMMC is a MTFC8GAKAJCN (Micron)
  • The Bootloader is based on the Ind.SDK example
  • The block size is set to 512 bytes
  • The clock is set to 52MHz (Observed from scope)
  • The card has been set to high speed mode and 8 bit data width
  • The processor has been set to 8 bit mode.
  • The Init. returns no errors

I want to read a file with the size of 3MB from the eMMC. It takes ~1,4 milliseconds between two 512 byte Blocks.

yellow: clk | cyan: cmd | pink: dat0

The most time take the reading from the dat-lines to the read-buffer. This been checked by polling the SD_STAT[BRR]-Register in a loop.
There must be a timing problem, or? The datatransfer for this small filesize take a unreasonably time.

What can be the reason that the data-read is so slowly into the read-buffer. Is there a delay for changing the SD_STAT register value?
Obviously, the data transfer is fast enough (see the picture). But the register does not return the state fast enough. And thus, no new data transfer can be initiated.

Please let me know if you have any idea for this issue.

Thanks and Regards, Michael