0

我正在尝试使用 sd 主机控制器读取 eMMC 数据。

sd主机控制器:ATFSDC010 eMMC:KLM8G1GESD-B04P eMMC阅读器:用于ODROID的EMMC模块阅读器

首先,我已将 eMMC 初始化为传输状态(CMD0->CMD1->CMD2->CMD3->CMD7)

其次,我已经发送了 CMD18(READ_MULTI_BLOCK)

如果我发送 CMD18,sd 主机控制器开始时钟切换并从 eMMC 读取数据,上升沿(sd 主机控制器的 FIFO 只有 64 字节,所以它在读取 64 字节后停止时钟切换)

当我读取第一个 FIFO 的 64 字节时,它没有损坏

如果 FIFO 变空,sd 主机控制器重新启动时钟切换以读取 64 字节

当我读取第二个 FIFO 的 64 字节时,只有第一位数据总是被反转(例如:0x4a -> 0xca)和第三个 FIFO,第四个 FIFO ......是相同的

下面是第一个 FIFO 读取信号(数据为 0x4a) 在此处输入图像描述

下面是第四个 FIFO 读取信号(数据应该是 0x7a 但 0xfa)很奇怪我收到了 0xfa,但信号是 0xf4 或 0xea 在此处输入图像描述

我认为 SD 和 eMMC 的读取时序是不同的。下面是(1)SD卡、(2)eMMC的读取时序 在此处输入图像描述 在此处输入图像描述

我对吗?如果我误解了,请让我知道..

我还是个初学者。我问你的理解。

4

0 回答 0