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.

[参考译文] AM67:如何使 AM67x PCIe 进入合规性测试模式

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1464190/am67-how-to-have-am67x-pcie-enter-compliance-test-mode

器件型号:AM67

工具/软件:

亲爱的 champ、  

客户需要在客户电路板上完成针对 PCIe 的 SI (信号完整性)测试。  

有关如何进入合规性模式/RX 环回模式以便客户 SI 团队可以进行信号测量的建议。 (眼图?)

Br、Rich  

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

    您好 Rich、

    由于 TI 美国度假、回复预计会延迟1-2天。

    此致、

    Josiitaa

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

    丰富、

    我们将就此回复您。

    背景知识、CCS 是否正常?

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

    Shreyas,

     

    通常、窗口是第一选择、但 AM67x 将从客户端运行 Linux。

    在测试实验室中、计算机可能运行 Windows 来控制 DUT、使其进入测试模式以进行合规性测试。  

    优先选择执行文件或应用程序。  

    UART 控制台和赞扬线路不太可取。  

    除非这是唯一的测试方法、否则不会考虑 CCS 安装和 JTAG。  

    这适用于 USB3和 PCIe 以及所有其他 SI 测试。   

    请提供 Linux 推荐行指令。  

    如果没有替代方案、CCS 是最终解决方案。  

    Br、Rich

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

    您好 Rich、

    要进入合规性模式、您可以参阅 PCIe 的 TRM 寄存器表并搜索 link_ctrl_status 寄存器 EC 位、从而使器件能够进入合规性状态。

    在 Linux 中、寄存器通常可以使用 devmem2写入。 我们的团队尚未验证如何通过 Linux 进入合规性模式、但应该能够使用"devmem2 0x0D0000F0 w 0x10"写入寄存器。 通常、眼图测量是通过裸机代码和/或使用 CCS 而不是 Linux 完成的。

    此致、

    Takuma

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

    解锁螺纹

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

    您好 Rich、

    您能否尝试用"devmem2 0x0D0000F0 w 0x11"而不是0x10?

    此致、

    Takuma

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

    Takuma  

    客户使用 devmem2 0x0D0000F0 w 0x11提供反馈、未在 PCIe 接口上看到任何输出。  

    除了此寄存器外、是否需要进行其他设置?  

    您是否可以提供裸机测试代码以供参考?  

    Br、Rich

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

    您好 Rich、

    就此与我们的硬件团队核实、了解我们是否有一些可以共享的代码。

    此致、

    Takuma

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

    Takuma  

    您是否获取代码以供参考?  

    此外、RC 和 EP 模式的设置是否会不同?  

    Br、Rich

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

    您好 Rich、

    我通过电子邮件发送了一个二进制文件。

    此致、

    Takuma

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

    Takuma。  

    客户不会在其电路板上保留 JTAG、也不希望收到 Linux 注释来进行此测试。  

    使用 devmem2 0x0D0000F0 w 0x11时、即使测试装置上有50 Ω 负载、也无法看到任何波形输出。  

    团队能否在内部使用 AM67x EVM 验证 Linux 测试程序?  

    Br、Rich  

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

    您好 Rich、

    在内部、仅通过裸机验证 PCIe 合规性。 我们没有 Linux 测试程序。

    此致、

    Takuma

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

    Takuma  

    我们是否可以提供裸机测试代码以供参考?  

    修改单个寄存器似乎不够、我们需要执行该程序才能进入测试模式。  

    团队是否可以创建供现场客户使用的 Linux 版本过程?  

    Br、Rich  

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

    您好 Rich、

    我可以查看一下、但由于我们的标准 SDK 不支持这种测试、请预计这会花费很长时间。

    我仍然要求访问源代码、因此还没有时间分享。 但根据源代码的复杂程度、它可能是一个1周的任务或几个月的任务。

    此致、

    Takuma

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

    Takuma  

    其他 TDA4客户如何进行 PCIe 合规性测试?  

    Linux 中是否有适用于 TDA4客户的说明?  

    Br、Rich

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

    您好 Rich、

    其他 TDA4客户如何进行 PCIe 合规性测试?

    客户 可以 使用裸机代码执行 PCIe 合规性测试。

    [引述 userid="9853" url="~/support/processors-group/processors/f/processors-forum/1464190/am67-how-to-have-am67x-pcie-enter-compliance-test-mode/5741797 #5741797"]

    Linux 中是否有适用于 TDA4客户的说明?  

    [/报价]

    没有、Linux 中没有指令。

    另一方面、我确实看到您的 AM64有一个不同的主题、在这里提出了一个类似的问题: https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1486766/am6442-how-to-enter-pcie-compliance-test-mode-on-am64x

    ^您是否能够对此进行测试? AM64和 AM67之间的串行器/解串器和 PCIe 控制器应相似。 如果此 AM64过程正常工作、则同样适用于 AM67。  

    此致、

    Takuma

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

    Takuma  

    否、AM64x POST 也提到要设置相同的寄存器位、但也不起作用。  

    我们确实需要一种初始 PCIe 合规性测试的方法、因为客户电路板上没有保留 JTAG。  

    如果 Linux 或控制台版本起作用、我们可以尝试使用 TI EVM。  

    考虑到裸机测试代码、我们能否创建一个可以从 SD 卡运行测试代码的文件? 客户通常会保留 SD 卡用于软件开发。

    Br、Rich    

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

    您好 Rich、

    我一直在研究源代码、到目前为止、转换为 Linux 命令看起来会有点复杂。 我可以再花两天时间来看看它移植的可行性有多大?

    考虑一下裸机测试代码、我们能否创建一个可以从 SD 卡运行测试代码的文件? 客户通常会预留 SD 卡用于软件开发。

    裸机测试代码在 EVM 上以仿真模式运行、而 Linux 以正常模式运行、因此我认为不能按原样使用裸机二进制文件。 它使用 PDK 中的一些特定于 R5的库、因此不能针对 A53内核进行轻松编译。

    此致、

    Takuma

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

    您好 Rich、  

    这需要再两天。 无论如何、如果您/客户也想查看源代码、我会通过电子邮件发送源代码。

    此致、

    Takuma

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

    Takuma  

    好的、请。 让我们看看测试的可能性有多大。  

    Br、Rich

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

    Takuma  

    我检查了源代码、但在项目中找不到建议。  

    您是否幸运地使用 Linux 将代码转换为 Cortex A?  

    Br、Rich

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

    您好 Rich、

    入口点是 SERDES_diag_test_main.c 中的 main ()、它 在 SERDES_diag_test.c 中调用 Serdes_Example_()

    到目前为止、转换为 Linux 并不幸运。 我当时尝试通过引用代码和寄存器 Excel 工作表来进行转换、但在短时间内有太多的寄存器需要查看。 我以为一个星期可能就足够了,但它希望在一个月或更长的范围内转变。  

    此致、

    Takuma

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

    Takuma  

    根据我们通过电子邮件讨论的内容、此测试的最后一次更新可以参考另一个有关 AM64x 的主题、我们希望找到一种简单的解决方案、客户可以进行 TX 模式测试。 SD 卡加载程序或 Linux 中的脚本是可行的。   

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1486766/am6442-how-to-enter-pcie-compliance-test-mode-on-am64x/5780274#5780274

    Br、Rich

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

    您好 Rich、

    我在内部与另一位同事进行了交谈、似乎参加合规性测试比预期更简单。

    • 无需其他软件。  无需对任何寄存器进行编程
    • 要进入合规模式:
      • 接收器线路上不得有任何活动
      • 发送线路上必须有阻抗
      • ^要实现上述两点、有一个 PCIe 卡可让您连接到示波器、该示波器有一个按钮可循环使用不同的 PCIe 版本速度和去加重配置。 我想您可能已经有了这个
      • 当按照 RX/TX 的上述状态启动链路训练时、当 SoC 配置为 RC 时、应进入合规模式
    • 我们过去发送的示例需要 BERT 来生成信号

    此致、

    Takuma

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

    Takuma  

    我在客户实验室进行 PCIe 合规性测试、然后将设置图片发送给了您。  

    有一个 PCIe 卡(调用测试装置)将所有信号连接回示波器。  

    示波器将测量来自测试装置的信号。 他们使用了另一个系统并为 DUT 加电、我在示波器上看到了波形和测试图形。  

    连接我们的器件时会显示任何输出、然后我们上电并运行 Linux、根本不会在示波器上看到任何输出。  

    我通过 JTAG 尝试了团队的 CCS 二进制文件、它确实会在 R5上运行测试程序、以将 AM67x PCIe 置于 PMA 隔离中、但在示波器上仍然看不到输出。   

    您说过了  

    • 无需其他软件。  无需对任何寄存器进行编程  

    在 AM67x 上运行哪些软件? 如何进入合规性模式?  

    对于您发送的示例二进制文件需要 BERT、我们是否有另一个示例二进制文件可以执行 TX 模式测试(无 BERT)? 这用于 CCS 和 JTAG。

    • 当按照 RX/TX 的上述状态启动链路训练时、当 SoC 配置为 RC 时、应进入合规模式
    • 我们过去发送的示例需要 BERT 来生成信号

    如果考虑使用 Linux、我们需要在 Linux 中将 PCIe 控制器配置为 RC 模式、何时以及如何将 PCIe 置于合规性模式? 要运行什么软件?  

    Br、Rich

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

    您好 Rich、

    Kyle (我们的硬件应用团队经理)在内部发送了一封电子邮件。 当前最高优先级是 USB 上的另一个线程、Shreyas 将通过一些实验进行响应。 下一个优先级是 PCIe 的该线程。

    对于 PCIe、我们正在尝试获取与您发送图片所示硬件设置类似的硬件设置。

    至于您的问题:

    • 这应该适用于 Linux
    • 如果在 RX 上未检测到任何活动并且 TX 被终止、则 PCIe 应在链路训练期间自动进入合规性模式

    我们正在努力在最后验证这一点

    此致、

    Takuma

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

    Takuma  

    感谢所做的在没有 BERT 的情况下验证 TX 模式测试的布置。  

    我将 TI EVM 与预构建的 wic 映像一起使用、该映像将在 RC 模式下设置 PCIe。  

    请告诉我在链路训练期间可以自动进入合规性模式的步骤。 这就是 PCIe 专家告诉我的情况。  

    Br、Rich  

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

    您好 Rich、

    好消息、但我们能够验证我们是否可以在没有 BERT 的情况下在 TI EVM 上进入合规性模式。

    使用的软件:

    使用的硬件:

    • CLB (合规性负载板)
    • Teledyne LeCroy LabMaster 10 Zi-A 示波器(高频示波器)

    步骤:

    按如下所示将 CLB 的 TX 通道0连接到示波器

    2. 将默认 Linux 映像刷写到 SD 卡并启动。 不需要额外的补丁或命令。 只需启动默认 Linux。 登录是可选的。

    3.完成。 应该 在示波器上观察到一个信号

    日志:

    如果没有信号、我们收集了一些日志、您可以交叉检查这些日志以查看是否存在任何差异。

    lspci -vvv (查看 PCIe 控制器是否已启动)

    e2e.ti.com/.../lspci_5F00_working_5F00_compliance.txt

    dmesg (查看 PCIe 或 SERDES 引导期间是否有任何错误)

    e2e.ti.com/.../dmesg_5F00_working_5F00_compliance.txt

    uname -A (检查刷写的 Linux 版本)

    e2e.ti.com/.../uname_5F00_working_5F00_compliance.txt

    此致、

    Takuma

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

    作为 si示 例、我们还尝试了在不同的合规性模式之间切换。 我们成功地在 Gen1速度、Gen2速度和 Gen3速度之间切换。

    但是、这需要额外的 硬件配置步骤、即将  CLB 上的 COMP 切换信号连接到 RX0、如下所示:

    CLB 上有一个开关、可按下该开关在不同速度之间切换。

    如果仅测试 PCIe Gen1速度、则不需要此功能、即使没有这些连接、TX 线路也应该发出 Gen1速度信号。

    此致、

    Takuma

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

    谢谢 Takuma。

    使用 Linux SDK、J7AEN EVM 以及 PCIe 合规性负载板为第1代、第2代和第3代连接了示波器捕获、以确保 PCIe 合规性

    第1代

    第2代

    第3代