升级背板CPLD失败(prepare阶段热检查失败)

目前基于社区流程,将背板CPLD的 .vme 文件打包成 HPM 包进行升级,但升级在 prepare 阶段做热检查时报错失败

现象

  • 升级流程可以正常触发

  • prepare 阶段失败(热检查未通过)

  • 日志中未进入实际烧写流程


对比情况

同样的打包流程用于 EXU_CPLD 升级是成功的。

对比两者主要差异:

  1. UID 不同

    • 背板CPLD:使用自定义 UID

    • EXU_CPLD:使用天池社区定义的 UID

  2. FirmwareRoute 不一致

    • 两者都是通过 EXU CPLD 做 JTAG 切换

    • 但路由配置存在差异


当前疑问

  1. CPLD 打包是否是通过 update.cfg 中的 UID 与 SR 中的 LogicFirmware 对象进行绑定?

  2. LogicFirmware 的 UID 是否可以自定义?是否必须使用社区已有定义?

  3. valid.vme 文件如何获取或者如何生成正确的valid.vme

    • 是否与 update.cfg 或 UID 存在绑定关系?
  1. 是的,update.cfg文件中配置有uid属性,该属性需要和LogicFirmware对象中配置的uid属性一致。CPLD升级过程中会通过该属性进行匹配校验,从而判断需要升级哪一个CPLD
  2. 理论上是可以的,只要保证LogicFirmware和update.cfg中的uid一致即可。但需要注意的另一点是,该uid属性含义为CPLD所在单板的uid,所以通常都会配置为和所在单板的uid一致。
  3. valid文件和update.cfg或者uid没有绑定关系,这个是硬件根据具体逻辑生成的烧写文件,需要由具体硬件的开发人员生成。