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.

[参考译文] AM3517:NAND 闪存工具错误

Guru**** 688340 points
Other Parts Discussed in Thread: AM3517, FLASHTOOL
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/679945/am3517-nand-flash-tool-error

器件型号:AM3517
主题中讨论的其他器件: FLASHTOOL

我们将 AM3517 CPU 与定制板上 Micron 的4Gb x16 NAND 闪存(MT29F4G16)配合使用。 为了将映像刷写到该存储器中、我们使用的是 TI 闪存工具(v1.6)。 这正常工作、闪存工具会正确检测到 NAND 闪存并进行相应编程。 这是 ONFI 检测迹线的一部分:

»发送数据(41008字节)::::::::::::::: [41008]
接口'OMAPFLASH 驱动程序 v5"
驱动程序'NAND ONFI 16/8位'
驱动程序配置:GPMC = 0x6E000000
驱动程序配置:CS = 0x00000000
驱动程序配置:地址= 0x30000000
驱动程序配置:bberase = 0x00000000
NAND HW ECC
NAND BCH Mode = 0
NAND HWECC offset = 2、 大小= 12
NAND ONFIv2供应商0x2C micron
NAND 16位器件0xBC MT29F4G16ABBDAHC
NAND 周期0x23 (3行、2列)
 NAND 2048字节/页(备件64)
NAND 64页/块(131072字节/块)
NAND 块/单元(536870912字节/单元) 
NAND 4位(S) ECC 要求
 NAND 512 MB 总大小
NAND ONFI 驱动程序初始化完成
»下载完成
»经过时间:0:00.480 (85433字节/秒) 

现在、这款 Micron 闪存已经过时、我们正在寻找替代组件。 可能的备选方案之一是 Cypress/Spansion 的 NAND 闪存(S34MS04G2)。 但问题从这里开始:闪存工具未正确检测到该 NAND 闪存的页大小、备件和总大小。 这是尝试使用 Cypress/Spansion NAND 闪存刷写电路板时的布线:

»发送数据(40768字节):::::::::::::::: [40768]
接口'OMAPFLASH 驱动程序 v5"
驱动程序'NAND ONFI 16/8位'
驱动程序配置:GPMC = 0x6E000000
驱动程序配置:CS = 0x00000000
驱动程序配置:地址= 0x30000000
驱动程序配置:bberase = 0x00000000
NAND HW ECC
NAND BCH 模式= 0
NAND HWECC 偏移= 2、 大小= 12
NAND ONFIv2供应商0x01 Spanion
NAND 16位器件0xBC S34MS04G2
NAND 周期0x23 (3行、2列)
 NAND -256字节/页(备用65408)
NAND -192页/块(49152字节/块)
NAND -256块/单元(-12582912字节/单元)

总共4位(S)
»ECC NAND 下载40MB 失败 (最终数据响应错误):远程::驱动程序初始化错误0x000
00011 -初始化过程中的驱动程序页内存分配错误
»经过时间:0:00.438 (93077 bytes/s)
»操作失败(远程:驱动程序初始化错误0x00000011-
初始化过程中的驱动程序页内存分配错误)
»经过时间:0:00.000

闪存工具中包含的 NAND 闪存驱动程序(nand_ONFI_16bit_8bit.bin)似乎无法确定 Cypress/Spanion 闪存的正确大小。 Micron 和 Cypress/Spanion 闪存之间的唯一区别是备用区域(64字节与128字节)。 但是、NAND 驱动程序应该从闪存工具中检测到这一点、因为它由两个 NAND 闪存芯片都支持的 ONFI 规范定义。

是否知道 flashtool 中的 NAND 闪存驱动程序(nand_ONFI_16bit_8bit.bin)为何难以处理 Cypress/Spanion NAND 闪存?

此致、
布鲁诺

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    工厂团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Bruno、Cypress NAND 是否在与 Micron NAND 相同的电路板设计中使用?  我只是试图消除读取 ONFI 参数时出现任何硬件问题的可能性。

    如果处理器在读取 ONFI 参数时遇到问题、另一种方法是使用移植功能、允许您插入 NAND 参数。  有关详细信息、请参阅此 wiki:  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Biser、

    感谢您的回复。 对于 NAND 闪存、它实际上是完全相同的电路板设计。

    您的建议确实有效、我现在将 NAND 闪存驱动程序的参数更改为如下(以覆盖错误读取的 ONFI 参数):

    存储器 NAND 驱动程序 Targets\Flash-Drivers\nand_onfi_16bit_8bit.bin 参数 GPMC 0x6E000000 cs 0 address 0x30000000 bberase 0 ONFI 0 bpp 2048 sbpp 128ppb 64 BPL 4096 l 1 ACV 0x23 f 0x0019 

    这将生成以下跟踪:

    »发送数据(41008字节)::::::::::::::: [41008]
    接口"OMAPFLASH 驱动程序 v5"
    驱动器'NAND ONFI 16/8位'
    驱动程序配置:GPMC = 0x6E000000
    驱动程序配置:CS = 0x00000000
    驱动程序配置:地址= 0x30000000
    驱动程序配置:bberase = 0x00000000
    驱动程序配置:ONFI = 0x00000000
    驱动程序配置:bpp = 0x00000800
    驱动程序配置:sbpp = 0x00000080
    驱动程序配置:ppb = 0x00000040
    驱动程序配置:BPL = 0x00001000
    驱动程序配置:L = 0x00000001
    驱动程序配置:ACV=0x00000023
    驱动程序配置:F=0x00000019
    NAND 硬件 ECC
    NAND BCH 模式= 0
    NAND HWECC 偏移= 2、大小= 12
    NAND NONEv0供应商0x00未知
    NAND 16位器件0x00未知
    NAND 周期0x23 (3行、2列)
    NAND 2048字节/页(备用128)
    NAND 64页/块(131072字节/块)
    NAND 4096块/单元(536870912字节/单元)
    需要 NAND 0位 ECC
    NAND 总大小为512 MB
    NAND ONFI 驱动程序初始化完成
    »下载完成 

    这样、我就能够将图像数据闪存到 NAND 闪存中。 现在我需要修改访问 NAND 的所有实例(X 加载程序、U-Boot、内核...) 以使其运行。 但这是一个不同的故事。

    谢谢、此致、
    布鲁诺