This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] MSPM0G3519:如何计算应用校验和

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1599725/mspm0g3519-how-to-calculate-the-checksum-of-application

器件型号: MSPM0G3519

您好的团队、

我的客户正在开发 M0G3519 双组功能。 他们问如何计算应用程序的校验和后代码跳从组 0 到组 1 ?  

闪存范围是否通过物理地址计算?

以下图为例。 请说明以下两个假设是否正确。

  1. 应用程序 0 正在运行、要计算代码闪存的校验和、起始地址是 BOOT_SIZE、结束地址是 0x3FFFF 吗?
  2. 应用程序 1 正在运行、要计算代码闪存的校验和、起始地址是 0x40000 + BOOT_SIZE、结束地址是 0x7FFFF?

1218.png

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

    您好 Jerry、

    客户是否要计算待更新的应用程序的校验和? 例如、当 app0 正在运行时、他们想要更新 app1 程序并计算 app1 程序校验和、而当 app1 正在运行时、他们想要计算 app0 校验和、我是对吗?

    在这种情况下、如果在 APP 运行期间计算校验和、则 无论 app0 或 app1 正在运行、客户始终需要使用 0x40000 + BOOT_SIZE 到 0x7FFFF 的地址来计算另一个存储体程序的校验和。 这是因为当启用 bankswap 时、程序始终在逻辑低地址运行、而另一个要更新的程序具有逻辑高地址。  

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

    嗨、Pengfei、

    感谢您的信息。 我会通知客户。