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.

[参考译文] AM3359:在断电期间出现奇怪的 GPMC 行为

Guru**** 2583365 points
Other Parts Discussed in Thread: SYSCONFIG, AM3359

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/622975/am3359-strange-gpmc-behaviour-during-power-down

器件型号:AM3359
Thread 中讨论的其他器件:SysConfig

我们在 GPMC 接口上将 AM335x 与 x8 NAND 和 x16 NOR 器件搭配使用。

只有在断电的情况下、GPMC 控制输出的行为才奇怪。

我们曾经尝试过的 TExaS 板 TMDXICE3359断电、

虽然 TI 电路板不包含 NAND、但相关内容仅与处理器的输出同义。

GPMC 控制信号很重要(见附图)

- GPMC_CSn0芯片选择 NOR 器件(在电阻器 R125处测量)

- GPMC_WRN 写入使能(在跳线 J4上测量)

-热复位 RESETIN_OUT (在开关 S1处测量)

 

错误描述:

一旦电源电压下降、PMIC (TPS65910A3)就会将 AM335x 切换至复位状态。  nPORZ=low --> SYS_WARMRESETn 跟随 nPORZ。 一切都和预期的一样

但接下来会发生奇怪的情况、即芯片选择、写入使能以及读取使能、推至低电平。

根据德州仪器 TMDXICE3359接口、芯片选择具有一个10k 上拉电阻器、可以在充电曲线上很好地看到该电阻器。

可写操作没有任何实际推挽输出。

为什么复位状态为高电平时 GPMC 控制输出变为低电平?

我们的问题是、在这种情况下、器件上的低片上选择和写入使能会导致 NOR 器件上的不必要写入访问。

此外、通过 JTAG Lauterbach 手动覆盖、配置了 GPMC 控制输出到 GPIO 输出的"推挽高电平"、

一旦我们执行冷复位、即使处理器的+ 3V3 IO 电源存在、输出也会变为"低电平"。

 

您能在这里为我们提供帮助吗?

e2e.ti.com/.../8156.tmdxice3359_5F00_sch_5F00_3h0013_5F00_v2_5F00_1a.pdf

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

    根据数据表表表表4-1。 引脚属性我还希望 GPMC_CSn0、GPMC_Wen 和 GPMC_oen_Ren 在复位期间被拉至高电平、而不是被推至低电平然后被拉至高电平...
    值得注意的是、复位后、这些引脚被引脚多路复用为 GPIO、并且 GPIO 寄存器的复位状态应该将它们配置为输入、但这一点也很重要、因为器件显然仍处于复位状态。

    在示波器屏幕截图中、V3_3D 的电压大约为2.3V。 GPMC_CSn0、GPMC_Wen 和 GPMC_oen_Ren 由 VDDSHV1供电、VDSHV1由 TMDXICE3359板上的 VAUX2供电。
    当您看到这些信号推低时、VAUX2看起来是什么样子的?
    当这些引脚处于复位状态时、我认为应该弱地将它们上拉至 VDDSHV1。 当然、GPMC_CSn0也有一个到 V3_3D 的外部拉电流、这可以解释其更快的充电速率。

    但是、我还无法解释为什么 SYS_WARMRESETn 变低时电压会下降...

    让我在内部提问。 请检查 VAUX2电源。

    =-=-=-
    v6 GPMC_CSn0 @ R125上拉至 V3_3D

    muxmode0为 GPMC_CSn0
    焊球复位状态:H
    焊球复位 REL。 状态:H
    复位 REL。 模式[8]:7.
    多路复用模式7:GPIO1_29
    ZCZ 电源:VDDSHV1 = VAUX2

    =-=-=-
    U6 GPMC_WEN @ J4

    muxmode0为 GPMC_Wen
    焊球复位状态:H
    焊球复位 REL。 状态:H
    复位 REL。 模式[8]:7.
    多路复用模式7:GPIO2_4
    ZCZ 电源:VDDSHV1 = VAUX2

    =-=-=-
    T7 GPMC_oen_Ren @ J4
    muxmode0为 GPMC_oen_ren
    焊球复位状态:H
    焊球复位 REL。 状态:H
    复位 REL。 模式[8]:7.
    多路复用模式7:GPIO2_3
    ZCZ 电源:VDDSHV1 = VAUX2

    =-=-=-
    A10 WARMRSTn @ S1
    muxmode0为 nRESETIN_OUT
    焊球复位状态:0
    焊球复位 REL。 状态:0 (pu)(11)
    复位 REL。 模式[8]:7.
    多路复用模式7:GPIO2_3
    ZCZ 电源:VDDSHV6 = VAUX2

    (11) 0 (PU)表示该端子最初根据 AM335x 技术参考手册中的描述为低电平。 但是、它也施加了弱内部上拉电阻。


    ==========================================-
    相关说明

    6.焊球复位状态:当低电平有效 PWRONRSTn 端子为低电平时端子的状态。
    –0:缓冲器驱动 VOL (下拉或上拉电阻器未激活)
    0 (PD):缓冲器使用有源下拉电阻器驱动 VOL
    –1:缓冲器驱动 VOH (下拉或上拉电阻器未激活)
    1 (pu):缓冲器使用一个有源上拉电阻器来驱动 VOH
    –Z:高阻抗
    –L:具有有源下拉电阻器的高阻抗
    –H:带有有源上拉电阻器的高阻抗

    7.焊球复位 REL。 状态:低电平有效 PWRONRSTn 端子从低电平转换为高电平后的端子状态。
    –0:缓冲器驱动 VOL (下拉或上拉电阻器未激活)
    0 (PD):缓冲器使用有源下拉电阻器驱动 VOL
    –1:缓冲器驱动 VOH (下拉或上拉电阻器未激活)
    1 (pu):缓冲器使用一个有源上拉电阻器来驱动 VOH
    –Z:高阻抗。
    –L:具有有源下拉电阻器的高阻抗
    –H:带有有源上拉电阻器的高阻抗

    8.复位 REL。 MODE:该模式在低电平有效 PWRONRSTn 端子从低电平转换为高电平后自动配置。

    ==================-
    正在检查 TRM 中 GPIO 寄存器的复位状态...

    复位后 GPIO_OE = FFFFFFFFh
    1h =相应的 GPIO 端口被配置为一个输入。

    GPIO_DATAOUT = 0h、复位后-如果启用输出、则输出为低电平
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    以下是客户的回答:

    问:VAUX2电源怎么样?

    VAUX2从+ 3V3缓慢下降、直到 PMIC 向处理器发出复位(nPORz)。

    请参阅图片 TMDXICE3359_VAUX3.png

    在使用 WMRESET 时、信号写入使能和芯片选择很有趣。

    请参阅图片 TMDXICE3359_SYS-WARMRESETn.png

    然后、我们在设计上进行的测量也可以清楚地识别信号入侵。

    请参阅图像 Target_SYS-WARMRESETn.png

    遗憾的是、问题仍然存在、在复位情况下会发生什么情况?

    为什么 GPMC 信号变为低电平?

    以下是参考的示波器图:

    VAUX3:

    SysWARM 复位:

    目标热复位:

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

    客户仍然需要回答。 否则、他必须决定开发硬件变通办法。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、DJ-NG、

    所有这些示波器截图都是从 AM3359ICE 电路板还是从客户电路板上拍摄的? 我正在努力获取 AM3359ICE 板以重现这些波形。

    在 VAUX3.png 示波器屏幕截图中、蓝色波形标记为 V3-3D (VAUX2)。 V3_3D (来自 U32 TPS78633)还是 VAUX2 (来自 U22 TPS65910A3)?

    一个问题是、在 AM3359ICE 电路板上、来自 AM335x 器件的 GPMC 信号由 VAUX2 (VDDSHV1)供电、但 NOR 闪存和 CSN 上拉电阻器由 V3_3D 供电。 这不是一个好做法、因为不同电源轨之间可能存在电流路径。 客户电路板是否还为存储器和 VDDSHV1使用两个单独的电源轨?
    当每个电源轨上的电容可能不同、从而导致不同的放电速率时、该问题可能在断电期间更加明显。 也许 GPMC 控制信号会变低、因为 VAUX2提供的 IO 缓冲器已在 VUX2放电时崩溃... 然后、可以将信号拉向 V3_3D... 这至少对于 CSn 来说是合理的、因为它有一个到 V3_3D 的外部上拉电阻。 但是、它没有解释为什么 Wen 在复位后似乎重新充电、因为 Wen (在 AM3359ICE 板上)上没有上拉电阻、并且它是存储器的输入... CSn 和 Wn 在复位后似乎缓慢充电。 在复位后(并探测 V3_3D 和 VAUX2)可以更长时间地观察这些信号、以查看 GPMC 信号被拉至哪个电源轨。 我们还可以通过将存储器电源和片选上拉电阻蓝线连接到 VAUX2而不是 V3_3D 进行实验、以查看这是否会改变复位时观察到的行为。

    我们还想了解 PORz 与 SYS-WARMRESETn 的关系。 您能否确认您的所有示波器照片都显示了 WARMRESETn? 该信号应在 PORz 变为低电平后不久变为低电平。

    在其他外设的实例中、在 pinmux 之前到达外设的复位(来自 PORz)和系统其余部分之间会发生意外竞争情况。 与完全系统复位相比、仅在外设复位后、引脚可能会进入不同状态。 需要注意的是、数据表中提供的复位状态只能在加电期间应用、在断电期间无法保证... 通过向 GPMC_SysConfig 寄存器的 SOFTRESET 写入"1"、我们应该能够通过仅对 GPMC 外设应用本地复位来重现这种情况。 如果是这种情况、那么我们还可以在复位期间监控除 CSn0之外的任何 CSn。 复位后、只有 CSn0有效。 请参阅 GPMC_CONFIG7_0 CSVALID 位:芯片选择使能(CS[0]的复位值为1 (低电平有效)、CS[1]的复位值为0至 CS[5](低电平有效))。

    让我首先找到 AM3359ICE 电路板、并尝试重现其中的一些信号。 请尝试同时查找我的问题的答案。

    此致、
    标记

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

    答案如下:

    - AM3359*。png 已从 AM3359ICE 板获取两个范围、名为 TMDXICE3359*。 当然、示波器 target*。png 是从我们自己的板上获取的。

    - 标记为 V3-3D (VAUX2)的蓝色波形是来自 U32 TPS78633的 V3-3D

    - 客户对所有3V3相关组件使用单个3V3电源轨

    - TMDXICE3359*。png 显示了 Warmreset 行为。 由于客户主要使用 nPORZ 进行系统复位、nWarmreset 作为已连接组件的复位路径、因此 target*.png 显示了 nPORZ
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、DJ-NG、

    感谢您的回答。 很好的一点是、客户对存储器和处理器使用单个电源轨(与 ICE 板不同)。

    深入了解 PORz RESET 信号具有不同的引脚多路复用逻辑和 GPMC 外设路径的理论、我通过对 GPMC 外设应用本地软件复位来仿真在引脚多路复用逻辑之前、GPMC 外设将复位到达的情况。

    在通过 GPMC_SysConfig 寄存器的 SOFTRESET 位应用软复位后、我能够捕获 CSn 驱动为低电平。 请参阅下面的示波器屏幕截图。

    我认为 CSn0在本地软复位期间(或释放复位后)可能会驱动为低电平、因为 GPMC 寄存器的复位状态会在 GPMC_FCLK 周期0激活 GPMC_CSn0。 我想看看其他 CSn 信号(不是 CSn0)会发生什么情况、因为它们在复位时不会被激活。

    GPMC_CONFIG7_0寄存器中 CSVALID 位的说明指出、CS[0]的芯片选择使能复位值为1。 且1h = CS (低电平有效)被启用。

    CSONTIME、CSRDOFFTIME 和 CSRROFFTIME 在 GPMC_CONFIG2_0寄存器中全部复位为0h、因此 CSN0应在 FCLK 周期0时变为低电平、但它也应在 FCLK 周期0时变为高电平... 如果 ontime = OFFTIME、我还不确定 IP 如何反应。

    我们还认为、当复位信号通过引脚多路复用逻辑传播时、引脚上可能会出现一些不确定性。 它使用异步逻辑、当引脚多路复用器寄存器转换到其复位状态时、可能会经历意外的中间状态。

    对于客户来说、在第一个电源轨开始下降时在处理器和启动的存储器之间实施一些外部隔离(在断电期间不会对任何非故障安全 IO 反向供电)可能是相当谨慎的。 这可能很棘手、但旨在防止不必要的信号破坏存储器。

    如果我想了解有关复位时驱动低电平的 GPMC 信号的更多信息、我将告诉您。

    此致、
    标记