UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 47537

Zynq-7000 AP SoC, SDIO – ADMA2 模式读取破坏 PIO 模式写入的数据

描述

如果控制器使用 PIO 模式写入数据,随后用 ADMA2 模式读取数据,控制器会无法在 DMA进程中发送 Auto CMD12(停止请求),读取 FIFO 会填满错误数据。

在PS 2.0版及更高版本中已修复。不会影响量产芯片。

可以采取如下方式避免:在使用 PIO 模式写入时选择 SDMA 模式(非 ADMA2 模式);不使用 PIO 模式写入数据。

解决方案

影响:

很小。敬请阅读下文了解影响详情。

解决方法::

解决方法详述了二步骤。

受影响的配置:

使用 SDIO 控制器的系统

受影响的器件修订版本: 在 PS 2.0 版及更高版本中已修复。参见(Xilinx 答复 47916)——Zynq-7000 AP SoC 芯片修订差异。



影响详情

如果 SD 主机控制器先以 PIO 模式将数据写入 SD 卡,然后又试图以 ADMA2 模式从 SD卡中读出数据,该主机控制器将无法向这个 SD 卡发送 Auto CMD12(停止请求)。因此 SD 主机控制器的内部 FIFO 中将填满错误数据。

解决方法详情

此问题有2个解决方案:

  • 在执行 PIO 模式的写入时,SD 主机驱动程序应将 dma_select 模式设置为 2b00。在进行 ADMA2 读取操作时,该驱动程序可将 dma_select 模式切换为 2b10。
  • 请不要执行任何 PIO 模式写入,一直使用 ADMA2 模式写入/读取操作。使用 PIO 模式写入/读取的吞吐量低于使用 ADMA2 模式操作的吞吐量。

链接问答记录

主要问答记录

Answer Number 问答标题 问题版本 已解决问题的版本
47916 Zynq-7000 AP SoC 器件:芯片修订差异 N/A N/A
AR# 47537
日期 01/21/2014
状态 Active
Type 设计咨询
器件
  • Zynq-7000
  • XA Zynq-7000
  • Zynq-7000Q
的页面