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.

[参考译文] AM5728:XIP 模式下的 NOR 引导时序

Guru**** 2926660 points

Other Parts Discussed in Thread: AM5728

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/657600/am5728-nor-boot-timings-in-xip-mode

器件型号:AM5728

大家好、TI 专家、

 

我们的客户向我们发送了有关 AM5728的 NOR 引导(XIP 模式)的问题。

 

它们捕获了地址、CS0、OE 和 NOR 闪存数据的波形。

(请参阅随附的 pdf)

 

但他们发现了意外行为、如下所示;

 -预期:OEONTIME=45ns (=7.5x6)

 观察到:OEONTIME=80ns

   (OEONTIME 也似乎是 CS0的6倍以上。 看起来很奇怪。)

 

他们的理解如下:

 从 下面 TRM (SPRUHZ6I)的第3543页中、OEONTIME 应为6x7.5[ns]。

  (OEONTIME 的周期应为 CSONTIME 的6倍。)

  -引导时使用的时序参数的复位值为:

    •CSONTIME = 1

    •CSRDOFFTIME = 16

    •ADVONTIME = 4

    •ADVRDOFFTIME = 5

    •OEONTIME = 6

    •OEOFFTIME = 16

    •RDACCESSTIME = 15

    •RDCYCLETIME = 17

 

问题:

 你是否有相同的经验?

 

如果您告诉我们如何解决此问题、我们将不胜感激。

 

此致、

e2e.ti.com/.../NOR_5F00_wave.pdf

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    请发送 GPMC 寄存器的寄存器转储(偏移量0x0-x54加上用于所用芯片选择的相应 CONFIG1-7寄存器)

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

    您好!



    非常感谢您的善意。
    非常感谢您的帮助。


    我将要求将 这些 GPMC 寄存器的详细信息发送给客户。


    此致、

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

    您好!

     

    非常感谢您的善意。

    非常感谢您的帮助。

     

     

    我们从客户那里获得了这些 GPMC 寄存器的详细信息、如下所示。

     

    U-Boot# MD 0x50000060 1 GPMC_CONFIG1

    50000060:00401000                              @

    U-Boot# MD 0x50000064 1 GPMC_M CONFIG2 Ω

    50000064:00101001                              …

    U-Boot# MD 0x50000068 1      GPMC_CONFIG3

    50000068:22060514                              ……”

    U-Boot# MD 0x5000006C 1      GPMC_CONFIG4

    5000006c:10057016                              .p.

    U-Boot# MD 0x50000070 1       GPMC_CONFIG5

    50000070:010f1111                              …

    U-Boot# MD 0x50000074 1      GPMC_CONFIG6

    50000074:8f070000                              …

    U-Boot# MD 0x50000078 1     GPMC_CONFIG7

    50000078:00000000                              …

     

    他们说"从 SD 卡引导后检查了这些寄存器"。

    因为 NOR 引导程序正在开发中。

     

    我们希望继续调查这一问题。

     

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您能否仔细检查 GPMC 功能时钟值? 使用 AM572x 时钟树工具将 GPMC 功能时钟跟踪回其源、以确定频率是多少。

    James
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
     
    非常感谢您的善意。
    非常感谢您的帮助。
    我想请客户根据您的建议检查 GPMC 功能时钟值。

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

    您好!

     

    我们的客户向我们发送了以下反馈:

     

     在下面的 E2E 主题中、他们认为 GPMC 时钟默认为133MHz、在引导时没有任何寄存器设置。

     http://e2e.ti.com/support/arm/sitara_arm/f/791/t/498181?tisearch=e2e-quicksearch&keymatch=am572x%20133

     

     他们还根据您的建议将"SYS_CLK1 (XI_OSC0)=20MHz & sysboot[9:8]-pin=10b"作为源时钟设置。

     因为他们认为 GPMC 时钟由 Booting 的 SYS_CLK1和 sysboot-pin 设置决定。  

      

    1:问题:

     默认情况下、GPMC 时钟= 133MHz、引导时没有任何寄存器设置。

      这种理解是否正确?

     

     如果有任何寄存器会影响 GPMC 时钟频率、请告知我们应检查的寄存器名称。

       

    2:如果您告诉我们 GPMC 时钟在哪里以及如何在 AM572x 时钟树工具中查找 GPMC 时钟,我们也将不胜感激。

      我们找不到您提到的"GPMC 功能时钟信号"。

     

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    GPMC 最大功能时钟为88.6MHz、因此 ROM 应调整 GPMC_CONFIG1中的功能时钟分频器。 如果您依赖 GPMC 模块的 ROM 配置、是否可以确保不更改 GPMCFCLKDIVIDER 位域?

    此致、
    James
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
     
    非常感谢您的善意。
    非常感谢您的帮助。

    对于 Q1:
    我们的理解如下:
    - ROM 应调整 GPMC_CONFIG1中的功能时钟分频器。
    -请检查 GPMC_CONFIG1.GPMCFCLKDIVIDER 位字段。

    对于 Q2:
    这个问题似乎是由我们自己解决的。
    - TRM (SPRUHZ6I)图15-55.GPMC 集成显示"L3MAIN1_L3_GICLK as GPMC_FCLK SOURCE (L3MAIN1_L3_GICLK 作为 GPMC_FCLK 源)"。
    -我们在 AM572x 时钟树工具中找到了 L3MAIN1_L3_GICLK。
    我们检查了如下所示的时钟源;

    SYS_CLK1=20MHz
    ->[DPLL_CORE]
    -[0x4A005120] CM_CLKMODE_DPLL_CORE = 0x00000007
    -[0x4A00512C] CM_CLKSEL_DPLL_CORE =0x00010A04
    -[0x4A00513C] CM_DIV_H12_DPLL_CORE = 0x00000204
    ->DPLL_CORE_CLKOUT2_H12 :532MHz
    ->CORE_X2_CLK ->532MHz
    ->[0x4A005100] CM_CKSEL_CORE=0x00000110 (div=2)
    ->L3_ICLK -> 266MHz
    ->Divider_L3MAIN1_L3_GICLK (div=2)
    ->L3MAIN1_L3_GICLK -> 133MHz

    从 SD 卡>引导后、检查了上面的 μ<寄存器
    => MD 0x4a005120 1.
    4a005120:00000007
    => MD 0x4a00512C 1.
    4a00512c:00010a04
    => MD 0x4a00513C 1.
    4a00513c:00000204
    => MD 0x4a005100 1.
    4a005100:00000110

    根据您的建议:
    我们知道您的请求是 GPMC_CONFIG1的寄存器值。
    我们已经提供了如下所示的 GPMC_CONFIG1寄存器值。
    根据该信息、GPMC_CONFIG1.GPMCFCLKDIVIDER 位域:GPMC_CONFIG1[1:0]= 0;
    U-Boot# MD 0x50000060 1 GPMC_CONFIG1
    50000060:00401000

    够了吗?
    如果您需要其他信息来继续调查问题、请告诉我们。

    此致、
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    抱歉、我在上一篇帖子中不正确。 GPMC_CLK (即外部引脚上的时钟)的最大频率为88.6MHz。 GPMC 控制器的功能时钟可以是133MHz。

    您最初的问题是关于 NOR 引导。 我在 AM57x EVM 上进行了两次检查、客户发送的 GPMC 寄存器转储不反映 ROM 在引导期间如何设置 GPMC 控制器。 ROM 设置 TIMEPARAGRANULARITY 位、因此所有时序将是寄存器中设置的值的2倍。 此外、还有几个其他寄存器与客户发送的寄存器不同。

    是在执行 u-boot 之前还是在执行 u-boot 之后执行范围快照?

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

    您好!

    非常感谢您的善意。

    非常感谢您的帮助。

    您能否发送检查过的寄存器转储?

    我们想了解客户结果的差异。

    我想在下面向客户询问您的问题。

    "是在执行 u-boot 或执行 u-boot 之前拍摄的示波器快照?"

    我们的客户向我们发送了详细波形。

    如果您查看随附的 pdf、我们也将不胜感激。

    此致、

    e2e.ti.com/.../NOR_5F00_capt1.pdf

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大多数情况下、您的计时似乎是预期的两倍。 我认为、您可以将 GPMC 功能时钟的计时速度减半、这是可能的。 作为一个实验、他们能否将 GPMC 置于同步模式? 这将输出 GPMC_CLK 并允许它们验证功能时钟频率。
    我还注意到已启用 WAITREADMONITORING。 是否正在添加等待状态、这会导致他们看到延迟? 他们还可以检查示波器上的等待信号吗?

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

    您好!

     

    非常感谢您的善意。

    非常感谢您的帮助。

     

    我想将答案发送给客户。

     

    如果您按如下所示回答先前所附 PDF 第6页上的问题、我们也将不胜感激。

     

    问题:

     我们可以在这个时间捕获数据吗?

     

    -他们想知道 NOR 引导(XIP 模式)时的适当数据捕获时序。

    -他们在 TRM (表15-530)中找到"GPMC_CONFIG5_I[20:16] RDACCESSTIME:Reset value =15"。 GPMC_CONFIG5_I)。

     适当的数据捕获时序似乎为112.8[ns]。 (=7.52x15 @133MHz-GPMC_FCLK)。

     

    这种理解是否正确?

     

    如果您对 NOR 引导(XIP 模式)下的适当数据捕获时序有任何建议或建议、请告诉我们。

     

    此致、

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

    您好!

     

    非常感谢您的善意。

    非常感谢您的帮助。

     

    我们的理解如下:

     -我们在 SD 引导时的 CONFG1-7寄存器转储与在 NOR 引导(XIP 模式)时的 CONFIG1-7寄存器转储之间存在一些差异。

     -在 NOR 引导(XIP 模式)时,ROM 设置配置寄存器,例如 TIMEPARAGNULARITY 位。

     

    因此、他们希望能够精确地了解 NOR 引导(XIP 模式)下的配置寄存器值。

    但他们无法在 TRM (SPRUHZ6I)中找到 ROM 代码在 NOR 引导(XIP 模式)下设置的配置寄存器值。

     

    因此、我们的客户强烈要求再次提供有关 NOR 引导(XIP 模式)下 CONFIG1-7的检查寄存器转储。

     

    目前、他们的产品(包括启动软件)正在开发中。

    因此、它们不能检查 ROM 代码在 NOR 引导(XIP 模式)下设置的配置寄存器值。

    唯一的方法似乎是在使用 SDK (Linux)的 SD 引导中检查波形并读取配置寄存器。

     - NOR 引导(XIP 模式)行为似乎通过观察示波器波形来检查。

     但目前、他们只能在使用 SDK (Linux)的 SD 引导中检查配置寄存器。

     

    您能否在 NOR 引导(XIP 模式)下提供有关 CONFIG1-7的已检查寄存器转储?

     

    现在、我们正在等待您推荐的方式或注释、以便在 NOR 引导(XIP 模式)下获得适当的数据捕获时序。

     

    如果您在 NOR 引导(XIP 模式)下提供有关 CONFIG1-7的检查寄存器转储、我们也会不胜感激。

     

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    他们是否具有 JTAG 访问权限? 如果是、他们可以在 ROM 尝试 XIP 或引导后使用 CCS 检查寄存器。
    下面是我看到的内容:
    GPMC_GPMC_CONFIG1_0
    00400010
    GPMC_GPMC_CONFIG2_0
    00101080
    GPMC_GPMC_CONFIG3_0
    00020201
    GPMC_GPMC_CONFIG4_0
    0F031003.
    GPMC_GPMC_CONFIG5_0
    000F1111
    GPMC_GPMC_CONFIG6_0
    0F030080
    GPMC_GPMC_CONFIG7_0
    00000F48

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

    您好!

     

    非常感谢您的善意。

    非常感谢您的帮助。

     

    我想向客户发送您关于通过 JTAG&CCS 进行检查的建议。

     

    如果您在 NOR 引导(XIP 模式)下给出适当的数据捕获时序的建议方法或建议,我们也不胜感激。

     

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您可以通过在加电后触发对 NOR 的第一次访问来检查 NOR 启动期间的数据捕获时序。

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

    您好!

     

    非常感谢您的善意。

    非常感谢您的帮助。

     

    根据您的回答、我们能否理解"应通过观察第一次访问 NOR 时的触发来设计适当的数据捕获时序

    在客户电路板上使用类似的示波器?"

     

    在 TI 官方文档中、是否有任何推荐描述可用于设计 XIP-NOR 的适当数据采集时序?

    我们有点困惑。 那么、您能更详细地告诉我们吗?

     

    我们客户的问题如下所示;

     -XIP-NOR 的数据捕获时序应由 GPMC_CONFIG5_I[20:16](RDACCESSTIME)的寄存器值设计。

     

    这种理解是否正确? (够了吗?)

     

    如果您回答此问题、我们将不胜感激。

     

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很抱歉、我对您的问题感到困惑。
    在 GPMC 访问期间、在 GPMC_CONFIG0-7寄存器中为特定芯片选择配置的时序应反映在接口上。 您的客户发送了他们的 GPMC 配置、但是他们配置的时间与他们在接口上看到的时间不匹配。 我同意这是一个问题。
    我需要它们来将配置与示波器图片相关联。 ROM 可能以一种方式配置 GPMC、而 uboot 则以另一种方式配置 GPMC。 何时拍摄示波器照片? 是在引导期间执行 ROM、还是在 uboot 中发送命令时执行?

    最好从这两种场景中获得示波器截图。

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

    您好!

     

    非常感谢您的善意。

    非常感谢您的帮助。

     

    很抱歉让你感到困惑。

    您所说的内容似乎已被理解。

    首先、我想澄清一下您的困惑。

    然后、我想重点介绍如何回答我们的客户问题。

     

    >您的客户发送了他们的 GPMC 配置,但是他们配置的时间与他们在界面上看到的时间不匹配。

     -在 NOR 引导(XIP 模式)时捕获波形。

     -在 SD 卡引导后,将读取 CONFIG0-7寄存器的值。

    因此、波形图似乎与 CANGIG 寄存器配置的行为不匹配。

    原因/背面如下所示;

     -他们的 NOR 引导程序正在开发中。

      ->所以、他们告诉我们"在 NOR 引导(XIP 模式)后很难读取配置寄存器"。  

     他们想知道" GPMC 是否与配置寄存器复位值一起工作?"

       ->在这个 E2E 主题中、他们得到了答案" GPMC 行为与 ROM 设置的配置寄存器"。

     

    然后、我们将在之前提供的 NOR_capt1.pdf (page6)中重点讨论他们的问题、如下所示;

     "我们可以在这个时间捕获数据吗?"

     

    我想按如下所示回答:

     数据捕获时序基本上由配置寄存器指定、包括 ROM 代码设置为 NOR 引导(XIP 模式)的 RDACCESSTIME 位。

       请在 NOR 引导(XIP 模式)后检查配置寄存器的值。

       15.4.9.8 TRM 中的访问时间(RDACCESSTIME/WRACCESSTIME)也很有用。

     

    如果您同意、我想回答客户的问题。

     

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我无法回答、因为我不知道您正在读取的器件的时序参数。 READACCESSTIME 将取决于您正在读取的器件的访问时间。 您必须根据该器件的规格进行设置。 您不能依赖 ROM 代码集。 您可能还需要根据器件的规格使用等待状态

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

    您好!

     

    感谢您的快速回复。

    非常感谢您的帮助。

     

    我想请客户提供详细信息。

     

    此致、