如何防止UCD3138无法再次烧录-TI.PDFVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Application Note ZHCA646 – Oct 2015 如何防止 UCD3138 无法再次烧录 Jack Tan, Frank Tang High Voltage Power Solutions 摘要 校验和是一种对空间与时间传送数据的完整性进行检查的一种简单的检验方法。但这种方 式并不能检测数据的正确性。UCD3138 的出厂Boot 也采用校验和的方式,在Flash 程序执 行这前,会对其完整性做一次检验。如果由于用户编写的程序本身有问题,则可能导致芯 片无法再次烧录。本文主要介绍一种解决芯片无法再次烧录的方法,分析了芯片锁死的原 因,并提供了相应的代码修改列表。 1 引言 在调试UCD3138 的代码时,一般都会有用户会碰到该芯片无法再烧录。本文主要介绍如 何在软件中设置来避免该问题。 2 芯片无法再次烧录的原因分析 如图1 所示,为UCD3138 上电后,Boot ROM 代码的流程。Boot ROM 的主要功能包含芯 片的初始化,检验Flash 的完整,以及pmbus 的boot loader。 Boot ROM 支持检验Pflash 中的两个校验和:一个是boot flash 中的校验和(0x7fc –0x7ff ); 另一个是整个flash 中的校验和(0x0000 – 0x7fff )。 如果任意一个检验和合法,那么ROM 将把flash 的地址在重映射至0x0000 0000,同时跳 转到Flash 当中执行用户设定的代码。32KB 的代码检验时间大概需要10ms 才能完成。检 验和其实就是一个简单的加法运算,把存储器中所有的字节都按最一个无符号的8 位数相 加。在核对检验和之前,Boot ROM 首先会去验证在Flash 的起始位置是否有0xEA 代码, 如果没有0xEA ,Boot ROM 不会执行核对校验和的程序,而是直接跳转到ROM 中PMBus 通信代码,这样可以有效的避免当存储器的值都为0 时,出现芯片锁死的情况。 如何防止UCD3138 无法再次烧录 Application Note ZHCA646 – Oct 2015 芯片上电 CPU执行Boot ROM 否 检测是Pflash的首 地址否有0xEA 是 检测Pflash前2KB的 检验和是否合法 合法 不合法 用户烧写程序成功,将 Pflash的地址置为0,CPU 跳转到Pflash执行程序 不合法 检测Pflash整个 合法 32KB的检验和是否 合法 用户程序无效,继续留在 ROM,等待PMBus命令 图1. UCD3138 上电后执行程序的流程 从上面分析可以看到,如果program flash 的checksum 已被

文档评论(0)

jjwhy + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档