Multi Source Translation Content

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Multi Source Translation Content

ディスカッション

ソート順:
FreeMASTER Plugin Config Failure zuozuo_0-1767950109136.png I was able to successfully conduct the CAN communication connection test in Figure 1, but after clicking OK, the fault as shown in Figure 2 occurred. How can I solve this problem? zuozuo_1-1767950217655.png In addition, I have used mbdt for freemaster development on S32K344, but I have not succeeded in polling mode CAN communication. Is it not supported? If it is supported, could you provide me with a sample, preferably for the S32K3 series Re: FreeMASTER Plugin Config Failure Now I have also implemented the polling mode and tested the connection of the can based freemaster. The effect is the same as the above picture. I will continue to seek help Re: FreeMASTER Plugin Config Failure Hi @zuozuo, Are you using the MATLAB or S32 Design Studio as your primary development environment ? In the later case - did you try the example applications that come with FreeMASTER Driver Update site ? In case you are using MATLAB, a dedicated team is handling the MatLAB Toolbox and I will move your query to MBDT community space. Re: FreeMASTER Plugin Config Failure quickly ran from another computer with an earlier version of the pc side software and it worked fine. so i manually copied the connection string to the Option field and it worked. so the issue is either on the 1.16.0 or the PC admin previlage..  Re: FreeMASTER Plugin Config Failure Hello, one thing to try is to re-register the CAN communication plug-in in your system. Please close the FreeMASTER, and navigate to installation location. Then run the register.bat "As administrator". See more details in one of the earlier posts in this forum. MichalH_0-1768547086259.png Regards, Michal Re: FreeMASTER Plugin Config Failure Hi, Michal, thanks for the hint but it does not seem to work. by pasting a plain text string i could open the port. the computer that i had an older version of Freemaster 3.2 no longer works after i upgraded it to the latest version. i ran the register.bat as admin but the same error message appears. now two computers give me the same error. Re: FreeMASTER Plugin Config Failure Hello, according to the method shown in your picture, I am using the freemaster3.2 version of the host computer. I have tried on both a Windows 11 and a Windows 10 computer, but neither worked, Re: FreeMASTER Plugin Config Failure I use the mbed toolchain to generate the underlying driver code for freemaster. Currently, both polling mode and interrupt mode can successfully connect with the host computer, and there are no issues with the slave computer. The only problem is that the freemaster host computer cannot save its own configuration options in the freemaster host computer project。 Re: FreeMASTER Plugin Config Failure I use the matlab toolchain to generate the underlying driver code for freemaster. Currently, both polling mode and interrupt mode can successfully connect with the host computer, and there are no issues with the slave computer. The only problem is that the freemaster host computer cannot save its own configuration options in the freemaster host computer project. Re: FreeMASTER Plugin Config Failure Hello the CAN plugin version 1.16.0 (in FreeMASTER 3.2.6.3) indeed adds the CAN-FD support for ZLG and some other vendors. It also adds support for the new ZLG ZCAN library. After  the registrer.bat has been run, we can be sure the plug-in is correctly registered in the system.   I cannot replicate the issues you are facing. The connection string for the ZCAN devices appears normally in my  case:  drv=ZCAN;port=1;bitrate=500000;cmdid=0x7aa;rspid=0x7aa;tmo=500 MichalH_1-1768808840834.png Please try the following: Paste the ZCAN string to the Options dialog manually and then open the plug-in configuration. Then close it without making any changes. Will it still show the error? Just as an experiment, try to enable the CAN-FD mode for the USBCANFD_200U device and press OK. Try to select another CAN driver, for example IXXAT, even if you do not have any physical device, then press OK. Please let me know if it shows the error in all 3 cases. Thanks, Michal Re: FreeMASTER Plugin Config Failure Hello zuozuo, I am facing the same issue. can you please share any example model with me or just tell me how I can resolve the issue. I also noticed one thing, when there is only one CAN instance with single TX and Rx CAN object ID its working, but when we add more can instances each having tx CAN objectId and rx CAN objectId its not working, if you have solution please share with me. Thanks. Re: FreeMASTER Plugin Config Failure Thank you for your reply. I tested the above three steps, and each of them would report the error: "The plugin configuration dialog failed. Try to specify the connectstring manually". Additionally, I have run register.bat in administrator mode. Re: FreeMASTER Plugin Config Failure Hello! 1. I manually added the information you provided to the command bar, then clicked "configure", and after entering, I clicked "ok", everything was normal. 2. Since I manually added the command information you provided correctly, everything has been normal. Whether I check or uncheck "canfd" is normal, even if I clear the command line, reconfigure it, and then click "ok", everything is still normal. 3. I use Kvaser, and everything is normal Re: FreeMASTER Plugin Config Failure I am using PEAK CAN and still face this issue. Can you share simulink model. My S32DS studio example is working in Design Studio. Re: FreeMASTER Plugin Config Failure I use kvaser for CAN connection and testing, and everything works successfully; however, when I use the zlg driver, the aforementioned issues occur. Re: FreeMASTER Plugin Config Failure Hello, we are trying to analyze and resolve the issue, but unfortunately we were not able to replicate it on any of our test platforms. Please use the manually-edited connect string until this is fixed. One question: when ZLG/ZCAN driver is selected, does the error appear when you press  the CANCEL button in the plug-in dialog? Thanks, Michal Re: FreeMASTER Plugin Config Failure I am using the PEAK CAN Re: FreeMASTER Plugin Config Failure Hello,  we have identified the problem in FreeMASTER CAN plug-in and we are working on a fix. It appeared the plug-in has internally depended on Kvaser CAN driver and was not working correctly when Kvaser software was missing. It appears the Kvaser files are required even if using ZLG or any other CAN interface. Before the fix is released in the upcoming FreeMASTER 3.2.7, a quick workaround is to install the latest Kvaser driver pack to your Windows system. You can download the Kvaser drivers here. Thanks to all of you who had reported the issue and described the symptoms. Please reply to this message if installing the latest Kvaser drivers does not help to resolve the issue. Thanks, Michal Re: FreeMASTER Plugin Config Failure Yes,It's useful. Re: FreeMASTER Plugin Config Failure Hello, theoretically yes, you may need to install Kvaser drivers even in case you use a PEAK device. The dependency on some Kvaser files causes the Plug-in configuration dialog to fail when creating a connection string regardless of the device selected. It may happen by some lucky coincidence that the issue will not appear with PEAK or other devices, but if it does, installing the Kvaser driver shall always help. This issue will be fixed in future FreeMASTER version. Regards, Michal Re: FreeMASTER Plugin Config Failure Even for PEAK-CAN we need to do this? Re: FreeMASTER Plugin Config Failure Note that the version 3.2.7 has been released. The issue discussed in this thread shall now be fixed. Regards, Michal
記事全体を表示
S32G399A 自定义板在吹掉 BOOT_CFG1 和 FUSE_SEL 后被砖块砸了 你好 我有一块带有 QSPI NOR 闪存的自定义 S32G399A 板(标准连接,类似于 RDB3 原理图)。 我想强制从 QSPI NOR 启动,所以我按照 E VB 上 QSPI_BOOT_CFG 的 AN13456(S32G3 启动流程)所附的 Excel 表中的建议值和参考手册中的fuse map,将 Ocotp_Ip_Example_S32G399A_M7 (来自 RTD)改编为 熔断启动熔丝 。这篇文章附有代码片段和我参考的文档! 每次写入 BOOT_CFG 后,我都立即使用 Ocotp_Ip_ReadEFuse()验证是否成功,结果发现值被正确更新(0x2000000C 和 0x00000010)。 然而,现在 主板无法从 NOR 启动。 串行下载模式不再响应(" 无法在 S32 Flash Tool 上与目标设备建立通信 ")。 JTAG 调试器 (PE Micro) 报告"GDB 服务器无法与目标处理器建立连接" 。 您能帮忙找出根本原因吗? Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好@wael_b、 感谢您联系我们并详细描述了您的问题。就我所见,您打算配置以下内容: 在 BOOT_CFG1 中: alejandro_e_0-1767828044759.png alejandro_e_1-1767828048217.png 在 BOOT_CGF2 中,FUSE_SEL 位,因此 RCON 值取自熔丝,而不是从芯片外部的串行/并行值中获取。请告诉我是否正确理解了您的配置。 当您尝试以串行模式连接(用于闪存和调试)时,是否使用了这种配置?请注意,BOOT_MOD1 和 BOOT_MOD2 的值与 FUSE_SEL 为 0 时的效果不同。 alejandro_e_2-1767828939324.png 请告诉我您使用的 BOOT_MOD 1 和 2 的值。 谢谢! Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好,感谢您的答复! 我确认使用了正确的 BootMod,FUSE_SEL = 1! 经过检查,我们发现 BOOT_CFG1 的位 15(这是 启动 excel 中的 " 不在乎 " 字段)正在配置 XOSC 模式(在配置熔丝后,我们丢失了 MCU 的 XTAL 和 EXTAL 引脚上的 XOSC 时钟信号) 因此,在我们当前的熔丝配置中,由于位 15 为零,我们处于显然不支持的 XOSC 差分旁路模式(查看随附的屏幕截图)) 你确认在我们的例子中 Bit 15 不 应该为零吗? 请支持我们进行第二次配置,因为我们还有一块没有配置熔丝的工作板! 谢谢。 Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好@wael_b、 问题在于,S32G_Bootconfigwords_EVB.xlsx 中显示的配置是针对 EVB/RDB 板的,而且,它本应在 RCON 位中进行配置,这些位是可重新配置的。正如你在 excel 表单底部看到的那样,对于不在乎的部分,最好查看参考手册: alejandro_e_0-1767908953800.png 例如,如果你检查 SD_BOOT_CFG,你会看到很多 " 不在乎 " 位,但是 " 不起作用 " 特别针对 EVB/RDB 板中的 SD 配置,并不是这些位本身没有任何影响。 关于 AN13456 中提到的不支持的配置,我需要内部检查以了解更多细节。 作为参考,我在内部文档中找到了以下内容: ” BOOT_CFG1 的 XOSC BYPASS MODE 位用于选择 FXOSC 模块的外部时钟源模式。FXOSC 模块可从三种时钟源模式中选择一种作为输入。三种时钟源模式分别是晶体(元器件)模式、(外部)差分(时钟源输入)模式和(外部单端时钟源)旁路模式。当客户使用无源晶体(工作于晶体模式)或有源差分时钟振荡器(工作于差分模式)作为 FXOSC 输入时,应将 XOSC BYPASS MODE 设置为 0。 在这种情况下,如果没有其他进一步设置,FXOSC 默认将输入视为工作于晶体模式。 否则,如果客户使用单端数字时钟源(在 BYPASS 模式下工作)作为 FXOSC 输入,则应设置 XOSC BYPASS MODE 1。 ” 因此,BOOT_CFG1:15 的值取决于设计的配置方式。例如,使用 0 需要像在 RDB3 板中一样使用外部振荡器: alejandro_e_2-1767911418325.png 对于你没有熔断 S32G3 熔丝的板,我建议使用 RCON 启动来测试适合你设计的配置,正如你从 fuse map 表中看到的那样,确切的配置将取决于 QSPI 内存的类型以及振荡器的配置方式。 如果您需要更多支持,请告诉我。 Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好 alejandro_e 我正在和 @wael_b 在同一个板上工作,它说的是 excel 文件吗: XOSC 旁路模式选择:如果 XOSC 配置熔丝未熔断,则选择 XOSC 模式。 0- 差分 1- 晶体或单旁路模式 因此,当 BOOT_CFG[15] =0 时,它处于差分模式、 但如果 =1,则要么是晶体模式,要么是单旁路模式 我想知道是哪份文件说 BOOT_CFG[15] =0 可以与晶体正常工作? 在板外我们有与 EVK 相同的晶体,在设置 BOOT_CFG [15] =0 之后,时钟源消失了,所以我相信 MCU 在等待这种差模晶体而不是驱动被动晶体。如果我说错了,请指正。 haythemLtifi_0-1767937954503.png 同样不可能使用 RCON,我们只能用熔丝启动它。所以我希望你能向我们建议如何使用熔丝启动我们的板(它基于 evk 同一个闪光灯的水晶)。 Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 您好@alejandro_e, 感谢您的支持!根据您建议的配置,我们有两种情况: 情况 1: BOOT_CFG1 -> 0x2000800C: 第 29、15、3、2 位 = 1,其余为 0。 BOOT_CFG2 -> 0x17: 位 4、2、1、0 = 1,其余为 0。 在这种情况下,JTAG 可以正常工作(使用推荐的串行配置,FUSE_SEL = 1),但是当我们尝试在 S32FT 中上传目标和算法时,出现了一个错误: " 错误:无法与目标设备建立通信。" 另外,XTAL 没有显示任何信号! 这种行为是否与 " XOSC_GM_SEL:相关 XOSC 模式 " Bits 8 到 11 中的 GM Sel值 BOOT_CFG2 有关? 案例 2: 我们使用 BOOT_CFG1 在第二块板上进行了配置-> 0x2000800C 还有 BOOT_CFG2-> 0x0 F: 位 0,1,2,3 = 1 因为我们没有断开 FUSE _SEL 熔丝你认为这个 案例可以恢复吗? Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你可以在这里查看参考手册中关于 GM_SEL 的屏幕截图! Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好,@haythemLtifi和@wael_b、 很抱歉这么晚才回复,我终于收到了内部团队的信息,他们与我分享了以下内容: ” S32G3 不支持差分模式。我们建议客户使用晶体模式。 配置 Crystal 模式有两种方法: 当XOSC 配置 无效时,将XOSC BYPASS MODE SELECTION(XOSC 旁路模式选择)设为1 - 晶体模式。 当XOSC 配置 有效时,将XOSC MODE设置为11 - 晶体模式。 我们建议使用第二种配置,因为它能提供更高的稳定性。 “ XOSC 配置的有效性由 BOOT_CFG2[0]决定。 我还需要确认你的主板是否可以恢复。 Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好@wael_b、 下面是我的回答: 案例 1.对于晶体模式,应根据以下公式配置 GM_SEL: alejandro_e_0-1768496877959.png, 其中: gm:最小跨导值 ESR:等效串联电阻 f:晶体频率 C0: 晶体的寄生电容 C1: 晶体的额定负载电容 您还可以查看 S32G3 数据表 Rev4 中表 26 的一些示例: alejandro_e_1-1768498294702.png 我还检查了我们提供的示例项目中的配置。在这些数据上,我们使用1100b - 0.631×。 鉴于跨导是时钟信号的一种放大,使用 0 会导致芯片无法工作是合理的。我没有亲自测试过,所以如果更改 GM_SEL 的值对您的设置有任何影响,请告诉我。 对于案例 2。我的理解是,这将取决于 BOOT_CFG_LOCK 的值,如 fuse map 的 MISC 表所示: alejandro_e_2-1768498657315.png 理论上,如果锁定位为 00 或 01,您应该可以覆盖这些值。不过,我没有亲自做过测试,因此对其效果并不完全了解。 对于案例 1,你提到从串行启动是有效的,我假设在那个设置中 FXOSC 确实有输出信号,对吗? 在 QSPI 启动时,您在应用程序中使用的是 RTD 吗?还是你在使用完全自定义的软件? 谢谢! Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 您好,@haythemLtifi、 关于测试,我可以做,但现在不行,我下周再做。 我会让你们知道我从振荡器上看到了什么。 谢谢  Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好,@haythemLtifi、 您可以使用 S32DS 中的时钟视图修改该值: alejandro_e_0-1768510249934.png alejandro_e_1-1768510288170.png 更新代码后,更改应在以下文件中生效: alejandro_e_2-1768510756606.png 如《SW 启用指南》所述,在以该结构为参数运行 Clock_Ip_Init() 时,该更改将生效。 如果有帮助,请告诉我 Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好 、 很显然,我们相差 7 个小时,所以我想问你几个问题,明天 Wael 会重新回答你的其他问题: - 您提到的代码中的 gm 值是 0b1100 ,如何更改?是在时钟启动功能中吗? 或者我可以使用图形界面进行更改?我想将其设置为 0b1111 ,如何操作? 现在,当我测量 exTal 引脚上的晶体时,我看到的直流电压几乎在 800mv 左右,不知道晶体是否无法正常工作或者因为我没有使用有源探头,你能否在 EVK 上使用普通探头测量波形然后告诉我开启板后会看到什么?运行代码时 对于串行运行的板,当我们使用启动模式 0 和 1 选择串行时,我们会看到 Extal 的直流电压为 800 mv 差不多(它不是真正的信号波,但会振荡) Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好 @alejandro_e, 回复这个问题:" 在 QSPI 启动时,在你的应用程序中,你在使用 RTD 吗?还是你在使用完全自定义的软件?" = > 是的,我使用的是 RTD 示例,而不是自定义软件。 我有一些问题! -你能帮我理解启动过程文档中的这一部分吗?(参见随附的屏幕截图) -另外,是否有专用的.bin 可以下载到 或非 Flash 或 SD 卡启动中? - 我从 IVT 生成的 Siul_Dio_ToggleLed 应用程序大小为 5.3Mb,这有问题吗? Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好,@haythemLtifi、 感谢您提供的信息。说白了,在这个问题上,你不需要我再提供任何支持了,对吗? Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好、 我们发现了或非的问题,默认 bootROM 时钟为 30Mhz,在超时(500 毫秒)之前下载 S32G339A 的内存是不够的,我们取消了添加 QSPI 配置以将 bootROM 时钟提高到 200Mh 的选项,这就解决了问题。 感谢你的支持 Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好@wael_b、 感谢您提供的信息,并对迟复表示歉意。关于时钟测试,我会尽快进行,并与大家分享测试结果。 关于你最后的问题,没有专用的二进制文件可以下载到闪存或 SD 卡中,请记住,对于闪存,你需要在 0x0000 中对 IVT bin 进行编程,而对于 SD 卡,你需要在 0x1000 中对其进行编程。 关于二进制文件的大小,我刚刚用 S32G3 的 dio 示例做了一个快速的 IVT bin,它是 530M,大小应该不是问题。 也许我没有正确理解您的问题,如果我没有回答您的问题,请告诉我。 要测试二进制文件是否正确加载并由 bootROM 对其进行解析,你可以做的一件事是添加一个能开启板上的 LED 的 DCD,例如,请查看 S32G3 HSE 演示应用程序,任何版本都应该可以运行,例如在 0.2.51.0 版本中,你可以查看附录 11 部分。S32 DS — 生成 DCD 映像以开启 VDD_EFUSE 和系统 RAM 初始化,对于您的问题,相关部分是 VDD_EFUSE 步骤。如果你不熟悉,DCD 是一组非常简单的寄存器指令,你可以在程序开始执行之前添加,因此,如果你在添加 DCD 后看到板上的 LED 亮起,你可以确定你的二进制已正确加载并由 bootRoM 解析。 Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好,@haythemLtifi、 太好了,谢谢你告诉我。 如果您今后遇到任何问题,请创建一个新的帖子,我们将很乐意为您提供帮助。 顺祝商祺! Re: S32G399A Custom Board Bricked After Blowing BOOT_CFG1 and FUSE_SEL 你好 , 是的,我们很好,谢谢。
記事全体を表示
LPCXpresso 11U68 板:进入 ISP 模式时,它会显示为 USB 大容量存储器 我已经购买了新的 LPCXpresso 11U68 板,可以进入互联网服务提供商模式。但是在将其置于 ISP 模式后,它被检测为标题为 " CRP DISABLED " 的大容量存储设备。 我试着用其他驱动程序更新它的驱动程序,但无法将我的应用程序闪存到它里面。 LPC11xx LPCOpen Re: LPCXpresso 11U68 board: when put into ISP mode it appears as a USB mass storage 你好@sharadanand 请提供有关如何将板置于 ISP 模式的详细步骤。 另外,请查看 LPCXpresso11U68 原理图和下面关于进入 ISP 模式的说明并确认。 Alice_Yang_0-1767585499635.png 谢谢! BR 爱丽丝 Re: LPCXpresso 11U68 board: when put into ISP mode it appears as a USB mass storage 我找到了生成 firmware.bin 文件的方法,但仍无法使调试器正常工作。请告诉我如何启用调试器。 Re: LPCXpresso 11U68 board: when put into ISP mode it appears as a USB mass storage 你好@Alice_Yang、 非常感谢你的回复,我想通过板上提供的调试器刷新和调试我的固件。 我无法做到这一点,LPCXPresso IDE 生成的是 *.axf 文件,而不是 bin 文件。如何进一步推进这项工作? 致以亲切的问候 沙拉达南 Re: LPCXpresso 11U68 board: when put into ISP mode it appears as a USB mass storage 你好@sharadanand " 我正在将 JP2 引脚 1 和 2 设置为短路并将 JP1 设置为打开状态,在板重置时我按下重置按钮并按住 ISP 按钮。根据我对原理图的了解,它应该会自动进入USB模式。" ->> 是的,你说得对。在此模式下,引导加载程序将设备作为 MSC USB 设备连接到 PC 主机(禁用 CRP)。该设备的闪存在主机操作系统中显示为驱动器,您只需将 .bin 文件拖放到 MSC 设备中即可。   谢谢!   BR 爱丽丝 Re: LPCXpresso 11U68 board: when put into ISP mode it appears as a USB mass storage 你好@Alice_Yang、 非常感谢你的解释:)。我也有同样的困惑,我以前也试过,但无法将调试器检测到主机。 sharadanand_0-1767782979763.png 这就是我在 mcuxPresso 上看到的,我想找出设备详细信息如下:vid: 0x1fc9 pid: 0x000c 制造商:NXP 序列号:ABCD 我尝试使用 Windows 和 Linux 主机,但都没有成功。 我按照下面链接中提到的步骤进行了操作: https://community.nxp.com/t5/MCUXpresso-IDE/MCUExpresso-with-LPC-Link2/td-p/633989 但这对我也不起作用。 致以亲切的问候 沙拉达南 Re: LPCXpresso 11U68 board: when put into ISP mode it appears as a USB mass storage 你好@sharadanand 如果要使用调试器进行调试,请不要将芯片设置为 ISP 模式。在不按 ISP 按钮的情况下连接调试端口 (J5)。 谢谢!     BR 爱丽丝 Re: LPCXpresso 11U68 board: when put into ISP mode it appears as a USB mass storage 你好@Alice_Yang、 我成功连接了调试器。非常感谢你们的支持、 致以亲切的问候 沙拉达南
記事全体を表示
楼宇及家居自动化系统 Overview 智能的集成楼宇系统使用户能够提高能效、降低维护成本,并方便地控制智能手机和高级 HMI 的环境。 它们的互联功能拥有大数据平台,可做出更智能、环保的决策,同时确保最大的舒适度和性能。 NXP ®提供全方位的解决方案,旨在满足智能建筑的环境、寿命和节能要求,从照明到暖通空调、网络到楼宇门禁等等。我们的集成产品功能有助于推动下一波智能建筑浪潮、降低系统成本并加快产品上市时间。 用例 智能控制和访问 楼宇安全 暖通空调(HVAC) 照明 安全监控 连接 结构框图 BlockDiagram-BuildingHomeAutomation-PNG.png 产品 类别 MCU 产品URL K70_120:Kinetis ® K70-120–150 MHz,基于 Arm ® Cortex ® -M4 内核的高速 USB、以太网、DDR 和防篡改微控制器 产品描述 Kinetis ® K70 MCU 系列为工业控制面板、导航显示器、销售点终端和医疗监控设备等应用提供业界领先的低功耗和混合信号模拟集成。 类别 电源管理 产品网址 1 TEA1723FT:集成MOSFET的高压启动反激控制器,适用于11 W应用,F~Burst = 1750 Hz 产品描述 1 TEA1723是一款小体积低成本开关模式电源(SMPS)控制器IC,适合低功率应用(最高11 W),可直接使用整流市电电源工作。 产品网址 2 NTS0104:双电源转换收发器;开漏;自动方向感应 产品描述 2 NTS0104是4位双电源转换收发器,具有自动方向感测功能,可使能双向电压电平转换。 类别 Zigbee 产品URL JN5189/88 (T):适用于 Zigbee ®和 Thread 的高性能、超低功耗 MCU,内置 NFC 选项 产品描述 JN5189 产品组合旨在为下一代极低电流无线设备供电,支持 Zigbee 3.0、Thread 和 IEEE 802.15.4。 类别 传感器 产品网址 1 PCF85063A:具有闹钟功能和 I2C 总线的微型实时时钟/日历 产品描述 1 PCF85063ATL是一款CMOS实时时钟(RTC)和日历,最适合低功耗应用。 产品网址 2 PCT2075:I2C 总线 Fm+,精度为 1 摄氏度,数字温度传感器和热看门狗 产品描述 2 PCT2075 是一款温度数字转换器,在 -25 °C 至 +100 °C 范围内具有 ±1 °C 的精度。 类别 驱动程序 产品网址 1 PCF85176:适用于低复用率的 40 x 4 通用 LCD 驱动器 产品描述 1 PCF85176是一款外围器件,能驱动几乎任何低复用率液晶显示器(LCD)。 产品网址 2 PCA9633: 4位Fm+ I²C总线LED驱动器 产品描述 2 PCA9633是一款I²C总线控制的4位LED驱动器,最适合红/绿/蓝/琥珀(RGBA)调色应用。 类别 接口 产品网址 1 SC16IS752_SC16IS762:双 UART,带 I²C 总线/SPI 接口、64 字节发送和接收 FIFO、内置 IrDA SIR 支持 产品描述 1 SC16IS752/SC16IS762是一个连接双通道高性能UART的I²C总线/SPI总线接口,提供最大5Mbit/s的数据速率、低工作和睡眠电流;还为应用提供8个额外可编程I/O引脚。 产品网址 2 TDA5051AT: 家庭自动化调制解调器 产品描述 2 TDA5051A是一款调制解调器IC,专用于使用家庭电源网络以600波特或1200波特的数据速率进行ASK传输。 它通过单个5V电源工作。 产品网址 3 PCA9848:8通道超低电压、带复位功能的Fm+ I2C总线开关 产品描述 3 PCA9848是一款超低电压的八通道双向变换开关,通过I²C总线进行控制。 产品网址 4 PCA6408A:低压、8 位 I²C 总线和 SMBus I/O 扩展器,带有中断输出、复位和配置寄存器 产品描述 4 PCA6408A 是一款 8 位通用 I/O 扩展器,可通过 I²C 总线接口为大多数微控制器系列提供远程 I/O 扩展。 产品网址 5 PCA9629APW: Fm+ I2C总线高级步进电机控制器 产品描述 5 PCA9629A 是一款 I²C 总线控制的低功耗 CMOS 器件,可提供驱动四相步进电机所需的所有逻辑和控制。 框图 智能家居
記事全体を表示
适用于 ARM 2018.R1 的 S32 Design Studio - 更新 4 现已发布 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />       产品发布公告 汽车微控制器和处理器 ARM ® 2018.R1 版 S32 设计工作室  Update 4          新增内容 适用于 S32K14x 的 S32 SDK 1.9.0 BETA 版。这是一个累积更新 - 它包含之前更新的所有内容(更新 1 、更新 2 、更新 3 ) 要在新项目向导中选择新的 SDK,必须将工具链更改为“ARM Bare-Metal 32 位目标二进制工具链” 安装说明 此更新适用于 在线的 (通过 Eclipse Updater)或 离线安装(直接下载链接) 在线的 安装: 进入菜单“帮助”->“安装新软件...”对话框  select predefined update site "S32DesignStudio - http://www.nxp.com/lgfiles/updates/Eclipse/S32DS_ARM_2018.R1/updatesite" 选择所有可用项目并单击“下一步”按钮   离线安装: 转到 S32 Design Studio for ARM 产品页面 -> 下载部分或使用 直接链接下载更新存档 zip 文件 启动 S32DS 并转到“帮助”->“安装新软件...” 添加一个新的 “Archive” 仓库,然后浏览并选择您在之前步骤中下载的更新归档.zip 文件。 选择所有可用项目并单击“下一步”按钮。   这将启动更新安装过程。 概述
記事全体を表示
NicheLite 用于 LPC <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> InterNiche 的 NicheLite for LPC 是其 NicheLite ™产品的一个变体,它是一个针对嵌入式系统优化的全功能 TCP/IP 堆栈,只需要 12 KB 的代码。NicheLite for LPC 是符合 RFC 标准的 TCP/IP 协议套件实现,它包括 TCP/IP 协议系列综合子集的 ANSI C 源代码、“Mini”Sockets API 以及高效的系统优化和调整工具。NicheLite for LPC 的 IP 层可以支持一个硬件接口,并且完全支持 SNMP 代理的 MIB-II 访问。MIB-II 表包括:接口、IP、ICMP、TCP 和 UDP 信息。 数据包数据(包括标头)位于连续的缓冲区中,以简化内存管理并避免数据复制。很少使用宏来保护代码的关键部分,以提高吞吐量并减少内存需求。可调参数(如 MSS(最大段大小)和 TCP 窗口大小)可以留给运行时逻辑,也可以根据您的应用程序进行定制。 NicheLite for LPC 支持以下协议: 地址解析协议(ARP) 互联网协议(IP) 互联网控制消息协议(ICMP) 用户数据报协议(UDP) 传输控制协议(TCP) 动态主机配置协议 (DHCP) 客户端 域名系统 (DNS) 客户端 引导程序协议(BOOTP) 简单文件传输协议(TFTP) NicheLite for LPC宣传单(附件) 软件 获取软件 NicheLite for LPC 源代码免费提供给恩智浦客户,且仅限在恩智浦 LPC1000、LPC2000 和 LPC3000 系列微控制器上使用。获取和使用 NicheLite for LPC 的前提是接受详细的软件许可协议 (SLA)。如果您尚未下载并仔细阅读 SLA,请下载并仔细阅读: NicheLite V1.02 修订历史(2007 年 7 月 17 日)(附件) 目录 NicheLite for LPC软件包包括: NicheTask ™协作式多任务调度程序 TCP 支持 InterNiche 的轻量级 API,并带有零拷贝选项 无需分片/重组的 IPv4 地址解析协议 ICMP Ping TFTP NicheTool™ NicheFile VFS Mini-Sockets API 单个以太网接口,配备针对 LPC17xx、LPC23xx/LPC24xx 和 LPC32x0 优化的设备驱动程序 TFTP客户端 TFTP服务器 示例应用程序(TFTP 客户端、TFTP 服务器、HTTP 侦听器) NicheLite 参考手册(不得重新分发) HTML 格式的用户指南(旨在分发给最终客户) 清晰书写、注释丰富的 ANSI-“C”源代码 编译时所需的头文件阐明了源许可证的细节,该许可证禁止最终客户分发 NicheLite for LPC 的源代码。 最终客户选项和升级 InterNiche 为 NXP 的 NicheLite LPC 客户提供的选项和升级包括: 技术支持 专业服务 HTTP Server PPP SNMP v1, v2c, v3 SMTP 客户端(电子邮件警报器) NicheStack SSL POP3 客户端 FTP 服务器和客户端 升级到完整的 NicheStack IPv4、IPv6、双重产品   NicheStack HTTPServer ™ (已附加) NicheStack SSL ™ (附件) NicheStack IPv4 ™ (附件) 联系InterNiche了解详情 详细信息 Cortex-M0 微控制器 Cortex-M3 微控制器 Cortex-M4 微控制器 ARM7 微控制器 ARM9 微控制器 InterNiche Technologies, Inc. 概况介绍(附件) InterNiche 技术公司 NicheTask开源操作系统
記事全体を表示
Kinetis Design Studioのビデオ、パート3:Kinetis Design Studioによるデバッグ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> これは、4 つの KDS v3.0.0 ビデオの 3 番目のビデオです。このビデオでは、Kinetis SDKとFRDMボードのインストールと使用について説明します。   Overview: デバッグ構成 デバッグのためのビルド ソースコードのステップ実行 変数の検査 ブレークポイントの設定 逆アセンブル、メモリ、レジスタ   全4つのビデオのリスト: Kinetis Design Studioビデオ、パート1:KDSとKinetis SDKのインストール Kinetis Design Studioビデオ、パート2:Freedom BoardへのOpenSDAファームウェアのインストール Kinetis Design Studioのビデオ、パート3:Kinetis Design Studioによるデバッグ Kinetis Design Studioビデオ、第4回:KDSでのProcessor Expertの使用 (マイビデオで視聴) 全般
記事全体を表示
LS1046 RESET_REQ 和 RSTRQSR 我们看到 RESET_REQ_B 在我们的定制 LS1046 硬件上被断言。当我们读取 RSTRQSR 时,我们得到以下内容: md 1ee00C8 01ee00c8: 00480000 00000000 00000000 00000000 如果我正确排序字节,则意味着: MBEE_RR(多位 ECC 重置请求)和 SRDS_RST_RR(SerDes 复位事件。如果任何启用的 SerDes PLL 未锁定,则会发生这种情况。) 有人能确认我的解码是否正确,并指出可能导致 MBEE_RR 的原因吗?我不确定从哪里开始寻找这个。 谢谢! 回复:LS1046 RESET_REQ 和 RSTRQSR 我们修复了这个问题 - 我们的 SRDS_PLL_PD_S1 和 SRDS_PLL_PD_S2 的值是错误的 - 参考手册对这些值有点令人困惑。一旦我们解决了这个问题,错误就消失了。 回复:LS1046 RESET_REQ 和 RSTRQSR 亲爱的@SimonRo , 您能否指出在“4.4.1 开机复位序列”的哪一步中遇到了这个问题? 还是启动结束后才会发生? 我需要更多信息才能了解可能发生的情况。 回复:LS1046 RESET_REQ 和 RSTRQSR 我通过将 SRDS_PLL_PD_S1 和 SRDS_PLL_PD_S2 设置为 0 来关闭 SERDES。 我的 RCW 现在看起来像这样: 00000000: 0c150010 10000000 00000000 00000000 00000010: 11330559 40000012 60040000 c1000000 00000020: 00000000 00000000 00000000 10038ffe 00000030: 20124000 04261301 00000096 00000001 但RESET_REQ_B 仍然有效: => md 1ee0000 01ee0000: 7f7f7720 0000004f 00000000 00000000 w..O........... 01ee0010: 00000000 00000000 00000000 00000000 ................ 01ee0020: 00000000 00000000 00000000 00000000 ................ 01ee0030: 00000000 00000000 00000000 00000000 ................ 01ee0040: 00000000 00000000 00000000 00000000 ................ 01ee0050: 00000000 00000000 00000000 00000000 ................ 01ee0060: 00000000 00000000 00000000 00000000 ................ 01ee0070: 00000000 00000000 00000000 00000000 ................ 01ee0080: 00000000 00000000 00000000 00000000 ................ 01ee0090: 00000000 00000000 00000000 00000000 ................ 01ee00a0: 00000000 10010787 40000000 00000000 ...........@.... 01ee00b0: 00000000 00000000 00000000 00000000 ................ 01ee00c0: 00400000 00000000 00480000 00000000 [email protected]..... 01ee00d0: 00000000 00000000 00000000 00000000 ................ 01ee00e0: 00000000 00000000 00000000 00000000 ................ 01ee00f0: 00000000 00000000 00000000 00000000 ................ 我认为是: SRDS_RST_RR(SerDes 重置事件。如果任何启用的 SerDes PLL 未锁定,则会发生。) 我想知道如果 SERDES 断电为什么会看到这个? 谢谢!
記事全体を表示
无法在我的 imx8mp 自定义板中启动 QNX 镜像 你好, 我使用的是 IMX8MP 定制板。IMX8MP EVK 和我的定制板的区别在于 UART 控制台和动态随机存取存储器(DRAM)。对我的 QNX 7.1 源代码进行更改后,我尝试启动板,但我看不到来自 IMX8MP 自定义板的任何控制台消息。QNX 7.1 源代码中还有其他需要修改的吗? 谢谢& , Subash。 Android i.MX 8 系列 | i.MX 8QuadMax (8QM) | 8QuadPlus i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: Unable to boot the QNX image in my imx8mp custom board 你好 您需要检查 QNX 源代码中的控制台,以及 uboot 和内核引导参数中的 RAM 定义。 此致
記事全体を表示
S32K314/ETH/TJA1101 環境背景: 1. S32K314チップを使用した評価ボード 2. MCAL パッケージ「SW32K3_S32M27x_RTD_R21-11_6.0.0」の Ethernet ルーチンを使用し、K344 ルーチンを K314 に変更します。 3. S32DS 統合コードは、MCAL パッケージのメイン関数内のルーチン コードも使用します。 質問: サンプル コードに基づいてイーサネット データ ループバック機能を実装できないのはなぜですか? Ethernet MCALの設定を確認したところ、デフォルト設定はループバックモードになっていることがわかりました。私の理解では、CANのように、1フレームのデータを送信すると次のフレームを受信できるようになっているはずです。 その後、デバッグのためにコードを統合してコンパイルしました。whileループの前にイーサネットデータが送信されていました。ループが戻る際にデータが受信され、whileループが終了するはずでした。しかし、現状ではwhile (RxStatus.RxStatsPkts < 1U)という条件が常に満たされており、ループバックデータが受信されていません。 その他の説明: 1. 回路図に従って MCAL サンプル プログラム内のポートが対応するように変更しました。 2. TJA1101 からの車載イーサネット ツイストペア ケーブルに他のデバイスを接続していないため、外部と通信できません。 Re: S32K314/ETH/TJA1101 こんにちは@wei_zhoucq 、 クリスマス休暇のため返信が遅れたことをお詫び申し上げます。 私の意見では、問題は時計にあります。ループバック テストの場合でも、S32K3 の EMAC 用の適切なクロックが必要です。 1.RMII を使用する場合は、TJA1101B データシートの図 5. a. に示すように、S32K3 の TX_CLK (入力) にコネクテッドされた TJA1101 の REF_CLK (出力) を使用する必要があります。 2. Eth_43_GMAC_Init() を呼び出す前に外部クロックが存在している必要があります。 3. TJA1101B の正しいピンストラップが使用されていることを確認します (TJA1101B データシートの 第 6.10 章「ハードウェア構成」)。MII_MODE は「RMII モード (REF_CLK で 50 MHz 出力)」に設定すると思います。 4. また、S32K3 のその他のクロック設定が、S32K3 リファレンス マニュアル、Rev. 11 の「24.7.2 システム クロック構成」の章に記載されているクロック構成のいずれかと一致していることも確認します。 よろしくお願いいたします。 パベル
記事全体を表示
MC33774の突然の停電 こんにちは、コミュニティの皆様 MC33774 の電源が突然失われた場合、どのレジスタが停電前の情報を保持しますか?データシートに関連するコンテンツが見つかりませんでした。助けていただけますか?ありがとう。 幸運をお祈りしています。 Re: Sudden power outage of MC33774 助けてくれてありがとう! Re: Sudden power outage of MC33774 こんにちはヤンさん VBATUV が検出されると、POR が生成され、MC33774A はディープ スリープ モードに入ります。 Capture.JPG BR、トーマス
記事全体を表示
Autosar Os 示例 你好 我正在开发一个使用 S32K146 芯片和 Autosar 架构的 ECU 项目。我以前没有接触过 Os 模块的使用,如果您能提供一些与 Os 模块相关的例程,我将不胜感激。 谢谢! Re: Autosar Os Example 能给我一个链接吗? Re: Autosar Os Example 你好 AUTOSAR 操作系统软件包中有一个例子: Untitled.png 您可以在恩智浦 SW 账户中找到它:   Untitled.png S32K_AUTOSAR_OS_4_0_98_RTM_1_0_0.exe_ 它非常直观,你可以通过用户手册 AUTOSAR_OSS32K_UM.pdf 进行配置,它是软件包的一部分。 顺祝商祺! Peter     Re: Autosar Os Example 我正在开发一个使用 S32K146 芯片的 Autosar 项目,配置工具是 EB Tresos。我配置了CAN堆栈并在环回模式下测试了上层的传输和接收过程(从Com层到MCAL),一切正常。 当我将 CAN 控制器配置为正常模式时,CAN 数据被写入寄存器(RAMn),但硬件并未启动传输。Tx 引脚上没有数据,因此,没有触发信号来清除 TX Buff 标志。这也导致前四帧数据成功写入 Buff,但从第五帧开始,数据无法写入,并返回 CAN BUSY 状态。 由于这个问题,我不知道如何解决。因此,我使用了 S32DS 中为 S32K146 提供的 Autosar CAN 示例,做了一些修改,并在相同的硬件上运行。然而,数据仍然无法传输,同样的问题再次出现。 您能帮我分析一下 CAN 传输在我的项目中出现故障的原因吗?谢谢。
記事全体を表示
S32K148 SPI クロックエラー 現在、SPI を使用してデータを送信しているときに、電源投入後の最初の SPI 送信が異常であることがわかりました。アイドル時に SPI_CLK をハイレベルに設定し、対応するポートをデフォルトのハイ出力レベルに設定しました。初期化プロセス中に、PORT_INIT が完了すると、CLK ピンはハイレベルになります。ただし、SPI の初期化が完了すると、CLK ピンはローに引き下げられます。最初の通信が到着するまで、CLK ピンは再び上昇しません。しかし、このCASEでは、私の最初のコミュニケーションは間違った形式になります。 さらに、PCBA にハードウェア プルアップがなく、ソフトウェア PORT 構成にもプルアップがない場合、CLK ピンが出力として設定され、出力がハイ レベルであっても、実際のハイ レベルを出力できません (現在、この問題を一時的に回避するためにソフトウェア プルアップを設定しています)。これをどう解決できるだろうか? 私が使用しているMCUはFS32K148です。MCAL バージョンを図に示します。本当に助かりました!! ERROR.jpg Init.jpg SPI_CFG.jpg
記事全体を表示
SAF - ASIL 认证 您好,技术支持、 客户正在使用带有 SW32K3_SAF_1.0.5_D2503 的 S32K31。 他们要求我们提供 SAF ASIL 证书或任何文件,以证明其符合 ASIL"ready/compliance" 。 此致, 马库斯 SAFETY_SW Re: SAF - ASIL Certification 您好,技术支持、 有更新吗? Re: SAF - ASIL Certification 你好 Marcus, 对于每个高级 SAF 软件包,都可以下载功能安全软件评估摘要报告。 适用于 SAF 1.0.5我也可以在 Flexera 上看到: S32K3_SAF_1.0.5_Safety_SW_Assessment_Summary.pdf 亲切的问候, Radoslav Re: SAF - ASIL Certification 你好@marcuslim, 目前,与客户共享文件在技术上和法律上都受到限制,我认为唯一合法的途径是通过销售人员。 总之,我想从 nxp.com 上的 SAF 产品页面截图,和我分享的一样,看看到底缺了什么。 客户如何获得版本? 应该有功能安全评估,其他人都可以看到。 我在这里附上内部报告,让您找到如何合法地与客户共享文件的方法。 但请尽量向客户解释正确的获取方式 nxp.com=>Softwareaccounts= > 汽车软件-S32K3 高级软件= > 汽车软件-S32K3-功能安全软件框架 亲切的问候,拉多斯拉夫 Re: SAF - ASIL Certification 谢谢你,拉多斯拉夫! 客户已找到文件。 我们可以关闭这个主题了。 此致, 马库斯
記事全体を表示
ADC DMA 示例不起作用 您好, 我正在使用 MBDT v1.5 在 S32K3X8EVB-Q289 上开发一个项目 我正在尝试使用 DMA 实现 ADC,经过一番努力后,我在网上找到了这张票: https://community.nxp.com/t5/Model-Based-Design-Toolbox-MBDT/DMA-enabling-in-MBDT/m-p/1819674 在此基础上,我尝试执行@Irina_Costachescu给出的所有指示。 当我尝试版本时出现问题... matlab 给我这个错误: simon98_0-1750087663761.png 我不知道如何解决这个问题......谁能告诉我如何解决这个问题,或者我是否遗漏了什么? 谢谢! 西蒙 Re: ADC DMA Example doesn't work 你好,@simon98、 最新的恩智浦 S32K3 基于模型的设计工具箱 1.8.0 版 包含一个使用 ADC 和 DMA 的更新模型示例:adc文件夹中的s32k344_pwm_adc_dma_s32ct 。 您可以将此模型用作应用程序的参考。 希望这能帮到您, 德拉古 Re: ADC DMA Example doesn't work 我从提供的示例中导入了配置,但还是遇到了这个问题: https://community.nxp.com/t5/Model-Based-Design-Toolbox-MBDT/ADC-DMA-Example-doesn-t-work-with-my-S32CT-Configuration/m-p/2124851#M10317 Re: ADC DMA Example doesn't work 嗨,@dragostoma、 我现在才能测试 MBDT 1.8 版本中带有 DMA 的 ADC 示例。 起初,我遇到了同样的问题:回调已执行,但在 FreeMASTER 中却看不到变量ADC_POT0的值在更新(与 1.6 版中的情况相同)。 经过多次尝试,我试着添加了以下 MCL 块,以检查 DMA 是否真正正常工作: 2.png 为了进一步调查,我用S32DS 3.6 打开了该项目。在调试时,我可以看到ADC_POT0根据电位器的位置发生变化,即使 Simulink 中的 MCL 块被注释掉也是如此。但是,在 FreeMASTER 中,ADC_POT0不会更新。 因此,我想知道造成这种行为的原因是什么,以及是否有可能以某种方式修复 FreeMASTER 的行为。 附件中是我用于这些测试的项目。 我期待您的反馈。 谢谢, Simon
記事全体を表示
i.MX8MP LPDDR4 CA Training Failed (without it stress test is ok for single freq point) We designed a custom board based with MIMX8ML8XXXKZ SoC MT53E768M64D4DE-046 WT:C LPDDR4 BD71847 PMIC All SoC and DRAM power lanes seem to be powered properly Based on previous experience with i.MX8MM we attempted to generate timings for the DRAM using the DDR Mtool, but the result we got  Spoiler (Highlight to read) Download is complete Waiting for the target board boot... ===================hardware_init===================== hardware_init exit ************************************************************************* ************************************************************************* ************************************************************************* MX8 DDR Stress Test V3.30 Built on Nov 24 2021 13:52:12 ************************************************************************* Waiting for board configuration from PC-end... --Set up the MMU and enable I and D cache-- - This is the Cortex-A53 core - Check if I cache is enabled - Enabling I cache since it was disabled - Push base address of TTB to TTBR0_EL3 - Config TCR_EL3 - Config MAIR_EL3 - Enable MMU - Data Cache has been enabled - Check system memory register, only for debug - VMCR Check: - ttbr0_el3: 0x97d000 - tcr_el3: 0x2051c - mair_el3: 0x774400 - sctlr_el3: 0xc01815 - id_aa64mmfr0_el1: 0x1122 - MMU and cache setup complete ************************************************************************* ARM clock(CA53) rate: 1800MHz DDR Clock: 2000MHz ============================================ DDR configuration DDR type is LPDDR4 Data width: 32, bank num: 8 Row size: 17, col size: 10 One chip select is used Number of DDR controllers used on the SoC: 1 Density per chip select: 3072MB Density per controller is: 3072MB Total density detected on the board is: 3072MB ============================================ MX8M-plus: Cortex-A53 is found ************************************************************************* ============ Step 1: DDRPHY Training... ============ ---DDR 1D-Training @2000Mhz... PMU: Error: CA Training Failed. PMU: ***** Assertion Error - terminating ***** [Result] FAILED Download is completeWaiting for the target board boot...===================hardware_init=====================hardware_init exit***************************************************************************************************************************************************************************************************************************MX8 DDR Stress Test V3.30Built on Nov 24 2021 13:52:12*************************************************************************Waiting for board configuration from PC-end...--Set up the MMU and enable I and D cache--- This is the Cortex-A53 core- Check if I cache is enabled- Enabling I cache since it was disabled- Push base address of TTB to TTBR0_EL3- Config TCR_EL3- Config MAIR_EL3- Enable MMU- Data Cache has been enabled- Check system memory register, only for debug- VMCR Check:- ttbr0_el3: 0x97d000- tcr_el3: 0x2051c- mair_el3: 0x774400- sctlr_el3: 0xc01815- id_aa64mmfr0_el1: 0x1122- MMU and cache setup complete*************************************************************************ARM clock(CA53) rate: 1800MHzDDR Clock: 2000MHz============================================DDR configurationDDR type is LPDDR4Data width: 32, bank num: 8Row size: 17, col size: 10One chip select is usedNumber of DDR controllers used on the SoC: 1Density per chip select: 3072MBDensity per controller is: 3072MBTotal density detected on the board is: 3072MB============================================MX8M-plus: Cortex-A53 is found*************************************************************************============ Step 1: DDRPHY Training... ============---DDR 1D-Training @2000Mhz...PMU: Error: CA Training Failed.PMU: ***** Assertion Error - terminating *****[Result] FAILED A similar situation was with the Config tool. We tried to use the .ds script both generated by Config tool, as well as the RPA, neither worked Based on the discussion on the forum we attempted to disable the CA training. And calibration for single frequency setpoint started working Spoiler (Highlight to read) Download is complete Waiting for the target board boot... ===================hardware_init===================== hardware_init exit ************************************************************************* ************************************************************************* ************************************************************************* MX8 DDR Stress Test V3.30 Built on Nov 24 2021 13:52:12 ************************************************************************* Waiting for board configuration from PC-end... --Set up the MMU and enable I and D cache-- - This is the Cortex-A53 core - Check if I cache is enabled - Enabling I cache since it was disabled - Push base address of TTB to TTBR0_EL3 - Config TCR_EL3 - Config MAIR_EL3 - Enable MMU - Data Cache has been enabled - Check system memory register, only for debug - VMCR Check: - ttbr0_el3: 0x97d000 - tcr_el3: 0x2051c - mair_el3: 0x774400 - sctlr_el3: 0xc01815 - id_aa64mmfr0_el1: 0x1122 - MMU and cache setup complete ************************************************************************* ARM clock(CA53) rate: 1800MHz DDR Clock: 2000MHz ============================================ DDR configuration DDR type is LPDDR4 Data width: 32, bank num: 8 Row size: 17, col size: 10 Two chip selects are used Number of DDR controllers used on the SoC: 1 Density per chip select: 3072MB Density per controller is: 6144MB Total density detected on the board is: 6144MB ============================================ MX8M-plus: Cortex-A53 is found ************************************************************************* ============ Step 1: DDRPHY Training... ============ ---DDR 1D-Training @2000Mhz... [Process] End of initialization [Process] End of read enable training [Process] End of fine write leveling [Process] End of read DQ deskew training [Process] End of MPR read delay center optimization [Process] End of Write Leveling coarse delay [Process] End of write delay center optimization [Process] End of read delay center optimization [Process] End of max read latency training [Result] PASS ---DDR 2D-Training @2000Mhz... [Process] End of initialization [Process] End of 2D write delay/voltage center optimization [Process] End of 2D write delay/voltage center optimization [Process] End of 2D read delay/voltage center optimization [Process] End of 2D read delay/voltage center optimization [Result] PASS ============ Step 2: DDR memory accessing... ============ Verifying DDR frequency [email protected] [Result] OK ============ Step 3: DDR parameters processing... ============ [Result] Done Success: DDR Calibration completed!!! Download is completeWaiting for the target board boot...===================hardware_init=====================hardware_init exit***************************************************************************************************************************************************************************************************************************MX8 DDR Stress Test V3.30Built on Nov 24 2021 13:52:12*************************************************************************Waiting for board configuration from PC-end...--Set up the MMU and enable I and D cache--- This is the Cortex-A53 core- Check if I cache is enabled- Enabling I cache since it was disabled- Push base address of TTB to TTBR0_EL3- Config TCR_EL3- Config MAIR_EL3- Enable MMU- Data Cache has been enabled- Check system memory register, only for debug- VMCR Check:- ttbr0_el3: 0x97d000- tcr_el3: 0x2051c- mair_el3: 0x774400- sctlr_el3: 0xc01815- id_aa64mmfr0_el1: 0x1122- MMU and cache setup complete*************************************************************************ARM clock(CA53) rate: 1800MHzDDR Clock: 2000MHz============================================DDR configurationDDR type is LPDDR4Data width: 32, bank num: 8Row size: 17, col size: 10Two chip selects are usedNumber of DDR controllers used on the SoC: 1Density per chip select: 3072MBDensity per controller is: 6144MBTotal density detected on the board is: 6144MB============================================MX8M-plus: Cortex-A53 is found*************************************************************************============ Step 1: DDRPHY Training... ============---DDR 1D-Training @2000Mhz...[Process] End of initialization[Process] End of read enable training[Process] End of fine write leveling[Process] End of read DQ deskew training[Process] End of MPR read delay center optimization[Process] End of Write Leveling coarse delay[Process] End of write delay center optimization[Process] End of read delay center optimization[Process] End of max read latency training[Result] PASS---DDR 2D-Training @2000Mhz...[Process] End of initialization[Process] End of 2D write delay/voltage center optimization[Process] End of 2D write delay/voltage center optimization[Process] End of 2D read delay/voltage center optimization[Process] End of 2D read delay/voltage center optimization[Result] PASS============ Step 2: DDR memory accessing... ============Verifying DDR frequency [email protected][Result] OK============ Step 3: DDR parameters processing... ============[Result] DoneSuccess: DDR Calibration completed!!! If multiple frequency setpoints are set, the optimization keeps failing at the second setpoint And the stress test started passing correctly both in the Mtool and in the Config tool. However, the Diag read margin, diag write margin and CA eye tests keep failing One thing to note is that comparing to the IMX8MP-EVK we connected the CA and CB to their respective pins on the CPU (in the EVK they were reversed) Here are the respective lanes lengths and the delay deltas Spoiler (Highlight to read) 1. CAx_B, CKE_A, CK_CS_A - 20mm, <1ps 2. CAx_B, CKE_B, CK_CS_B - 19mm, <1ps 3. DQ07_A - 15mm, <1ps 4. DQ07_B - 14.5mm, <1ps 5. DQ815_A -10mm, <1ps 6. DQ815_B -10mm, <1ps 7. CKA - 21mm, DQS0 - 15mm (-22ps to CKA), DQS1 - 13mm (-55ps to CKA) 8. CKB - 21mm, DQS2 - 14mm (-24ps to CKA), DQS3 - 13mm (-54ps to CKA) 1. CAx_B, CKE_A, CK_CS_A - 20mm, <1ps2. CAx_B, CKE_B, CK_CS_B - 19mm, <1ps3. DQ07_A - 15mm, <1ps4. DQ07_B - 14.5mm, <1ps5. DQ815_A -10mm, <1ps6. DQ815_B -10mm, <1ps7. CKA - 21mm, DQS0 - 15mm (-22ps to CKA), DQS1 - 13mm (-55ps to CKA)8. CKB - 21mm, DQS2 - 14mm (-24ps to CKA), DQS3 - 13mm (-54ps to CKA) Can the CA/CB swap be the reason of the problem? 回复: i.MX8MP LPDDR4 CA Training Failed (without it stress test is ok for single freq point) @AlexandrP , @sfatyushkin ,@JorgeCas ,Hi, We designed a custom board based with MIMX8ML4xxxKZ, However, when testing the DDR, even the initial phy init failed, and the error message was as follows: ```txt test-prefix : "C:/nxp/i.MX_CFG_25.12/bin/python3/python" "C:/nxp/i.MX_CFG_25.12/bin/python3/memtool/memtool_entry.py" -t "runtest" -d "C:/ProgramData/NXP/mcu_data_25.12/processors/MIMX8ML4xxxKZ/ksdk2_0/mem_validation/ddrc" -a "C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/test_app_phy_test_0_0_.log" -p "C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/phy_training_phy_test_0_0_.log" -l INFO "C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/connect.json" "C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/test.json" "C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/phy.json" "C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/ddrc_registers.json" "C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/ddrc_config.json" "C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/ddrc_config_in.json" INFO memtool.utils.helper *****C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/connect.json INFO memtool.utils.helper *****C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/test.json INFO memtool.utils.helper *****C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/phy.json INFO memtool.utils.helper *****C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/ddrc_registers.json INFO memtool.utils.helper *****C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/ddrc_config.json INFO memtool.utils.helper *****C:/Users/HEJIAN~1.LIG/AppData/Local/Temp/mem_validation/ddrc_config_in.json INFO memtool.processor.imx8m.imx8_processor Xls mapping load time 0.011705 INFO memtool.processor.base_processor Config time 0.008170 INFO memtool.processor.base_processor DS file time 0.256190 INFO memtool.phyinit.phy_init Run phyinit for 2020.06\lpddr4 INFO memtool.comm.serial_channel Using serial: COM23 WARNING memtool.comm.serial_channel Timeout waiting for response "[TARGET IS ALIVE]" ERROR memtool.common.base_test Application is not waiting for input state. WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" ERROR memtool.comm.serial_channel Read symbol failed after 3 tries WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" ERROR memtool.comm.serial_channel Read symbol failed after 3 tries WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" ERROR memtool.comm.serial_channel Read symbol failed after 3 tries WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" ERROR memtool.comm.serial_channel Read symbol failed after 3 tries WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" WARNING memtool.comm.serial_channel Timeout waiting for response "[READ FINISHED]" ERROR memtool.comm.serial_channel Read symbol failed after 3 tries {'app_state': -1, 'num_records': -1, 'records': [], 'debug': -1, 'err_capt_regs': -1, 'debug_regs': -1} ****DONE**** ``` Since this is my first time using IMX8, could you give me some advice? Re: i.MX8MP LPDDR4 CA Training Failed (without it stress test is ok for single freq point) Hello, According to constraint manager, the routing is under the recommended values: Screenshot 2025-06-20 124653.png Best regards. Re: i.MX8MP LPDDR4 CA Training Failed (without it stress test is ok for single freq point) sfatyushkin_0-1750392487472.png 127 + 50 ps < 191ps Re: i.MX8MP LPDDR4 CA Training Failed (without it stress test is ok for single freq point) Hello, 1) A clock frequency reduction, but it is not a warranty that will work.  2) It is under the recommendation, ±50 ps. Best regards. Re: i.MX8MP LPDDR4 CA Training Failed (without it stress test is ok for single freq point) Jorge, thanks a lot! This helped us to understand the problem. When laying out the LpDDR lines, we used the same rules as before when laying out iMX8MM, without paying attention to the tightening of the requirements for the CAx lines (within 2 ps in groups), and did not take into account the Pkg delay. So, two questions. 1. Is it possible to configure the CA_x_y lines and run the board with a spread of CA lines times of about 20 ps (possibly at a slow speed), or it is impossible to do without redesigning the board? 2. In the i.MX 8M Plus Hardware Developer’s Guide, all timings seems like in EVK. But the delay on the CK_A lines is indicated to be about 107 ps (145 ps taking into account the Pkg delay). On the EVK board (directly in the project that you provided), I see a delay on the CKa lines of about 89 ps (127 ps taking into account the Pkg delay, and this is outside the 50 ps tolerance for the CA_A_0...4 lines). What is correct? Best regards, Serge Re: i.MX8MP LPDDR4 CA Training Failed (without it stress test is ok for single freq point) Hello, The issue you are mentioning could be caused by marginal signal integrity or timing violations. Please take a look in attached file for .alg file. Best regards. Re: i.MX8MP LPDDR4 CA Training Failed (without it stress test is ok for single freq point) Based on your response we decided to tackle the ODT parameters once again. We redid the Read/Write ODT and driver matrix in Optimization tab and noticed that some random ODT combinations drop 'Target a connection or exception in the script'. Saying random, I mean that from run to run they are different and don't occur every time. Otherwise, the rest of the combinations succeed, even up to 240 Ohm We also evaluated the "Diag Read/Write Margin tests results more closely. Before, only the fact that test showed "checkmark 100%" was viewed , and noticed that whenever test "passes" it demonstrates not all of the DQ lanes, and the number is different every time. See attached pictures (for some reason the forum doesn't let me attach pictures neither in text, nor as attachments, so adding link to drive folder https://drive.google.com/drive/folders/1U4-G1_Em-73UR1zrtUFAsVCRBpAlchGN?usp=sharing) Trying to investigate this, we observed the 1V1 power lane with the oscilloscope, didn't notice anything extra suspicious, but during that the "Diag Margin" test started to show the Eye diagrams for all of the DQ lanes in more or less okay shape, so we added 9.5pF capacitor (see the attachment with "cond" for reference), and the Margin Test results in all DQ lanes diagrams every time it shows anything CA Bus Signals Margin test as well shows "Checkmark 100%", but in the "Charts" tab it states "Collecting diagnostic data..." and in logs it shows error "CA data is missing!" See full log in spoiler Spoiler (Highlight to read) #################### Result for: ca_bus ###### Run 1 ############################################### Microsoft Windows [Version 10.0.19045.2965] (c) Microsoft Corporation. All rights reserved. C:\nxp\i.MX_CFG_25.03\bin>prompt test-prefix : test-prefix : "C:/nxp/i.MX_CFG_25.03/bin/python3/python" "C:/nxp/i.MX_CFG_25.03/bin/python3/memtool/memtool_entry.py" -t "runtest" -d "C:/ProgramData/NXP/mcu_data_25.03/processors/MIMX8ML8xxxKZ/ksdk2_0/mem_validation/ddrc" -p "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/phy_training_ca_bus_lpddr4_0_0_.log" -i "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/figure_ca_bus_lpddr4_0_0_.png" -l DEBUG "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/connect.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/test.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/phy.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_registers.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config_in.json" INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/connect.json INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/test.json INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/phy.json INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_registers.json INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config.json INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config_in.json DEBUG memtool.common.factories new instance -> {inst} DEBUG memtool.processor.base_processor freq_0 set to 667 INFO memtool.phyinit.phy_init Run phyinit for 2020.06\lpddr4 DEBUG memtool.phyinit.phy_init Shared library C:\ProgramData\NXP\mcu_data_25.03\processors\MIMX8ML8xxxKZ\ksdk2_0\mem_validation\ddrc\phyinit\sharedlib\phyinit_2020.06_lpddr4.dll DEBUG memtool.common.factories new instance -> {inst} DEBUG memtool.phyinit.phy_init PHY config file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_config_final.json DEBUG memtool.phyinit.phy_init Phyinit output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d.txt DEBUG memtool.phyinit.phy_init Retention output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d_retention.txt DEBUG memtool.phyinit.out_parser Parse phyinit output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d.txt DEBUG memtool.phyinit.out_parser Parse retention output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d_retention.txt DEBUG memtool.phyinit.out_parser Parse state A_BRING_UP_POWER DEBUG memtool.phyinit.out_parser Parse state C_PHY_INIT_CONFIG(210) DEBUG memtool.phyinit.out_parser Write PHY CONFIG as txt size 0x32fb to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_init.c DEBUG memtool.phyinit.out_parser Write PHY CONFIG as txt size 0x15d4 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_init.json DEBUG memtool.phyinit.out_parser Parse state LOAD_IMEM_1(445) DEBUG memtool.phyinit.out_parser Parse state D_LOAD_IMEM_1D(465) DEBUG memtool.phyinit.out_parser Write IMEM 1D as bin size 0x8000 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\imem_1d.bin DEBUG memtool.phyinit.out_parser Write IMEM 1D as txt size 0x6eaf3 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\imem_1d.txt DEBUG memtool.phyinit.out_parser Parse state PHASE.E_SET_DFI_CLOCK(16850) DEBUG memtool.phyinit.out_parser Parse state PHASE.F_LOAD_DMEM_1(16869) DEBUG memtool.phyinit.out_parser Parse state PHASE.F_LOAD_DMEM_1D(16885) DEBUG memtool.phyinit.out_parser Write DMEM 1D as bin size 0x67c to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\dmem_1d.bin DEBUG memtool.phyinit.out_parser Write DMEM 1D as txt size 0x5398 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\dmem_1d.txt DEBUG memtool.phyinit.out_parser Parse state PHASE.G_EXEC_FW(17716) DEBUG memtool.phyinit.out_parser Parse state PHASE.PHASE.I_LOAD_PIE(17782) DEBUG memtool.phyinit.out_parser Write PIE as txt size 0x44ff to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\pie.txt DEBUG memtool.phyinit.out_parser Write PIE as txt size 0x933a to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\pie.json DEBUG memtool.phyinit.out_parser Parse state PHASE.H_READ_MSG_BLOCK(18389) DEBUG memtool.phyinit.out_parser Parse retention register list INFO memtool.comm.serial_channel Using serial: COM3 DEBUG memtool.common.factories new instance -> {inst} DEBUG memtool.common.factories new instance -> {inst} DEBUG memtool.common.factories new instance -> {inst} DEBUG memtool.comm.serial_channel Channel is not alive DEBUG spsdk.utils.interfaces.device.usb_device Closing the Interface: SE Blank 865 (0x1FC9, 0x0146)path=b'\\\\?\\hid#vid_1fc9&pid_0146#6&dc7bbf3&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}' sn='' DEBUG memtool.comm.serial_channel ==================hardware_init======================= DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel [DEBUG]: Clock setup... DEBUG memtool.comm.serial_channel [INFO]: ARM core clock rate is 1800MHz... DEBUG memtool.comm.serial_channel [INFO]: DDR Dram frequency is 666MHz... DEBUG memtool.comm.serial_channel [DEBUG]: Clock setup ended... DEBUG memtool.comm.serial_channel ==================hardware_init exit================== DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel Channel is alive DEBUG memtool.comm.serial_channel Executing: mw92EAB8,1 DEBUG memtool.comm.serial_channel Result: 0x5588DCFE INFO memtool.common.base_test Read app state WAIT_FOR_INPUT INFO memtool.common.base_test Write app log level DEBUG memtool.comm.serial_channel Executing: Mw92F510,1:0000000a INFO memtool.common.base_test Write app state CONFIG_RECEIVED DEBUG memtool.comm.serial_channel Executing: Mw92EAB8,1:55aa55aa DEBUG test_app [DEBUG]: Initialize mailbox... DEBUG test_app [DEBUG]: Apply Init PHY Config... DEBUG test_app [DEBUG]: Execute PHY operation... DEBUG test_app [DEBUG]: Run PHY full init... DEBUG test_app [DEBUG]: Write 1D imem image, offset 0x00050000 size 0x00004000... DEBUG test_app [DEBUG]: End of load 1D imem image... DEBUG test_app [DEBUG]: Set DFI Clock for pstate 0... DEBUG test_app [DEBUG]: Write 1D dmem image, offset 0x00054000 size 0x0000033e... DEBUG test_app [DEBUG]: End of load 1D dmem image... DEBUG test_app [INFO]: Execute Training Firmware for 1D pstate0@667MHz... DEBUG test_app [INFO]: Training Firmware completed for 1D pstate0@667MHz with status 0; Execution ended in 0s.310ms.912us... DEBUG test_app [DEBUG]: PHY operation ended with status 0... DEBUG memtool.comm.serial_channel Executing: mw92F918,1 DEBUG memtool.comm.serial_channel Result: 0x00000000 DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel Channel is alive DEBUG memtool.comm.serial_channel Executing: mw92EAB8,1 DEBUG memtool.comm.serial_channel Result: 0x5588DCFE INFO memtool.common.base_test Read app state WAIT_FOR_INPUT INFO memtool.common.base_test Read phy status DEBUG memtool.comm.serial_channel Executing: mw92F91C,1 DEBUG memtool.comm.serial_channel Result: 0x00000059 INFO root Number of logged items 0x59 DEBUG memtool.memtests.snps_phy Using messages file C:\ProgramData\NXP\mcu_data_25.03\processors\MIMX8ML8xxxKZ\ksdk2_0\mem_validation\ddrc\firmware\2020.06\lpddr4\lpddr4_pmu_train.strings DEBUG memtool.memtests.snps_phy Using messages file C:\ProgramData\NXP\mcu_data_25.03\processors\MIMX8ML8xxxKZ\ksdk2_0\mem_validation\ddrc\firmware\2020.06\lpddr4_2d\lpddr4_2d_pmu_train.strings DEBUG memtool.comm.serial_channel Executing: mb961000,400 DEBUG memtool.comm.serial_channel Executing: mb961400,400 DEBUG memtool.comm.serial_channel Executing: mb961800,400 DEBUG memtool.comm.serial_channel Executing: mb961C00,400 DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel Channel is alive DEBUG memtool.comm.serial_channel Executing: mw92EAB8,1 DEBUG memtool.comm.serial_channel Result: 0x5588DCFE INFO memtool.common.base_test Read app state WAIT_FOR_INPUT INFO memtool.common.base_test Write input param test = 200 DEBUG memtool.comm.serial_channel Executing: Mw92EA10,1:000000c8 INFO memtool.common.base_test Write app state INPUT_RECEIVED DEBUG memtool.comm.serial_channel Executing: Mw92EAB8,1:77665544 DEBUG memtool.comm.serial_channel Executing: mw92EAB8,1 DEBUG memtool.comm.serial_channel Result: 0x5588DCFE INFO memtool.common.base_test Read symbol app_state = 0x5588dcfe DEBUG memtool.comm.serial_channel Executing: mw92EABC,1 DEBUG memtool.comm.serial_channel Result: 0x00000001 INFO memtool.common.base_test Read symbol num_records = 0x1 INFO memtool.common.base_test App state WAIT_FOR_INPUT DEBUG memtool.comm.serial_channel Executing: mw92EF40,8 DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0] INFO memtool.common.base_test Read symbol debug = [0, 0, 0, 0, 0, 0, 0, 0] DEBUG memtool.comm.serial_channel Executing: mw92EF60,A DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] INFO memtool.common.base_test Read symbol err_capt_regs = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] DEBUG memtool.comm.serial_channel Executing: mw92EF88,20 DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] INFO memtool.common.base_test Read symbol debug_regs = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] DEBUG memtool.comm.serial_channel Executing: mw92EAC0,1 DEBUG memtool.comm.serial_channel Result: 0x00000001 INFO memtool.common.base_test Read symbol state = 1 DEBUG memtool.comm.serial_channel Executing: mw92EAC4,1 DEBUG memtool.comm.serial_channel Result: 0x000000C8 INFO memtool.common.base_test Read symbol test_id = 200 INFO memtool.common.base_test Record 0 state TestStatus.PASS DEBUG memtool.comm.serial_channel Executing: mw92EAC8,10 DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] INFO memtool.common.base_test Read test data [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] INFO memtool.common.base_test Test 200 finished with state 1 DEBUG memtool.common.base_test App state: WAIT_FOR_INPUT DEBUG memtool.common.base_test Err_caption_registers: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] DEBUG memtool.common.base_test Debug: [0, 0, 0, 0, 0, 0, 0, 0] DEBUG memtool.common.base_test Debug registers: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] DEBUG memtool.common.base_test Results: [{'state': 1, 'test_id': 200, 'data': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]'}] DEBUG memtool.common.base_test Number of records: 1 ERROR memtool.memtests.phy_diags_tests CA data is missing! {'app_state': 1435032830, 'num_records': 1, 'records': [{'state': 1, 'test_id': 200, 'data': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]'}], 'debug': '[0, 0, 0, 0, 0, 0, 0, 0]', 'err_capt_regs': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]', 'debug_regs': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]'} ****DONE**** #################### Result for: ca_bus ###### Run 1 ###############################################Microsoft Windows [Version 10.0.19045.2965](c) Microsoft Corporation. All rights reserved.C:\nxp\i.MX_CFG_25.03\bin>prompt test-prefix :test-prefix : "C:/nxp/i.MX_CFG_25.03/bin/python3/python" "C:/nxp/i.MX_CFG_25.03/bin/python3/memtool/memtool_entry.py" -t "runtest" -d "C:/ProgramData/NXP/mcu_data_25.03/processors/MIMX8ML8xxxKZ/ksdk2_0/mem_validation/ddrc" -p "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/phy_training_ca_bus_lpddr4_0_0_.log" -i "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/figure_ca_bus_lpddr4_0_0_.png" -l DEBUG "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/connect.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/test.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/phy.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_registers.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config_in.json"INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/connect.jsonINFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/test.jsonINFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/phy.jsonINFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_registers.jsonINFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config.jsonINFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config_in.jsonDEBUG memtool.common.factories new instance -> {inst}DEBUG memtool.processor.base_processor freq_0 set to 667INFO memtool.phyinit.phy_init Run phyinit for 2020.06\lpddr4DEBUG memtool.phyinit.phy_init Shared library C:\ProgramData\NXP\mcu_data_25.03\processors\MIMX8ML8xxxKZ\ksdk2_0\mem_validation\ddrc\phyinit\sharedlib\phyinit_2020.06_lpddr4.dllDEBUG memtool.common.factories new instance -> {inst}DEBUG memtool.phyinit.phy_init PHY config file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_config_final.jsonDEBUG memtool.phyinit.phy_init Phyinit output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d.txtDEBUG memtool.phyinit.phy_init Retention output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d_retention.txtDEBUG memtool.phyinit.out_parser Parse phyinit output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d.txtDEBUG memtool.phyinit.out_parser Parse retention output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d_retention.txtDEBUG memtool.phyinit.out_parser Parse state A_BRING_UP_POWERDEBUG memtool.phyinit.out_parser Parse state C_PHY_INIT_CONFIG(210)DEBUG memtool.phyinit.out_parser Write PHY CONFIG as txt size 0x32fb to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_init.cDEBUG memtool.phyinit.out_parser Write PHY CONFIG as txt size 0x15d4 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_init.jsonDEBUG memtool.phyinit.out_parser Parse state LOAD_IMEM_1(445)DEBUG memtool.phyinit.out_parser Parse state D_LOAD_IMEM_1D(465)DEBUG memtool.phyinit.out_parser Write IMEM 1D as bin size 0x8000 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\imem_1d.binDEBUG memtool.phyinit.out_parser Write IMEM 1D as txt size 0x6eaf3 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\imem_1d.txtDEBUG memtool.phyinit.out_parser Parse state PHASE.E_SET_DFI_CLOCK(16850)DEBUG memtool.phyinit.out_parser Parse state PHASE.F_LOAD_DMEM_1(16869)DEBUG memtool.phyinit.out_parser Parse state PHASE.F_LOAD_DMEM_1D(16885)DEBUG memtool.phyinit.out_parser Write DMEM 1D as bin size 0x67c to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\dmem_1d.binDEBUG memtool.phyinit.out_parser Write DMEM 1D as txt size 0x5398 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\dmem_1d.txtDEBUG memtool.phyinit.out_parser Parse state PHASE.G_EXEC_FW(17716)DEBUG memtool.phyinit.out_parser Parse state PHASE.PHASE.I_LOAD_PIE(17782)DEBUG memtool.phyinit.out_parser Write PIE as txt size 0x44ff to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\pie.txtDEBUG memtool.phyinit.out_parser Write PIE as txt size 0x933a to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\pie.jsonDEBUG memtool.phyinit.out_parser Parse state PHASE.H_READ_MSG_BLOCK(18389)DEBUG memtool.phyinit.out_parser Parse retention register listINFO memtool.comm.serial_channel Using serial: COM3DEBUG memtool.common.factories new instance -> {inst}DEBUG memtool.common.factories new instance -> {inst}DEBUG memtool.common.factories new instance -> {inst}DEBUG memtool.comm.serial_channel Channel is not aliveDEBUG spsdk.utils.interfaces.device.usb_device Closing the Interface: SE Blank 865 (0x1FC9, 0x0146)path=b'\\\\?\\hid#vid_1fc9&pid_0146#6&dc7bbf3&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}' sn=''DEBUG memtool.comm.serial_channel ==================hardware_init=======================DEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channel [DEBUG]: Clock setup...DEBUG memtool.comm.serial_channel [INFO]: ARM core clock rate is 1800MHz...DEBUG memtool.comm.serial_channel [INFO]: DDR Dram frequency is 666MHz...DEBUG memtool.comm.serial_channel [DEBUG]: Clock setup ended...DEBUG memtool.comm.serial_channel ==================hardware_init exit==================DEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channel Channel is aliveDEBUG memtool.comm.serial_channel Executing: mw92EAB8,1DEBUG memtool.comm.serial_channel Result: 0x5588DCFEINFO memtool.common.base_test Read app state WAIT_FOR_INPUTINFO memtool.common.base_test Write app log levelDEBUG memtool.comm.serial_channel Executing: Mw92F510,1:0000000aINFO memtool.common.base_test Write app state CONFIG_RECEIVEDDEBUG memtool.comm.serial_channel Executing: Mw92EAB8,1:55aa55aaDEBUG test_app [DEBUG]: Initialize mailbox...DEBUG test_app [DEBUG]: Apply Init PHY Config...DEBUG test_app [DEBUG]: Execute PHY operation...DEBUG test_app [DEBUG]: Run PHY full init...DEBUG test_app [DEBUG]: Write 1D imem image, offset 0x00050000 size 0x00004000...DEBUG test_app [DEBUG]: End of load 1D imem image...DEBUG test_app [DEBUG]: Set DFI Clock for pstate 0...DEBUG test_app [DEBUG]: Write 1D dmem image, offset 0x00054000 size 0x0000033e...DEBUG test_app [DEBUG]: End of load 1D dmem image...DEBUG test_app [INFO]: Execute Training Firmware for 1D [email protected] test_app [INFO]: Training Firmware completed for 1D pstate0@667MHz with status 0; Execution ended in 0s.310ms.912us...DEBUG test_app [DEBUG]: PHY operation ended with status 0...DEBUG memtool.comm.serial_channel Executing: mw92F918,1DEBUG memtool.comm.serial_channel Result: 0x00000000DEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channel Channel is aliveDEBUG memtool.comm.serial_channel Executing: mw92EAB8,1DEBUG memtool.comm.serial_channel Result: 0x5588DCFEINFO memtool.common.base_test Read app state WAIT_FOR_INPUTINFO memtool.common.base_test Read phy statusDEBUG memtool.comm.serial_channel Executing: mw92F91C,1DEBUG memtool.comm.serial_channel Result: 0x00000059INFO root Number of logged items 0x59DEBUG memtool.memtests.snps_phy Using messages file C:\ProgramData\NXP\mcu_data_25.03\processors\MIMX8ML8xxxKZ\ksdk2_0\mem_validation\ddrc\firmware\2020.06\lpddr4\lpddr4_pmu_train.stringsDEBUG memtool.memtests.snps_phy Using messages file C:\ProgramData\NXP\mcu_data_25.03\processors\MIMX8ML8xxxKZ\ksdk2_0\mem_validation\ddrc\firmware\2020.06\lpddr4_2d\lpddr4_2d_pmu_train.stringsDEBUG memtool.comm.serial_channel Executing: mb961000,400DEBUG memtool.comm.serial_channel Executing: mb961400,400DEBUG memtool.comm.serial_channel Executing: mb961800,400DEBUG memtool.comm.serial_channel Executing: mb961C00,400DEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channel Channel is aliveDEBUG memtool.comm.serial_channel Executing: mw92EAB8,1DEBUG memtool.comm.serial_channel Result: 0x5588DCFEINFO memtool.common.base_test Read app state WAIT_FOR_INPUTINFO memtool.common.base_test Write input param test = 200DEBUG memtool.comm.serial_channel Executing: Mw92EA10,1:000000c8INFO memtool.common.base_test Write app state INPUT_RECEIVEDDEBUG memtool.comm.serial_channel Executing: Mw92EAB8,1:77665544DEBUG memtool.comm.serial_channel Executing: mw92EAB8,1DEBUG memtool.comm.serial_channel Result: 0x5588DCFEINFO memtool.common.base_test Read symbol app_state = 0x5588dcfeDEBUG memtool.comm.serial_channel Executing: mw92EABC,1DEBUG memtool.comm.serial_channel Result: 0x00000001INFO memtool.common.base_test Read symbol num_records = 0x1INFO memtool.common.base_test App state WAIT_FOR_INPUTDEBUG memtool.comm.serial_channel Executing: mw92EF40,8DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0]INFO memtool.common.base_test Read symbol debug = [0, 0, 0, 0, 0, 0, 0, 0]DEBUG memtool.comm.serial_channel Executing: mw92EF60,ADEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]INFO memtool.common.base_test Read symbol err_capt_regs = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]DEBUG memtool.comm.serial_channel Executing: mw92EF88,20DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]INFO memtool.common.base_test Read symbol debug_regs = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]DEBUG memtool.comm.serial_channel Executing: mw92EAC0,1DEBUG memtool.comm.serial_channel Result: 0x00000001INFO memtool.common.base_test Read symbol state = 1DEBUG memtool.comm.serial_channel Executing: mw92EAC4,1DEBUG memtool.comm.serial_channel Result: 0x000000C8INFO memtool.common.base_test Read symbol test_id = 200INFO memtool.common.base_test Record 0 state TestStatus.PASSDEBUG memtool.comm.serial_channel Executing: mw92EAC8,10DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]INFO memtool.common.base_test Read test data [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]INFO memtool.common.base_test Test 200 finished with state 1DEBUG memtool.common.base_test App state: WAIT_FOR_INPUTDEBUG memtool.common.base_test Err_caption_registers: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]DEBUG memtool.common.base_test Debug: [0, 0, 0, 0, 0, 0, 0, 0]DEBUG memtool.common.base_test Debug registers: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]DEBUG memtool.common.base_test Results: [{'state': 1, 'test_id': 200, 'data': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]'}]DEBUG memtool.common.base_test Number of records: 1ERROR memtool.memtests.phy_diags_tests CA data is missing!{'app_state': 1435032830, 'num_records': 1, 'records': [{'state': 1, 'test_id': 200, 'data': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]'}], 'debug': '[0, 0, 0, 0, 0, 0, 0, 0]', 'err_capt_regs': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]', 'debug_regs': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]'}****DONE**** "CA Eye" always runs into timeout, I tried different values for "ATXImpedance" and with value of 20Ohm it's able to run longer for about one cycle, but in the end it still times out. See the full log in the spoiler Spoiler (Highlight to read) #################### Result for: ca_eye ###### Run 1 ###############################################Microsoft Windows [Version 10.0.19045.2965] (c) Microsoft Corporation. All rights reserved. C:\nxp\i.MX_CFG_25.03\bin>prompt test-prefix : test-prefix : "C:/nxp/i.MX_CFG_25.03/bin/python3/python" "C:/nxp/i.MX_CFG_25.03/bin/python3/memtool/memtool_entry.py" -t "runtest" -d "C:/ProgramData/NXP/mcu_data_25.03/processors/MIMX8ML8xxxKZ/ksdk2_0/mem_validation/ddrc" -p "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/phy_training_ca_eye_lpddr4_0_0_.log" -i "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/figure_ca_eye_lpddr4_0_0_.png" -l DEBUG "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/connect.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/test.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/phy.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_registers.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config_in.json" INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/connect.json INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/test.json INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/phy.json INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_registers.json INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config.json INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config_in.json DEBUG memtool.common.factories new instance -> {inst} DEBUG memtool.processor.base_processor freq_0 set to 667 INFO memtool.phyinit.phy_init Run phyinit for 2020.06\lpddr4 DEBUG memtool.phyinit.phy_init Shared library C:\ProgramData\NXP\mcu_data_25.03\processors\MIMX8ML8xxxKZ\ksdk2_0\mem_validation\ddrc\phyinit\sharedlib\phyinit_2020.06_lpddr4.dll DEBUG memtool.common.factories new instance -> {inst} DEBUG memtool.phyinit.phy_init PHY config file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_config_final.json DEBUG memtool.phyinit.phy_init Phyinit output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d.txt DEBUG memtool.phyinit.phy_init Retention output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d_retention.txt DEBUG memtool.phyinit.out_parser Parse phyinit output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d.txt DEBUG memtool.phyinit.out_parser Parse retention output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d_retention.txt DEBUG memtool.phyinit.out_parser Parse state A_BRING_UP_POWER DEBUG memtool.phyinit.out_parser Parse state C_PHY_INIT_CONFIG(210) DEBUG memtool.phyinit.out_parser Write PHY CONFIG as txt size 0x32fb to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_init.c DEBUG memtool.phyinit.out_parser Write PHY CONFIG as txt size 0x15d4 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_init.json DEBUG memtool.phyinit.out_parser Parse state LOAD_IMEM_1(445) DEBUG memtool.phyinit.out_parser Parse state D_LOAD_IMEM_1D(465) DEBUG memtool.phyinit.out_parser Write IMEM 1D as bin size 0x8000 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\imem_1d.bin DEBUG memtool.phyinit.out_parser Write IMEM 1D as txt size 0x6eaf3 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\imem_1d.txt DEBUG memtool.phyinit.out_parser Parse state PHASE.E_SET_DFI_CLOCK(16850) DEBUG memtool.phyinit.out_parser Parse state PHASE.F_LOAD_DMEM_1(16869) DEBUG memtool.phyinit.out_parser Parse state PHASE.F_LOAD_DMEM_1D(16885) DEBUG memtool.phyinit.out_parser Write DMEM 1D as bin size 0x67c to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\dmem_1d.bin DEBUG memtool.phyinit.out_parser Write DMEM 1D as txt size 0x5398 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\dmem_1d.txt DEBUG memtool.phyinit.out_parser Parse state PHASE.G_EXEC_FW(17716) DEBUG memtool.phyinit.out_parser Parse state PHASE.PHASE.I_LOAD_PIE(17782) DEBUG memtool.phyinit.out_parser Write PIE as txt size 0x44ff to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\pie.txt DEBUG memtool.phyinit.out_parser Write PIE as txt size 0x933a to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\pie.json DEBUG memtool.phyinit.out_parser Parse state PHASE.H_READ_MSG_BLOCK(18389) DEBUG memtool.phyinit.out_parser Parse retention register list INFO memtool.comm.serial_channel Using serial: COM3 DEBUG memtool.common.factories new instance -> {inst} DEBUG memtool.common.factories new instance -> {inst} DEBUG memtool.common.factories new instance -> {inst} DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel Channel is alive INFO memtool.comm.serial_channel Send reset to target DEBUG memtool.comm.serial_channel Executing: R DEBUG spsdk.utils.interfaces.device.usb_device Closing the Interface: SE Blank 865 (0x1FC9, 0x0146)path=b'\\\\?\\hid#vid_1fc9&pid_0146#6&dc7bbf3&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}' sn='' DEBUG memtool.comm.serial_channel ==================hardware_init======================= DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel [DEBUG]: Clock setup... DEBUG memtool.comm.serial_channel [INFO]: ARM core clock rate is 1800MHz... DEBUG memtool.comm.serial_channel [INFO]: DDR Dram frequency is 666MHz... DEBUG memtool.comm.serial_channel [DEBUG]: Clock setup ended... DEBUG memtool.comm.serial_channel ==================hardware_init exit================== DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel Channel is alive DEBUG memtool.comm.serial_channel Executing: mw92EAB8,1 DEBUG memtool.comm.serial_channel Result: 0x5588DCFE INFO memtool.common.base_test Read app state WAIT_FOR_INPUT INFO memtool.common.base_test Write app log level DEBUG memtool.comm.serial_channel Executing: Mw92F510,1:0000000a INFO memtool.common.base_test Write app state CONFIG_RECEIVED DEBUG memtool.comm.serial_channel Executing: Mw92EAB8,1:55aa55aa DEBUG test_app [DEBUG]: Initialize mailbox... DEBUG test_app [DEBUG]: Apply Init PHY Config... DEBUG test_app [DEBUG]: Execute PHY operation... DEBUG test_app [DEBUG]: Run PHY full init... DEBUG test_app [DEBUG]: Write 1D imem image, offset 0x00050000 size 0x00004000... DEBUG test_app [DEBUG]: End of load 1D imem image... DEBUG test_app [DEBUG]: Set DFI Clock for pstate 0... DEBUG test_app [DEBUG]: Write 1D dmem image, offset 0x00054000 size 0x0000033e... DEBUG test_app [DEBUG]: End of load 1D dmem image... DEBUG test_app [INFO]: Execute Training Firmware for 1D pstate0@667MHz... DEBUG test_app [INFO]: Training Firmware completed for 1D pstate0@667MHz with status 0; Execution ended in 0s.310ms.898us... DEBUG test_app [DEBUG]: PHY operation ended with status 0... DEBUG memtool.comm.serial_channel Executing: mw92F918,1 DEBUG memtool.comm.serial_channel Result: 0x00000000 DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel Channel is alive DEBUG memtool.comm.serial_channel Executing: mw92EAB8,1 DEBUG memtool.comm.serial_channel Result: 0x5588DCFE INFO memtool.common.base_test Read app state WAIT_FOR_INPUT INFO memtool.common.base_test Read phy status DEBUG memtool.comm.serial_channel Executing: mw92F91C,1 DEBUG memtool.comm.serial_channel Result: 0x00000059 INFO root Number of logged items 0x59 DEBUG memtool.memtests.snps_phy Using messages file C:\ProgramData\NXP\mcu_data_25.03\processors\MIMX8ML8xxxKZ\ksdk2_0\mem_validation\ddrc\firmware\2020.06\lpddr4\lpddr4_pmu_train.strings DEBUG memtool.memtests.snps_phy Using messages file C:\ProgramData\NXP\mcu_data_25.03\processors\MIMX8ML8xxxKZ\ksdk2_0\mem_validation\ddrc\firmware\2020.06\lpddr4_2d\lpddr4_2d_pmu_train.strings DEBUG memtool.comm.serial_channel Executing: mb961000,400 DEBUG memtool.comm.serial_channel Executing: mb961400,400 DEBUG memtool.comm.serial_channel Executing: mb961800,400 DEBUG memtool.comm.serial_channel Executing: mb961C00,400 DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel Channel is alive DEBUG memtool.comm.serial_channel Executing: mw92EAB8,1 DEBUG memtool.comm.serial_channel Result: 0x5588DCFE INFO memtool.common.base_test Read app state WAIT_FOR_INPUT INFO memtool.common.base_test Write input param test = 200 DEBUG memtool.comm.serial_channel Executing: Mw92EA10,1:000000c8 INFO memtool.common.base_test Write app state INPUT_RECEIVED DEBUG memtool.comm.serial_channel Executing: Mw92EAB8,1:77665544 DEBUG memtool.comm.serial_channel Executing: mw92EAB8,1 DEBUG memtool.comm.serial_channel Result: 0x5588DCFE INFO memtool.common.base_test Read symbol app_state = 0x5588dcfe DEBUG memtool.comm.serial_channel Executing: mw92EABC,1 DEBUG memtool.comm.serial_channel Result: 0x00000001 INFO memtool.common.base_test Read symbol num_records = 0x1 INFO memtool.common.base_test App state WAIT_FOR_INPUT DEBUG memtool.comm.serial_channel Executing: mw92EF40,8 DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0] INFO memtool.common.base_test Read symbol debug = [0, 0, 0, 0, 0, 0, 0, 0] DEBUG memtool.comm.serial_channel Executing: mw92EF60,A DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] INFO memtool.common.base_test Read symbol err_capt_regs = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] DEBUG memtool.comm.serial_channel Executing: mw92EF88,20 DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] INFO memtool.common.base_test Read symbol debug_regs = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] DEBUG memtool.comm.serial_channel Executing: mw92EAC0,1 DEBUG memtool.comm.serial_channel Result: 0x00000001 INFO memtool.common.base_test Read symbol state = 1 DEBUG memtool.comm.serial_channel Executing: mw92EAC4,1 DEBUG memtool.comm.serial_channel Result: 0x000000C8 INFO memtool.common.base_test Read symbol test_id = 200 INFO memtool.common.base_test Record 0 state TestStatus.PASS DEBUG memtool.comm.serial_channel Executing: mw92EAC8,10 DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] INFO memtool.common.base_test Read test data [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] INFO memtool.common.base_test Test 200 finished with state 1 DEBUG memtool.common.base_test App state: WAIT_FOR_INPUT DEBUG memtool.common.base_test Err_caption_registers: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] DEBUG memtool.common.base_test Debug: [0, 0, 0, 0, 0, 0, 0, 0] DEBUG memtool.common.base_test Debug registers: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] DEBUG memtool.common.base_test Results: [{'state': 1, 'test_id': 200, 'data': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]'}] DEBUG memtool.common.base_test Number of records: 1 DEBUG memtool.processor.base_processor freq_0 set to 667 DEBUG memtool.phyinit.phy_init PHY config file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_config_final.json DEBUG memtool.phyinit.phy_init Phyinit output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d.txt DEBUG memtool.phyinit.phy_init Retention output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d_retention.txt DEBUG memtool.phyinit.out_parser Parse phyinit output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d.txt DEBUG memtool.phyinit.out_parser Parse retention output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d_retention.txt DEBUG memtool.phyinit.out_parser Parse state A_BRING_UP_POWER DEBUG memtool.phyinit.out_parser Parse state C_PHY_INIT_CONFIG(210) DEBUG memtool.phyinit.out_parser Write PHY CONFIG as txt size 0x32fb to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_init.c DEBUG memtool.phyinit.out_parser Write PHY CONFIG as txt size 0x15d4 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_init.json DEBUG memtool.phyinit.out_parser Parse state LOAD_IMEM_1(445) DEBUG memtool.phyinit.out_parser Parse state D_LOAD_IMEM_1D(465) DEBUG memtool.phyinit.out_parser Write IMEM 1D as bin size 0x8000 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\imem_1d.bin DEBUG memtool.phyinit.out_parser Write IMEM 1D as txt size 0x6eaf3 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\imem_1d.txt DEBUG memtool.phyinit.out_parser Parse state PHASE.E_SET_DFI_CLOCK(16850) DEBUG memtool.phyinit.out_parser Parse state PHASE.F_LOAD_DMEM_1(16869) DEBUG memtool.phyinit.out_parser Parse state PHASE.F_LOAD_DMEM_1D(16885) DEBUG memtool.phyinit.out_parser Write DMEM 1D as bin size 0x67c to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\dmem_1d.bin DEBUG memtool.phyinit.out_parser Write DMEM 1D as txt size 0x5398 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\dmem_1d.txt DEBUG memtool.phyinit.out_parser Parse state PHASE.G_EXEC_FW(17716) DEBUG memtool.phyinit.out_parser Parse state PHASE.PHASE.I_LOAD_PIE(17782) DEBUG memtool.phyinit.out_parser Write PIE as txt size 0x44ff to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\pie.txt DEBUG memtool.phyinit.out_parser Write PIE as txt size 0x933a to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\pie.json DEBUG memtool.phyinit.out_parser Parse state PHASE.H_READ_MSG_BLOCK(18389) DEBUG memtool.phyinit.out_parser Parse retention register list DEBUG memtool.common.factories new instance -> {inst} {'app_state': 1435032830, 'num_records': 1, 'records': [{'state': 1, 'test_id': 200, 'data': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]'}], 'debug': '[0, 0, 0, 0, 0, 0, 0, 0]', 'err_capt_regs': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]', 'debug_regs': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]'} DEBUG memtool.common.factories new instance -> {inst} DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel DEBUG memtool.comm.serial_channel Channel is alive INFO memtool.comm.serial_channel Send reset to target DEBUG memtool.comm.serial_channel Executing: R ERROR libusbsio.hidapi.dev HID device 'b'\\\\?\\hid#vid_1fc9&pid_0146#6&dc7bbf3&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}'' opening failed. ERROR memtool.common.base_test Application load ended with exception: Download incomplete due to configuration error! DEBUG memtool.comm.serial_channel Executing: mw92F918,1 #################### Result for: ca_eye ###### Run 1 ###############################################Microsoft Windows [Version 10.0.19045.2965](c) Microsoft Corporation. All rights reserved.C:\nxp\i.MX_CFG_25.03\bin>prompt test-prefix :test-prefix : "C:/nxp/i.MX_CFG_25.03/bin/python3/python" "C:/nxp/i.MX_CFG_25.03/bin/python3/memtool/memtool_entry.py" -t "runtest" -d "C:/ProgramData/NXP/mcu_data_25.03/processors/MIMX8ML8xxxKZ/ksdk2_0/mem_validation/ddrc" -p "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/phy_training_ca_eye_lpddr4_0_0_.log" -i "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/figure_ca_eye_lpddr4_0_0_.png" -l DEBUG "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/connect.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/test.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/phy.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_registers.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config.json" "C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config_in.json"INFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/connect.jsonINFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/test.jsonINFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/phy.jsonINFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_registers.jsonINFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config.jsonINFO memtool.utils.helper *****C:/Users/vboxuser/AppData/Local/Temp/mem_validation/ddrc_config_in.jsonDEBUG memtool.common.factories new instance -> {inst}DEBUG memtool.processor.base_processor freq_0 set to 667INFO memtool.phyinit.phy_init Run phyinit for 2020.06\lpddr4DEBUG memtool.phyinit.phy_init Shared library C:\ProgramData\NXP\mcu_data_25.03\processors\MIMX8ML8xxxKZ\ksdk2_0\mem_validation\ddrc\phyinit\sharedlib\phyinit_2020.06_lpddr4.dllDEBUG memtool.common.factories new instance -> {inst}DEBUG memtool.phyinit.phy_init PHY config file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_config_final.jsonDEBUG memtool.phyinit.phy_init Phyinit output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d.txtDEBUG memtool.phyinit.phy_init Retention output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d_retention.txtDEBUG memtool.phyinit.out_parser Parse phyinit output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d.txtDEBUG memtool.phyinit.out_parser Parse retention output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d_retention.txtDEBUG memtool.phyinit.out_parser Parse state A_BRING_UP_POWERDEBUG memtool.phyinit.out_parser Parse state C_PHY_INIT_CONFIG(210)DEBUG memtool.phyinit.out_parser Write PHY CONFIG as txt size 0x32fb to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_init.cDEBUG memtool.phyinit.out_parser Write PHY CONFIG as txt size 0x15d4 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_init.jsonDEBUG memtool.phyinit.out_parser Parse state LOAD_IMEM_1(445)DEBUG memtool.phyinit.out_parser Parse state D_LOAD_IMEM_1D(465)DEBUG memtool.phyinit.out_parser Write IMEM 1D as bin size 0x8000 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\imem_1d.binDEBUG memtool.phyinit.out_parser Write IMEM 1D as txt size 0x6eaf3 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\imem_1d.txtDEBUG memtool.phyinit.out_parser Parse state PHASE.E_SET_DFI_CLOCK(16850)DEBUG memtool.phyinit.out_parser Parse state PHASE.F_LOAD_DMEM_1(16869)DEBUG memtool.phyinit.out_parser Parse state PHASE.F_LOAD_DMEM_1D(16885)DEBUG memtool.phyinit.out_parser Write DMEM 1D as bin size 0x67c to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\dmem_1d.binDEBUG memtool.phyinit.out_parser Write DMEM 1D as txt size 0x5398 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\dmem_1d.txtDEBUG memtool.phyinit.out_parser Parse state PHASE.G_EXEC_FW(17716)DEBUG memtool.phyinit.out_parser Parse state PHASE.PHASE.I_LOAD_PIE(17782)DEBUG memtool.phyinit.out_parser Write PIE as txt size 0x44ff to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\pie.txtDEBUG memtool.phyinit.out_parser Write PIE as txt size 0x933a to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\pie.jsonDEBUG memtool.phyinit.out_parser Parse state PHASE.H_READ_MSG_BLOCK(18389)DEBUG memtool.phyinit.out_parser Parse retention register listINFO memtool.comm.serial_channel Using serial: COM3DEBUG memtool.common.factories new instance -> {inst}DEBUG memtool.common.factories new instance -> {inst}DEBUG memtool.common.factories new instance -> {inst}DEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channel Channel is aliveINFO memtool.comm.serial_channel Send reset to targetDEBUG memtool.comm.serial_channel Executing: RDEBUG spsdk.utils.interfaces.device.usb_device Closing the Interface: SE Blank 865 (0x1FC9, 0x0146)path=b'\\\\?\\hid#vid_1fc9&pid_0146#6&dc7bbf3&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}' sn=''DEBUG memtool.comm.serial_channel ==================hardware_init=======================DEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channel [DEBUG]: Clock setup...DEBUG memtool.comm.serial_channel [INFO]: ARM core clock rate is 1800MHz...DEBUG memtool.comm.serial_channel [INFO]: DDR Dram frequency is 666MHz...DEBUG memtool.comm.serial_channel [DEBUG]: Clock setup ended...DEBUG memtool.comm.serial_channel ==================hardware_init exit==================DEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channel Channel is aliveDEBUG memtool.comm.serial_channel Executing: mw92EAB8,1DEBUG memtool.comm.serial_channel Result: 0x5588DCFEINFO memtool.common.base_test Read app state WAIT_FOR_INPUTINFO memtool.common.base_test Write app log levelDEBUG memtool.comm.serial_channel Executing: Mw92F510,1:0000000aINFO memtool.common.base_test Write app state CONFIG_RECEIVEDDEBUG memtool.comm.serial_channel Executing: Mw92EAB8,1:55aa55aaDEBUG test_app [DEBUG]: Initialize mailbox...DEBUG test_app [DEBUG]: Apply Init PHY Config...DEBUG test_app [DEBUG]: Execute PHY operation...DEBUG test_app [DEBUG]: Run PHY full init...DEBUG test_app [DEBUG]: Write 1D imem image, offset 0x00050000 size 0x00004000...DEBUG test_app [DEBUG]: End of load 1D imem image...DEBUG test_app [DEBUG]: Set DFI Clock for pstate 0...DEBUG test_app [DEBUG]: Write 1D dmem image, offset 0x00054000 size 0x0000033e...DEBUG test_app [DEBUG]: End of load 1D dmem image...DEBUG test_app [INFO]: Execute Training Firmware for 1D [email protected] test_app [INFO]: Training Firmware completed for 1D pstate0@667MHz with status 0; Execution ended in 0s.310ms.898us...DEBUG test_app [DEBUG]: PHY operation ended with status 0...DEBUG memtool.comm.serial_channel Executing: mw92F918,1DEBUG memtool.comm.serial_channel Result: 0x00000000DEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channel Channel is aliveDEBUG memtool.comm.serial_channel Executing: mw92EAB8,1DEBUG memtool.comm.serial_channel Result: 0x5588DCFEINFO memtool.common.base_test Read app state WAIT_FOR_INPUTINFO memtool.common.base_test Read phy statusDEBUG memtool.comm.serial_channel Executing: mw92F91C,1DEBUG memtool.comm.serial_channel Result: 0x00000059INFO root Number of logged items 0x59DEBUG memtool.memtests.snps_phy Using messages file C:\ProgramData\NXP\mcu_data_25.03\processors\MIMX8ML8xxxKZ\ksdk2_0\mem_validation\ddrc\firmware\2020.06\lpddr4\lpddr4_pmu_train.stringsDEBUG memtool.memtests.snps_phy Using messages file C:\ProgramData\NXP\mcu_data_25.03\processors\MIMX8ML8xxxKZ\ksdk2_0\mem_validation\ddrc\firmware\2020.06\lpddr4_2d\lpddr4_2d_pmu_train.stringsDEBUG memtool.comm.serial_channel Executing: mb961000,400DEBUG memtool.comm.serial_channel Executing: mb961400,400DEBUG memtool.comm.serial_channel Executing: mb961800,400DEBUG memtool.comm.serial_channel Executing: mb961C00,400DEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channel Channel is aliveDEBUG memtool.comm.serial_channel Executing: mw92EAB8,1DEBUG memtool.comm.serial_channel Result: 0x5588DCFEINFO memtool.common.base_test Read app state WAIT_FOR_INPUTINFO memtool.common.base_test Write input param test = 200DEBUG memtool.comm.serial_channel Executing: Mw92EA10,1:000000c8INFO memtool.common.base_test Write app state INPUT_RECEIVEDDEBUG memtool.comm.serial_channel Executing: Mw92EAB8,1:77665544DEBUG memtool.comm.serial_channel Executing: mw92EAB8,1DEBUG memtool.comm.serial_channel Result: 0x5588DCFEINFO memtool.common.base_test Read symbol app_state = 0x5588dcfeDEBUG memtool.comm.serial_channel Executing: mw92EABC,1DEBUG memtool.comm.serial_channel Result: 0x00000001INFO memtool.common.base_test Read symbol num_records = 0x1INFO memtool.common.base_test App state WAIT_FOR_INPUTDEBUG memtool.comm.serial_channel Executing: mw92EF40,8DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0]INFO memtool.common.base_test Read symbol debug = [0, 0, 0, 0, 0, 0, 0, 0]DEBUG memtool.comm.serial_channel Executing: mw92EF60,ADEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]INFO memtool.common.base_test Read symbol err_capt_regs = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]DEBUG memtool.comm.serial_channel Executing: mw92EF88,20DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]INFO memtool.common.base_test Read symbol debug_regs = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]DEBUG memtool.comm.serial_channel Executing: mw92EAC0,1DEBUG memtool.comm.serial_channel Result: 0x00000001INFO memtool.common.base_test Read symbol state = 1DEBUG memtool.comm.serial_channel Executing: mw92EAC4,1DEBUG memtool.comm.serial_channel Result: 0x000000C8INFO memtool.common.base_test Read symbol test_id = 200INFO memtool.common.base_test Record 0 state TestStatus.PASSDEBUG memtool.comm.serial_channel Executing: mw92EAC8,10DEBUG memtool.comm.serial_channel Result: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]INFO memtool.common.base_test Read test data [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]INFO memtool.common.base_test Test 200 finished with state 1DEBUG memtool.common.base_test App state: WAIT_FOR_INPUTDEBUG memtool.common.base_test Err_caption_registers: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]DEBUG memtool.common.base_test Debug: [0, 0, 0, 0, 0, 0, 0, 0]DEBUG memtool.common.base_test Debug registers: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]DEBUG memtool.common.base_test Results: [{'state': 1, 'test_id': 200, 'data': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]'}]DEBUG memtool.common.base_test Number of records: 1DEBUG memtool.processor.base_processor freq_0 set to 667DEBUG memtool.phyinit.phy_init PHY config file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_config_final.jsonDEBUG memtool.phyinit.phy_init Phyinit output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d.txtDEBUG memtool.phyinit.phy_init Retention output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d_retention.txtDEBUG memtool.phyinit.out_parser Parse phyinit output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d.txtDEBUG memtool.phyinit.out_parser Parse retention output file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_training_out_1d2d_retention.txtDEBUG memtool.phyinit.out_parser Parse state A_BRING_UP_POWERDEBUG memtool.phyinit.out_parser Parse state C_PHY_INIT_CONFIG(210)DEBUG memtool.phyinit.out_parser Write PHY CONFIG as txt size 0x32fb to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_init.cDEBUG memtool.phyinit.out_parser Write PHY CONFIG as txt size 0x15d4 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\phy_init.jsonDEBUG memtool.phyinit.out_parser Parse state LOAD_IMEM_1(445)DEBUG memtool.phyinit.out_parser Parse state D_LOAD_IMEM_1D(465)DEBUG memtool.phyinit.out_parser Write IMEM 1D as bin size 0x8000 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\imem_1d.binDEBUG memtool.phyinit.out_parser Write IMEM 1D as txt size 0x6eaf3 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\imem_1d.txtDEBUG memtool.phyinit.out_parser Parse state PHASE.E_SET_DFI_CLOCK(16850)DEBUG memtool.phyinit.out_parser Parse state PHASE.F_LOAD_DMEM_1(16869)DEBUG memtool.phyinit.out_parser Parse state PHASE.F_LOAD_DMEM_1D(16885)DEBUG memtool.phyinit.out_parser Write DMEM 1D as bin size 0x67c to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\dmem_1d.binDEBUG memtool.phyinit.out_parser Write DMEM 1D as txt size 0x5398 to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\dmem_1d.txtDEBUG memtool.phyinit.out_parser Parse state PHASE.G_EXEC_FW(17716)DEBUG memtool.phyinit.out_parser Parse state PHASE.PHASE.I_LOAD_PIE(17782)DEBUG memtool.phyinit.out_parser Write PIE as txt size 0x44ff to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\pie.txtDEBUG memtool.phyinit.out_parser Write PIE as txt size 0x933a to file C:\Users\vboxuser\AppData\Local\Temp\mem_validation\pie.jsonDEBUG memtool.phyinit.out_parser Parse state PHASE.H_READ_MSG_BLOCK(18389)DEBUG memtool.phyinit.out_parser Parse retention register listDEBUG memtool.common.factories new instance -> {inst}{'app_state': 1435032830, 'num_records': 1, 'records': [{'state': 1, 'test_id': 200, 'data': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]'}], 'debug': '[0, 0, 0, 0, 0, 0, 0, 0]', 'err_capt_regs': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]', 'debug_regs': '[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]'}DEBUG memtool.common.factories new instance -> {inst}DEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channelDEBUG memtool.comm.serial_channel Channel is aliveINFO memtool.comm.serial_channel Send reset to targetDEBUG memtool.comm.serial_channel Executing: RERROR libusbsio.hidapi.dev HID device 'b'\\\\?\\hid#vid_1fc9&pid_0146#6&dc7bbf3&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}'' opening failed.ERROR memtool.common.base_test Application load ended with exception: Download incomplete due to configuration error!DEBUG memtool.comm.serial_channel Executing: mw92F918,1 Re: i.MX8MP LPDDR4 CA Training Failed (without it stress test is ok for single freq point) Hi Jorge, 1. Could you please provide the data on the chain lengths and propagation delays of LpDDR signals in EVK? 2. Our CAD does not allow importing the EVK pcb file in the format it is posted on your site. Can you provide it in ASCII format? sfatyushkin_0-1750135408382.png Best regards, Serge Re: i.MX8MP LPDDR4 CA Training Failed (without it stress test is ok for single freq point) Hello, Your DDR connection is ok. There is no functional problem in swap CA/CB since dual channel device channels are independent in LPDDR4, just keep in mind that bit swapping within each slice/byte lane is OK. Byte swapping is NOT allowed. If you still having signal integrity tests failed, please look for layout issues and try lower operating frequencies. You could try to change the tunning with different settings and check if helps with your design: ODTImpedance Desired ODT impedance in Ohm. Valid values for DDR4=240,120,80,60,40. Valid values for DDR3L=high-impedance,120,60,40. Valid values for LPDDR4=240,120,80,60,40 TxImpedance Write Driver Impedance for DQ/DQS in ohm (Valid values for all DDR type= 240, 120, 80, 60, 48, 40, 34) ATxImpedance Write Driver Impedance for Address/Command (AC) bus in ohm (Valid values for all DDR type = 120, 60, 40, 30, 24, 20) Best regards. Re: i.MX8MP LPDDR4 CA Training Failed (without it stress test is ok for single freq point) Hello @JorgeCas ! I am Alexander's colleague. Attached is the CPU and LPDDR connection diagram. Best regards, Serge Re: i.MX8MP LPDDR4 CA Training Failed (without it stress test is ok for single freq point) Hello, Could you please share the connections of memory to i.MX device? Best regards. Re: i.MX8MP LPDDR4 CA Training Failed (without it stress test is ok for single freq point) Dear JorgeCas! Happy New Year! We made a new board and ran the memory at 1600 MHz. It doesn't run at higher speeds—we'll investigate this problem.. I compared the net lengths in the KIT in your picture with our calculations in EDA. 1. In the KIT, when calculating net lengths and delays, you didn't take the via lengths into account. 2. In the KIT, when calculating the CK_x_x signal path lengths, the additional sections to the resistors (R9, R10) were incorrectly added to calculated. Please comment on the KIT chain lengths highlighted in red. Best regards, Serge
記事全体を表示
LPSPI3 経由で FS26 を駆動するにはどうすればいいですか? 開発にはS32K3X4EVB-T172を使用しています。 LPSPI3 を使用して FS26 と通信できないことがわかったので、サンプル コードでこの状況を再現しました。 交換したい LPSPI3_PCS0 = 110 = PTB17 <> LPSPI0_PCS0 = 95 = PTB0 LPSPI3_SCK = 7 = PTD1 <> LPSPI3_SCK = 7 = PTD1 LPSPI3_SIN = 111 = PTD20 <> LPSPI0_SIN = 97 = PTC9 LPSPI3_SOUT = 8 = PTD0 <> LPSPI0_SOUT = 94 = PTB1 配線方法は以下の通りです。 LPSPI3_SCK = J37、番号1、LPSPI0_SCK = J2、番号21に接続 LPSPI3_SIN = J39、番号14、LPSPI0_SIN = J2、番号15に接続 LPSPI3_SOUT = J37、番号3、LPSPI0_SOUT = J2、番号18に接続 LPSPI3_PCS0 = J4、番号5、LPSPI0_PCS0 = J2、番号24に接続 20251219_140651.jpg 既知の障害点は、Sbc_fs26_InitDevice 内の Sbc_fs26_GetDeviceState が FS_STATES_INVALID を返すことです。 5.png ただし、Spi_SyncTransmit を使用すると、CSB が低く引き下げられることがわかります。これは正しいようです。 CSB CSB.jpg MOSI MOSI.jpg 設定を確認しましたが、どこに問題があるのかわかりません。添付ファイルは、LPSPI0 が LPSPI3 に変更されていることを除いて、サンプル コードとほぼ同じです。 1.png 2.png 3.png Re: How to drive FS26 via LPSPI3? 公式の例では、FS26 と通信するためにどの SPI を使用していますか? Re: How to drive FS26 via LPSPI3? LPSPI0の使用 LPSPI0を削除してから以下のドッキングを実行しました。 LPSPI0_PCS0 = 95 = PTB0 = J2 (上位24) LPSPI3_PCS0 = 110 = PTB17 = J4 (下位5) LPSPI0_SCK = 98 = PTC8 = J2 LPSPI3_SCK = 7 = PTD1 = J37 LPSPI3_SCK = 7 = PTD1 = J37 LPSPI0_SIN = 97 = PTC9 = J2 (上位15) LPSPI3_SIN = 111 = PTD20 = J39 (中間14) LPSPI0_SOUT = 94 = PTB1 = J2 (LPSPI3_SOUT = 8 = PTD0 = J37 に接続) ただし、FS26は通信できません。 Re: How to drive FS26 via LPSPI3? これはコード移植の問題ではありません。非常に大きなコードパッケージがあり、LPSPI3がFS26と通信できないという問題が発生しています。質問しやすいように、FS26のサンプルコードを使用し、FS26との通信をLPSPI0からLPSPI3に変更しました。しかし、LPSPI3がFS26と通信できないという同じ問題が依然として発生しています。Spi_SyncTransmitを呼び出すと、CSBとMOSIに対応する応答が表示されます。そのため、原因がわかりません。 Re: How to drive FS26 via LPSPI3? 使用 LPSPI0 LPSPI0_PCS0 = 95 = PTB0 LPSPI0_SCK = 98 = PTC8 LPSPI0_SIN = 97 = PTC9 LPSPI0_SOUT = 94 = PTB1 Re: How to drive FS26 via LPSPI3? クリスマス休暇期間中は、サポートの応答時間は通常より長くなる場合がありますのでご了承ください。ご理解のほどよろしくお願いいたします。 私が見た説明は、私が行っている RTD 上での SPI 通信転送であり、サポートを超える点があります。
記事全体を表示
RFID 検出エラーについて。 サポートチーム様。 RFID Discover 5.7.0.0をインストールしました。 RFID Discover をインストールして起動した後、添付画像に示すエラーが発生し、ソフトウェアを閉じるしかありませんでした。 これを解決する方法をご存知ですか? 環境: - Windows 11 ホーム(日本語) - Microsoft .NET Framework 4.0がインストールされている - NxpRdLib.dll は、次のフォルダにあります: Program Files(x86)/NXP Semiconductors/RFIDDiscover/V5.7.0.0/Bin - NxpRdLib.dll のバージョンは 17.0.0.2518 です Re: about RFID Discover error. バージョン 5.8 RFID Discover が利用可能です。 新しいバージョン 5.8 をインストールしてもう一度お試しください。 Re: about RFID Discover error. RFID Discover をバージョン 5.8 にアップデートした後でも、添付画像のようにエラーが表示されます。 他に提供すべき情報はありますか?
記事全体を表示
恩智浦 mpc5744p MCU 板的三维模型 & Devkit MotorGD 板 大家好, 我正在开发一个新的测试平台,包括恩智浦产品,如mpc5744p MCU和DevKit MotorGD板。 我要为我的测试平台买专业的 3D 照片我需要的是: 1. mpc5744p MCU 板 2 的 3D 文件。 我在恩智浦网站上搜索 了 DevKit MotorGD 看板 然后我在 .zip 里找到了这些但我无法使用 Easyeda 打开它们 。 1. LAY-29379_B.zip 2. LAY-29333_E.zip 请谁能帮我打开它们或者获取两块板的 3D 模型文件。 谢谢,祝您愉快! Re: 3d Model of NXP mpc5744p MCU Board & Devkit MotorGD Board 你好 我在恩智浦网站上进行了搜索,找到了这些 .zip 文件但我无法使用 Easyeda 打开它们 。 1. LAY-29379_B.zip 2. LAY-29333_E.zip 这些是在 Candace: allegro 中设计的布局文件。 我不指望你能从布局设计中提取 3D 模型。 我找到了以下方法: EAGLE + Fusion 360 打开 .brd文件。 使用 Fusion 360 同步功能: 转到 Fusion 360 → 导入 EAGLE 设计。 它将生成一个包含元器件的完整 3D PCB 模型。 导出为 STEP (.step) 或 IGES 格式,用于机械整合。 我不指望你能从布局设计中提取 3D 模型。 通过社区无法共享 500MB 的 STEP 文件。 顺祝商祺! Peter Re: 3d Model of NXP mpc5744p MCU Board & Devkit MotorGD Board 你好,petervlna、 非常感谢你的答复。 我们使用Eagle + Fusion 360 尝试了建议的解决方案,但不幸的是,我们遇到了文件无法打开的错误提示(如下图所示)。使用EasyEDA、Altium 和 KiCad 等其他 PCB 软件时也会出现同样的问题。 此时,我们迫切需要两块板的.STEP 格式的三维模型。如果您能直接提供这些文件,比如通过Google Drive、OneDrive、MEGA 等云存储服务或任何其他方便的平台,我们将不胜感激。 再次感谢您的支持。我们期待您的答复。 致以最崇高的敬意, Ahmed AhmedKamal_59_1-1765970973937.png Re: 3d Model of NXP mpc5744p MCU Board & Devkit MotorGD Board 你好 好的,在这种情况下,请向恩智浦网络支持提交一份报告。 您还需要与恩智浦签订有效的 NDA 协议,才能获得此类文件。 可以通过我们的支持门户共享 STEP 模型,因为它允许 2GB 的文件,而且我以前也共享过 STEP 文件。 无法在我们的官方系统之外共享内部文件。 顺祝商祺! Peter Re: 3d Model of NXP mpc5744p MCU Board & Devkit MotorGD Board 您好 petervlna, 非常感谢您的建议,我们已立案,编号为 (Case: 00756530)。 我们希望能尽快拿到文件。 非常感谢。 致以最崇高的敬意, Ahmed AhmedKamal59_0-1766503944936.png
記事全体を表示
SAF sBoot CMU_FC チェック sBoot で CMU_FC チェックを構成するときにパラメータを設定する方法がわかりません。自分の理解に基づいていくつかの値を設定し、コードを生成しましたが、生成された LFREF 値と HFREF 値は設定した値に基づいてどのように導出されるのでしょうか?計算過程を見せていただけますか? 私の意見では、上記で設定したパラメータは、RCCR.REF_CNT/HTCR.HFREF/LTCR.LFREF と比較する必要があります。FXOSC=40Mの場合、CMU_FC0チェックをどのように設定すればよいですか?RCCR.REF_CNT/HTCR.HFREF/LTCR.LFREF はいつ設定すればよいですか?値は何ですか? Re: SAF sBoot CMU_FC Checks こんにちは@ziwu 、 すべての計算はS32K3xx RM rev.11に記載されています。 セクション56.5.2 HFREFとLFREFのプログラミング。 よろしくお願いいたします。 ダニエル Re: SAF sBoot CMU_FC Checks 1.RM Rev.11 をチェックしましたが、まだ結果が得られません。バス クロックは何ですか? システム クロックですか? 2.EB tresos をチェックしたところ、「Mcu レジスタ値の最適化」を有効にすると RCCR が 0x50 に設定され、CMU_FC0/3/4 のすべての RCCR が 0x50 になっています。なぜ同じ値になっているのでしょうか?次の式では 0x50 を CAN で取得できません。0x50 を取得するにはどうすればいいですか? ziwu_0-1766105709787.png Re: SAF sBoot CMU_FC Checks こんにちは@ziwuさん 遅くなって申し訳ありません。現在不在のため、早く返信することができませんでした。 システムクロックは、RMにリストされているクロックオプションのいずれかに正確に設定する必要があります。例:表157.オプション A - 高性能モード (CORE_CLK @ 160 MHz)。 そして、バスクロック = レジスタインターフェースクロック = AIPS_SLOW_CLK danielmartynek_1-1766930897683.png danielmartynek_0-1766930828127.png 現在、SAF sBoost ドライバをテストできません。 ただし、CMU が有効になっている場合は、しきい値も MCAL MCU ドライバによって計算され、設定されます。 S32DS IDE と RTD 6.0.0 の例を次に示します。 https://community.nxp.com/t5/S32K-Knowledge-Base/Example-S32K344-MCAL-MCU-ClockMonitor-v1-0-S32DS36-RTD600/ta-p/2179976 よろしくお願いいたします。 ダニエル Re: SAF sBoot CMU_FC Checks 分かりました、ありがとうございます
記事全体を表示