器件型号: TMS320F28P550SJ
尊敬的团队:
你过得怎么样? 希望这封电子邮件对您有帮助!
我的客户最近使用了 P55、遇到了有关引导升级功能的问题:如果接收到的缓冲区没有从 32 位对齐地址开始、数据起始地址定义为 01、则升级将失败、第一段数据将设置为 0。 一旦它与 32 位对齐并且起始地址更改为 00、升级就会成功。 客户还遇到了类似问题的 CRC 功能。
支持需求:能否就 P55 定位机构功能所用的方法提供进一步指导? 谢谢!
B&R
Eric
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.
器件型号: TMS320F28P550SJ
尊敬的团队:
你过得怎么样? 希望这封电子邮件对您有帮助!
我的客户最近使用了 P55、遇到了有关引导升级功能的问题:如果接收到的缓冲区没有从 32 位对齐地址开始、数据起始地址定义为 01、则升级将失败、第一段数据将设置为 0。 一旦它与 32 位对齐并且起始地址更改为 00、升级就会成功。 客户还遇到了类似问题的 CRC 功能。
支持需求:能否就 P55 定位机构功能所用的方法提供进一步指导? 谢谢!
B&R
Eric
Eric、
我认为这与闪存 API 要求有关:
闪存 API 要求传递给它的地址采用 128 位对齐方式。 现在、从技术上讲、即使地址/数据通过未对齐的引导加载程序传递、调用闪存 API 的代码也可以纠正此问题;但我怀疑这是一个额外的步骤、可以在我们的示例中理解
https://www.ti.com/lit/ug/sprujc5/sprujc5.pdf
我假设出现了上述奇数起始地址、因为地址“0"处“处的数据不需要更新/更改以进行引导升级? 我认为客户有两种选择;
1) 包括升级的地址/数据,执行上述对齐要求。 这将导致需要在任何通信总线上传输更多数据、但会使编程实现变得更简单。
2) 不要对齐,但升级固件需要通过读取这些位置的当前数据并在传递到闪存 API 之前添加到缓冲区来填充这些“空洞“。 这将节省引导升级的数据传输、但会更加复杂
此致、
Matthew