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.

[参考译文] AM5726:GPMC 至 FPGA 接口时序

Guru**** 2974170 points

Other Parts Discussed in Thread: AM5726

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/674641/am5726-gpmc-to-fpga-interface-timings

器件型号:AM5726

香榭丽舍

客户使用同步多路复用16位 NOR 闪存模式通过 GPMC 将 FPGA 连接到 AM5726。 数据手册中图7-7所示的此模式的时序图不能完全清楚
实现接口的 FPGA 侧。 GPMC_oen_ren 和数据信号(GPMC_AD[15:0])之间的关系看起来非常逻辑和一致
虽然根本不清楚 GPMC_WAIT 的时序如何与其他两个因素配合使用。以下是几个问题:

图中 GPMC_WAIT 信号的极性是什么:高电平有效还是低电平有效?
2.如果它为低电平有效-为什么 GPMC_oen_ren 在 GPMC_WAIT 停用之前激活? 不应该是另一种方式?
3.如果它为高电平有效-为何在数据传输期间激活等待?
4.是否可以共享客户在设计中可以使用的任何设计/仿真文件? 或仿真波形/逻辑分析仪捕获?

另一个有关 CPU-FPGA 接口主题的问题是:客户希望 GPMC_clk 持续运行、以便 FPGA 可以使用它。 GPMC 仅在传输过程中激活时钟
但看起来 GPIO6_16.clkout1可以用作 GPMC_clk 的持续运行副本。 问题:是否有任何方法将 GPIO6_16.clkout1用作 GPMC_clk、即让它驱动
持续运行时的 GPMC 事务?

谢谢
Michael

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

    我正在研究这些问题、应该在24小时内回答。

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

    您好、Michael、

    首先、如果读取延迟是确定性的、则无需使用等待信号。 GPMC 基于周期-计数器(如 OEONTIME 和 OEOFFTIME)被编程为激活和停用每个控制信号。 同样、当 RDACCESSTIME 计数器到期时、数据也会被锁存。 如果存储器不是确定性的、那么它可以驱动等待信号以延迟将其输入到数据总线上的数据锁存。 有效访问时间是 RDACCESSTIME 时序完成和等待取消置位状态检测的逻辑与组合。

    TRM 图15-61。 同步读取突发访问期间的等待行为(见下文)显示了有关控制信号开/关时间、读取访问时间和等待信号参与的更多详细信息。

    =-=-
    图中 GPMC_WAIT 信号的极性是什么:高电平有效还是低电平有效?

    MM:显示低电平有效。 等待可配置为低电平有效或高电平有效。

    WAIT 引脚的极性通过 GPMC_CONFIG 寄存器的 WAITxPINPOLARITY 位定义。 一个被配置为低电平有效的等待引脚意味着等待信号上的低电平表示数据未就绪并且数据总线无效。 当 WAIT 引脚处于非活动状态时、数据有效。

    =-=-
    2.如果它为低电平有效-为什么 GPMC_oen_ren 在 GPMC_WAIT 停用之前激活? 不应该是另一种方式?

    MM:OEN (由存储器控制器驱动)必须为低电平、以授予存储器在总线上驱动数据的权限。

    一些 NOR 闪存器件还要求 OEN 在等待有效(tGhtv)之前为低电平。

    等待和数据必须在编程的 RdAccessTime (可通过有效的等待信号使其停止)之前有效。

    让我研究一下、在内存释放 WAIT 信号后、是否允许 EN 变为低电平有效、以及其 OEOnTime 计数器是否也被 WAIT 信号挂起。

    =-=-
    4.是否可以共享客户在设计中可以使用的任何设计/仿真文件? 或仿真波形/逻辑分析仪捕获?

    MM:TRM 图15-61是一个更好的数字。

    另请参见以下用于锁存等待输入的触发器。 这可能有助于了解图15-61中所示的不同等待时间设置。 请注意、Ret_clock 表示在从 IO 焊盘环回 GPMC_CLK 后进行重定时。 这有助于满足时序要求。

    =-=-
    问题:是否有任何方法将 GPIO6_16.clkout1用作 GPMC_clk、即它是否在持续运行时驱动 GPMC 事务?

    GPIO6_16.clkout1可用作 GPMC_CLK 的持续运行副本、但不能用于锁存总线中的数据。 PAD-loopback GPMC_CLK (不是自由运行)是用于锁存总线数据的唯一可用时钟。 但数据表提供了这些时钟之间的偏移(延迟)。 在计时结束期间、必须考虑该延迟范围、以确保相对于 GPMC_CLK 满足时序要求。 说明了另一种方法、当使用 GPIO6_16.clkout1启动数据时、必须存在足够的裕度、以确保数据可以使用 GPMC_CLK 锁存。

    请参阅数据表表7-26中的 F23 TD (CLK-GPIO)延迟时间、GPMC_clk 转换至 GPIO6_16.clkout1转换。 GPMC/NOR 闪存接口开关特性-同步模式-默认值。

    希望这对您有所帮助、
    标记

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

    Mark、

    感谢您的全面回答。 澄清后、GPMC_clk:引脚 P7还允许输出 clkout1、如果配置为执行该操作、则该值可能与 GPIO6_16.clkout1上显示的值相同。 如果 FPGA 端正确考虑了 GPMC_clk 和 clkout1之间的偏差-您认为接口可以与配置的引脚多路复用器配合使用吗?这样 P7上就会出现 clkout1信号(而不是 GPMC_clk)并用作 GPMC_clk?

    谢谢
    Michael

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

    虽然我同意与 P7相同的自由运行 clkout1具有引脚多路复用功能、但我不知道发布的延迟对此焊球是否有效。 我将不得不问。 我有疑问-见下文。

    由于数据表专门指定了 GPIO6_16.clkout1、我倾向于相信表7-26和7-28中公布的延迟是专门从焊球 P7处的 GPMC_CLK 到焊球 F21处的 clkout1、并附带以下注意事项: (13) GPIO6_16编程为 MUXMODE=9 (clkout1)、CM_CLKSEL_CLKOUTMUX1编程为7 (CORE_DPLL_OUT_DCLK)、CM_CLKSEL_CORE_DPLL_OUT_CLK_CLKOUTMUX 编程为1。

    通过使用单独的焊球、我们(和客户)可以验证这些时钟之间的偏差。 但是、如果两个时钟共享同一个球、则很难测量偏差(必须在测量之间切换多路复用模式)。

    但是、一旦时序分析考虑了 GPMC_CLK 和 CLKOUT1之间的偏差、CLKOUT1就可以用于数据传输。

    希望这对您有所帮助、
    标记
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Mark、您好!

    我也一直在研究它、我最大的问题是 GPMC_clk 和 GPIO6_16.clkout1之间的偏差范围可能在1.2到6.1ns 之间(表7-26中的 F23间隔)。 该范围是否代表器件之间的可变性? 使用寿命和温度范围内? 根据您的评论,似乎一旦测量了偏差,就可以安全使用,但如果(并将其变为极端)在使用3年后,偏差从2ns 变为5ns,则可能会开始导致 IO 错误,对吧? 这是正确的解释、还是我缺少了什么?

    谢谢

    Michael

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

    是的、数据表范围考虑了器件之间允许的工艺、电压和温度偏差。
    器件制造完成后、硅工艺是固定的、但电压表和温度可能会发生变化、从而导致不同的偏差。
    发布的延迟确实包括最坏情况下的不对称老化、但这是一个小因素。 有一些填充、因此我们能够避免表征("设计保证")。

    我认为、为了安全起见、客户需要确保在两个极端偏斜范围内都满足时序要求。 这可以通过减少输出延迟(用于读取)或设置时间要求(用于写入)、减少布线长度以及可能降低时钟频率来实现。

    我没有考虑过测量偏差和筛选不符合时间要求的器件。 让我问这是否可行。

    此致、
    标记