工具/软件:
亲爱的 champ、
客户需要在客户电路板上完成针对 PCIe 的 SI (信号完整性)测试。
有关如何进入合规性模式/RX 环回模式以便客户 SI 团队可以进行信号测量的建议。 (眼图?)
Br、Rich
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.
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、
其他 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、
入口点是 SERDES_diag_test_main.c 中的 main ()、它 在 SERDES_diag_test.c 中调用 Serdes_Example_()
到目前为止、转换为 Linux 并不幸运。 我当时尝试通过引用代码和寄存器 Excel 工作表来进行转换、但在短时间内有太多的寄存器需要查看。 我以为一个星期可能就足够了,但它希望在一个月或更长的范围内转变。
此致、
Takuma
Takuma
根据我们通过电子邮件讨论的内容、此测试的最后一次更新可以参考另一个有关 AM64x 的主题、我们希望找到一种简单的解决方案、客户可以进行 TX 模式测试。 SD 卡加载程序或 Linux 中的脚本是可行的。
Br、Rich
您好 Rich、
我在内部与另一位同事进行了交谈、似乎参加合规性测试比预期更简单。
此致、
Takuma
Takuma
我在客户实验室进行 PCIe 合规性测试、然后将设置图片发送给了您。
有一个 PCIe 卡(调用测试装置)将所有信号连接回示波器。
示波器将测量来自测试装置的信号。 他们使用了另一个系统并为 DUT 加电、我在示波器上看到了波形和测试图形。
连接我们的器件时会显示任何输出、然后我们上电并运行 Linux、根本不会在示波器上看到任何输出。
我通过 JTAG 尝试了团队的 CCS 二进制文件、它确实会在 R5上运行测试程序、以将 AM67x PCIe 置于 PMA 隔离中、但在示波器上仍然看不到输出。
您说过了
在 AM67x 上运行哪些软件? 如何进入合规性模式?
对于您发送的示例二进制文件需要 BERT、我们是否有另一个示例二进制文件可以执行 TX 模式测试(无 BERT)? 这用于 CCS 和 JTAG。
如果考虑使用 Linux、我们需要在 Linux 中将 PCIe 控制器配置为 RC 模式、何时以及如何将 PCIe 置于合规性模式? 要运行什么软件?
Br、Rich
您好 Rich、
Kyle (我们的硬件应用团队经理)在内部发送了一封电子邮件。 当前最高优先级是 USB 上的另一个线程、Shreyas 将通过一些实验进行响应。 下一个优先级是 PCIe 的该线程。
对于 PCIe、我们正在尝试获取与您发送图片所示硬件设置类似的硬件设置。
至于您的问题:
我们正在努力在最后验证这一点
此致、
Takuma
您好 Rich、
好消息、但我们能够验证我们是否可以在没有 BERT 的情况下在 TI EVM 上进入合规性模式。
使用的软件:
使用的硬件:
步骤:
按如下所示将 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