工具/软件:
您好、
我的客户对串行 NAND 引导有几个问题。
下面是 TRM 第5.4.10.1节。
Q1)在页面读取命令后、引导加载程序是否检查 BUSY 位?
Q2)如果 Q1的答案是"是"、则使用哪个命令(和格式)?
Q3)如果 Q1的答案为"否"、则在"页面读取"命令之后插入了多少等待时间?
Q4)您是否有任何特定的 QSPI NAND 器件型号与 AM62x 兼容?
谢谢。此致、
田代浩一郎
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.
工具/软件:
您好、
我的客户对串行 NAND 引导有几个问题。
下面是 TRM 第5.4.10.1节。
Q1)在页面读取命令后、引导加载程序是否检查 BUSY 位?
Q2)如果 Q1的答案是"是"、则使用哪个命令(和格式)?
Q3)如果 Q1的答案为"否"、则在"页面读取"命令之后插入了多少等待时间?
Q4)您是否有任何特定的 QSPI NAND 器件型号与 AM62x 兼容?
谢谢。此致、
田代浩一郎
Tashiro-san,
ROM 专家本周就要离开了。 我猜是检查了 BUSY 位、13h 命令后跟3个地址字节。 不确定您要查找的其他信息。
请查看以下内容以了解有关兼容设备的讨论:
此致、
James
您好、James:
ROM expert is out this week。 我猜是检查了 BUSY 位、13h 命令后跟3个地址字节。 [/报价]客户可以等待最后的答案、直到下周。 因此请再次咨询 ROM 专家。
谢谢。此致、
田代浩一郎
您好、James:
感谢您的确认。
您是否意味着 ROM 代码会轮询状态寄存器中的繁忙位、即使在 计算出的超时之前该位未清零、也会转到下一步并正确启动?
根据以下常见问题解答、 "读取状态寄存器"的要求如下。
"闪存必须在1S-1S-1S 模式下支持此命令、操作码为0x05、0地址字节、0个虚拟周期。"
https://e2e.ti.com/support/processors-group/processors/f/processors-forum/946418/faq-tda4vm-is-there-a-guide-to-choosing-the-right-ospi-flash-parts-that-are-supported-on-jacinto-7
客户想知道 NAND 器件是否支持上述要求、该器件不能用作引导器件。
谢谢。此致、
田代浩一郎
您好、
该 J7常见问题解答适用于 J7 Linux 和 U-Boot、因为它说:"要使 Linux 和 U-Boot 中支持闪存、应满足以下要求"。
为了回答您有关投票的问题、我们已与 ROM 团队确认以下内容:
2ms 的最小时间应该足够长、以便大多数 NAND 闪存器件加载页面、该时间范围通常为微秒。
此致、
Lucas
您好、Lucas:
感谢您的详细回答!
客户希望确认以下几点。
客户想知道 NAND 器件是否支持上述要求、该器件不能用作引导器件。
根据您的回答、NAND 似乎可用作引导器件、即使它不支持带有 Opecode 0xF 的"读取状态寄存器"命令。
对吧?
或者在其他位置使用"读取状态寄存器命令"?
谢谢。此致、
田代浩一郎
尊敬的 Koichiro:
我想知道他们所考察的器件中哪些不支持带有操作码0xF 的 STATUS 寄存器命令?
我们已经使用 Winbond 和 Micron 进行了测试、每个都有用于 BUSY 位的相同位置。
如果器件不支持 STATUS 寄存器命令0xF、则2ms 的超时值将在每次读取页面时生效、但仍应完成。 但是、这可能对客户来说并不理想、因为这会导致启动时间长得多。
此致、
James
您好、James:
我想了解他们关注的是哪个器件不支持带有操作码0xF 的状态寄存器命令?
我询问客户器件型号。
但是、这可能不是客户的理想选择、因为这会导致更长的启动时间。
您能否仔细检查 ROM 代码的其他部分中未使用"读取状态寄存器"?
谢谢。此致、
田代浩一郎
尊敬的 JJJD:
似乎两者都在地址0xC0处支持命令0xF、因此它们将支持读取状态寄存器。
根据以下常见问题解答、命令需要为0x5、地址为0x0。 这是拼写错误吗?
https://e2e.ti.com/support/processors-group/processors/f/processors-forum/946418/faq-tda4vm-is-there-a-guide-to-choosing-the-right-ospi-flash-parts-that-are-supported-on-jacinto-7
BTW、上述常见问题解答是从下面的 AM62 SDK 文档链接过来的。
https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/11_00_09_04/exports/docs/linux/Foundational_Components /U-Boot/UG-QSPI.html#ospi-QSPI-NOR-NAND
谢谢。此致、
田代浩一郎
您好、
ROM 是器件上的非易失性代码、无法更改、用于加载引导映像、可称为主引导加载程序。 原始问题参考了有关 OSPI NAND 引导的 TRM 一章、该引导加载程序是从串行 NAND 闪存读取映像的主引导加载程序。 无法更改引导的这些要求。
主引导加载程序将映像加载到 SoC 中、之后全部取决于用户选择将映像放入闪存中的内容。 它通常是某种形式的次级引导加载程序、例如 MCU+SDK 甚至裸机代码中提供的内容;它不必是 U-boot。 这完全由用户决定次级引导加载程序的用途、甚至需要什么。一些客户从 OSPI 进行引导、然后再也不需要针对其用例再次触摸次级引导加载程序。
辅助引导加载程序完全由用户自定义。 通常用于引导 Linux 的 U-boot 是开源的、所有驱动程序/要求都取决于代码本身以及如何为用户自定义。 如果您询问 Linux/U-boot 要求及其相关详细信息、您将更幸运地提交有针对性的软件问题单 、以便能够理解该软件所需或不需要的内容。
此致、
Lucas
您好、Lucas:
感谢您的澄清。 我了解了主引导加载程序和次级引导加载程序之间的差异。
客户在这里询问的是主引导加载程序(ROM 引导加载程序)、无法更改用户。
Q1)我从前面的讨论中了解到、主引导加载程序支持 Opecode 0xF 作为读取状态寄存器。 对吧?
Q2)另一方面、Linux/U-boot 支持 Opecode 0x5作为读取状态寄存器、对吗?
Q3)如果 Q1/Q2的两个答案均 为"是";
-对于串行 NAND 引导、必须使用 opecode 0xF。
-如果客户用例中需要串行 NAND 访问、则 Opecode 0x5是可选的。
对吧?
谢谢。此致、
田代浩一郎
您好、
MCU+SDK 驱动程序支持
在 MCU PLUS SDK 上、读取 NAND 闪存状态寄存器的命令确实为0xFh。
在 ROM 上、读取串行 NAND 引导状态寄存器的命令仅为0xFh。
此致、
Vaibhav