我有一个 Infineon XC161CJ-16F SoC 和 Micron/ST M29W320EB 并行或闪存,我试图从中转储固件,但我不确定如何继续。我找到了将引脚焊接到的 JTAG 焊盘,但我认为 JTAG 可能在启动时被处理器禁用,至少我无法连接任何东西。我正在使用 Black Flash USB 编程器板和 Blackcat 软件。该设备有一个 RS232 端口,但我无法从中获取任何信息。
这可能更适合 EE,但 TDI 和 TCK 电路上有上拉电阻,TRST 电路有下拉电阻,而 TMS 和 TDO 没有。我不知道这是否正常。
我不认为内存芯片可以直接读取,除非我有某种特殊的夹子(可能不适合这个应用程序)或者它被拆焊了?不幸的是,拆焊是不可能的。所以这意味着我需要找到某种方法来启用 JTAG?
它还可以通过在启动时按住按钮以“死轮询”模式运行,以便对主固件进行编程。据我了解,该设备正在引导块固件上运行。我不确定这是否可以帮助我。我也不知道引导块映像是被编程到内部 SoC 中还是被编程到闪存芯片上的特殊块中。我有主固件和引导块文件的副本,但我确定它们已加密/混淆。我还反转了编程软件并在固件更新期间嗅探了 USB,以确认解密不是在软件中完成的。
根据 XC161CJ 数据表,它看起来可以从内部或外部存储器中运行,我不知道这是否有帮助,或者是否存在混淆它的风险。另外,也许我可以尝试转储内部 SoC 内存,但可能会有安全检查来防止这种情况发生?我想我真的不知道从哪里开始。我以前做过一些 JTAG 编程,但总是有一个指南可以遵循。这是我第一次必须自己弄清楚,我被卡住了。
任何帮助,将不胜感激。谢谢!